Endpoint
Authentication
Include your API key credentials as request headers:Request body
The ID of the customer making the payment. Must be a valid customer record in your account.
The charge amount in naira as a string. Do not include kobo — the API converts internally. For example,
"1000" charges ₦1,000.ISO 4217 currency code. Use
"NGN" for Nigerian naira.Your unique reference for this transaction. Must be unique across all your transactions. Used to query status and correlate webhooks.
The full card number (Primary Account Number). Transmitted in plain text to the API; the API encrypts it before passing to the processor. Do not pre-encrypt this value.
The card PIN. Transmitted in plain text to the API; the API encrypts it server-side.
Card expiry date in
YYMM format. For example, "2504" represents April 2025.The 3-digit CVV/CVV2 security code printed on the card.
Response codes
Thedata.responseCode field in a successful response indicates the next step:
| Code | Meaning |
|---|---|
00 | Payment approved. Transaction is complete. |
T0 | OTP required. Proceed to Authenticate OTP (Verve / Mastercard). |
S0 | 3DS authentication required. Redirect the user to the 3DS URL. |
Example request
Example responses
Response fields
true when the API call succeeded (even if the card was declined — check data.responseCode).A human-readable summary of the outcome.
The raw response from the payment processor.
