API – Developers Docs API – Developers Docs
  • Cyberpac
  • Addon Payments
  • POS integrated Payments
  • SpanishSwitch to Spanish
API – Developers Docs API – Developers Docs
API – Developers Docs
  • Cyberpac
  • Addon Payments
  • POS integrated Payments
  • SpanishSwitch to Spanish

POS integrated Payments

  • Icono de carpeta cerrada Icono de apertura de carpetaPayment integrated with Android POS
    • InStore Payment API Android
    • InStore Payment API Windows
    • InStore Payment REST API
  • Icono de carpeta cerrada Icono de apertura de carpetaPayment integrated with Smartphone POS
    • Payment integration with Smartphone POS
  • Icono de carpeta cerrada Icono de apertura de carpetaPOS integrated Payments
    • Transactions
      • Tokenization
    • Reports
    • Device
  • Icono de carpeta cerrada Icono de apertura de carpetaHost2Host Integration – POI-Switch Protocol
  • Icono de carpeta cerrada Icono de apertura de carpetaPOS Data sheets

Host2Host Integration – POI-Switch Protocol

  • Version: 1.22

The estimate to complete an integration with the Commerce 2.0 solution is 21 days. Our support team is fully available to assist you during this development process and ensure a successful implementation.

Introduction

This document describes the protocol between the POI and the EP (part of SWITCH, from now on “EP”), detailing the structure of the messages, fields, data exchange and fail recovery mechanisms.

The information provided here is intended to be used by POI and EP developers to implement the communication procedures from both sides’ point of view.

In scope of this document:

  • Initially the transactions covered are financial or related to financial activity, but it would be perfectly possible to add non-financial functionality as requested, considering the flexibility of ISO8583 that allows to create custom made generic purpose requests and responses.

Out of scope of this document:

  • POI settings parameters will not be part of any ISO8583 message of this document.
  • Neither Cardholder signatures uploading.  
  • Repetition of the request message is not supported.

Glossary and normative references

Below are some of the terms that we will see in this guide:

  • STR: System Transaction Reference. Unique identifier of the transaction at POI level.
  • EP:Entry Point.
  • POI/POS:Point Of Interaction. Combination of hardware and software that together processes a financial card transaction. It corresponds to the client part of the protocol described in this document.
  • SWITCH: Multi-Vendor Gateway that authorizes credit card or direct payments processing for e-businesses, online retailers, etc… It corresponds to the server part of the protocol described in this document.
  • PAN: Primary Account Number. The number that is embossed and/or encoded on a plastic card that identifies the issuer and the particular Cardholder account.
  • BIN: Bank Identification Number. Initial four to six numbers that appear on a credit card. The bank identification number uniquely identifies the institution issuing the card.
  • Acquirer: Financial institution (or its agent) which acquires from the card acceptor the data relating to a transaction and initiates that data into an interchange system.
  • Card Acceptor: Party accepting the card and presenting transaction data to an acquirer.
  • Card Issuer: Financial institution (or its agent) which issues the financial transaction card to the Cardholder.
  • Data capture: Act of collecting the details of a financial transaction.,
  • Transaction: One or more related messages within the same message class designed to complete (in so far as this is possible) the intention of the sender of the original message.
  • Receipt: Paper document on which transaction details are printed for either the Cardholder or the card acceptor.
  • Fallback: Alternative (lower security) technology used to collect data from a card, e.g. from a contact IC transaction to a magnetic stripe transaction.
  • TF: Transaction Flow.
  • NTF: Normal Transaction Flow.
  • CTF: Cancellation Transaction Flow.
  • UTF: Unrecognized Transaction Flow.
  • TTF:Timeout Transaction Flow.
  • TIN:Transaction Identification Number.

Below is the glossary of ISO regulations:

  • ISO 3166: Codes for the representation of countries and their subdivisions.
  • ISO 8583-1:Financial transaction card originated messages – Interchange message specifications.
  • EMV: Integrated Circuit Card Specification for Payments Systems, also known as EMV.
  • ISO 4217:Codes for the representation of currencies and funds.
  • ISO 7813:Financial transaction cards.
  • ISO 639:Standards to identify languages.

Transport Protocol Architecture

This section describes the procedure that clients (POI) must follow to communicate with the server (Eps). It will be client – server message-oriented synchronous communication using TCP sockets.

Connection establishment

The POI will always initiate the connection; it will be TCP normal connection establishment procedure using the parameters present in its configuration (IP address/host name and port). Normally the POI will have different sets of access data to reach Eps, at least main and alternative. If the connection through the main access data is not possible, the POI will use the alternative parameters, going back to main if secondary also fails; this process will be repeated a fixed number of times, also configured as part of the POI parameters, as well as the delay between attempts.

Data transfer

At network level the length of the message will be included as a 32 bytes header:

  • HEAD
  • MESSAGE

The HEAD have a fixed length of 32 bytes with the following format:

  • Message length: 4 bytes in little endian format.
  • Protocol version: 4 bytes in ASCII format.
  • RFU: 24 bytes for future use. 

The format of MESSAGE is according to ISO 8583-1:

  • MGID
  • BITMAP1/BITMAP2
  • DATA ELEMENTS

This is an example of Data transfer:

  • Message: 01 20 80 00 00 00 00 00 00 01 01 01 02 03 04 05 06 07 08
  • Length of the message: 19 bytes
  • Version of protocol: 0001

Connection Termination

As a general rule, the element sending the last message will wait for the other closing the communications link (usually the POI will close the communications).

In the case of an Invalid Message Notification, the final sending element could be both client and server, since it does not require a response.

Message format

The structure of the messages to be exchanged is based on the ISO 8583 standard, but with the necessary modifications to match the expected functionality. There is no type or size limitation on the data that can be processed. The approach is to use the structure according to the standard, but with the necessary adaptation in the definition of messages and field contents.

The maximum message size corresponds to the sum of the size of all the bits in the protocol frame.

The message has three parts:

  • MGID
  • BITMAP1/BITMAP2
  • DATA ELEMENTS

For more information, see the Glossary and normative references section of this document.

Message ID (MGID)

Built with 4 bytes (ASCII numeric).

PositionNameDescription
1stVersion Number1: ISO 8583:1993
2ndMessage Type– 1: Authorization
– 2: Financial
– 3: File Actions
– 4: Reversals
– 5: Reconciliation
– 6: Administrative
3rdMessage Function– 0: Request
– 1: Response
– 2: Advice
– 3: Advice Response
– 4: Notification
4thTransaction Indicator– 0: Acquirer
– 1: Repeat
– 4: Others

These are the different messages included in the POI-EP interface.

MGIDMessage Description
1100/1101Authorization Request
1110Authorization Response
1200/1201Financial Request
1210Financial Response
1220/1221Financial Advice Request
1230Financial Advice Response
1304File Actions Request
1314File Actions Response
1420Cancellation Advice Request
1430Cancellation Advice Response
1520Reconciliation Advice Request
1530Reconciliation Advice Response
1600Administrative Request 2
1610Administrative Response 2
1644Administrative Notification

BITMAPs

The transport protocol requires one or two BITMAPs, each consisting of 8 binary bytes. The presence of the second is indicated by the most significant bit in BITMAP 1 (P1).

Data elements

These are the different data fields found in the message as configured in the BITMAPs.

The formats allowed in the data fields are:

  • AN: Numeric and alphabetic characters.
  • ANP: Numeric, alphabetic and blank characters.
  • ANS: Numeric, alphabetic and special characters.
  • ANSB: Numeric, alphabetic, special and binary characters.
  • N: Numeric characters.
  • B: Binary data.

These are the types of fields you will find:

TypeCodingDescription
FixedType + LengthFixed length fields are indicated by a length and a type: N16, AN12, ANS15
Variable 2 bytes length LLVARType + minimum length +.. + maximum length
(both lengths are optional)
Variable length fields up to 99 bytes: B..16, N..11, ANS10..17
Variable 3 bytes length LLLVARType + minimum length +… + maximum lengthVariable length fields up to 999 bytes: ANSB…300, B…, B…255
Variable 4 bytes length LLLLVARType + minimum length +…. + maximum lengthVariable length fields up to 9999 bytes: ANSB…2350, B…, B…1255

Communication flows

In the following sub-sections you will find the different communication flows depending on the case.

Normal Transaction Flow (NTF)

The Normal Transaction Flow (NTF) applies to the following transactions: 1100/1101-1110, 1200/1201-1210, 1220/1221-1230, 1304-1314, 1420-1430, 1600-1610.

Here is an example of a single transaction flow (request and response):

The Normal Transaction Flow (NTF) follows these steps:

  1. The POI establishes the connection to the Switch.
  2. The POI sends the message data to the Switch.
  3. The Switch sends the received message data to the POI.
  4. The POI closes the connection.

In general for all transaction types, upon receipt and successful validation of the response, the communication procedure is terminated and the transaction can continue locally at the POI.

If an additional action is required that needs connection to the EP, such as a cancellation, another complete and independent communication process will be initiated as a separate transaction.

Unrecognized Transaction Flow (UTF)

The Unrecognized Transaction Flow (UTF) applies to the following transactions: 1100/1101-1110, 1200/1201-1210, 1220/1221-1230, 1304-1314, 1420-1430, 1600-1610.

This flow (UTF) is constructed in two parts. The first part corresponds to the request/response message transaction; and the second part corresponds to the Administrative Notification request (1644).

The flow of the Unrecognized Transaction (UTF) follows these steps:

First part: request / response message.

  1. The POI establishes the connection to the Switch.
  2. The POI sends the message data to the Switch.
  3. The Switch sends the received message data to the POI.
  4. The POI closes the connection. At this point the message is not recognised by the POI.

Second part: Administrative Notification request (1644)

  1. The POI establishes the connection to the Switch.
  2. The POI sends MGID = 1644 to the Switch.
  3. The POI closes the connection.

If the element receiving the message determines that the message is invalid, it will notify the sending element of the situation by means of a 1644 message including information explaining why the notification was triggered.

This data could be used by the notified element to keep a record of communication failures, following the following flow:

  1. The POI establishes the connection to the Switch.
  2. The POI sends the message data to the Switch. At this point the message is not recognized by the Switch.
  3. The Switch sends the MGID = 1644 to the POI.
  4. The POI closes the connection.

This notification mechanism applies to both sides of the information exchange flow in the same way. If the EP does not understand a request, the response will be a 1644 message including the original information from the request.

A message shall be considered unrecognizable if:

  • It does not follow the ISO 8583 specification protocol.
  • The message ID is not covered by the ISO 8583 specification.
  • The BITMAPs are not or have not been constructed correctly.
  • The fields present in the message do not correspond to the content of the BITMAPs.
  • One of the mandatory fields is not present in the message.

Cancellation Transaction Flow (CTF)

The Cancellation Transaction Flow (CTF) applies only to these financial transactions: 1100/1101-1110, 1200/1201-1210, 1220/1221-1230.

This flow is composed of two normal transaction flows (NTF). The first flow for the financial transaction request/response message; and the second flow for the cancellation request/response message.

The Cancellation Transaction Flow (CTF) follows these steps:

First part: financial transaction request.

  1. The POI establishes the connection with the Switch.
  2. The POI sends the financial message to the Switch.
  3. The Switch sends the received financial message data to the POI.
  4. The POI closes the connection. At this point, the financial response has been accepted by the Switch.

Second part: cancellation request / reply message

  1. The POI establishes the connection to the Switch.
  2. The POI sends MGID = 1420 to the Switch.
  3. The Switch sends the received MGID = 1430 to the POI.
  4. The POI closes the connection.

