Processes a payment using a previously saved card token. This endpoint is primarily used for recurring payments (MIT or CIT transactions). This endpoint may be exposed server-to-server for two-factor authentication flows, potentially requiring changes to authentication mechanisms. Recurring payment calls will originate only from the server. Fiscalization and eReceipt processes should also be operated during this flow.Documentation Index
Fetch the complete documentation index at: https://devzone.nayax.com/llms.txt
Use this file to discover all available pages before exploring further.
Request
Requests are performed to the/charge-token endpoint.
Request Parameters
The table below describes the parameters of the request:| Parameter | Location | Type | Description | Required |
|---|---|---|---|---|
requestType | basicInfo | Int32 | Defines the transaction type (e.g., 0 for Sale/Charge). | Yes |
entryMode | basicInfo | Int32 | Defines how card data was obtained (e.g., 1 for E-commerce/MIT). | Yes |
amount | basicInfo | Decimal | The monetary amount to be charged. | Yes |
currency | basicInfo | String | The three-letter ISO currency code. | Yes |
countryCode | basicInfo | String | Two-letter ISO country code of transaction origin. | Yes |
tokenModel | basicInfo | Int32 | The specific tokenization scheme used. Token Type Behavior: A token’s type (subscription/COF/top-up) is set during its initial creation and stored in our system. If a subsequent Charge Token request includes a different token type parameter, it is ignored. The system always uses the original token type from the initialization request, regardless of what is provided in later charge requests. | Yes |
cvc | basicInfo | String | null | CVC/CVV (usually null for tokenized MIT). | Yes |
token | basicInfo | String | The unique token representing the card to be charged. | Yes |
merchantRequestId | basicInfo | String | Unique ID generated by the merchant for this request. | Yes |
isSaveTokenWithoutConsent | basicInfo | Boolean | Flag for new token saving (usually false). | Yes |
machineId | machineInfo | String | Unique identifier for the transaction machine/terminal. | Yes |
cardholderEmail | cardHolderInfo | String | The customer’s email address. | Yes |
cardHolderUniqId | cardHolderInfo | String | A unique merchant ID for the cardholder. | Yes |
additionalData | additionalInfo | String | Custom data as a JSON string (e.g., loyalty info). | No |
validationKey | Root | String | Cryptographic key (HMAC) to authenticate the request. | Yes |
Response
A successful validation returns a200 OK status and a body containing the validated merchant details:
Response Parameters
The table below describes the parameters of the response:| Parameter | Location | Type | Description |
|---|---|---|---|
verdict | status | String | ’Approved’ or ‘Declined’. The final decision. |
code | status | Int32 | Response code: 0 for Approved, otherwise the relevant decline code. |
statusMessage | status | String | A descriptive message about the transaction outcome. |
amount | basicInfo | Decimal | The transaction amount processed. |
currency | basicInfo | String | The currency of the transaction. |
merchantRequestId | basicInfo | String | The unique ID from the original request. |
transactionId | basicInfo | String | The unique transaction ID assigned by the Nayax system. |
transactionTimeUtc | basicInfo | DateTime | The UTC timestamp when the transaction was completed. |
nayaxTokenId | paymentInfo | String | The token ID used for the charge. |
siteId | paymentInfo | Int32 | The site ID associated with the payment. |
providerTransactionId | paymentInfo | String | The unique ID assigned by the Payment Service Provider (PSP). |
decimalPlace | paymentInfo | Int32 | The number of decimal places used for the currency/amount. |