Initiate a sale.

This API endpoint enables you to charge a credit card via a terminal by sending a sale command to a terminal. The final approval/decline result is delivered asynchronously to the callbackURL.

Body Params
string
required

12-digit merchant identifier (MID).

string
required

10-digit terminal serial number.

string
required
length ≤ 16

Client-generated transaction identifier used for reconciliation.

string
enum
required

Tender type used on the transaction.

Allowed:
amount
object
required

Message amount providing total, subtotal, currency, tip, and tax.

boolean | null

Whether a tip is requested

integer
enum
required

Allowed values:
0 – No receipt
1 – Print merchant receipt
2 – Print customer receipt
3 – Print both merchant and customer receipts

Allowed:
string
required

HTTPS endpoint that receives the asynchronous callback payload.

metadata
object

Optional key-value metadata used for correlation and diagnostics.

splits
array of objects | null

Optional split-funding instructions for PAYFAC sale requests only. Do not include this field for standard traditional sales. Each mid must be a non-processing PAYFAC MID, sent as a 16-digit string with the required leading 0. For example: 0709900000098856.

splits
Headers
string
required

Bearer token used to authenticate API requests.

uuid
required

Unique key used to prevent duplicate transaction commands.

Responses

Callback
Language
Credentials
Bearer
JWT
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json