The cancellation message must be constructed and sent to delete the transaction registered in the Switch in these cases:

  • Communication Timeout: The Switch does not respond to the request message.
  • Communication MAC Error: Response from the Switch with the wrong MAC.
  • Communication Format Error: Switch response with some format error.
  • Transaction declined in GAC2: The Switch authorizes the EMV Transaction* but the POI rejects it in the second step when generating AC (wrong ARPC or other case).
  • Transaction declined Remove Card: The Switch authorizes the EMV* Transaction but the cardholder removes the card before the second Generate AC is performed.
  • Transaction declined Others: The Switch authorizes the EMV Transaction* but the POI declines it for some reason.

* The EMV Transaction is considered authorized from the SWITCH when the following two conditions are met:

  • BIT 39 is present in the response message and its value is equal to ‘000’.
  • Tag 8A is present in the response message (BIT55) and the value is a valid code authorized according to “EMV Integrated Circuit Card Specification for POI Payment System” (e.g., ’00’).

Waiting Time Transaction Flow (TTF)

The Waiting Time Transaction Flow (TTF) only applies to these financial transactions: 1200/1201-1210, 1220/1221-1230.

This flow consists of two parts. The first part for the financial transaction request; and the second part for the cancellation request/response message.

*n=0 for phase 1

The Waiting Time Transaction Flow (TTF) follows these steps:

First part: financial transaction request

  1. The POI establishes the connection to the Switch.
  2. The POI sends the financial message to the Switch.
  3. The POI waits for the response, which never arrives, and times out.
  4. The POI closes the connection and proceeds to repeat the request the number of times specified in the terminal configuration.

Second part: cancel request/response message

  1. The POI establishes the connection to the Switch.
  2. The POI sends MGID = 1420 to the Switch.
  3. The Switch sends the received MGID = 1430 to the POI.
  4. The POI closes the connection.

When the response has not been received within the set timeout or the connection is lost, a repeat message is determined for all such transactions that is sent and waits for the response.

This process is repeated the number of times specified in the terminal configuration parameters. When the cycle ends, the transaction will be considered as failed.

At that time the cancel message will be constructed and sent to delete the transaction registered in the Switch. The transaction may or may not be processed by the Switch (the POI is unable to tell), but in either case the cancel message will be sent.

POI-EP Transactions

These are the transactions included in the POI-EP interface:

Transaction NameMGIDs
Pre-Authorization1100/1101 (Authorization Request)
1110 (Authorization Response)
Pre-Authorization DCCTwo-transaction flow combined:
– First pre-authorization (obtains DCC info)
– Second pre-authorization
Sale1200/1221 (Financial Request)
1210 (Financial Response)
Sale DCCTwo-transaction flow combined:
– First sale (obtains DCC info)
– Second sale
Return1220/1221 (Financial Advice Request)
1230 (Financial Advice Response)
Pre-Authorization Completion1220/1221 (Financial Advice Request)
1230 (Financial Advice Response)
Cancellations1420 (Cancellation Advice Request)
1430 (Cancellation Advice Response)
Invalid Notification Message1644 (Administrative Notification)
Key Identification1600 (Administrative Request 2)
1610 (Administrative Response 2)
Key LoadTwo-transaction flow combined:
– Key Identification
– 1600 (Administrative Request 2)
1610 (Administrative Response 2)
Key RenewalTwo-transaction flow combined:
– Key Identification
– 1600 (Administrative Request 2)
1610 (Administrative Response 2)
Offline Transaction Upload1220/1221 (Financial Advice Request)
1230 (Financial Advice Response)
Upload EMV data of Previous Failed Transactions1304 (File Actions Request)
1314 (File Actions Response)
Get Token1600 (Administrative Request 2)
1610 (Administrative Response 2)
DCC Verification1220/1221 (Financial Advice Request)
1230 (Financial Advice Response)
Cash Withdrawal1220/1221 (Financial Advice Request)
1230 (Financial Advice Response)
Settlement1520/1521 (Reconciliation Advice Request)
1530 (Reconciliation Advice Response)
IPP Merchant ChargePhase 2
IPP Card ChargePhase 2
Tax FreePhase 2
Tax Free DivaPhase 2
PremiaPhase 2
Other IPPPhase 2
Consumer creditPhase 2
Mobile Top-upPhase 2
Prepaid card top-upPhase 2
Operations by referencePhase 2

Pre-Authorization transaction

This is an Authorization Transaction with request MSGID = 1100 (1101 if it is a repeated message).

Request Message Format (MSGID = 1100/1101)

BITField NameTypeRequired/OptionalDescription
2BINN8RCard BIN
3Processing CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be debited
11Transaction ID NumberN6RIdentifies TF as a sequence N
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS)
19Country CodeN3RCountry code of the merchant/terminal
22Point of Service Entry Mode (POS/POI)AN12RDetails of the transaction and the terminal (card data capture capability, card data capture method, cardholder authentication method,…). Specific format in ANNEX I.
23Card Number SequenceN3OContactless EMV cards only: PAN sequence number.
If in EMV, the contactless card tag 5F34 will be included here.
24Function CodeN3ODetermines the purpose of the message. Fixed value: 100.
See Annex 1 for values
35Card DataB..99OEncrypted track 2 data for EMV, magnetic stripe and contactless cards.
Important: Mandatory when a token is not sent.
41Terminal IDANS8RLogical ID of the terminal
42Merchant IDAN15RLogical ID of the merchant
46Original Reference NumberANP12OOriginal number of the pre-authorization transaction. It is generated by the SWITCH.
It is only included in the pre-authorization update to refer to the original pre-authorization being updated.
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data
– Status and configuration
– Transaction indicators
– Manual entry of transaction data (only if card data is captured manually)
– Additional POI data
49Transaction Currency CodeN3RCurrency code used in the transaction
52PinBlockB8ORequired only if there is online PIN verification
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security Information data.
55EMV ICC DataB..255OEMV only, EMV contactless card. Specific format in Annex 1.
Data is included in TLV format:
– EMV ICC/Cless Data
Not required if the token is sent
56Additional DataB..99OAdditional transaction data
61Additional Business DataB..999OAdditional data included for business reasons
64MACB8OMessage Authentication Code

Response Message Format (MSGID = 1110)

BITField NameTypeRequired/OptionalDescription
3Processing CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be debited. Same value as in the request if the transaction is approved. If not, it will be set to 0.
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS). The SWITCH generates this value, it is on the ticket.
37Reference NumberANP12ORequired if the response code is approved. The SWITCH generates the transaction identification, it will be on the ticket.
See Annex 3 for more information.
38Authorization NumberANP6ORequired if the response code is approved. Authorization code, this data will be on the ticket.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code
– Authorization response code
– DCC response code (see DCC pre-authorization).
41Terminal IDANS8RLogical ID of the terminal
42Merchant IDAN15RLogical ID of the merchant
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Transaction response data
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security Information data.
55EMV ICC DataB..255OEMV card only. Required if CHIP data related by the issuer is approved. Specific format in Annex 1.
Data is included in TLV format:
– EMV Response Data
56Additional DataB..99OAdditional transaction data. Specific format in Annex 1.
Data in TLV format:
– Special features data
60Transaction DataANS..99999OTransaction data
61Additional Business DataB..999OAdditional data included for business reasons
64MACB8OMessage Authentication Code

The valid flows for these transactions are:

  • NTF
  • CTF: If the sale is accepted by the Switch but something incorrect happens at the POI (e.g., the printer cannot process the ticket).
  • UTF: If the sale response message is incorrectly formatted.
  • TTF: If the response never arrives at the POI.

In any case, the BIT11 (Transaction Identification Number) has the same value during the flow. Once the flow completes successfully, the POI increments its sequence, never before the flow is complete.

This is especially important in CTF and TTF flows because if the cancel request/response message fails, the POI will not increment the sequence number and will send in the next transaction the same sequence number. The Switch must delete the previous transaction in this case. See Annex 2 of this guide for more information.

For more information on why the reference number is generated by the Switch, see Annex 3 of this guide.

Pre-authorization transaction with DCC

The DCC Pre-Authorization transaction is a two-step financial transaction:

  1. DCC Transaction Verification: the terminal sends the card data to verify if the card can be processed by DCC. If yes, the Switch responds with the information and the cardholder will choose the desired transaction currency (local or card).
  2. DCC Pre-Authorization Transaction: When the cardholder selects the currency (local or cardholder), the POI sends the DCC Pre-Authorization Transaction with the selected currency.

Second step. Format of the request message (MSGID = 1100/1101)

BITField NameTypeRequired/OptionalDescription
2BINN8RCard BIN
3Processing CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be debited
11Transaction ID NumberN6RIdentifies TF as a sequence N
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS)
19Country CodeN3RCountry code of the merchant/terminal
22Point of Service (POS/POI) Entry ModeAN12RDetails of the transaction and the terminal (card data capture capability, card data capture method, cardholder authentication method, etc.). Specific format in ANNEX I.
23Card Number SequenceN3OContactless EMV cards only: PAN sequence number. If in EMV, the contactless card tag 5F34 will be included here.
24Function CodeN3RDetermines the purpose of the message. Valid values:
– 185: DCC in the cardholder’s currency.
– 187: DCC in the local currency
See Annex 1 for values
35Card DataB..99OEncrypted track 2 data for EMV, magnetic stripe and contactless cards.
Important: Required when a token is not sent.
41Terminal IDANS8RLogical ID of the terminal
42Merchant IDAN15RLogical ID of the merchant
46Original Reference NumberANP12OOriginal number of the pre-authorization transaction. It is generated by the SWITCH.
It is only included in the pre-authorization update to refer to the original pre-authorization being updated.
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data
– Status and configuration
– Transaction indicators
– Manual entry of transaction data (only if card data is captured manually)
– Additional POI data
49Transaction Currency CodeN3RCode of the currency used in the transaction
52PinBlockB8ORequired only if there is online PIN verification
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
55EMV ICC DataB..255OEMV only, contactless EMV card. Specific format in Annex 1.
Data is included in TLV format:
– EMV ICC/Cless Data
Not required if the token is sent
56Additional DataB..99RFirst step in DCC verification of the transaction identifier. Specific format in Annex 1. Data is included in TLV format:
– Original transaction data.
61Additional Business DataB..999OAdditional data included for commercial reasons
64MACB8OMessage authentication code

Second step. Format of the response message (MSGID = 1110)

BITField NameTypeRequired/OptionalDescription
3Processing CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be debited. Same value as in the request if the transaction is approved. If not, it will be set to 0.
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS). The SWITCH generates this value, it is on the ticket.
37Reference NumberANP12ORequired if the response code is approved. The SWITCH generates the identification of the transaction, it will be on the ticket.
See Annex 3 for more information.
38Authorization NumberANP6ORequired if the response code is approved. Authorization code, this data will be on the ticket.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code
– Authorization response code
41Terminal IDANS8RLogical ID of the terminal
42Merchant IDAN15RLogical ID of the merchant
48Additional InformationAN…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Transaction response data
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
55EMV ICC DataB..255OEMV card only. Required if CHIP related data is approved by the issuer. Specific format in Annex 1.
Data is included in TLV format:
– EMV response data
56Additional DataB..99OAdditional transaction data. Specific format in Annex 1.
60Transaction DataANS..99999OTransaction data
61Additional Business DataB..999OAdditional data included for commercial reasons
64MACB8OMessage authentication code

Valid flows for the first sale transaction are:

  • NTF
  • UTF: If the sale response message is incorrectly formatted.

Valid flows for the second sale transaction are:

  • NTF
  • CTF: If the sale is accepted by the Switch but something incorrect happens at the POI (e.g., the printer cannot process the ticket).
  • UTF: If the sale response message is incorrectly formatted.
  • TTF: If the sales response never arrives.

In any case, the BIT11 (Transaction Identification Number) has the same value during the flow. Once the flow completes successfully, the POI increments its sequence, never before the flow is complete.

This is especially important in CTF and TTF flows because if the cancel request/response message fails, the POI will not increment the sequence number and will send in the next transaction the same sequence number. The Switch must delete the previous transaction in this case. See Annex 2 of this guide for more information.

