Skip to main content
Cortina Prepaid uses the Void command to notify the integrator in order to initiate the cancellation process with the Cortina payment provider whenever one of the below scenarios takes place:
  1. Issues during vending process- Cancel button being pressed by the consumer/ vend failure (issue with product dispensing/service providing) by the machine.
  2. No Sale Response until timeout.
This command is essential for having the payment provider aware that the transaction was cancelled on Nayax’s end (as well as from the consumer’s POV), and is done in order for the payment provider to complete the cancellation on its end.
Note: this command is relevant for PreSelection only. Its equivalent in the PreAuthorization flow is the Cancel command.

Request

Nayax’s servers send a POST request to your configured Void endpoint, which would be of the following format: (customer's URL)/Cortina/PrePaid/Void The payload includes the full result of the card scan operation:

Request Parameters

The following table describes the parameters included in the request body:
FieldTypeDescription
Core Identifiers & Financial Details
TransactionIdString(36)The unique identifier for this transaction.
  • Echoes the encrypted ID from /StartSession if used.
  • Otherwise, the Nayax Engine generates this value.
NayaxTransactionIdInt(64)The Nayax internal unique ID for the transaction, echoed in further requests.
SrvTranIdStringThe Integrator’s internal transaction ID.
  • Conditional: Required if /StartSession was not used.
  • If used, it should be empty or echo the Transaction ID.
AmountDoubleThe payment amount (Decimal with max 3 digits for cents).
  • Example: 1 cent = 0.01.
  • Note: Currencies with no decimal places are still represented as a double (e.g., 234 JYN = 234.0).
AuthAmountDoubleThe original amount requested in the /Authorization request. Conditional on /Authorization response.
SettAmountDoubleThe original amount requested in the /Settlement or /Sale process. Irrelevant for the Authorization command.
AuthCodeString(40)External Authorization Code (usually from the Card Issuer’s bank).
RRNStringReference Retrieval Number (RRN). Recommended to be visible to the consumer/card holder for support.
TokenString(256)A unique transaction token. For Nayax internal use only.
TraceNumberStringTrace number. For Nayax internal use only.
AuthSourceString(5)For Nayax internal use only.
CurrencyCodeString(3)Currency code in ISO 4217 Alpha-3 format.
CurrencyNumericString(3)Currency code in ISO 4217 Numeric-3 format.
Timestamp & Status Flags
AuthDateTimeStringThe date and time the /Authorization took place. Format:ddMMyyHHmmss.
SettDateTimeDoubleThe Settlement Date/Time. Irrelevant for the Authorization command.
MachineAuTimeStringMachine Authorization Timestamp.
TimeoutMSInt(32)Nayax Server Timeout configuration in milliseconds.
IsGatewayTimeoutBoolIndicates if a gateway timeout occurred (valid in the response).
Card & Payment Details
CardNumberStringCard details provided based on transaction type:
  • Full Track 2 for card-present Authorization/Sale.
  • Card PAN only for other transaction types.
EntryModeString(4)How the card details were read. Common values include:
  • MCR: Magnetic Stripe Read (swipe)
  • CON: Contact Chip (insert)
  • CLS: Contactless Chip (tap)
  • NFC: Phone/Mobile contactless
  • QR: QR code read
  • Consult Nayax POC for specific edge cases.
ExpYearStringCard expiration year (YY format). Conditional (only when Interface is 1 or 10).
ExpMonthStringCard expiration month (MM format). Conditional (only when Interface is 1 or 10).
EMVDataStringEMV tags data in TLV (Tag-Length-Value) format.
IDNumberStringCardholder ID Number.
PrimaryIdStringPrimary Brand ID.
PrimaryDescriptionStringPrimary Brand Description.
SecondaryIdStringSecondary Brand ID.
SecondaryDescriptionStringSecondary Brand Description.
RandomNumberStringFurther information is unavailable.
CardHolderNameStringCard Holder Name.
Machine & Location Details
SiteIdInt(16)Region of the Nayax server.
HwSerialStringNayax Device Hardware serial number.
FWVersionStringDevice Firmware version.
TypeStringNayax Device Type.
IdInt(64)Machine entity unique ID.
NameString(255)Machine Name.
TerminalIdString(255)Terminal identifier. Contact Nayax TPOC to define.
DecimalPlaceInt(64)Decimal point location for amounts.
  • Example: 2 means amounts like 123.45.
OffsetString(255)UTC timezone offset.
GroupIdStringFor Nayax internal use only.
OperatorIdString(255)Merchant ID.
RegionString(255)Machine Region.
CityString(255)Machine City.
ZipCodeString(255)Machine Zip Code.
NameStringCountry Full Name (for machine location).
NumericCodeString(3)ISO-3166-1 Numeric-3 code.
Alpha2CodeString(2)ISO-3166-1 Alpha-2 code.
Alpha3CodeString(3)ISO-3166-1 Alpha-3 code.
StateStringActor geo state code.
CityString(255)Actor geo City.
CountryCodeStringActor geo Country code (ISO3).
ZipCodeString(255)Actor geo Zip code.
AddressString(255)Actor geo Address.
LongitudeStringMachine Location Longitude.
LatitudeStringMachine Location Latitude.
Custom Data (JSON)
DirectActorStringDirect actor custom data (String in JSON format).
OperatorStringOperator custom data (String in JSON format).
DistributorStringDistributor custom data (String in JSON format).
ActorStringActor custom data (String in JSON format).
MachineStringMachine custom data (String in JSON format).
AdditionalDataStringGeneral custom data string in JSON format.

Response

The Void Response that the customer’s payment method would send to Nayax’s servers.
The payload should look as follows:

Response Parameters

The following table describes the fields returned in the API response:
FieldTypeDescription
Transaction Status & Error Codes
VerdictStringThe final status of the request. Must be one of the constant string values:
  • Approved
  • Declined
CodeInt(32)The Decline Code. Conditional—only present if Verdict is ‘Declined’. Valid decline codes include:
  • 1: Insufficient funds
  • 5: Suspected Fraud
  • 6: General system failure
  • 7: Invalid amount
  • 8/998: Format/parsing error or Validation error
  • 992: Timeout exception
  • 997: Missing mandatory parameters
  • 999: General exception
  • See full documentation for the complete list of error codes.
StatusMessageString(255)A free text field containing the transaction status message or additional varying data regarding the outcome.
CustomDeclineCodeStringUsed for specifying a custom decline code (e.g., related to Soft Decline or Switch Interface). May reflect the acquirer’s response code.
Financial & Identifier Fields
SrvTranIdStringThe Integrator’s internal transaction ID.
  • Conditional: Required if /StartSession was not used.
  • If used, it should be empty or echo the Transaction ID.
AuthCodeString(40)External Authorization Code (usually from the Card Issuer’s bank).
AuthAmountDoubleThe original amount requested in the /Authorization Request.
SettAmountDoubleThe original amount requested in the /Settlement or /Sale process. Irrelevant for the Authorization command.
RRNStringReference Retrieval Number (RRN). Highly recommended to be visible to the consumer/card holder for support.
TokenString(256)A unique token for the transaction. For Nayax internal use only.
AuthDateTimeStringThe date and time the /Authorization took place. Format:ddMMyyHHmmss.
SettDateTimeDoubleThe Settlement Date/Time. Irrelevant for the Authorization command.
TraceNumberStringThe Trace number. For Nayax internal use only.
AuthSourceString(5)For Nayax internal use only.
System & Conditional Flags
IsGatewayTimeoutBoolIndicates if a gateway timeout occurred (valid in the response).
ProviderExternalDataStringExternal data from the provider in JSON format string.
InitiateTranReferenceInt(64)Conditional: Reflects the original Nayax Transaction ID for prepaid loyalty card re-attempts.
IsRevalueCardBoolIndication if card is allowed revalue.