Use this endpoint to submit a card payment through Accelebit. You provide the card details, billing information, amount, and currency, and Accelebit routes the transaction to the optimal upstream provider based on currency and availability. The response tells you whether the payment was captured immediately, requires 3D Secure authentication, or failed.
Always supply a unique Idempotency-Key on every request. If a request is retried with the same key, Accelebit returns the original response without creating a duplicate payment.
Your secret API key. Starts with smtgw_sk_.
A unique key to prevent duplicate payments. Use a UUID or an order-specific identifier.
Must be application/json.
Request body
Payment amount as a decimal string. For example: "55.00" or "100.50". Maximum two decimal places.
Three-letter ISO 4217 currency code. Automatically uppercased. For example: "EUR", "USD", "GBP".
Payment method type. One of card or stored_card.
Your external customer identifier. Used to resolve or create a customer record in Accelebit.
Card details. Required when paymentMethod is card. Card number (PAN). 13–19 digits.
Two-digit expiry month. "01" through "12".
Two-digit expiry year. For example: "28" for 2028.
Card verification value. 3–4 digits.
Name as printed on the card.
UUID of a previously stored card. Required when paymentMethod is stored_card.
Billing information for the cardholder. Cardholder’s email address.
Phone number including country code. Minimum 5 characters. For example: "+35699123456".
ISO 3166-1 alpha-2 country code. Automatically uppercased. For example: "MT", "DE".
State or province. Required for US and CA addresses.
Customer’s IPv4 address. If omitted, Accelebit uses the IP from the incoming request.
Date of birth in YYYY-MM-DD format. Required by some providers (Everest).
"M" or "F". Required by some providers (Everest).
Your own reference ID, such as an order number. You can use this value to look up the payment later via GET /v1/payments?merchantRef=....
URL to redirect the customer to after 3D Secure authentication completes. Required if your integration handles 3DS flows.
Device fingerprint string. Maximum 128 characters. Passed to the upstream provider for fraud scoring.
Arbitrary key-value pairs to attach to this payment. Stored by Accelebit but not forwarded to providers.
Response
UUID of the created transaction.
Transaction status. One of: captured, authorized, pending_3ds, failed.
Payment amount as a decimal string. Matches the value you submitted.
Three-letter ISO 4217 currency code.
The upstream provider that processed the payment. For example: "everest", "triple000".
true if the customer must complete 3D Secure authentication before the payment can be captured.
3DS redirect data. null if 3DS is not required. Show threeDsData properties
URL to redirect the customer to for 3DS authentication.
HTTP method for the redirect. Either "GET" or "POST".
Key-value pairs to submit alongside the redirect. Only populated for POST redirects.
ISO 8601 timestamp of when the payment was created.
curl -X POST https://api.gateway.accelebit.com/v1/payments \
-H "Content-Type: application/json" \
-H "X-API-Key: smtgw_sk_test_your_secret_key" \
-H "Idempotency-Key: pay_abc123" \
-d '{
"amount": "55.00",
"currency": "EUR",
"paymentMethod": "card",
"customerId": "user_12345",
"card": {
"number": "4111111111111111",
"expiryMonth": "12",
"expiryYear": "28",
"cvv": "123",
"holderName": "Jane Doe"
},
"billing": {
"firstName": "Jane",
"lastName": "Doe",
"email": "jane@example.com",
"phone": "+35699123456",
"country": "MT",
"address": "123 Main Street",
"city": "Valletta",
"postalCode": "VLT 1000"
},
"returnUrl": "https://yoursite.com/payment/callback",
"merchantRef": "order_98765"
}'
201 - Payment Captured
201 - 3DS Required
400 - Validation Error
401 - Unauthorized
{
"data" : {
"id" : "f47ac10b-58cc-4372-a567-0e02b2c3d479" ,
"status" : "captured" ,
"amount" : "55.00" ,
"currency" : "EUR" ,
"provider" : "everest" ,
"threeDsRequired" : false ,
"threeDsData" : null ,
"createdAt" : "2026-04-09T12:01:00.000Z"
}
}