For more information on why the reference number is generated by the Switch, see Annex 3 of this guide.

Sale transaction

This is a financial Transaction with request MSGID = 1200 (1201 if repeated Message).

Request Message Format (MSGID = 1200/1201)

BITField NameTypeRequired/OptionalDescription
2BINN8RCard BIN
3Processing CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be debited
5Donation AmountN12OAmount to be donated
11Transaction ID NumberN6RIdentifies TF as a sequence N
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS)
19Country CodeN3RCountry code of the merchant/terminal
22Point of Service (POS/POI) Entry ModeAN12RDetails of the transaction and the terminal (card data capture capability, card data capture method, cardholder authentication method, etc.). Specific format in ANNEX I.
23Card Number SequenceN3OContactless EMV cards only: PAN sequence number. If in EMV, the contactless card tag 5F34 will be included here.
24Function CodeN3ODetermines the purpose of the message. Fixed value: 200.
See Annex 1 for values
35Card DataB..99OEncrypted track 2 data for EMV, magnetic stripe and contactless cards.
Important: Required when a token is not sent.
41Terminal IDANS8RLogical ID of the terminal
42Merchant IDAN15RLogical ID of the merchant
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data
– Status and configuration
– Transaction indicators
– Manual entry of transaction data (only if card data is captured manually)
– Additional POI data
49Transaction Currency CodeN3RCode of the currency used in the transaction
52PinBlockB8ORequired only if there is online PIN verification
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
55EMV ICC DataB..255OEMV only, contactless EMV card. Specific format in Annex 1.
Data is included in TLV format:
– EMV ICC/Cless Data
Not required if the token is sent
56Additional DataB..99OAdditional transaction data
61Additional Business DataB..999OAdditional data included for commercial reasons
111Raw DataB..99999OQR-Barcode raw data.
It is mandatory if the card data capture method is “QR” or “Barcode” (See BIT 22).
QR-Barcode entry data will be reported in “QR entry transaction data” (See BIT 48)
128MACB8OMessage authentication code

Response Message Format (MSGID = 1210)

BITField NameTypeRequired/OptionalDescription
3Processing CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be debited. Same value as in the request if the transaction is approved. If not, it will be set to 0.
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS). The SWITCH generates this value, it is on the ticket.
37Reference NumberANP12ORequired if the response code is approved. The SWITCH generates the identification of the transaction, it will be on the ticket.
See Annex 3 for more information.
38Authorization NumberANP6ORequired if the response code is approved. Authorization code, this data will be on the ticket.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code
– Authorization response code
– DCC response code (see DCC pre-authorization).
41Terminal IDANS8RLogical ID of the terminal
42Merchant IDAN15RLogical ID of the merchant
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Transaction response data
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
54Additional AmountAN..120OPartial payments:
– Original transaction amount
55EMV ICC DataB..255OEMV card only. Required if CHIP related data is approved by the issuer. Specific format in Annex 1.
Data is included in TLV format:
– EMV response data
56Additional DataB..99OAdditional transaction data. Specific format in Annex 1.
Data in TLV format:
– Special features data
60Transaction DataANS..99999OTransaction data
61Additional Business DataB..999OAdditional data included for commercial reasons
64MACB8OMessage authentication code

The valid flows for this transaction are:

  • NTF
  • CTF: If the sale is accepted by the Switch but something incorrect happens at the POI (e.g. the printer cannot process the ticket).
  • UTF: If the sale response message is incorrectly formatted.
  • TTF: If the sales response never arrives.

In any case, the BIT11 (Transaction Identification Number) has the same value during the flow. Once the flow completes successfully, the POI increments its sequence, never before the flow is complete.

This is especially important in CTF and TTF flows because if the cancel request/response message fails, the POI will not increment the sequence number and will send in the next transaction the same sequence number. The Switch must delete the previous transaction in this case. See Annex 2 of this guide for more information.

For more information on why the reference number is generated by the Switch, see Annex 3 of this guide.

Sale transaction with DCC

The DCC Sales Transaction is a financial transaction built in two steps:

  1. DCC Transaction Verification: the terminal sends the card data to verify if the card can be processed by DCC. If yes, the Switch responds with the information and the cardholder will choose the desired transaction currency (local or card).
  2. DCC Sale Transaction: When the cardholder selects the currency (local or cardholder), the POI sends the DCC Sale Transaction with the selected currency.

Second step. Format of the request message (MSGID = 1200/1201)

BITField NameTypeRequired/OptionalDescription
2BINN8RCard BIN
3Processing CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be debited
11Transaction ID NumberN6RIdentifies TF as a sequence N
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS)
19Country CodeN3RCountry code of the merchant/terminal
22Point of Service (POS/POI) Entry ModeAN12RDetails of the transaction and the terminal (card data capture capability, card data capture method, cardholder authentication method, etc.). Specific format in ANNEX I.
23Card Number SequenceN3OContactless EMV cards only: PAN sequence number. If in EMV, the contactless card tag 5F34 will be included here.
24Function CodeN3ODetermines the purpose of the message:
– 285: DCC in the cardholder’s currency
– 287: DCC in the local currency
See Annex 1 for values
35Card DataB..99OEncrypted track 2 data for EMV, magnetic stripe and contactless cards.
Important: Required when a token is not sent.
41Terminal IDANS8RLogical ID of the terminal
42Merchant IDAN15RLogical ID of the merchant
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data
– Status and configuration
– Transaction indicators
– Manual entry of transaction data (only if card data is captured manually)
– Additional POI data
49Transaction Currency CodeN3RCode of the currency used in the transaction
52PinBlockB8ORequired only if there is online PIN verification
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
55EMV ICC DataB..255OEMV only, contactless EMV card. Specific format in Annex 1.
Data is included in TLV format:
– EMV ICC/Cless Data
Not required if the token is sent
56Additional DataB..99OFirst step in DCC verification of the transaction identifier. The format is specified in Annex 1.
Data is included in TLV format:
– Original transaction data
61Additional Business DataB..999OAdditional data included for commercial reasons
64MACB8OMessage authentication code

Second step. Response message format (MSGID = 1210)

BITField NameTypeRequired/OptionalDescription
3Processing CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be debited. Same value as in the request if the transaction is approved. If not, it will be set to 0.
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS). The SWITCH generates this value, it is on the ticket.
37Reference NumberANP12ORequired if the response code is approved. The SWITCH generates the identification of the transaction, it will be on the ticket.
See Annex 3 for more information.
38Authorization NumberANP6ORequired if the response code is approved. Authorization code, this data will be on the ticket.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code
– Authorization response code
41Terminal IDANS8RLogical ID of the terminal
42Merchant IDAN15RLogical ID of the merchant
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Transaction response data
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
55EMV ICC DataB..255OEMV card only. Required if CHIP related data is approved by the issuer. Specific format in Annex 1.
Data is included in TLV format:
– EMV response data
56Additional DataB..99OAdditional transaction data. Specific format in Annex 1.
60Transaction DataANS..99999OTransaction data
61Additional Business DataB..999OAdditional data included for commercial reasons
64MACB8OMessage authentication code

Valid flows for the first sale transaction are:

  • NTF
  • UTF: If the sale response message is incorrectly formatted.

Valid flows for the second sale transaction are:

  • NTF
  • CTF: If the sale is accepted by the Switch but something incorrect happens at the POI (e.g., the printer cannot process the ticket).
  • UTF: If the sale response message is incorrectly formatted.
  • TTF: If the sales response never arrives.

In any case, the BIT11 (Transaction Identification Number) has the same value during the flow. Once the flow completes successfully, the POI increments its sequence, never before the flow is complete.

This is especially important in CTF and TTF flows because if the cancel request/response message fails, the POI will not increment the sequence number and will send in the next transaction the same sequence number. The Switch must delete the previous transaction in this case. See Annex 2 of this guide for more information.

For more information on why the reference number is generated by the Switch, see Annex 3 of this guide.

Refund transaction

This is a financial Advice Transaction with request MSGID = 1220 (1221 if repeated Message).

Request Message Format (MSGID = 1220/1221)

BITField NameTypeRequired/OptionalDescription
2BINN8RCard BIN
3Processing CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be debited
11Transaction ID NumberN6RIdentifies TF as a sequence N
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS)
19Country CodeN3RCountry code of the merchant/terminal
22Point of Service (POS/POI) Entry ModeAN12RDetails of the transaction and the terminal (card data capture capability, card data capture method, cardholder authentication method, etc.). Specific format in ANNEX I.
23Card Number SequenceN3OContactless EMV cards only: PAN sequence number.
If in EMV, the contactless card tag 5F34 will be included here.
24Function CodeN3RDetermines the purpose of the message:
– 200: Normal refund
– 202: Refund with reference and last 4 digits of the PAN
See Annex 1 for values
35Card DataB..99OEncrypted track 2 data for EMV, magnetic stripe and contactless cards.
Important: Required when a token is not sent.
37Reference NumberANP12OSwitch original transaction identifier for online operations, and POI Reference Number in the case of offline operations.
Required for refunds with reference.
41Terminal IDANS8RLogical ID of the terminal
42Merchant IDAN15RLogical ID of the merchant
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data
– Status and configuration
– Transaction indicators
– Manual entry of transaction data (only if card data is captured manually)
– Additional POI data
49Transaction Currency CodeN3RCode of the currency used in the transaction
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
55EMV ICC DataB..255OEMV only, contactless EMV card. Specific format in Annex 1.
Data is included in TLV format:
– EMV ICC/Cless Data
Not required if the token is sent. A refund can be made using reference + token
56Additional DataB..99OAdditional transaction data
61Additional Business DataB..999OAdditional data included for commercial reasons
111Raw DataB..99999OQR-Barcode raw data.
It is mandatory if the card data capture method is “QR” or “Barcode” (See BIT 22).
QR-Barcode entry data will be reported in “QR entry transaction data” (See BIT 48)
128MACB8OMessage authentication code

Response Message Format (MSGID = 1230)

BITField NameTypeRequired/OptionalDescription
3Processing CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be debited. Same value as in the request if the transaction is approved. If not, it will be set to 0.
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS). The SWITCH generates this value, it is on the ticket.
37Reference NumberANP12ORequired if the response code is approved. The SWITCH generates the identification of the transaction, it will be on the ticket.
See Annex 3 for more information.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code
– Financial advice response code
41Terminal IDANS8RLogical ID of the terminal
42Merchant IDAN15RLogical ID of the merchant
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Transaction response data
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
56Additional DataB..99OAdditional transaction data. Specific format in Annex 1.
60Transaction DataANS..99999OTransaction data
61Additional Business DataB..999OAdditional data included for commercial reasons
64MACB8OMessage authentication code

The valid flows for this transaction are:

  • NTF
  • CTF: If the transaction is accepted by the Switch but something incorrect happens in the POI (e.g. the printer cannot process the ticket).
  • UTF: If the transaction response is incorrectly formatted.
  • TTF: If the transaction response never arrives.

In any case, the BIT11 (Transaction Identification Number) has the same value during the flow. Once the flow completes successfully, the POI increments its sequence, never before the flow is complete.

This is especially important in CTF and TTF flows because if the cancel request/response message fails, the POI will not increment the sequence number and will send in the next transaction the same sequence number. The Switch must delete the previous transaction in this case. See Annex 2 of this guide for more information.

For more information on why the reference number is generated by the Switch, see Annex 3 of this guide.

Pre-Authorization Completion Transaction

This is a financial Advice Transaction with request MSGID = 1220 (1221 if repeated Message).

Request Message Format (MSGID = 1220/1221)

