Authorization
Cortina SQR uses the Authorization command to notify the integrator about the result of a card tap in order to initiate the authorization process with the Cortina payment provider.
This command is essential for proceeding to transaction confirmation or rejection handling.
Request
Nayax's servers send a POST request to your configured Authoirzation endpoint, which would be of the following format:
(customer's URL)/Cortina/StaticQR/Authorization
The payload includes the full result of the card scan operation:
{
"BasicInfo": {
"TransactionId": "236584335969834429321847829253667359,",
"Amount": 0.1,
"CurrencyCode": "USD",
"CurrencyNumeric": 376,
"SiteId": 12
},
"MachineInfo": {
"Id": 869761713,
"Name": "TestPayStaticQR V2",
"TerminalId": 987654321,
"DecimalPlace": 2,
"Offset": 2,
"GroupId": "Beverages",
"OperatorId": 12345,
"ZipCode": 10001,
"Country": {
"Name": "United States of America",
"NumericCode": 840,
"Alpha2Code": "US",
"Alpha3Code": "USA"
}
},
"ActorInfo": {
"Id": 2001102296,
"Name": "Far East Dev Zone",
"OperatorId": 2000305191,
"OperatorName": "TanyaT_OP",
"MerchantId": 10011
},
"CustomData": {
"DirectActor": 12312312,
"Operator": 123121434134,
"Distributor": "superDistributor",
"Actor": 12312312,
"Machine": 131231348
}
}Request Parameters
The following table describes the parameters included in the request body:
| Field | Type | Description |
|---|---|---|
| Transaction Identifiers & Financial Details | ||
TransactionId | String(36) | The unique identifier for this transaction.
|
NayaxTransactionId | Int(64) | The Nayax internal unique ID for the transaction, echoed in further requests. |
Amount | Double | The payment amount (Decimal with max 3 digits for cents).
|
CurrencyCode | String(3) | Currency code in ISO 4217 Alpha-3 format. |
CurrencyNumeric | String(3) | Currency code in ISO 4217 Numeric-3 format. |
| Machine & Device Information | ||
SiteId | Int(16) | Region of the Nayax server. |
HwSerial | String | Nayax Device Hardware serial number. |
Type | String | Nayax Device Type. |
Id | Int(64) | Machine entity unique ID allocated in Nayax's back office. |
Name | String(255) | Machine Name. |
TerminalId | String(255) | Terminal identifier. Contact Nayax TPOC to define. |
DecimalPlace | Int(64) | Decimal point location for amounts.
|
Offset | String(255) | UTC timezone offset. |
GroupId | String | For Nayax internal use only. |
ZipCode | String(255) | Machine Zip Code. |
| Country & Actor Details | ||
Name | String | Country Full Name (for machine location). |
NumericCode | String(3) | ISO-3166-1 Numeric-3 code. |
Alpha2Code | String(2) | ISO-3166-1 Alpha-2 code. |
Alpha3Code | String(3) | ISO-3166-1 Alpha-3 code. |
Id | Int(64) | Actor ID. |
Name | String(255) | Direct Merchant name. |
OperatorId | Int(64) | Merchant operator ID (Integer format). |
OperatorName | String | Merchant operator name. |
MerchantId | Int(64) | Merchant ID. Contact Nayax TPOC to define. |
OperatorId | String(255) | Merchant ID (String format). |
| Custom Data (JSON Strings) | ||
DirectActor | String | Direct actor custom data (String in JSON format). |
Operator | String | Operator custom data (String in JSON format). |
Distributor | String | Distributor custom data (String in JSON format). |
Actor | String | Actor custom data (String in JSON format). |
Machine | String | Machine custom data (String in JSON format). |
Response
The Authorization Response that the customer's payment method would send to Nayax's servers.
The payload should look as follows:
{
"Status": {
"Verdict": "Approved",
"StatusMessage": "Cortina V2 Stub Tester"
},
"PaymentInfo": {
"SrvTranId": "string",
"AuthCode": "string",
"AuthAmount": 0,
"SettAmount": 0,
"RRN": "string",
"Token": "string",
"AuthDateTime": "string",
"SettDateTime": "string",
"TraceNumber": "string",
"AuthSource": "string",
"AdditionalData": "string",
"IsGatewayTimeout": true
}
}Response Parameters
The following table describes the fields returned in the API response:
| Field | Type | Description |
|---|---|---|
| Transaction Status & Error Codes | ||
Verdict | String | The final status of the request. Must be one of the constant string values:
|
Code | Int(32) | The Decline Code. Conditional—only present if
|
StatusMessage | String(255) | A free text field containing the transaction status message or additional varying data regarding the outcome. |
CustomDeclineCode | String | Used for specifying a custom decline code (e.g., related to Soft Decline or Switch Interface). May reflect the acquirer's response code. |
| Financial & Time Details | ||
AuthAmount | Double | The original amount requested in the |
SettAmount | Double | The original amount requested in the |
AuthDateTime | String | The date and time the |
SettDateTime | Double | The Settlement Date/Time. Irrelevant for the Authorization command. |
| Transaction Identifiers & References | ||
SrvTranId | String | The Integrator's internal transaction ID.
|
AuthCode | String(40) | External Authorization Code (usually from the Card Issuer's bank). |
RRN | String | Reference Retrieval Number (RRN). Highly recommended to be visible to the consumer/card holder for support. |
Token | String(256) | A unique token for the transaction. For Nayax internal use only. |
TraceNumber | String | Trace number. For Nayax internal use only. |
AuthSource | String(5) | For Nayax internal use only. |
InitiateTranReference | Int(64) | Conditional: Reflects the original Nayax Transaction ID for prepaid loyalty card re-attempts. |
| System & External Data | ||
IsGatewayTimeout | Bool | Indicates if a gateway timeout occurred (valid in the response). |
ProviderExternalData | String | External data from the provider in JSON format string. |
IsRevalueCard | Bool | Indication if card is allowed revalue. |
Updated 16 days ago