Sale

Authorizes and captures a payment in one call — use it for standard checkout. Charge a saved token or raw card details. To split the flow, use Authorize + Capture instead.

Request

curl '{gtw_url}/locations/{location_id}/transactions/sale' \
  -H 'Authorization: Bearer {access_token}' \
  -H 'Content-Type: application/json' \
  -d '{
    "user_id": "5001",
    "currency_iso": "usd",
    "amount": 6.50,
    "orderid": "58589",
    "inv_number": "SP-INV-005",
    "reconciliation_id": "123",
    "card_data": { "token": "9HZ90qhiFq325454" },
    "billing_address": {
      "street": "411 Main Pkwy", "zip": "40015", "city": "Boston",
      "state": "ca", "country_iso": "us", "email": "[email protected]"
    }
  }'

Charge a raw card by replacing card_data with card fields:

  -d '{ "user_id": "5001", "amount": 6.50, "currency_iso": "usd",
        "card_data": { "card_type": "Mastercard", "pan": "5454545454545454",
                       "sad": "123", "exp_month": "10", "exp_year": "25" } }'

Required: user_id and card_data (either a token, or pan + sad + exp_month + exp_year).

Response — 200 OK

{
  "card_data": { "token": "YqPEg7rmZEq25454", "cardfullname": "John Doe",
                 "expiry_information": "10/25", "last4": "5454", "card_brand": "Mastercard" },
  "amount_approved": 650,
  "order_id": "58589",
  "authcode": "0602MCC603474",
  "currency_iso": "USD",
  "inv_number": "SP-INV-005",
  "networkReconciliationId": "78875413",
  "transaction_id": "FA2611EF-B387-6F24-9199-D05099F90D7C"
}

Store transaction_id for a later Refund or Void. amount_approved is in cents.

Full request/response field reference: Sale (Using Token)