BITField NameTypeRequired/OptionalDescription
2BINN8RCard BIN
3Processing CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be debited
11Transaction ID NumberN6RIdentifies TF as a sequence N
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS)
19Country CodeN3RCountry code of the merchant/terminal
22Point of Service (POS/POI) Entry ModeAN12RDetails of the transaction and the terminal (card data capture capability, card data capture method, cardholder authentication method, etc.). Specific format in ANNEX I.
23Card Number SequenceN3OContactless EMV cards only: PAN sequence number.
If in EMV, the contactless card tag 5F34 will be included here.
24Function CodeN3ODetermines the purpose of the message. Fixed value: 201.
See Annex 1 for values
35Card DataB..99OEncrypted track 2 data for EMV, magnetic stripe and contactless cards.
Important: Required when a token is not sent.
37Reference NumberANP12RIdentification of the original transaction generated by the SWITCH
41Terminal IDANS8RLogical ID of the terminal
42Merchant IDAN15RLogical ID of the merchant
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data
– Status and configuration
– Transaction indicators
– Manual entry of transaction data (only if card data is captured manually)
– Additional POI data
49Transaction Currency CodeN3RCode of the currency used in the transaction
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
Not required if the token is sent
55EMV ICC DataB..255OEMV only, contactless EMV card. Specific format in Annex 1.
Data is included in TLV format:
– EMV ICC/Cless Data
Not required if the token is sent
56Additional DataB..99OAdditional transaction data. See Annex 1 for specific formats.
61Additional Business DataB..999OAdditional data included for commercial reasons
64MACB8OMessage authentication code

Response Message Format (MSGID = 1230)

BITField NameTypeRequired/OptionalDescription
3Processing CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be debited. Same value as in the request if the transaction is approved. If not, it will be set to 0.
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS). The SWITCH generates this value, it is on the ticket.
37Reference NumberANP12ORequired if the response code is approved. The SWITCH generates the identification of the transaction, it will be on the ticket.
See Annex 3 for more information.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code
– Financial advice response code
41Terminal IDANS8RLogical ID of the terminal
42Merchant IDAN15RLogical ID of the merchant
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Transaction response data
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
56Additional DataB..99OAdditional transaction data.
60Transaction DataANS..99999OTransaction data
61Additional Business DataB..999OAdditional data included for commercial reasons
64MACB8OMessage authentication code

The valid flows for this transaction are:

  • NTF
  • CTF: If the transaction is accepted by the Switch but something incorrect happens at the POI (e.g., the printer cannot process the ticket).
  • UTF: If the transaction message is incorrectly formatted.
  • TTF: If the transaction response never arrives.

In any case, the BIT11 (Transaction Identification Number) has the same value during the flow. Once the flow completes successfully, the POI increments its sequence, never before the flow is complete.

This is especially important in CTF and TTF flows because if the cancel request/response message fails, the POI will not increment the sequence number and will send in the next transaction the same sequence number. The Switch must delete the previous transaction in this case. See Annex 2 of this guide for more information.

For more information on why the reference number is generated by the Switch, see Annex 3 of this guide.

Key Identification Transaction

This is an Administrative Transaction with request MSGID = 1600.

Request Message Format (MSGID = 1600)

BITField NameTypeRequired/OptionalDescription
11Transaction ID NumberN6RIdentifies TF as a sequence N
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS)
24Function CodeN3RDetermines the purpose of the message. Fixed value:
– 690
See Annex 1 for values
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data
– Status and configuration
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
61Additional Business DataB..999OAdditional data included for commercial reasons
72Data RecordB…999RData to identify keys present in the POI. Specific format in Annex 1.
Data included in TLV format
– Key identification data
128MACB8OMessage authentication code

Response Message Format (MSGID = 1610)

BITField NameTypeRequired/OptionalDescription
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS). The SWITCH generates this value, it is on the ticket.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code
– Key response code
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
61Additional Business DataB..999OAdditional data included for commercial reasons
72Data RecordB…999RData containing information of the challenge from the server. Specific format in Annex 1.
Data is included in TLV format:
– Response to key identification data
128MACB8OMessage authentication code

The valid flows for this transaction are:

  • NTF
  • UTF: if response is a bad formatted message.

Key Load Transaction

The Key Upload Transaction is an administrative transaction that follows two steps:

  1. Key Identification Transaction: The terminal sends the key data and receives a fragment of the information (a challenge).
  2. Key Upload Transaction: The terminal sends a MAC calculated with the challenge received in the Key Identification Transaction (for the authentication process) and receives the new Upload Keys if the challenge is calculated correctly.

The second step is an Administrative Transaction with request MSGID = 1600.

Second step. Request Message Format (MSGID = 1600)

BITField NameTypeRequired/OptionalDescription
11Transaction ID NumberN6RIdentifies TF as a sequence N
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS)
24Function CodeN3RDetermines the purpose of the message. Fixed value:
– 691
See Annex 1 for values
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data
– Status and configuration
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
61Additional Business DataB..999OAdditional data included for commercial reasons
72Data RecordB…999RData to identify keys present in the POI. Specific format in Annex 1.
Data included in TLV format
– Key identification data
128MACB8OMessage authentication code

Second step. Response Message Format (MSGID = 1610)

BITField NameTypeRequired/OptionalDescription
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS). The SWITCH generates this value, it is on the ticket.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code
– Key response code
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
61Additional Business DataB..999OAdditional data included for commercial reasons
72Data RecordB…999RData containing information of the challenge from the server. Specific format in Annex 1.
Data is included in TLV format:
– Response to key identification data
111Raw DataB..999999OToken value
128MACB8OMessage authentication code

The valid flows for the Second Step transaction are:

  • NTF
  • UTF: if response is a bad formatted message.

Key Renovation Transaction

The Key Renewal Transaction is an administrative transaction that follows two steps:

  1. Key Identification Transaction: The terminal sends the data and receives a fragment of the information (challenge).
  2. Administrative Transaction: The terminal sends a MAC calculated with the challenge received from the Key Identification Transaction (by the authentication process) and receives the new renewal keys.

The second step is an Administrative Transaction with request MSGID = 1600.

Second step. Request Message Format (MSGID = 1600)

BITField NameTypeRequired/OptionalDescription
11Transaction ID NumberN6RIdentifies TF as a sequence N
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS)
24Function CodeN3RDetermines the purpose of the message. Fixed value:
– 692
See Annex 1 for values
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data
– Status and configuration
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
61Additional Business DataB..999OAdditional data included for commercial reasons
72Data RecordB…999RData to identify keys present in the POI. Specific format in Annex 1.
Data included in TLV format
– Key update data
128MACB8OMessage authentication code

Second step. Response Message Format (MSGID = 1610)

BITField NameTypeRequired/OptionalDescription
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS). The SWITCH generates this value, it is on the ticket.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code
– Key response code
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
61Additional Business DataB..999OAdditional data included for commercial reasons
72Data RecordB…999RData containing information of the challenge from the server. Specific format in Annex 1.
Data is included in TLV format:
– Response to key update data
128MACB8OMessage authentication code

The valid flows for the Second Step transaction are:

  • NTF
  • UTF: if response is a bad formatted message.

Key Removing Transaction

The Key Removal Transaction is an administrative transaction that follows two steps:

  1. Key Identification Transaction: The terminal sends the key data and receives a fragment of the information (challenge).
  2. Administrative Transaction: The terminal sends a MAC calculated with the challenge received in the Key Identification Transaction (by the authentication process) and receives the references of the keys to be deleted.

The second step is an Administrative Transaction with request MSGID = 1600.

Second step. Request Message Format (MSGID = 1600)

BITField NameTypeRequired/OptionalDescription
11Transaction ID NumberN6RIdentifies TF as a sequence N
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS)
24Function CodeN3RDetermines the purpose of the message. Fixed value:
– 693
See Annex 1 for values
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data
– Status and configuration
53Security Control InformationB..99RDetails of the security data used for PIN/TRACK/PAN encryption and MAC.
Specific format in Annex 1.
Data is included in TLV format:
– Security information data.
61Additional Business DataB..999OAdditional data included for commercial reasons
72Data RecordB…999RData containing the authentication data and the terminal challenge data. Specific format in Annex 1.
Data is included in TLV format:
– Key data update.
For the generation of this data, it is necessary to use the Key Identification Data Response received in the First Step.
128MACB8OMessage authentication code

Second step. Response Message Format (MSGID = 1610)

BITField NameTypeRequired/OptionalDescription
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request.
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS). The SWITCH generates this value, it is on the ticket.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code
– Key response code
53Security Control InformationB..99RDetails of security data used for PIN/TRACK/PAN encryption and MAC. Specific format in Annex 1. Data is included in TLV format:
– Security Information Data
61Additional Business DataB..999OAdditional data included for business purposes.
72Data RecordB…999RData containing information about the server challenge. Specific format in Annex 1. Data is included in TLV format:
– Response to key update data
128MACB8OMessage authentication code.

The valid flows for the Second Step transaction are:

  • NTF
  • UTF: If response is a bad formatted message.

Cancellations Transactions

This is a Cancellation Advice Transaction with request MSGID = 1420.

Request Message Format (MSGID = 1420)

BITField NameTypeRequired/OptionalDescription
3Process CodeN6RAdditional transaction qualifiers.
4Transaction AmountN12RAmount to be debited.
11Transaction ID NumberN6RIdentifies TF as a sequence N.
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS).
19Country CodeN3RCountry code of the merchant/terminal.
24Function CodeN3ODetermines the purpose of the message. Same value as the transaction being canceled. See Annex 1 for values.
25Reason CodeN4OReason for the cancellation(s). Valid values:
– 4001: Pre-authorization cancellation.
– 4006: Communication time expired.
– 4007: Communication MAC error.
– 4008: Communication format error.
– 4009: Declined transaction: ARPC.
– 4010: Declined transaction: AAC.
– 4011: Declined transaction: GAC2.
– 4012: Declined transaction: Remove Card.
– 4013: Declined transaction: Others.
– 4020: Transaction declined by the Customer.
IMPORTANT: Required field for pre-authorization transactions.
37Reference NumberANP12ORequired for pre-authorization transactions.
41Terminal IdentifierANS8RLogical ID of the terminal.
42Merchant IdentifierAN15RLogical ID of the merchant.
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data.
– Status and configuration.
– Transaction indicators.
53Security Control InformationB..99RDetails of security data used for PIN/TRACK/PAN encryption and MAC. Specific format in Annex 1. Data is included in TLV format:
– Security Information Data.
55EMV ICC DataB..255OMandatory in EMV cancellations. Specific format in Annex 1. Data is included in TLV format:
– EMV ICC/Cless Data (2nd GenAC data).
Not required if the token is sent.
56Additional DataB..99ROriginal transaction ID. Included in TLV format. See Annex 1 for specific formats.
61Additional Business DataB..999OAdditional data included for business purposes.
64MACB8OMessage authentication code.

Response Message Format (MSGID = 1430)

BITField NameTypeRequired/OptionalDescription
3Process CodeN6RAdditional transaction qualifiers.
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request.
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS).
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code (The switch will always process the cancellation (==000) except in cases where it cannot find the original transaction data).
– Cancellation response code.
41Terminal IdentifierANS8RLogical ID of the terminal.
42Merchant IdentifierAN15RLogical ID of the merchant.
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Transaction response data.
53Security Control InformationB..99RDetails of security data used for PIN/TRACK/PAN encryption and MAC. Specific format in Annex 1. Data is included in TLV format:
– Security Information Data.
60Transaction DataANS..99999OThis field is present in the pre-authorization cancellation.
61Additional Business DataB..999OAdditional data included for business purposes.
64MACB8OMessage authentication code.

The Cancellation Transaction is part of the CTF or TTF flows to cancel a previous original transaction.

This cancellation is automatic and transparent to the cardholder.

The equivalent manual procedure would be to launch the process of a Return Transaction.

Invalid Message Notification

This is an Administrative Notification Transaction with request MSGID = 1644.

