Skip to main content
POST
Charge a card directly (server-to-server)

Headers

x-api-key
string
required

Body

application/json
amount
number
required
Required range: x >= 0.01
currency
string
required
mpgsSessionId
string

Hosted card-session id (SAQ-A) — the card was attached client-side, so no PAN transits your server.

Required string length: 1 - 200
Example:

"SESSION0002abcDEF"

walletToken
object
billingAddress
object

Payer billing address. Optional — when omitted no billing country is sent to the card provider. Axra never substitutes a default: a fabricated country would be declared to the issuer that issued the card.

breezeSessionId
string

Breeze Risk JS SDK session id from the browser SDK (CIT charges)

Required string length: 1 - 200
Example:

"breeze_sess_abc123"

browser
string

EMV-3DS2 payer user-agent string (device.browser)

Example:

"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) ..."

browserDetails
object

EMV-3DS2 browser signals (device.browserDetails) for a 3DS2 challenge

statementDescriptor
object

What the cardholder sees on their statement. Optional — when omitted we derive it from your registered business name. Strongly recommended on a shared acquiring MID, where the fallback is the MID registration rather than your name.

card
object
savedTokenId
string
returnUrl
string<uri>
email
string<email>
description
string
metadata
object
saveCard
boolean
customerIp
string

Response

Charge processed

success
boolean
required
Example:

true

data
object
required