Skip to main content
POST
/
checkout
/
pay
Pay with card or spei
curl --request POST \
  --url http://localhost:3156/checkout/pay \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --header 'x-merchant-id: <api-key>' \
  --data '
{
  "externalId": "ORDER-123",
  "customer": {
    "externalId": "CUST-123",
    "firstName": "John",
    "lastName": "Doe",
    "email": "[email protected]",
    "phoneNumber": "+1234567890"
  },
  "amount": 100.5,
  "currency": "USD",
  "paymentMethod": {
    "type": "card",
    "options": {
      "card": {
        "number": "4111111111111111",
        "expiryMonth": "12",
        "expiryYear": "2025",
        "cvc": "123"
      }
    }
  },
  "billingAddress": {
    "address": "123 Main St",
    "city": "New York",
    "state": "NY",
    "postalCode": "10001",
    "country": "US"
  },
  "description": "Payment for order #123"
}
'
{
  "externalId": "ORDER-123",
  "amount": 100.5,
  "currency": "USD",
  "status": "PENDING",
  "payments": [
    {
      "id": "856b4a29-a7e5-4726-87d4-77e55d5ecfbf",
      "status": "PENDING_CAPTURE",
      "paymentMethodType": "SPEI",
      "amount": "200.99",
      "refundedAmount": "0.00",
      "paymentMethodId": "<string>",
      "createdAt": "2025-05-19T18:14:32.424Z",
      "updatedAt": "2025-05-19T18:14:32.523Z"
    }
  ],
  "orderNumber": "C25123101",
  "description": "Payment for order #123",
  "billingAddressLine": "123 Main St",
  "billingCity": "New York",
  "billingState": "NY",
  "billingPostalCode": "10001",
  "billingCountry": "US",
  "customer": {
    "externalId": "CUST-123",
    "firstName": "John",
    "lastName": "Doe",
    "email": "[email protected]",
    "phoneNumber": "+1234567890",
    "active": true,
    "createdAt": "2024-03-20T10:00:00Z",
    "updatedAt": "2024-03-20T10:00:00Z"
  },
  "createdAt": "2024-03-20T10:00:00Z",
  "updatedAt": "2024-03-20T10:00:00Z",
  "paymentMethod": {
    "type": "card",
    "options": {
      "card": {
        "number": "4111111111111111",
        "expiryMonth": "12",
        "expiryYear": "2025",
        "cvc": "123"
      },
      "spei": {
        "clabe": "123456789012345678"
      }
    }
  }
}

Authorizations

x-api-key
string
header
required

API key for authentication (required)

x-merchant-id
string
header
required

Merchant ID for identifying the merchant (required)

Body

application/json
externalId
string
required

External payment order ID from merchant system

Example:

"ORDER-123"

customer
object
required
amount
number
required

Payment amount

Required range: x > 0
Example:

100.5

currency
string
required

Three-letter currency code (ISO 4217)

Required string length: 3
Example:

"USD"

paymentMethod
object
required
billingAddress
object
description
string

Payment description

Example:

"Payment for order #123"

Response

Payment processed successfully

externalId
string
required

External payment order ID from merchant system

Example:

"ORDER-123"

amount
number
required

Payment amount

Example:

100.5

currency
string
required

Three-letter currency code (ISO 4217)

Example:

"USD"

status
enum<string>
required

Payment order status

Available options:
PENDING,
PROCESSING,
AUTHORIZED,
PARTIALLY_AUTHORIZED,
ACTION_REQUIRED,
COMPLETED,
PARTIALLY_PAID,
CANCELLATION_REQUESTED,
CANCELLED,
FAILED,
REFUND_PROCESSING,
PARTIALLY_REFUNDED,
REFUNDED
payments
object[]
required

List of payments for a payment order, Note: this information is only available on the order details endpoint

orderNumber
string

Unique order number generated by the system

Example:

"C25123101"

description
string

Payment description

Example:

"Payment for order #123"

billingAddressLine
string

Billing address line

Example:

"123 Main St"

billingCity
string

Billing city

Example:

"New York"

billingState
string

Billing state

Example:

"NY"

billingPostalCode
string

Billing postal code

Example:

"10001"

billingCountry
string

Billing country code

Example:

"US"

customer
object
createdAt
string<date-time>

Payment order creation timestamp

Example:

"2024-03-20T10:00:00Z"

updatedAt
string<date-time>

Payment order last update timestamp

Example:

"2024-03-20T10:00:00Z"

paymentMethod
object