Request Message Format (MSGID = 1644)

BITField NameTypeRequired/OptionalDescription
11Transaction ID NumberN6RIdentifies TF as a sequence N.
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS).
24Function CodeN3ODetermines the purpose of the message. Same value as the original transaction. See Annex 1 for values.
25Reason CodeN4OReason for the cancellation(s). Valid values:
– 4600: Format error.
– 4601: Unrecognized message.
41Terminal IdentifierANS8OLogical ID of the terminal.
42Merchant IdentifierAN15OLogical ID of the merchant.
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Status and configuration (Key version).
53Security Control InformationB..99RDetails of security data used for PIN/TRACK/PAN encryption and MAC. Specific format in Annex 1. Data is included in TLV format:
– Security Information Data.
56Additional DataB..99ROriginal transaction ID. Included in TLV format. See Annex 1 for specific formats.
61Additional Business DataB..999OAdditional data included for business purposes.
64MACB8OMessage authentication code.

The Invalid Message Notification is a transaction that is part of the UTF flow to notify of an incorrect formatting / unknown message that the POI has previously received.

This notification is automatic and transparent to the cardholder.

Offline Transaction Upload

This is a financial Advice Transaction with request MSGID = 1220 (1221 if repeated Message).

Request Message Format (MSGID = 1220)

BITField NameTypeRequired/OptionalDescription
2BINN8RCard BIN.
3Process CodeN6RAdditional transaction qualifiers.
4Transaction AmountN12RAmount to be debited.
11Transaction ID NumberN6RIdentifies TF as a sequence N.
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS).
19Country CodeN3RCountry code of the merchant/terminal.
22Point of Service Entry Mode (POS/POI)AN12RDetails of the transaction and the terminal (card data capture capability, card data capture method, cardholder authentication method, etc.).
23Card Number SequenceN3OContactless EMV cards only: PAN sequence number. If in EMV, the contactless card tag 5F34 will be included here.
24Function CodeN3ODetermines the purpose of the message. Fixed value: 800. See Annex 1 for values.
35Card DataB..99OEncrypted track 2 data for EMV, magnetic stripe and contactless cards. Important: Mandatory when a token is not sent.
37Reference NumberANP12ROriginal transaction identification generated by the SWITCH.
38Authorization NumberANP6ROffline authorization number generated by the POI.
41Terminal IdentifierANS8RLogical ID of the terminal.
42Merchant IdentifierAN15RLogical ID of the merchant.
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data.
– Status and configuration.
49Transaction Currency CodeN3RCurrency code used in the transaction.
52PinBlockB8OMandatory if there is online PIN verification.
53Security Control InformationB..99RDetails of security data used for PIN/TRACK/PAN encryption and MAC. Specific format in Annex 1. Data is included in TLV format:
– Security Information Data.
Not required if the token is sent.
55EMV ICC DataB..255OEMV only, EMV contactless card. Specific format in Annex 1. Data is included in TLV format:
– EMV ICC/Cless Data.
61Additional Business DataB..999OAdditional data included for business purposes.
64MACB8OMessage authentication code.

Response Message Format (MSGID = 1230)

BITField NameTypeRequired/OptionalDescription
3Process CodeN6RAdditional transaction qualifiers.
4Transaction AmountN12RAmount to be debited. Same value as in the request if the transaction is approved. Otherwise, it will be set to 0.
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request.
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS). Same value as in the request.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code.
41Terminal IdentifierANS8RLogical ID of the terminal.
42Merchant IdentifierAN15RLogical ID of the merchant.
53Security Control InformationB..99RDetails of security data used for PIN/TRACK/PAN encryption and MAC. Specific format in Annex 1. Data is included in TLV format:
– Security Information Data.
61Additional Business DataB..999OAdditional data included for business purposes.
64MACB8OMessage authentication code.

The valid flows for this transaction are:

  • NTF
  • UTF: If the transaction message is incorrectly formatted.
  • TTF: If the transaction response never arrives.

In either case, the BIT11 (Transaction Identification Number) has the same value during the flow. Once the flow completes successfully, the POI increments its sequence, never before the flow is complete.

This is especially important in the TTF flow because if the cancel request/response message fails, the POI will not increment the sequence number and will send in the next transaction the same sequence number. The Switch must delete the previous transaction in this case. See Annex 2 of this guide for more information.

For more information on why the reference number is generated by the Switch, see Annex 3 of this guide.

Previous Failed Transactions EMV Data Upload

This is an File Action Transaction with request MSGID = 1304.

Request Message Format (MSGID = 1304)

BITField NameTypeRequired/OptionalDescription
11Transaction ID NumberN6RIdentifies TF as a sequence N.
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS).
24Function CodeN3ODetermines the purpose of the message. Fixed value: 802. See Annex 1 for values.
41Terminal IdentifierANS8RLogical ID of the terminal.
42Merchant IdentifierAN15RLogical ID of the merchant.
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data.
– Status and configuration.
– Up/download data (optional).
53Security Control InformationB..99RDetails of security data used for PIN/TRACK/PAN encryption and MAC. Specific format in Annex 1. Data is included in TLV format:
– Security Information Data.
Not required if the token is sent.
61Additional Business DataB..999OAdditional data included for business purposes.
111Raw DataB..99999ROffline data file. The format of this file is included in BIT48 (UP/DOWNLOAD DATA). Specific format in Annex 1.
128MACB8OMessage authentication code.

Response Message Format (MSGID = 1314)

BITField NameTypeRequired/OptionalDescription
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request.
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS). This value is on the ticket.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code.
– Cancellation response code.
41Terminal IdentifierANS8RLogical ID of the terminal.
42Merchant IdentifierAN15RLogical ID of the merchant.
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Transaction response data.
53Security Control InformationB..99RDetails of security data used for PIN/TRACK/PAN encryption and MAC. Specific format in Annex 1. Data is included in TLV format:
– Security Information Data.
61Additional Business DataB..999OAdditional data included for business purposes.
64MACB8OMessage authentication code.

Valid flows for this transaction are:

  • NTF
  • UTF: If response is a bad formatted message.

Get Token

Administrative message to get an authentication token.

Request Message Format (MSGID = 1600)

BITField NameTypeRequired/OptionalDescription
11Transaction ID NumberN6RIdentifies TF as a sequence N.
12Local Transaction DateN12RLocal date and time (YYDDHHMMSS).
24Function CodeN3RDetermines the purpose of the message. Fixed value: 900. See Annex 1 for values.
41Terminal IdentifierANS8RLogical ID of the terminal.
42Merchant IdentifierAN15RLogical ID of the merchant.
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data.
– Status and configuration.
53Security Control InformationB..99RDetails of security data used for PIN/TRACK/PAN encryption and MAC. Specific format in Annex 1. Data is included in TLV format:
– Security Information Data.
61Additional Business DataB..999OAdditional data included for business purposes.
64MACB8OMessage authentication code.

Response Message Format (MSGID = 1610)

BITField NameTypeRequired/OptionalDescription
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request.
12Local Transaction DateN12RLocal date and time (YYDDHHMMSS). This value is on the ticket.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code.
41Terminal IdentifierANS8RLogical ID of the terminal.
42Merchant IdentifierAN15RLogical ID of the merchant.
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Transaction response data.
53Security Control InformationB..99RDetails of security data used for PIN/TRACK/PAN encryption and MAC. Specific format in Annex 1. Data is included in TLV format:
– Security Information Data.
61Additional Business DataB..999OAdditional data added for commercial reasons.
111Raw DataB..99999RReceived token value
128MAC B8OMessage authentication code

DCC Verification Transaction

This is a financial Advice Transaction with request MSGID = 1220 (1221 if repeated Message).

Request Message Format (MSGID = 1220)

BITField NameTypeRequired/OptionalDescription
2BINN8RCard BIN
3Process CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be debited
11Transaction ID NumberN6RIdentifies TF as a sequence N
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS) of the offline transaction generated by the POI
19Country CodeN3RCountry code of the merchant/terminal
22Point of Service Entry Mode (POS/POI)AN12RDetails of the transaction and the terminal (card data capture capability, card data capture method, cardholder authentication method, etc.).
24Function CodeN3RDetermines the purpose of the message. Fixed value: 300. See Annex 1 for values.
35Card DataB..99OEncrypted track 2 data for EMV, magnetic stripe and contactless cards. Important: Mandatory when a token is not sent.
41Terminal IdentifierANS8RLogical ID of the terminal
42Merchant IdentifierAN15RLogical ID of the merchant
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data
– Status and configuration
– Transaction indicators
– Manual entry of transaction data (only if card data is manually captured)
49Transaction Currency CodeN3RCurrency code used in the transaction
53Security Control InformationB..99RDetails of security data used for PIN/TRACK/PAN encryption and MAC. Specific format in Annex 1. Data is included in TLV format:
– Security Information Data
61Additional Business DataB..999OAdditional data included for business purposes
64MACB8OMessage authentication code

Response Message Format (MSGID = 1230)

BITField NameTypeRequired/OptionalDescription
3Process CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be debited. Same value as in the request if the transaction is approved. Otherwise, it will be set to 0.
6Foreign Currency AmountN12OAmount expressed in the card currency. Mandatory if the transaction is suitable for DCC processing
10Exchange RateN8OExchange rate from local currency to foreign currency. BIT6 = BIT4 x BIT10. The leftmost digit indicates the decimal position from left to right; the rest of the digits represent the exchange rate value: 1.424209=61424209. Mandatory if the transaction is suitable for DCC (Dynamic Currency Conversion) processing.
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS). The SWITCH generates this value, it is on the ticket.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code
– DCC response code
41Terminal IdentifierANS8RLogical ID of the terminal
42Merchant IdentifierAN15RLogical ID of the merchant
49Local Currency CodeN3RLocal currency code used in the transaction
51Foreign Currency CodeN3OTransaction card currency code. Required if the transaction is suitable for DCC processing
53Security Control InformationB..99RDetails of security data used for PIN/TRACK/PAN encryption and MAC. Specific format in Annex 1. Data is included in TLV format:
– Security Information Data
56Additional DataB..99OAdditional transaction data. Specific format in Annex 1. Data included in TLV format:
– DCC transaction data (including card currency tag)
Required if the transaction is suitable for DCC processing.
60Transaction DataANS..99999OTransaction data
61Additional Business DataB..999OAdditional data included for business purposes
64MACB8OMessage authentication code

Valid flows for this transaction are:

  • NTF
  • UTF: If transaction response is a bad formatted message.

Cash-out Transaction

This is a financial Advice Transaction with request MSGID = 1220 (1221 if repeated Message).

Request Message Format (MSGID = 1220/1221)

BITField NameTypeRequired/OptionalDescription
2BINN8RCard BIN
3Process CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be withdrawn
11Transaction ID NumberN6RIdentifies TF as a sequence N
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS)
19Country CodeN3RCountry code of the merchant/terminal
22Point of Service Entry Mode (POS/POI)AN12RDetails of the transaction and the terminal (card data capture capability, card data capture method, cardholder authentication method, etc.).
23Card Secuence NumberN3OFor EMV and contactless cards only: PAN sequence of the card.
If present on EMV or contactless cards, the PAN sequence number will be included here (using tag 5F34).
24Function CodeN3RDetermines the purpose of the message. Fixed value: 310. See Annex 1 for values.
35Card DataB..99OEncrypted track 2 data for EMV, magnetic stripe and contactless cards. Important: Mandatory when a token is not sent.
41Terminal IdentifierANS8RLogical ID of the terminal
42Merchant IdentifierAN15RLogical ID of the merchant
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identification data
– Status and configuration
– Transaction indicators
– Manual entry of transaction data (only if card data is manually captured)
– Additional POI data
49Transaction Currency CodeN3RCurrency code used in the transaction
52PinBlockB8OMandatory if there is online PIN verification
53Security Control InformationB..99RDetails of security data used for PIN/TRACK/PAN encryption and MAC. Specific format in Annex 1. Data is included in TLV format:
– Security Information Data
55EMV ICC DataB..255OContactless or EMV cards only. Format in Annex 1. Data is included in TLV format:
– emv icc/cless data
56Additional DataB..99OAdditional transaction data
61Additional Business DataB..999OAdditional data included for business purposes
64MACB8OMessage authentication code

