Preview Leffel Consulting Payments is in active development and migrating to Finix — the API isn't publicly live yet, and some examples still reflect the outgoing build. Request early access →

API Reference

Terminal

Accept in-person, card-present payments with Stripe Terminal readers. Create a connection token for the Terminal SDK, and manage the merchant’s locations and readers.

Create a connection token

POST /v1/terminal/connection-token

Returns a short-lived secret used to initialize the Stripe Terminal SDK, scoped to the merchant’s connected account.

Auth: X-Api-Key

Returns

secret string optional

Connection token for the Terminal SDK.

Request
curl -X POST https://payments.leffelconsulting.com/v1/terminal/connection-token \
  -H "X-Api-Key: lc_live_XXXXXXXXXXXXXXXXXXXX"
Response
{ "secret": "pst_test_..." }
Try it — the interactive sandbox console is coming soon.

Create a location

POST /v1/terminal/locations

Registers a physical location for Terminal readers.

Auth: X-Api-Key

Request body

displayName string required

Human-readable location name.

line1 string required

Street address line 1.

line2 string optional

Street address line 2.

city string required

City.

state string required

State / province.

postalCode string required

Postal code.

country string optional

Two-letter country code. Defaults to "US".

Returns

id string optional

Location id (tml_…).

displayName string optional

The location name.

Request
curl https://payments.leffelconsulting.com/v1/terminal/locations \
  -H "X-Api-Key: lc_live_XXXXXXXXXXXXXXXXXXXX" \
  -H "Content-Type: application/json" \
  -d '{ "displayName": "Main Counter", "line1": "123 Main St", "city": "Austin", "state": "TX", "postalCode": "78701" }'
Response
{ "id": "tml_1Nxyz...", "displayName": "Main Counter" }
Try it — the interactive sandbox console is coming soon.

List locations

GET /v1/terminal/locations

Lists the merchant’s Terminal locations.

Auth: X-Api-Key
Response
[
  { "id": "tml_1Nxyz...", "displayName": "Main Counter" }
]
Try it — the interactive sandbox console is coming soon.

Register a reader

POST /v1/terminal/readers

Registers a physical card reader to a location using the code shown on the device.

Auth: X-Api-Key

Request body

registrationCode string required

Registration code displayed on the reader.

locationId string required

Location id (tml_…) to attach the reader to.

label string optional

Optional friendly label.

Returns

id string optional

Reader id.

label string optional

Reader label.

deviceType string optional

Reader hardware type.

status string optional

Reader status (online/offline).

locationId string optional

Attached location id.

Request
curl https://payments.leffelconsulting.com/v1/terminal/readers \
  -H "X-Api-Key: lc_live_XXXXXXXXXXXXXXXXXXXX" \
  -H "Content-Type: application/json" \
  -d '{ "registrationCode": "simulated-wpe", "locationId": "tml_1Nxyz...", "label": "Front register" }'
Response
{
  "id": "tmr_1Nabc...",
  "label": "Front register",
  "deviceType": "bbpos_wisepos_e",
  "status": "online",
  "locationId": "tml_1Nxyz..."
}
Try it — the interactive sandbox console is coming soon.

List readers

GET /v1/terminal/readers

Lists the merchant’s registered card readers.

Auth: X-Api-Key
Response
[
  { "id": "tmr_1Nabc...", "label": "Front register", "deviceType": "bbpos_wisepos_e", "status": "online", "locationId": "tml_1Nxyz..." }
]
Try it — the interactive sandbox console is coming soon.