Static QR- Start
Request
The Cortina payment method would send a Start command to Nayax's servers in order to notify them about starting a transaction. The call would be of the following format:
https://lynx.nayax.com/payment/v2/transactions/cortina/(payment method's name)/start
The payload includes the following details:
{
"AppUserID": "19",
"TerminalId": "0456789456789456",
"TransactionId": "123456789qwertyuioasdfghjkl",
"SecretToken": "mrV3U3nsgGFrE3w5-wnBo_WCLPce-pZ1awRvTVTkungMIKThTVbj_fiXdfoGclhn0"
}{
"AppUserID": "19",
"UniQR": "https://qr.nayax.com/v1/rWg_p6pZh1pwjvbkGrmBLy3KgwSz3dq-y63r5FPxk2NOWw2",
"TransactionId": "123456789qwertyuioasdfghjkl",
"SecretToken": "mrV3U3nsgGFrE3w5-wnBo_WCLPce-pZ1awRvTVTkungMIKThTVbj_fiXdfoGclhn0"
}Request Parameters
The table below describes all the parameters of the request:
Field | Type | Required | Description |
|---|---|---|---|
| String(40) | Yes | The consumer's user ID on the 3rd party's app |
| String(255) | No | Conditional, must be sent if UniQR is not sent. Unique Identifier for the vending machine printed on a sticker or encoded in the QR (HW-Serial of the device. not Machine ID) |
| String | No | Conditional, must be sent if TerminalId is not sent. The value of the QR code which is linked to said machine. More on that on Cortina SQR's FAQ |
| String(40) | Yes | Unique identifier for the transaction which will be echoed in further requests and responses. Minimum of 8 chars. |
| String(64) | Yes | Unique key for the your system. This value will be Provided by Nayax in advance. You should keep this value as a secret in your system. |
| Double | No | Decimal (max 3 digits for cents) The balance of user's account. |
Response
The Start Response that Nayax's servers would send to the payment method.
The payload should look as follows:
{
"Status": {
"Verdict": "Approved",
"StatusMessage": "Cortina V2 Stub Tester"
}
}Request Parameters
The table below describes all the parameters of the request:
Field | Type | Required | Description |
|---|---|---|---|
| String | Yes | Const string. |
| Int(32) | No | Conditional - Only if verdict value is declined. Valid decline codes (must be a code from this list): 1 - Insufficient funds 2 - Transaction ID unknown 3 - Cardholder exceeded daily / weekly / monthly transaction count limit 4 - Cardholder exceeded transaction amount limit 5 - Suspected Fraud 6 - General system failure 7 - Invalid amount 8 - Request cannot be parsed (format error) 9 - Transaction not allowed to cardholder 40 - For Nayax internal use only. 990 - CertificateFileName not found 991 - Failed to decipher message body 992 - Timeout exception 994 - Card Brand not supported 996 - Transaction ID Unknown / Duplicate Transaction ID (Start Session Error) 997 - Missing mandatory parameters 998 - Validation / request cannot be parsed 999 - General exception 1010 - Public Key Certificate not found 1011 - Method not Implemented |
| String(255) | No | Transaction status message free text field / additional varying data |
| String | No | This field is used for specifying a custom decline code (i.e. Soft Decline or Switch Interface). The value might be the same as the acquirer's response code or composed by other data. |
Updated about 12 hours ago