Response Message Format (MSGID = 1230)

BITField NameTypeRequired/OptionalDescription
3Process CodeN6RAdditional transaction qualifiers
4Transaction AmountN12RAmount to be debited. Same value as in the request if the transaction is approved. Otherwise, it will be set to 0.
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS). It is on the ticket.
37Reference NumberANP12ORequired if the response code is approved Switch generates transaction identifier. Data will be on the ticket.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
– Generic response code
– Cash withdrawal response code
41Terminal IdentifierANS8RLogical ID of the terminal
42Merchant IdentifierAN15RLogical ID of the merchant
48Additional InformationB…999RAdditional transaction information. Format Annex 1. Data is included in TLV format:
– Transaction response data
53Security Control InformationB..99RDetails of security data used for PIN/TRACK/PAN encryption and MAC. Specific format in Annex 1. Data is included in TLV format:
– Security Information Data
55EMV Issuer DataB..255OEMV cards only. Required if CHIP related data is approved by issuer. Data is included in TLV format.
56Additional DataB..99OAdditional transaction data. Specific format in Annex 1. Data included in TLV format:
– DCC transaction data (including card currency tag)
Required if the transaction is suitable for DCC processing.
60Transaction DataANS..99999OTransaction data
61Additional Business DataB..999OAdditional data included for business purposes
64MACB8OMessage authentication code

The valid flows for this transaction are:

  • NTF
  • CTF: If the transaction is accepted by the Switch but something incorrect happens at the POI (e.g., the printer cannot process the ticket).
  • UTF: If the transaction message is incorrectly formatted.
  • TTF: If the transaction response never arrives.

In any case, the BIT11 (Transaction Identification Number) has the same value during the flow. Once the flow completes successfully, the POI increments its sequence, never before the flow is complete.

This is especially important in CTF and TTF flows because if the cancel request/response message fails, the POI will not increment the sequence number and will send in the next transaction the same sequence number. The Switch must delete the previous transaction in this case. See Annex 2 of this guide for more information.

For more information on why the reference number is generated by the Switch, see Annex 3 of this guide.

Settlement Transaction

This is a Reconciliation Advice Transaction with request MSGID = 1520.

Request Message Format (MSGID = 1520)

BITField NameTypeRequired/OptionalDescription
11Transaction ID NumberN6RIdentifies TF as a sequence N
12Local Transaction timestampN12RLocal date and time (YYMMHHMMSS)
24Function CodeN3RDetermines the purpose of the message. Fixed value: 500
See Annex I for all values.
41Terminal IdentifierANS8RLogical ID of the terminal
42Merchant IdentifierAN15RLogical ID of the merchant
48Additional InformationB…999RAdditional transaction information. Specific format in Annex 1. Data is included in TLV format:
– Identifications Data
– Status and configuration
53Security Control InformationB..99RSecurity data details used for MAC.
Specific format in ANNEX I.
Data included in TLV format:
– Security Information Data
61Additional Business DataB..999OAdditional data included for business purposes
64MACB8OMessage authentication code

Response Message Format (MSGID = 1530)

BITField NameTypeRequired/OptionalDescription
11Transaction ID NumberN6RIdentifies TF as a sequence N. Same value as in the request
12Local Transaction DateN12RLocal date and time (YYMMDDHHMMSS). It is on the ticket.
39Response CodeN3RTransaction code. Values in Annex 1. Valid ones are:
Valid Values:
– Generic Response Code
– Reconciliation Response Code
41Terminal IdentifierANS8RLogical ID of the terminal
42Merchant IdentifierAN15RLogical ID of the merchant
48Additional InformationB…999RAdditional transaction information. Format Annex 1. Data is included in TLV format:
– Transaction response data
53Security Control InformationB..99RDetails of security data used for PIN/TRACK/PAN encryption and MAC. Specific format in Annex 1. Data is included in TLV format:
– Security Information Data
60Transaction DataANS..99999OTransaction data
61Additional Business DataB..999OAdditional data included for business purposes
74Number of Credits TransactionsN10RTotal number of Credits transactions
76Number of Debits TransactionsN10RTotal number of Debits transactions
86Credits AmountN16RTotal Amount of Credits transactions
88Debits AmountN16RTotal Amount of Debits transactions
97Net Settlement AmountX+N16RNet Settlement Amount where the first byte is either ‘C’ to indicate a positive or Credit value, or ‘D’
to indicate a negative or Debit value, followed by the numeric value (using 16 digits) result of the following operation:
BIT97 = BIT86 – BITP88
128MACB8OMessage authentication code

Valid flows for this transaction are:

  • NTF
  • UTF: If transaction response is a bad formatted message.

Annex 1

In this section you will find specific information about some of the elements seen on this guide.

Proprietary tags

This is the list of proprietary tags used in these specifications in TLV format:

TagLengthDescriptionFormat
DF0145Terminal Identification. Concatenation of the following fields:
– Manufacturer Code: an5 Code to identify the manufacturer of the Point of Interaction (POI).
– Family Code: an5 Code to identify the family of the POI.
– Model Code: an5 Code to identify the model of the POI.
– Serial Number: an30 Serial number of the POI.
All left padded with the space character (0x20).
An45
DF029..59Software Identification. Concatenation of the following fields:
– Application Name Length: b1
– Application Name: an…30 Name of the financial application in the Point of Interaction (POI).
– Application Version Length: b1
– Application Version: an…10 Version information of the financial application.
– Application Release Length: b1
– Application Release: an…10 Release information of the financial application.
– Application Date: an6 (YYMMDD) Date information of the financial application.
An9..59
DF0310GSM_SIM Identification. Concatenation of the following fields:
– ICCID: n20.
N20
DF042Original Message ID (BIT1).N4
DF053Original Transaction Identification Number (BIT11). This field will be:
– OPTIONAL for pre-authorization cancellations (bit25=4001)
REQUIRED for any other reason in the cancellation code.
N6
DF066Original Transaction Local Timestamp (BIT12).N12
DF0719PIN Security Data. Concatenation of the following fields:
– KSN: b10 Key Serial Number.
– Random Number: b8 Random number used in the cryptographic processes, if not used, it will be set to 0x00.
– PIN Length: b1 Determines the length of the PIN entered for online verification, 0 if no PIN, 4 to 12 if entered.
B19
DF086Currency Information. Concatenation of the following fields:
– Currency Code: n3. Left padded with Hex ‘0’.
– Currency Exponent: n1 Left padded with Hex ‘0’.
– Currency Label: an3
B6
DF0918MAC Security Data. Concatenation of the following fields:
– KSN: b10 Key Serial Number.
– Random Number: b8 Random number used in the cryptographic processes, if not used, it will be set to 0x00.
B18
DF1018Encryption Security Data. Concatenation of the following fields:
– Key Serial Number (KSN): b10.
– Random Number: b8. Random number used in the cryptographic processes, if not used, it will be set to 0x00.
B18
DF1125Key Version. Concatenation of the following fields:
– KEK Version: b2 Version of the KEK BDK.
– KEK KCV: b3 KEK Key Check Value.
– KAUT Version: b2 Version of the KAUT BDK.
– KAUT KCV: b3 KAUT Key Check Value.
– KPIN Version: b2 Version of the KPIN BDK.
– KPIN KCV: b3 KPIN Key Check Value.
– KPAN Version: b2 Version of the KPAN BDK.
– KPAN KCV: b3 KPAN Key Check Value.
– KMAC Version: b2 Version of the KMAC BDK.
– KMAC KCV: b3 KMAC Key Check Value.
If a key is not present, both version and KCV will be set to 0x00.
B25
DF122Parameter Version. Determines the versions of the parameters loaded in the Point of Interaction (POI) memory.N4
DF136Functionalities. Concatenation of the following fields:
– DCC: Flag indicating the DCC capabilities of the POI:
– 0: No support for DCC
– 1: Print data based DCC functionality
– 2: Display data based DCC functionality
– Digital signature capture: Flag with the POI’s capabilities regarding signature capture:
– 0: Not supported
– 1: Supported
– EMV OFF: Flag informing if standard EMV default offline processing is possible:
– 0: No default processing
– 1: Default processing allowing offline approval
– Magstripe OFF: Determines the ability of the POI to support offline magstripe based transactions.
– 0: No support
– 1: Support
– Template ticket: Determines the ability of the POI to support template tickets.
– 0: No support
– 1: Support
– Cash withdrawal: Determines the ability of the POI to support cash withdrawal functionality.
– 0: No support
– 1: Support
– PSD2: Determines the ability of the POI to support PSD2 functionality (Simple and Double Tap SCA).
– 0: No support
– 1: Support
– QR Code-Barcode (Not yet supported):
– 0: No support
– 1: Support
– Donations: Determines the ability of the POI to support donations functionality.
– 0: No support
– 1: Support
– Alipay: Determines the ability of the POI to support Alipay functionality.
– 0: No support
– 1: Support
– Partial Approvals: Determines the ability of the POI to support partial payment approvals.
– 0: No support
– 1: Support
– RFU (Reserved for future use):
N12
DF143Language code according to ISO639-3: an3 Right padded with spaces.An3
DF15..5Time zone abbreviation: an..5 Determines the current time zone code of the Point of Interaction (POI).An..5
DF166EMV Configuration Data. Concatenation of the following fields:
– EMV CA Public Key Version. Type: b2 General EMV parameter stored in the Point of Interaction (POI). Examples: 0001
– EMV Terminal Capabilities. Type: b3 General EMV parameter stored in the POI. Examples: E0F088
– EMV Terminal Type. Type: b1 General EMV parameter stored in the POI. Examples: 22
B6
DF182Acquirer code. Included in response messages to indicate the acquirer code which finally processed the transaction. Example: 2100N4
DF198Acquirer terminal ID. Included in response messages to indicate the terminal identification within processor system.
Note: If the merchant has multi-acquirer capability, this field could be different of bit 41. DF19 must be printed in the receipt.
An8
DF202Signature Indicator: Number of signatures captured and stored in the Point of Interaction (POI) (not yet uploaded).N4
DF212Offline Transaction Indicator: Number of offline transactions stored in the Point of Interaction (POI) (not yet uploaded).N4
DF222Previous EMV Failed Transaction Indicator: Number of previous EMV failed transactions not yet uploaded.N4
DF232Special Feature Indicator: Reports on special features performed/allowed by the Point of Interaction (POI) or SWITCH. 2 bytes in network order (MSB-LSB), where bit 1 will be the rightmost bit in the LSB byte.
– Bit 1: Cash withdrawal functionality is allowed by SWITCH.
– Bit 2: Simple Tap SCA functionality was performed by the POI.
– Bit 3: Double Tap SCA functionality was performed by the POI.
– Bit 4: Donation process was performed by the POI.
– Bit 5: RFU (Reserved for future use).
– Bit 6: RFU.
– Bit 7: RFU.
– Bit 8: RFU.
– Bit 9: RFU.
– Bit 10: RFU.
– Bit 11: RFU.
– Bit 12: RFU.
– Bit 13: RFU.
– Bit 14: RFU.
– Bit 15: RFU.
– Bit 16: RFU.
B2
DF245Settlement Data. Concatenation of the following fields:
– Settlement Date: n6 Settlement date in YYMMDD format.
– Settlement Number ID: n4 Settlement number identification.
N10
DF258Cash Withdrawal Data. Concatenation of the following fields:
– Acquirer Fee Type: n2 Examples: 01
– Acquirer Fee Currency: n4 Currency of the acquirer fee amount Examples: 0978 -> EURO
– Acquirer Fee Amount: n4 Fee amount in the terminal currency Examples: 0100 -> 1.00 0000 -> No fee
– Additional Fee Type: n2 Examples: 01
– Additional Fee Amount: n4 Additional fee amount in the terminal currency Examples: 0100 -> 1.00 0000 -> No fee
N16
DF264DCC (Dynamic Currency Conversion) Data. Concatenation of the following fields:
– DCC Type: n2 – 00 -> Unknown – 01 -> Visa – 02 -> MasterCard
– Mark-up Percentage: n6 Examples: 000101 -> 1.01 % 010000 -> 100 % 000000 -> 0 %
N8
DF27..22Previous Donation Query ID Data. Example: caritas00001An..22
DF2836Merchant ticket transaction ID – electronic ticket reference. To be used in Comercia Portal get from Cloud the electronic ticket for a specific operation.
This reference of electronic ticket has the following Universally Unique Identifier (UUID) format:
The ID is in hexadecimal digits, meaning it uses the numbers 0 through 9 and letters A through F. The hexadecimal digits are grouped as 32 hexadecimal characters with four hyphens: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX.
In order to obtain from portal the ticket storage in cloud, it is mandatory to call using “https://ticketdigital.in/receipt/”+ “Merchant ticket transaction id(DF28)”
An36
DF3032Manually entered card data. If the manually entered card data contains the full PAN, expiry date and CVV2, then this block will be encrypted as specified by the Point of Interaction (POI) cryptography. If the manually entered card data contains the last 4 digits of the PAN, then this block will not be encrypted. The last 4 digits of the PAN (for normal block compatibility) will be padded with zeros up to 19. For example, if the last 4 digits are 8118, the block will look like this: 00000000000000000000008118 when: Expiry Date: 0000 (not entered) CVV2: 000 (not entered) PAN: 000000000000008118B32
DF311QR-barcode information data. Valid values:
– 00 -> Unknown Format
– 01 -> EAN25 Barcode Format
– 02 -> EAN39 Barcode Format
– 03 -> EAN128 Barcode Format
– 04 -> PDF417 Barcode Format
– 05 -> QR Alipay Format
N2
DF402Load Indicator. Bitmap indicating the Point of Interaction (POI) data to be loaded, with 2 bytes in network order (MSB-LSB), where bit 1 will be the rightmost bit in the LSB byte.
– Bit 1: Offline transactions
– Bit 2: Signatures
– Bit 3: RFU (Reserved for future use)
– Bit 4: RFU
– Bit 5: RFU
– Bit 6: RFU
– Bit 7: RFU
– Bit 8: RFU
– Bit 9: RFU
– Bit 10: RFU
– Bit 11: RFU
– Bit 12: RFU
– Bit 13: RFU
– Bit 14: RFU
– Bit 15: RFU
– Bit 16: RFU
B2
DF52–COF (Card-on-File). Only applicable for purchase, pre-authorization and pre-authorization confirmation. Concatenation of the following fields:
– Usage: an1
R – Recurrent
I – Installments
C – One-time purchase
D – Deferred
E – Forward
H – Re-authorization
M – Incremental
N – No show
– First transaction indicator: an1
S – Yes
N – No
– TID: an15
15 left aligned characters

