Charge a Card in One Step
Authorize and capture a payment in a single request. Use for digital goods or any order you fulfill immediately.
POST /payment/purchase authorizes and captures funds in a single round-trip. Use it when you can fulfill the order immediately — digital goods, SaaS subscriptions, or in-stock retail. For physical goods that ship later, consider Authorize + Capture to hold funds until fulfillment without settling early.
The full request and response schemas — every card/shopper/amount field, the status values, and refusalCode/actionRequired/token detail — are documented in the parameters and response panels above (generated from the API spec).
id is the Therius payment UUID — store it, it’s the handle for a later Refund or Cancel or Refund call. paymentCode (e.g. "PC-1234567890") is a separate reference for reconciliation, support and Inquiry — it is not accepted for refund/cancel.Examples
Charge a card
amount.value is always in minor units. 1999 = $19.99 for USD (exponent 2). 5000 = ¥5000 for JPY (exponent 0). Always use the exponent field to determine the decimal position.status is "pending_3ds", redirect the cardholder to actionRequired.url to complete the 3D Secure challenge. Once they finish, call POST /payment/resume with the sessionId from the pending_3ds response to continue. If you use the Therius JS SDK, call sdk.handleAction(result.actionRequired) — it handles the redirect and resume automatically.Authorizations
Your secret API key: Bearer prv_production_xxx (production) or Bearer prv_sandbox_xxx (sandbox).
Headers
A UUID you generate per operation. Required in production. Retrying with the same key returns the original response.
Body
Your merchant account identifier. Validated against the Bearer key's merchant; required if the key maps to more than one merchant account.
Your internal order reference. Must be unique per merchant — use it to correlate Therius payments with your own records.
Card input for one-off payments: exactly one instrument (cardData / nonceData / tokenData) plus optional stored-credential and installment modifiers.
- Raw card (PCI DSS)
- SDK nonce
- Vault token
Alternative payment method data — use instead of card for APMs such as Pix, ACH or Boleto. Structure varies by method.
Payment method code. Omit for card payments; for APMs pass the code, e.g. pix, ach, boleto.
Shopper information. Required when tokenizing a card (card.<instrument>.tokenize: true).
Per-payment webhook URL override (HTTPS only). Therius posts the final payment status here when it changes asynchronously.
Pin this payment to a specific gateway connection. Omit to use your routing rules.
Cardholder's IP address, passed to fraud scoring when available.
Arbitrary string key/value pairs, echoed back in webhook payloads.
Response
Payment processed
The Therius payment id. Returned by POST /payment/authorization and POST /payment/purchase; use it as the {id} path segment for capture, refund, cancel and cancel_or_refund.
"9f8b2c1e-4d5a-6b7c-8d9e-0f1a2b3c4d5e"
captured - funds settled; authorized - funds reserved, call capture to settle; declined - issuer declined, see refusalCode; pending_3ds - a 3DS challenge is required, see actionRequired; pending_action - an external action (redirect, voucher) is required, see actionRequired; failed - processing error unrelated to the issuer; cancelled - authorization voided; refunded - captured funds returned.
captured, authorized, declined, pending_3ds, pending_action, failed, cancelled, refunded Therius receipt ID, for reconciliation, support and Inquiry. NOT the handle for capture/refund/cancel — use id for that.
"PC-1234567890"
Your orderCode, echoed back.
Your merchantCode, echoed back.
Issuer authorization code on an approved payment. The field name is misspelled on the wire (no h) - this is intentional and stable.
Payment method used, e.g. card, pix, ach.
Code of the gateway connection that processed the payment.
Display name of the gateway connection that processed the payment.
Card details from the response: masked PAN, brand, type, and the network transaction/reference IDs to cite on future MIT charges.
Alternative-payment-method details (redirect URL, QR code, barcode) when paymentMethod is an APM.
Present when the card was tokenized (tokenize: true).
Present when status is pending_3ds or pending_action. Describes what the cardholder must do next — with the Therius JS SDK, pass the whole object to sdk.handleAction().
Present when status is declined. See the Declined Payments concept page for the full code table and how to react to each recoveryAction.