Examples: – First transaction: CS – First transaction response: CS123456789123456, CS123456789 – Second transaction: CN123456789123456 – Second transaction response: CN123456789123456
An..17
DF600..42Processor Data. Processor specific data used for transaction resolution.
– Processor/Acquirer ID: an…42 String with the name or description of the acquiring entity.
An…42
DF7020File Information Data. Concatenation of the following fields:
– File Name: an15 Left padded with the space character (0x20).
– File Extension: an4 Left padded with the space character (0x20).
– Compressed: an1
1 – Compressed File (GZIP Format)
0 – Uncompressed File
an19
DF731Load mode: batch or one by one
– 0x00: Batch
– 0x01: One by one
B1
DF904Key Load/Renewal Indicator Data containing challenge information indicating that a key load/renewal is requested:
– RND: b4; Random number
B4
DF914MAC Calculation Indicator Data containing the MAC calculated with KAUTH including RND:
– MAC: b4; MAC Calculation
B4
DF9280Key Load/Renewal Values:
– KEK Value: b16
– KAUT Value: b16
– KPIN Value: b16
– KPAN Value: b16
– KMAC Value: b16
If a key is not present, it will be set to 0x00.
B80
DF934Key Deletion Indicator Data containing challenge information indicating that a key deletion is requested:
– RND: b4; Random number
B4
DF942Key remove flags.
Bitmap indicating keys to be removed, 2 bytes in network order (MSB-LSB) where bit 1 will be right most bit in LSB byte.

– Bit 1: KEK Deletion
– Bit 2: KAUT Deletion
– Bit 3: KPIN Deletion
– Bit 4: KPAN Deletion
– Bit 5: KMAC Deletion
– Bit 6: RFU (Reserved for future use)
– Bit 7: RFU
– Bit 8: RFU
– Bit 9: RFU
– Bit 10: RFU
– Bit 11: RFU
– Bit 12: RFU
– Bit 13: RFU
– Bit 14: RFU
– Bit 15: RFU
B2
DF9578Key Derivation Information. Concatenation of the following fields:
– KEK IV: b8 KEK Initialization Vector.
– KEK DD1: b8 KEK Derivation Data 1.
– KEK DD2: b8 KEK Derivation Data 2.
– KAUT IV: b8 KAUT Initialization Vector.
– KAUT DD1: b8 KAUT Derivation Data 1.
– KAUT DD2: b8 KAUT Derivation Data 2.
– KPIN KSN: b10 KPIN Initial KSN Derivation Data.
– KPAN KSN: b10 KPAN Initial KSN Derivation Data.
– KMAC KSN: b10 KMAC Initial KSN Derivation Data.
B78

Data elements formats

In this section you will find the data elements formats.

Processing code (BIT3)

The processing code (BIT3) determines the effect of the transaction on the Cardholder account. This field is built with 3 bytes in BSD format (N6):

Byte PositionValue
1Process type:
– 00: Debits
– 20: Refunds
2RFU (reserved for future use)
3RFU

Point of service entry mode (BIT22)

The point of service entry mode determines characteristics of the terminal and specifies the conditions under which the transaction took place.

This field consists of 12 alphanumerical characters in the following format:

Byte PositionValue
1Card data capture capabilities:
1: Manual (No terminal)
2: Magnetic stripe
5: EMV chip
6: Manual (Entered)
M: Contactless (EMV + Magnetic stripe) + EMV (chip) + Magnetic stripe
N: Contactless with magnetic stripe + EMV (chip) + Magnetic stripe
U: Contactless
2Cardholder authentication capabilities:
0: None
1: PIN (Online/offline)
2: Software-based Mobile Point of Sale (MPOS) terminal with PIN on SCREEN
3Card capture capabilities:
0: No capture
1: Capture
4Attended or unattended:
0: No terminal (For Token only) (*)
1: Attended
2: Unattended
M: Assisted Mobile Point of Sale (MPOS) terminal or Mobile operation in the Application
N: MPOS terminal with integrated reader
5Cardholder present:
0: Cardholder not present
1: Cardholder present
6Card present:
0: Card not present
1: Card present
7Card data capture method:
1: Manual without terminal
2: Magnetic stripe
3: QR or bar code
4: Partial PAN manual entry
5: EMV chip
6: Manual entry
N: Contactless with magnetic stripe
M: Contactless with EMV chip
S: Magnetic stripe backup for EMV chip
T: Manual entry backup for EMV chip
L: Contactless with EMV chip for mobile devices
K: Contactless with magnetic stripe for mobile devices
8Cardholder authentication method:
0: Not authenticated
1: Online PIN
2: Offline PIN
3: Signature
4: Access code
5: Offline PIN and Signature
9Authorization entity:
0: Default (calculated by the server)
F: Payment by reference (COF)
10Authorization data:
0: Default (calculated by the server)
11Points of Interaction (POIs) with screen/printer in terminal:
0: Unknown
2: Printer
3: Screen
4: Printer and screen
12Maximum PIN length:
0: No PIN capture
4..C: 4 to 12 digits

* Note: for payments transactions (pre-authorizations, sales, and refunds) with token generated already it should be sent the following values:

  • POSITION 1: 1 – Manual – No terminal
  • POSITION 2: 0 – None
  • POSITION 4: 0 – No terminal
  • POSITION 5: 4 – Not present, recurring payment
  • POSITION 6: 0 – Card Not Present
  • POSITION 7: 1 – Manual without terminal
  • POSITION 8: 0 – Not authenticated
  • POSITION 9: F – Payment by reference (COF)

Function code (BIT24)

These are the function codes and its descriptions:

ValueDescription
100Preauthorization transaction
150AVS transaction. Zero amount preauthorization
185DCC preauthorization transaction with cardholder currency
187DCC preauthorization transaction with local currency
200Normal transaction. Sale (1200) (first or single request) and Refund (1220)
201Preauthorization completion transaction
202Refund without reference
285DCC sale transaction with cardholder currency
287DCC sale transaction with local currency
300DCC verification transaction
310Cash withdrawal transaction
481Pre-authorization cancellation
500Settlement transaction
690Key identification transaction
691Key upload transaction
692Key renewal transaction
693Key deletion transaction
800Offline upload transaction
802EMV data upload transaction
900Token acquisition transaction

Response Code Table (BIT39)

Response Codes are functionally grouped to be specified, in each transaction, in a simple way.

This is the list of valid Response Codes organized by category:

ValueDescriptionCategory
000Approved / ProcessedGeneric response code
010Partially approved / ProcessedGeneric code
909System errorGeneric code
912System unavailableGeneric code
916Invalid MACGeneric code
948Invalid terminal local date and timeGeneric code
100Offline processing at terminalAuthorization response code
101Declined: Expired cardAuthorization response code
105DeclinedAuthorization response code
106Declined: PIN limit exceededAuthorization response code
117Declined: Incorrect PINAuthorization response code
126Declined: Invalid PIN blockAuthorization response code
127Declined: Invalid encrypted card dataAuthorization response code
180Declined: Card not supportedAuthorization response code
195Declined: Perform SCA double TAP processAuthorization response code
196Declined: Perform SCA simple TAP processAuthorization response code
201Not processedFinancial advice response code
400Processed (for backward compatibility)Cancellation response code
401Not foundCancellation response code
500Processed (for backward compatibility)Reconciliation response code
501Not processed: Reconciliation data mismatchReconciliation response code
610Not processed, error in key processKey response code
621No DCC information availableDCC response code

Additional Data (BIT48)

Transaction additional information included in the BIT48 of the request /response message in TLV format.

Tags are functionally grouped to be specified, in each transaction, in a simple way. If a group is included in a transaction, all mandatory tags of this group must be included.

This is the list of valid tags organized by category:

IdentifierDescriptionRequired/OptionalCategory
DF01Terminal IDRIdentification data
DF02Software IDRIdentification data
DF03GSM_SIM IDOIdentification data
DF11Key versionRStatus and configuration data
DF12Parameter versionRStatus and configuration data
DF13FunctionalitiesRStatus and configuration data
DF14Language codeRStatus and configuration data
DF15Time zone abbreviationRStatus and configuration data
DF16EMV CA public key versionRStatus and configuration data
DF20Signature indicatorRTransaction indicator data
DF21Offline transaction indicatorRTransaction indicator data
DF22Previous failed EMV transaction indicatorRTransaction indicator data
DF23Special features performed by the POI. Required if the special feature was performed by the POI (SCA, for example).RTransaction indicator data
DF27Donation query ID data.ODonation transaction data
DF30Manually entered card data (full PAN or last 4 digits).RManual entry transaction data
DF31QR entry transaction dataRQR entry transaction data
DF40Upload indicatorRTransaction response data
DF52COFOTransaction response data
DF60Processor dataRTransaction response data
DF90Key renewal indicatorRTransaction response data
DF93Key deletion indicatorRTransaction response data
DF24Settlement dataOTransaction response data
DF70File information dataRUpload/download data
DF73Upload/download modeOUpload/download data

Security control information (BIT53)

Security control information data included in the BIT53 of the request message in TLV format.

Tags are grouped functionally to be specified, in each transaction, in a simple way. If a group is included in a transaction, all mandatory tags of this group must be included.

This is the list of valid tags organized by category:

IdentifierDescriptionRequired/Optional
DF07Security PIN dataO
DF09MAC security dataO
DF10Security encryption dataO

EMV ICC Data (BIT55)

Tags are grouped functionally to be specified, in each transaction, in a simple way. If a group is included in a transaction, all mandatory tags of this group must be included.

This is the list of valid tags organized by category:

TagDescriptionRequired/OptionalCategory
82AIPREMV ICC/CLess data
95TVRREMV ICC/CLess data
9ATransaction dateREMV ICC/CLess data
9CTransaction typeREMV ICC/CLess data
5F2ACurrency codeREMV ICC/CLess data
9F02AmountREMV ICC/CLess data
9F10Issuer application dataREMV ICC/CLess data
9F1ATerminal country codeREMV ICC/CLess data
9F26CryptogramREMV ICC/CLess data
9F27Cryptogram informationREMV ICC/CLess data
9F33Terminal capabilitiesREMV ICC/CLess data
9F34CVM resultREMV ICC/CLess data
9F35Terminal typeREMV ICC/CLess data
9F36ATCREMV ICC/CLess data
9F37Random numberREMV ICC/CLess data
9F6EThird party dataOEMV ICC/CLess data
5F20Cardholder nameOEMV ICC/CLess data
5F34Card number sequenceOEMV ICC/CLess data
9F06Terminal AIDREMV ICC/CLess data
50Application labelOEMV ICC/CLess data
9F12Application preferred nameOEMV ICC/CLess data
84DF nameOEMV ICC/CLess data
9F66TTQ for Visa ContactlessOEMV ICC/CLess data
71Issuer scriptsOEMV response data
72Issuer scriptsOEMV response data
89Authorization number (same as BIT38)OEMV response data
8AAuthorization response codeREMV response data
91Issuer authentication dataOEMV response data
For more details, see “EMV Integrated Circuit Card Specification for Payments System”.

Additional data (BIT56)

Transaction additional data included in the BIT56 of the request /response message in TLV format.

Tags are grouped functionally to be specified, in each transaction, in a simple way. If a group is included in a transaction, all mandatory tags of this group must be included.

This is the list of valid tags organized by category:

TagDescriptionRequired/OptionalCategory
DF04Original message IDROriginal transaction data
DF05Original transaction identification numberROriginal transaction data
DF06Original transaction local timestampROriginal transaction data
DF08DCC information of the cardholder’s currencyRTransaction DCC data
DF14DCC language codeRTransaction DCC data
DF26DCC dataRTransaction DCC data
DF23Special functionalities allowed by the SWITCH. Required if the special functionality is allowed by the SWITCH. (For example, Cash Withdrawal)OSpecial features data
DF25Cash withdrawal dataOCash withdrawal transaction data

Data registry (BIT72)

These are the labels of the available data records (BIT72) organized by category:

TagDescriptionRequired/OptionalCategory
DF11Data to identify the keys present in the Point of Interaction (POI)RKey identification data
DF95Key Data Derivation Information (present in the POI)RKey identification data
DF90Data containing server challenge information (RND1)RKey identification response data
DF90Data containing terminal challenge information (RND2)RKey update data
DF91MAC calculated with KAUTH including RND1RKey update data
DF11Data to identify new versions of key updatesRKey update response data
DF91MAC calculated with KAUTH including RND2RKey update response data
DF92New Key Values for loading/renewalRKey update response data
DF94Key references to deleteRKey update response data
DF95Key Data Derivation InformationRKey update response data

Annex 2

For transactions in CTF and TTF cases, the flow of a cancellation message could fail (timeout response, wrong response code, et cetera…). However, the message flow integrity will be ensured by a sequence number between POI and SWITCH that keeps all the transactions synchronized (Transaction Identification Number “BIT 11”).

Find below an explanation on how the POI and SWITCH must handle the sequence number on every
case:

  • Normal transaction flow (with any response code value)
  1. A transaction with BIT11 = x is sent.
  2. The POI establishes connection with the Switch and sends the message data (BIT11 = x) and the Switch sends the received message data to the POI.
  3. The POI receives and validates the response correctly (any value of BIT39). After that, the POI increments its Transaction Identification Number (BIT11 = x + 1).
  4. The POI closes the connection.
  5. A new transaction is sent with BIT11 = x + 1.
  6. The POI establishes connection with the Switch and sends the message data (BIT11 = x + 1).
  7. The Switch receives the Transaction Identification Number of the increased transaction. In this way the Switch verifies that the previous transaction has been completed successfully.
  • Cancellation or Timeout Transaction Flow
  1. A transaction with BIT11 = x was not completed correctly and the cancel message was not sent.
  2. The POI establishes the connection to the Switch and sends MGID = 1420 (BIT11 = x).
  3. The cancellation response is not received (timeout) or its response code (BIT39) is wrong.
  4. The POI closes the connection.
  5. The POI’s Transaction Identification Number does not increment (BIT11 = x).
  6. The POI establishes the connection to the Switch and sends the financial message (BIT11 = x).
  7. The Switch avoids the transaction because the POI did not increment its Transaction Identification Number.
The sequence number must be the same all flow long (transaction + cancellation message).

Annex 3

In order that the SWITCH is able to identify a transaction uniquely, it is highly recommended that the SWITCH generates a unique Reference Number for each transaction and POI of each merchant.

Reference Number will be used as an entry parameter to perform refunds or preauthorization completions, and must be unique during a long-enough period of time (so the solution is operational and not repetition occurs leading to possible conflict).

Find below a practical example showing why a transaction could not be unique if the Reference Number is generated by the POI:

Example:

  1. A merchant has 2 POIs. A customer performs a sale on POI 1 wich generates this data:
    • Reference number generated by POI = 1
    • Sale amount = 22,33€
    • Customer Card = x
    • Transaction date = 08/09/2023
  2. The same customer do a new Sale on POI 2, with the same card, the same date. By chance the Reference Number generated by POI 2 is the same too.
    • Reference number generated by POI = 1
    • Sale amount = 55,44€
    • Customer Card = x
    • Transaction date = 08/09/2023
  3. If this customer performs a refund with card X, Reference Number = 1 and Transaction Date = 08/09/23, SWITCH will not be able to match a unique transaction to complete the refund.
  4. The amount cannot be used as a parameter to reach a match, because the refund could be partial (minor than original transaction amount).
In case the transaction is offline approved, a defined prefix will be included on Reference Number. This prefix will determine a range of reference numbers that SWITCH never must use.

Annex 4

The message integrity will be verified with TLS HMAC or with MAC + TLS HMAC.

Since version 1.22 MAC is optional, it means that if bits 64 or 128 are not present within the bitmap, the switch will no use it during the communication. Since version 1.22 we recommend to don’t use the mac calculation because it has been deprecated.

When the MAC is used all outgoing requests from the POI and incoming responses from the EP will include a MAC field in BIT 64 or BIT 128, the only exception is for the notification messages where no KMAC is used. If the KMAC key is not loaded as it will happen in the initialization, the KAUTH key will be used. The algorithm to generate the MAC will be described on the document: “CGP_Security_Overwiew_v0.9”.

The data used for the MAC generation in the outgoing/incoming messages will be extracted from the following fields:

BITField NameDescription
2BINBank Identification Number of the card
3Processing CodeAdditional transaction qualifiers
4Transaction AmountAmount to be withdrawn
11Transaction ID NumberIdentifies TF as a sequence N
12Local Transaction DateLocal date and time (YYMMDDHHMMSS)
19Country CodeCountry code of the merchant/terminal
22Point of Service Entry Mode (POS/POI)Details of the transaction and the terminal (card data capture capability, card data capture method, cardholder authentication method, etc.).
25Reason CodeReason for cancellation
30Local Currency AmountAmount expressed in local currency
35Card DataEncrypted track 2 data for EMV, magnetic stripe, and contactless cards.
37Reference NumberReference number
38Authorization NumberAuthorization number
41Terminal IDLogical ID of the terminal
42Merchant IDLogical ID of the merchant
48Additional InformationAdditional transaction information.
49Transaction Currency CodeCode of the local currency used in the transaction
50Settlement Currency CodeSettlement currency code
51Foreign Currency CodeForeign currency code
52PinBlockRequired if there is online PIN verification
72Data RecordData record
Comparte este documento

Host2Host Integration – POI-Switch Protocol

Copiar el enlace

Icono del portapapeles
Tabla de Contenidos

Products

  • Cyberpac
  • Addon Payments
  • POS integrated Payments
  • Universal Pay

Sales

Tell us about your business so we can offer you the best solution.

Contact an expert
Contact an expert
Contact an expert
Contact an expert
Contact an expert

Technical Support

Already a client and need help? Contact us, we’re here for you.

Help

Partners

We work with the best partners for in-store and ecommerce solutions. Want to join us?

Join us

© Comercia Global Payments

Privacy policy
Exercising rights
Client information
Whistleblowing channel
Legal disclaimer
Cookies policy
Ask AI
Write your question. For example: How do I create a payment link?
SmartWiki may skip data. Verify the information or contact support.

SmartWiki, Powered by AI

API - Developers Docs
Manage cookie consent

To offer the best experiences, we use technologies such as cookies to store and/or access device information. Consent to these technologies will allow us to process data such as browsing behavior or unique IDs on this site. Failure to consent, or withdrawal of consent, may adversely affect certain features and functions.

Functional Always active
Storage or technical access is strictly necessary for the legitimate purpose of allowing the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
Technical storage or access is necessary for the legitimate purpose of storing preferences not requested by the subscriber or user.
Statistics
El almacenamiento o acceso técnico que es utilizado exclusivamente con fines estadísticos. Storage or technical access that is used exclusively for anonymous statistical purposes. Without a requirement, voluntary compliance by your Internet service provider, or additional records from a third party, information stored or retrieved solely for this purpose cannot be used to identify you.
Marketing
Storage or technical access is necessary to create user profiles to send advertising, or to track the user on a website or several websites for similar marketing purposes.
Manage options Manage services Manage {vendor_count} vendors Read more about these purposes
See preferences
{title} {title} {title}

Consulta la documentación de las distintas secciones de integraciones:

Comienza a integrar

undraw_add_to_cart_re_wrdo 1 (1) (1)

Plugins para CMS

Complementa la integración

SDKs

Métodos de pago

Herramientas

Addon Payments

Consulta la documentación de Addon Payments. Aquí tienes las distintas secciones:

Integraciones

Consultas frecuentes

Portal Backoffice

Cyberpac

We are currently working on the English version of the Cyberpac documentation. You can view the Spanish version using the buttons below:

Canales BackOffice Portal

Plugins integration

Custom integrations

POS integrated Payments

Create a solution that will help you automate processes. You can even add payment processes on physical terminals.

Payment Integrated with Android POS

Payment Integrated with Smartphone POS

POS Data sheets

Addon Payments

Comercia Global Payments has several integration options so you can choose the most efficient one for you.

Integrations

Frequently Asked Questions

BackOffice Portal

Consult the documentation of the different integrations sections:​

Start integration

undraw_add_to_cart_re_wrdo 1 (1) (1)

CMS Plugins

Complement your integration

SDKs

Payment Methods

Tools