All pages
Powered by GitBook
1 of 1

Loading...

Application Group 0x07 - EMV L2 Contact Messages (Chip Card L2 Mode Only) - 1 - 15

About EMV L2 Transaction Flows

The general flow of an EMV L2 transaction is as follows (bear in mind the device does not have a display, so in these steps the host drives the user interface for both the terminal operator / cashier and for the cardholder / customer):

  • The terminal operator / cashier performs steps external to the transaction, generally resulting in a total balance owed, and directs the host software to initiate a transaction. If the device supports Quick Chip and the system is designed to use that feature, the host may skip this step and instead start the transaction with a default amount as a placeholder, which is generally a pre-determined non-zero value that is consistent with the system’s payment processing environment. Further differences pertaining to Quick Chip transactions are included in the steps below.

  • The device must have already used Command 0x01::0x50 - Subscribe to Notifications to subscribe to at least notifications from Application Group 0x01 - General Messages, Application Group 0x04 - Magnetic Stripe Reader (MSR) Messages, and Application Group 0x07 - EMV L2 Contact Messages (Chip Card L2 Mode Only).

  • The cardholder inserts their card into the device. In response, the device sends Notification 0x01::0x40 - Card Detected / Identified / Removed to report Card was not present and is now present / Card is a chip card (ICC card) indicating there is a chip card ready to begin a transaction.

  • The host software may optionally call Command 0x03::0x00 - Card Latch Control to hold the card in the slot.

  • The host software sends the device Command 0x07::0x00 - EMV L2 Start Transaction.

  • From this point until the host sends the transaction results to the transaction processor, the host may cancel the EMV transaction by sending Command 0x07::0x04 - EMV L2 Cancel Transaction and the device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Host Canceled Transaction / Transaction error.

  • The device attempts to communicate with a chip on the inserted card.

    • If the device is unable to power up the card:

      • The device responds with error code 0013 and terminates the transaction.

  • At this point the device was able to power-up the card and found mutually supported applications. The device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Selecting the application.

  • The device sends Notification 0x07::0x81 - EMV L2 Display Message Request with the message Please Wait.

  • The device negotiates with the card to determine which payment applications are available. If the card holds only one mutually supported payment application and the host did not enable Enhanced App Selection in the Transaction Options parameter, the device uses that application. Otherwise:

    • The device sends Notification 0x07::0x82 - EMV L2 User Selection Request to prompt the cardholder to Select Application with a list of available applications, followed by Notification 0x07::0x8A - EMV L2 Transaction Status to report Waiting for User Response / Waiting for User Application Selection.

    • After the cardholder selects an application, the host passes the selection to the device by sending Command 0x07::0x02 - EMV L2 User Selection Result.

  • The device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Initiating Application.

  • If the card’s selected application reports to the device that the cardholder should select a language, the device sends Notification 0x07::0x82 - EMV L2 User Selection Request to prompt the cardholder to Select Language with a list of available languages, followed by Notification 0x07::0x8A - EMV L2 Transaction Status to report event Waiting for User Response / Waiting for user language selection. After the cardholder selects a language, the host passes the selection to the device by sending Command 0x07::0x02 - EMV L2 User Selection Result.

  • The device continues communicating with the card and sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Reading Application Data. If an error or other type of failure occurs during this step, the device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Terminated / Transaction Error, followed by Notification 0x07::0x81 - EMV L2 Display Message Request with the message Transaction Terminated, followed by Notification 0x07::0x84 - EMV L2 Transaction Result.

  • If the host used the Transaction Options parameter to specify either Continue Mode Enabled, Wait or Continue Mode Enabled, Continue when it called Command 0x07::0x00 - EMV L2 Start Transaction, the device sends Notification 0x07::0x8C - EMV L2 Continue Notification with data from the card application read in the previous step. If the host specified Continue Mode Enabled, Wait, the device pauses the transaction and sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Waiting for User Response / Waiting for Continue. The host must send Command 0x07::0x13 - EMV L2 Continue Action to direct the device to proceed or cancel before the 60 seconds timeout occurs, otherwise the device terminates the transaction.

  • Depending on the capabilities of the card and the device, the device authenticates the card data using SDA, DDA, or CDA. The device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Offline data authentication.

  • The steps from here through Card Action Analysis below are collectively referred to as the Risk Management process:

    • The device checks to make sure the selected application is valid for the transaction, and is compatible with the device (such as application version number, application usage control, and application effective / expiration date), and sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Process Restrictions.

    • The device uses the cardholder verification related data in the card to determine which cardholder verification method (CVMs) to use. The device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Cardholder Verification.

  • The device performs terminal risk management procedures, which involves floor limit checking, velocity checking, and periodically forcing online authorization to protect against fraud, and sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Terminal Risk Management.

  • The device analyzes the results of the previous steps and sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Terminal Action Analysis.

  • The device rolls up the results of the previous Risk Management process:

    • If the Risk Management process encounters an error or determines the transaction or payment method fails to meet required criteria, the device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Terminated / Transaction Error, followed by Notification 0x07::0x81 - EMV L2 Display Message Request with the message TRANSACTION TERMINATED , followed by Notification 0x07::0x84 - EMV L2 Transaction Result, and terminates the transaction.

    • If the Risk Management process determines the transaction is too risky to approve, the device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Terminated / Transaction Error, followed by Notification 0x07::0x84 - EMV L2 Transaction Result, followed by Notification 0x07::0x81 - EMV L2 Display Message Request with message Declined to notify the cardholder, and terminates the transaction.

  • The device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Generating First Application Cryptogram, followed by Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Card Action Analysis.

  • If the device is NOT configured as Online-Only Terminal Type [see Tag 9F35 in EMV Contact Terminal Settings and Defaults] and the Risk Management processes determined the transaction is OK to perform offline, the device reports the transaction result to the host as follows:

    • The device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Transaction Complete.

    • The device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Terminated and either Transaction Approved or Transaction Declined, then sends Notification 0x07::0x81 - EMV L2 Display Message Request with message Approved or Declined to notify the cardholder.

  • If the device is configured as an Online Only Terminal Type [see Tag 9F35 in EMV Contact Terminal Settings and Defaults] or the Risk Management processes determined the transaction must be performed online, the device reports the transaction result to the host as follows:

    • The device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Online Processing, followed by Notification 0x07::0x83 - EMV L2 ARQC Message.

    • The next event depends on whether the device supports the Contact Quick Chip feature and whether the host specified Quick Chip as an Option when it started the transaction:

  • If Quick Chip operation is NOT supported or is not in effect:

    • The device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Waiting for Online Processing Response.

    • The host processes the ARQC Message data and uses it to coordinate with the transaction processor to receive an ARPC Response, which it processes and sends to the device using Command 0x07::0x03 - EMV L2 Online Processing Result / Acquirer Response. Alternatively, the host may implement host-driven Quick Chip by instead constructing its own preliminary ARPC Response with tag 8A set to ‘Z3’ and sending it to the device immediately, without waiting for a transaction processor response. The device responds by sending Notification 0x07::0x81 - EMV L2 Display Message Request to the host with message Declined and ending the transaction. The host should suppress this message and take over the remainder of the transaction, including notifying the cardholder to remove the card, determining the final transaction amount, coordinating with the transaction processor to retrieve a final transaction result, and interacting with the cardholder.

Command 0x07::0x00 - EMV L2 Start Transaction

The host uses this command to start an EMV L2 transaction.

If an error occurs, the device will terminate the command and report the error using an ACK Response containing the result code. For a full list of error codes, see 2.4.4 Result Code Data Object (Tag C3). If no error occurs, the device responds as follows:

The host can only select the Quick Chip Mode transaction option for online transactions. This option significantly reduces the time the chip card needs to stay in the device. In this mode, the cardholder can remove the chip card before the transaction processor returns the Authorization Response Cryptogram (ARPC) to the host.

When Quick Chip Mode is enabled, the device requests data for an online authorization from the card. After the card responds with an online authorization request (ARQC), oDynamo sends the Authorization Response Code (tag 8A) with a declined status (Z3) to the card. The host software should complete the EMV processing as a deferred authorization, and prompt the card holder to remove the card. The host software should then proceed with requesting authorization from the transaction processor, and wait for the online response to approve or deny the transaction. For more details, see Visa’s Quick Chip for EMV and qVSDC - Specification Version 2.0.

Command 0x07::0x02 - EMV L2 User Selection Result

The host uses this command to report the cardholder’s or operator’s selection in response to the device’s Notification 0x07::0x82 - EMV L2 User Selection Request. In response to each possible selection, the device will behave according to EMV rules.

If an error occurs, the device will terminate the command and report the error using an ACK Response containing the result code. For a full list of error codes, see 2.4.4 Result Code Data Object (Tag C3). If no error occurs, the device responds as follows:

Command 0x07::0x03 - EMV L2 Online Processing Result / Acquirer Response

The host uses this command to inform the device of the result of online processing. It will contain ARPC, Script 1, and Script 2 data.

If an error occurs, the device will terminate the command and report the error using an ACK Response containing the result code. For a full list of error codes, see 2.4.4 Result Code Data Object (Tag C3). If no error occurs, the device responds as follows:

Command 0x07::0x04 - EMV L2 Cancel Transaction

The host uses this command to cancel an EMV transaction while the device is waiting for the cardholder to insert a card.

If an error occurs, the device will terminate the command and report the error using an ACK Response containing the result code. For a full list of error codes, see 2.4.4 Result Code Data Object (Tag C3). If no error occurs, the device responds as follows:

Command 0x07::0x05 - EMV L2 Modify Contact Terminal Configuration

The host uses this command to modify EMV Contact Terminal configuration data. Descriptions of the tags can be found in EMV Integrated Circuit Card Specifications for Payment Systems v4.3 .

Command 0x07::0x06 - EMV L2 Get Contact Terminal Configuration

The host uses this command to read EMV Contact Terminal configuration data.

Command 0x07::0x07 - EMV L2 Modify Contact Application Configuration

The host uses this command to modify EMV contact application configuration data. Descriptions of the tags can be found in EMV Integrated Circuit Card Specifications for Payment Systems v4.3 .

Command 0x07::0x08 - EMV L2 Get Contact Application Configuration

The host uses this command to read back EMV contact application configuration data.

Command 0x07::0x09 - EMV L2 Modify CA Public Key

The host uses this command to modify EMV CA Public Key data.

Command 0x07::0x0A - EMV L2 Get CA Public Key

The host uses this command to read EMV Certificate Authority Public Key data.

Command 0x07::0x0B - EMV L2 Get Kernel Base Checksum

The host uses this command to read EMV L2 Kernel Checksum.

Command 0x07:0x0D - Get Date Time

The host uses this command to read the device’s Real Time Clock (RTC).

If an error occurs, the device will terminate the command and report the error using an ACK Response containing the result code. For a full list of error codes, see 2.4.4 Result Code Data Object (Tag C3). If no error occurs, the device responds as follows:

Command 0x07::0x0E - EMV L2 Commit Configuration

The host uses this command to commit changes after using Command 0x07::0x10 - Modify EMV L2 Terminal Capabilities Configuration.

Command 0x07::0x10 - Modify EMV L2 Terminal Capabilities Configuration

The host uses this command to select EMV Terminal Capabilities Configuration. The EMV terminal settings affected by this command can not be set directly; they must be set to one of a specified set of certified values. Descriptions of the tags and their values can be found in EMV Integrated Circuit Card Specifications for Payment Systems v4.3. For full descriptions of each configuration, see the device’s EMVCo Letter of Approval for Contact Terminal Level 2 [see Appendix D EMV Configurations (EMV Only)].

After calling this command, the host should call Command 0x07::0x0E - EMV L2 Commit Configuration to save the changes.

Running this command changes the value of tag DFDFDF33 in the device configuration. See Command 0x03::0x72 - Get Device Configuration. It also changes the device and terminal configuration check values reported by Command 0x07::0x12 - Read EMV L2 Configuration Check Values.

The host may display a message to guide the cardholder to remove the card.

  • Upon card removal, the device sends Notification 0x01::0x40 - Card Detected / Identified / Removed to indicate Card was present and has been removed / Card is not a chip card (ICC card).

  • If MSR data was captured on card removal, the device sends Notification 0x04::0x11 - MSR Card Data Available.

  • The host must send Command 0x04::0x12 - Request MSR Card Data within 5 seconds to retrieve the MSR data. Otherwise the device automatically erases the data.

  • If the device is able to power-up the card but can not find an application that both the device and the card mutually support:

    • If setting DFDF67 in EMV Contact Application Settings and Defaults (Contact Only) is set to Fallback Disabled, the device terminates the transaction and sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Terminated / Empty Candidate List, followed by Notification 0x07::0x81 - EMV L2 Display Message Request with the message CARD ERROR .

    • If setting DFDF67 in EMV Contact Application Settings and Defaults (Contact Only) is set to Fallback Enabled:

      • The device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Selecting the application, followed by Notification 0x07::0x81 - EMV L2 Display Message Request to the host with the message Please Wait followed by Notification 0x07::0x81 - EMV L2 Display Message Request to the host with the message REMOVE CARD .

      • Upon card removal, the device sends Notification 0x01::0x40 - Card Detected / Identified / Removed to indicate Card was present and has been removed / Card is not a chip card (ICC card).

      • Upon successfully decoding a magnetic stripe swipe, the device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Online Processing.

      • Because the MSR transaction must always be performed online, the device passes the MSR track data to the host for forwarding to the transaction processor using Notification 0x07::0x83 - EMV L2 ARQC Message containing MSR Data Container F4. Inside the message, the host should examine tag DFDF53 to determine the cause of the MSR Fallback (No Fallback or MSR Fallback). The device then sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Waiting for User Response / Waiting Online Processing Response.

      • The host processes the ARQC Message data and uses it to coordinate with the transaction processor to receive an ARPC Response, which it processes and sends to the device using Command 0x07::0x03 - EMV L2 Online Processing Result / Acquirer Response.

      • The device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Transaction complete.

      • The device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Terminated and either Transaction Approved or Transaction Declined.

      • The device sends Notification 0x07::0x81 - EMV L2 Display Message Request with Approved or Declined or to notify the cardholder of the transaction result.

      • The device ends the transaction by sending Notification 0x07::0x84 - EMV L2 Transaction Result, which contains transaction details the host should save for later verification. Inside the message, the host should examine tag DFDF53 to determine the cause of the fallback to an MSR swipe (MSR Fallback).

  • If the card and device determine the transaction requires the cardholder to enter a PIN, the device sends Notification 0x07::0x81 - EMV L2 Display Message Request with the message Enter PIN followed by Notification 0x07::0x88 - EMV L2 Online PIN CVM Request or Notification 0x07::0x8B - EMV L2 Offline PIN CVM Request, depending on the rules encoded on the card. In response, the host should coordinate PIN entry with an external PIN entry device and provide the encrypted PIN block and KSN or sequence number to the device:

    • For online PIN, the host sends a Notification 0x07::0x88 - EMV L2 Online PIN CVM Request with PIN data to the device, which adds it to the ARQC.

    • For offline PIN, the host sends Command 0x07::0x14 - EMV L2 Offline PIN CVM Result with the PIN data from a Cryptera EPP. The device sends the PIN to the card for confirmation, and includes the results in the ARQC.

    The device ends the transaction by sending Notification 0x07::0x84 - EMV L2 Transaction Result, which contains transaction details the host should save for later verification. The transaction result message indicates whether the host must prompt the cardholder to provide a signature.

    If Quick Chip operation is supported and in effect:

    • The device immediately constructs its own internal ARPC Response, with tag 8A set to ‘Z3’ to coordinate the transaction with the card, and sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Progress Change / Transaction Complete, followed by Notification 0x07::0x8A - EMV L2 Transaction Status to report End of Transaction / Transaction Declined.

    • The device sends Notification 0x07::0x81 - EMV L2 Display Message Request with message Remove Card to notify the cardholder the card can be removed.

    • The host should then process the ARQC Message data, including replacing the default amount with the final transaction amount, and should coordinate with the transaction processor to retrieve a final transaction result. Because in this case the device is not involved in determining the final transaction result, it does not send a notification to the host to show Approved or Declined. Instead, the host should display an appropriate message (such as Quick Chip Approved/Quick Chip Declined) to the cardholder based on the final transaction result.

    • The device ends the transaction by sending Notification 0x07::0x84 - EMV L2 Transaction Result, which contains transaction details the host should save for later verification. The transaction result message indicates whether the host must prompt the cardholder to provide a signature.

  • The device communicates with the chip card to determine whether to approve or decline the transaction, then sends Notification 0x07::0x8A - EMV L2 Transaction Statusto report Transaction Progress Change / Transaction Complete.

  • The device sends Notification 0x07::0x8A - EMV L2 Transaction Status to report Transaction Terminated and either Transaction Approved or Transaction Declined, then sends Notification 0x07::0x81 - EMV L2 Display Message Request with message Approved or Declined to notify the cardholder of the transaction result.

  • The device ends the transaction by sending Notification 0x07::0x84 - EMV L2 Transaction Result, which contains transaction details the host should save for later verification. The transaction result message indicates whether the host must prompt the cardholder to provide a signature.

  • 01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    00

    Command ID Data Object (Tag C2) = 0x00 EMV L2 Start Transaction

    Data Field Data Object (Tag C4 or E0) = Byte 0: Maximum Process Time

    Specifies the maximum time, in seconds, for user interaction events to complete while processing a transaction. Values from 0x01 to 0xFF (1 to 255 seconds) are allowed. The timer starts at the beginning of each event. If the cardholder does not take action within the specified time, the transaction will process as follows:

    · User card insertion timeout: The transaction terminates.

    · User language selection timeout: The transaction continues with the default language.

    · User application selection timeout: The transaction terminates.

    Byte 1 Reserved. Set to 0x00 (preferred) or 0x02 (legacy).

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    00

    Command ID Data Object (Tag C2) = 0x00 EMV L2 Start Transaction

    C3

    01

    00

    Result Code Data Object (Tag C3) = 0x00 OK

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    02

    Command ID Data Object (Tag C2) = 0x02 EMV L2 User Selection Result

    C4

    02

    Data Field Data Object (Tag C4 or E0) = Byte 0 Selection Status:

    0x00 = User Selection Request completed, see Selection Result 0x01 = User Selection Request aborted, canceled by user

    0x02 = User Selection Request aborted, timeout

    Byte 1 Selection Result:

    Contains the value of the menu item the cardholder or operator selected. Use 0x00 to select the first menu item.

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    02

    Command ID Data Object (Tag C2) = 0x02 EMV L2 User Selection Result

    C3

    01

    Result Code Data Object (Tag C3) =

    0x00 = Success, the Selection Result was received 0x01 = Invalid Selection Status

    0x02 = Invalid Selection Result

    0x03 = Failure, no transaction currently in progress

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    03

    Command ID Data Object (Tag C2) = 0x03 EMV L2 Online Processing Result

    C4

    Calculated

    Data Field Data Object (Tag C4 or E0) =

    See Appendix B ARPC Response from Online Processing (EMV Only)

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    03

    Command ID Data Object (Tag C2) = 0x03 EMV L2 Online Processing Result

    C3

    01

    Result Code Data Object (Tag C3) = 0x00 OK / Done

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    04

    Command ID Data Object (Tag C2) = 0x04 EMV L2 Cancel Transaction

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    04

    Command ID Data Object (Tag C2) = 0x04 EMV L2 Cancel Transaction

    C3

    01

    Result Code Data Object (Tag C3) =

    0x00 = Success, the transaction was canceled

    0x8D = Failure, no transaction currently in progress

    0x8F = Failure, transaction in progress, card already inserted

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    05

    Command ID Data Object (Tag C2) = 0x05 EMV L2 Modify Contact Terminal Configuration

    Data Field Data Object (Tag C4 or E0) = Byte 0: MAC Type

    MAC algorithm designator

    0x00 = ISO 9797 MAC Algorithm 3, Padding Method 1.

    Byte 1 Slot Number

    EMV Terminal Slot Number. Must be 0x01.

    Byte 2 Operation

    0x01 = Write Operation

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    05

    Command ID Data Object (Tag C2) = 0x05 EMV L2 Modify Terminal Configuration

    C3

    01

    Result Code Data Object (Tag C3) = 0x00 = Success, the modify completed 0x90 = Device Has No Keys

    0x91 = Invalid Device Serial Number 0x92 = Invalid Type of MAC field 0x93 = Invalid Slot Number field 0x94 = Invalid Operation field

    0x95 = Invalid Database Selector field 0x96 = Invalid Objects to Write field 0x97 = Invalid MAC

    0x98 = No Slots Available

    0x9B = Invalid CAPK Checksum

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    06

    Command ID Data Object (Tag C2) = 0x06 EMV L2 Get Contact Terminal Configuration

    Data Field Data Object (Tag C4 or E0) = Byte 0: Slot Number

    Must be 0x01

    Byte 1: Operation 0x00 = Read Operation

    0x0F = Read All Tags of selected slot

    Byte 2: Database Selector 0x00 = EMV Contact L2

    Bytes 3..n: Tags to Read

    Note: Not needed if Operation is 0x0F Read All Tags of selected slot.

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    06

    Command ID Data Object (Tag C2) = 0x06 EMV L2 Get Contact Terminal Configuration

    C3

    01

    Result Code Data Object (Tag C3) = 0x00 = Success, the read completed 0x02 = Invalid paramter in command 0x93 = Failure, invalid slot number field 0x94 = Failure, invalid Operation field

    0x95 = Failure, invalid Database Selector field 0x96 = Failure, invalid Tag to Read field

    C4

    Calculated

    Data Field Data Object (Tag C4 or E0) = Byte 0..1 Message Length

    Two byte hex, most significant byte first. This gives the total length of the EMV Terminal Configuration message that follows.

    Byte 2..N Tags Read:

    FA<len> /* container for generic data */

    <tag><len><value>

    …

    <tag><len><value>

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    07

    Command ID Data Object (Tag C2) = 0x07 EMV L2 Modify Contact Application Configuration

    Byte 0: MAC Type

    MAC algorithm designator

    0x00 = ISO 9797 MAC Algorithm 3, Padding Method 1

    Byte 1: Slot Number

    EMV Application Slot Number = Any value from 0x01 to 0x20 inclusive

    Byte 2: Operation

    0x01 = Write Operation

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    07

    Command ID Data Object (Tag C2) = 0x07 EMV L2 Modify Contact Application Configuration

    C3

    01

    01

    Result Code Data Object (Tag C3) = 0x00 = Success, the modify completed 0x90 = Device Has No Keys

    0x91 = Invalid Device Serial Number 0x92 = Invalid Type of MAC field 0x93 = Invalid Slot Number field 0x94 = Invalid Operation field

    0x95 = Invalid Database Selector field 0x96 = Invalid Objects to Write field 0x97 = Invalid MAC

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    08

    Command ID Data Object (Tag C2) = 0x08 EMV L2 Get Contact Application Configuration

    Data Field Data Object (Tag C4 or E0) = Byte 0: Slot Number

    Must be 0x01

    Byte 1: Operation

    0x00 = Read Operation

    0x0F = Read All Tags of selected slot

    Byte 2: Database Selector 0x00 = EMV Contact L2

    Bytes 3..n: Tags to Read

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    08

    Command ID Data Object (Tag C2) = 0x08 EMV L2 Get Contact Application Configuration

    C3

    01

    Result Code Data Object (Tag C3) = 0x00 = Success, the read completed 0x93 = Failure, invalid slot number field 0x94 = Failure, invalid Operation field

    0x95 = Failure, invalid Database Selector field 0x96 = Failure, invalid Tag to Read field

    C4

    Calculated

    Byte 0..1: Message Length

    Two byte hex, most significant byte first. This gives the total length of the EMV Terminal Configuration message that follows.

    Byte 2..n Tags Read:

    FA<len> /* container for generic data */

    <tag><len><value>

    …

    <tag><len><value>

    When reading all tags for the selected slot, the last tag will be DFDF47, the Database Checksum.

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    06

    Command ID Data Object (Tag C2) = 0x09 EMV L2 Modify CA Public Key

    Data Field Data Object (Tag C4 or E0) = Byte 0 MAC Type

    MAC algorithm designator

    0x00 = ISO 9797 MAC Algorithm 3, Padding Method 1.

    Byte 1 Slot Number

    Any value from 0x01 to 0x34 inclusive

    0xFF = Next Available (slot with RID TLV length set to zero)

    If the Operation byte is set to Erase All, the device ignores this byte.

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    09

    Command ID Data Object (Tag C2) = 0x09 EMV L2 Modify CA Public Key

    C3

    01

    Result Code Data Object (Tag C3) = 0x00 = Success, the modify completed 0x90 = Device Has No Keys

    0x91 = Invalid Device Serial Number 0x92 = Invalid Type of MAC field 0x93 = Invalid Slot Number field 0x94 = Invalid Operation field

    0x95 = Invalid Database Selector field 0x96 = Invalid Objects to Write field 0x97 = Invalid MAC

    0x98 = No Slots Available

    0x9B = Invalid CAPK Checksum

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    0A

    Command ID Data Object (Tag C2) = 0x0A EMV L2 Get CA Public Key

    Data Field Data Object (Tag C4 or E0) = Byte 0: Slot Number

    Must be 0x01

    Byte 1: Operation

    0x00 = Read Operation

    0x0F = Read All Tags of selected slot

    Byte 2: Database Selector 0x00 = EMV Contact L2

    Bytes 3..n: Tags to Read

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    0A

    Command ID Data Object (Tag C2) = 0x0A EMV L2 Get CA Public Key

    C3

    01

    Result Code Data Object (Tag C3) = 0x00 = Success, the read completed 0x93 = Failure, invalid slot number field 0x94 = Failure, invalid Operation field

    0x95 = Failure, invalid Database Selector field 0x96 = Failure, invalid Tag to Read field

    C4

    Calculated

    Byte 0..1: Message Length

    Two byte hex, most significant byte first. This gives the total length of the EMV Terminal Configuration message that follows.

    Byte 2..n Tags Read:

    FA<len> /* container for generic data */

    <tag><len><value>

    …

    <tag><len><value>

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    0B

    Command ID Data Object (Tag C2) = 0x0B EMV L2 Get Kernel Checksum

    C4

    01

    Data Field Data Object (Tag C4 or E0) = 0x11 = Read L2 Kernel checksum

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    0B

    Command ID Data Object (Tag C2) = 0x0B EMV L2 Get Kernel Information

    C3

    01

    Result Code Data Object (Tag C3) = 0x00 = Success, the read completed 0x02 = Bad parameter

    0x86 = Invalid read option 0x9A = Internal error

    0xFF = Failed memory allocation

    C4

    15

    Byte 0: Data return type 0x11 = Kernel checksum

    Byte 1..14: Kernel checksum in ASCII

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    0D

    Command ID Data Object (Tag C2) = 0x0D EMV Get Date Time

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    0D

    Command ID Data Object (Tag C2) = 0x0D EMV Get Date Time

    C3

    01

    00

    Result Code Data Object (Tag C3) = 0x00 OK / Done

    Data Field Data Object (Tag C4 or E0) = Byte 0 Month

    0x01..0x0C: valid Month number; Dec = 12.

    Byte 1 Day

    0x01..0x1F: valid day of the month; Last day = 31.

    Byte 2 Hour

    0x00..0x17: valid hour of the day; last hour day = 23.

    Byte 3 Minute

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    0E

    Command ID Data Object (Tag C2) = 0x0E EMV L2 Commit Configuration

    C4

    01

    Byte 0: Database Selector 0x00 = EMV Contact L2

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    0E

    Command ID Data Object (Tag C2) = 0x0E EMV L2 Commit Configuration

    C3

    01

    Result Code Data Object (Tag C3) = 0x00 = Success

    0x01 = Failure

    0x95 = Invalid Database Selector field

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    10

    Command ID Data Object (Tag C2) = 0x10 Modify EMV L2 Terminal Capabilities Configuration

    Byte 0: MAC Type

    MAC algorithm designator

    0x00 = ISO 9797 MAC Algorithm 3, Padding Method 1.

    Byte 1: Database Selector 0x00 = EMV Contact L2

    Bytes 2..17: Serial Number 16 Byte device Serial Number

    Byte 18: Configuration Identifier

    One byte field that specifies one of the following configurations. Each device implements a subset of this standard list; the supported subset is specified in the device’s EMVCo Letter of Approval (LoA) as Vendor Config IDs:

    01

    07

    Application ID Data Object (Tag C1) = 0x07 EMV L2 Contact Messages

    C2

    01

    10

    Command ID Data Object (Tag C2) = 0x10 EMV L2 Modify EMV L2 Terminal Capabilities Configuration

    C3

    01

    Result Code Data Object (Tag C3) = 0x00 = Success, the modify completed 0x90 = Device Has No Keys

    0x91 = Invalid Device Serial Number 0x92 = Invalid Type of MAC field 0x93 = Invalid Slot Number field 0x94 = Invalid Operation field

    0x95 = Invalid Database Selector field 0x96 = Invalid Objects to Write field 0x97 = Invalid MAC

    0x9C = Invalid Configuration Identifier

    Tag

    Len

    Value(s) / Description

    C0

    01

    01

    Message Type Data Object (Tag C0) = 0x01 Command

    Tag

    Len

    Value(s) / Description

    C0

    01

    02

    Message Type Data Object (Tag C0) = 0x02 Response

    Tag

    Len

    Value(s) / Description

    C0

    01

    01

    Message Type Data Object (Tag C0) = 0x01 Command

    Tag

    Len

    Value(s) / Description

    C0

    01

    02

    Message Type Data Object (Tag C0) = 0x02 Response

    Tag

    Len

    Value(s) / Description

    C0

    01

    01

    Message Type Data Object (Tag C0) = 0x01 Command

    Tag

    Len

    Value(s) / Description

    C0

    01

    02

    Message Type Data Object (Tag C0) = 0x02 Response

    Tag

    Len

    Value(s) / Description

    C0

    01

    01

    Message Type Data Object (Tag C0) = 0x01 Command

    Tag

    Len

    Value(s) / Description

    C0

    01

    02

    Message Type Data Object (Tag C0) = 0x02 Response

    Tag

    Len

    Value(s) / Description

    C0

    01

    01

    Message Type Data Object (Tag C0) = 0x01 Command

    Tag

    Len

    Value(s) / Description

    C0

    01

    02

    Message Type Data Object (Tag C0) = 0x02 Response

    Tag

    Len

    Value(s) / Description

    C0

    01

    01

    Message Type Data Object (Tag C0) = 0x01 Command

    Tag

    Len

    Value(s) / Description

    C0

    01

    02

    Message Type Data Object (Tag C0) = 0x02 Response

    Tag

    Len

    Value(s) / Description

    C0

    01

    01

    Message Type Data Object (Tag C0) = 0x01 Command

    Tag

    Len

    Value(s) / Description

    C0

    01

    02

    Message Type Data Object (Tag C0) = 0x02 Response

    Tag

    Len

    Value(s) / Description

    C2

    01

    07

    Tag

    Len

    Value(s) / Description

    C0

    01

    01

    Message Type Data Object (Tag C0) = 0x01 Command

    Tag

    Len

    Value(s) / Description

    C0

    01

    02

    Message Type Data Object (Tag C0) = 0x02 Response

    Tag

    Len

    Value(s) / Description

    C0

    01

    01

    Message Type Data Object (Tag C0) = 0x01 Command

    Tag

    Len

    Value(s) / Description

    C0

    01

    02

    Message Type Data Object (Tag C0) = 0x02 Response

    Tag

    Len

    Value(s) / Description

    C0

    01

    01

    Message Type Data Object (Tag C0) = 0x01 Command

    Tag

    Len

    Value(s) / Description

    C0

    01

    02

    Message Type Data Object (Tag C0) = 0x02 Response

    Tag

    Len

    Value(s) / Description

    C0

    01

    01

    Message Type Data Object (Tag C0) = 0x01 Command

    Tag

    Len

    Value(s) / Description

    C0

    01

    02

    Message Type Data Object (Tag C0) = 0x02 Response

    Tag

    Len

    Value(s) / Description

    C0

    01

    01

    Message Type Data Object (Tag C0) = 0x01 Command

    Tag

    Len

    Value(s) / Description

    C0

    01

    02

    Message Type Data Object (Tag C0) = 0x02 Response

    Tag

    Len

    Value(s) / Description

    C0

    01

    01

    Message Type Data Object (Tag C0) = 0x01 Command

    Tag

    Len

    Value(s) / Description

    C0

    01

    02

    Message Type Data Object (Tag C0) = 0x02 Response

    Tag

    Len

    Value(s) / Description

    C0

    01

    01

    Message Type Data Object (Tag C0) = 0x01 Command

    Tag

    Len

    Value(s) / Description

    C0

    01

    02

    Message Type Data Object (Tag C0) = 0x02 Response

    Table - Message Structure for Command 0x07::0x00 - EMV L2 Start Transaction

    Table - Response to Command 0x07::0x00 - EMV L2 Start Transaction

    Table - Message Structure for Command 0x07::0x02 - EMV L2 User Selection Result

    Table - Response to Command 0x07::0x02 - EMV L2 User Selection Result

    Table - Message Structure for Command 0x07::0x03 - EMV L2 Online Processing Result / Acquirer Response

    Table - Response to Command 0x07::0x03 - EMV L2 Online Processing Result / Acquirer Response

    Table - Message Structure for Command 0x07::0x04 - EMV L2 Cancel Transaction

    Table - Message Structure for Command 0x07::0x04 - EMV L2 Cancel Transaction

    Table - Message Structure for Command 0x07::0x05 - EMV L2 Modify Contact Terminal Configuration

    Table - Message Structure for Command 0x07::0x05 - EMV L2 Modify Contact Terminal Configuration

    Table - Message Structure for Command 0x07::0x06 - EMV L2 Get Contact Terminal Configuration

    Table - Response to Command 0x07::0x06 - EMV L2 Get Contact Terminal Configuration

    Table - Message Structure for Command 0x07::0x07 - EMV L2 Modify Contact Application Configuration

    Table - Message Structure for Command 0x07::0x07 - EMV L2 Modify Contact Application Configuration

    Table - Message Structure for Command 0x07::0x08 - EMV L2 Get Contact Application Configuration

    Table - Response to Command 0x07::0x08 - EMV L2 Get Contact Application Configuration

    Table - Message Structure for Command 0x07::0x09 - EMV L2 Modify CA Public Key

    Table - Message Structure for Command 0x07::0x09 - EMV L2 Modify CA Public Key

    Table - Message Structure for Command 0x07::0x0A - EMV L2 Get CA Public Key

    Table - Response to Command 0x07::0x0A - EMV L2 Get CA Public Key

    Table - Message Structure for Command 0x07::0x0B - EMV L2 Get Kernel Base ChecksumKernel Base Checksum

    Table - Response to Command 0x07::0x0B - EMV L2 Get Kernel Base Checksum

    Table - Message Structure for Command 0x07:0x0D - Get Date Time

    Table - Response to Command 0x07:0x0D - Get Date Time

    Table - Message Structure for Command 0x07::0x0E - EMV L2 Commit Configuration

    Table - Response to Command 0x07::0x0E - EMV L2 Commit Configuration

    Table - Message Structure for Command 0x07::0x10 - Modify EMV L2 Terminal Capabilities Configuration

    Table - Response to Command 0x07::0x10 - Modify EMV L2 Terminal Capabilities Configuration

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C3

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C1

    C4

    13

    Byte 2 Transaction Options (options can be combined) 0x00 = Normal

    0x20 = Continue Mode Enabled, Wait. The device sends Notification 0x07::0x8C - EMV L2 Continue Notification), then pauses the transaction and waits for the host to send Command 0x07::0x13 - EMV L2 Continue Action)

    0x30 = Continue Mode Enabled, Continue. Same as 0x20 above but the device does not pause the transaction after sending the notification.

    0x40 = Enhanced App Select Mode Enabled. The device adds data to Notification 0x07::0x82 - EMV L2 User Selection Request – Application Select) including when only one card application is present.

    0x80 = Quick Chip Mode Enabled

    Bytes 3..8 Transaction Amount:

    EMV Tag 9F02, format n12, 6 bytes. If Byte 9 Transaction Type is set to Refund (0x20), the Transaction Amount must be zero.

    Byte 9 Transaction Type:

    0x00 = Purchase (covers transaction types Payment, Goods, and Services) 0x02 = Cash back

    0x20 = Refund (converts internally to type 0x00 Purchase, Bytes 3..8 are is ignored and set to

    $0.00)

    Bytes 10..15 Cash Back Amount:

    Cash back amount. If non-zero, use EMV Tag 9F03, format n12, 6 bytes. For Transaction Type Refund (0x20) this must be zero.

    Bytes 16..17 Transaction Currency Code (EMV Tag 5F2A, format n4, 2 bytes) Valid values: 0x0000 = Use Terminal Settings currency code 0x0840 = US Dollar 0x0978 = Euro

    Byte 18 Level of Transaction Status Notifications:

    Select the level of detail of transaction status notifications the device will send to the host as the transaction progresses (see Notification 0x07::0x8A - EMV L2 Transaction Status for details):

    0x00 = Termination status only (normal termination, card error, timeout, host cancel) 0x01 = Major status changes (terminations plus card insertions and waiting for user) 0x02 = All status changes (documents the entire transaction flow

    C4

    Calculated

    0xFF = Set to Factory Defaults (sets all items, Terminal, Applications, and Application Public Keys to factory default values)

    Bytes 3 Database Selector 0x00 = EMV Contact L2

    Byte 4..19 Device Serial Number 16 Byte device Serial Number

    Bytes 20..N: Objects to Write

    Note: Not needed if Operation is 0xFF Set to Factory Defaults. FA<len> /* container for generic data */

    <tag><len><value>

    …

    <tag><len><value>

    Bytes N..N+3 MAC

    First four bytes of a CBC-MAC computed using the AMK key (modified by XOR with 0xFF for the 7th, 15th, and 23rd bytes), on the data portion of TLV data object C4 padded to a multiple of 8 bytes. If the host has set the EMV Configuration Security setting to OEM Behavior, the host can transmit padding instead of a MAC.

    C4

    Calculated

    FA<len> /* container for generic data */

    <tag>

    …

    <tag>

    Tag DFDF47 cannot be read individually. This tag can only be retrieved using the

    ‘Read All Tags’ option.

    When reading all tags for the selected slot, the last tag will be DFDF47, the Database Checksum.

    C4

    Calculated

    Bytes 3: Database Selector 0x00 = EMV Contact L2

    Byte 4..19: Serial Number

    16 Byte device Serial Number

    Bytes 20..N: Objects to Write

    Note: Not needed if Operation is 0xFF Set to Factory Defaults. FA<len> /* container for generic data */

    <tag><len><value>

    …

    <tag><len><value>

    Bytes N..N+3: MAC

    MAC computed on Device Serial Number and Objects to Write fields using the AMK key. Use the first 4 bytes for the MAC. If the host has set the EMV Configuration Security setting to OEM Behavior, the host should transmit padding here.

    C4

    Calculated

    Note: Not needed if Operation is 0x0F Read All Tags of selected slot.

    FA<len> /* container for generic data */

    <tag>

    …

    <tag>

    Tag DFDF47 cannot be read individually. This tag can only be retrieved using the

    ‘Read All Tags’ option.

    C4

    Calculated

    Byte 2 Operation

    0x00 = Erase All (Erases all tags in all CAPK slots). This will set the TLV length of every TLV in each slot to 1 and the value to 0. A slot is considered erased and available for use by the Next Available Slot Number (0xFF) if its RID TLV length is set to 1 and its value is set to 0.

    0x01 = Writes a CA Public Key. To erase a single slot, write all of the slot’s tags’

    TLV lengths to 1 and values to 0.)

    Bytes 3 Database Selector 0x00 = EMV Contact L2

    Bytes 4..19 Serial Number

    16 Byte device Serial Number

    Bytes 20..n Objects to Write

    Note: Not needed if Operation is 0x00 Erase All. FA<len> /* container for generic data */

    < DFDF79><len><value> /* RID */

    < DFDF7A><len><value>/* Index */

    < DFDF7B><len><value>/* Modulus */

    < DFDF7C><len><value>/* Key Exponent */

    < DFDF7D><len><value> /* Checksum */.

    Bytes n..n+3: MAC

    MAC computed on Device Serial Number and Objects to Write fields using the AMK key. Use the first 4 bytes for the MAC. If the host has set the EMV Configuration Security setting to OEM Behavior, the host should transmit padding here.

    C4

    Calculated

    Note: Not needed if Operation is 0x0F Read All Tags of selected slot.

    FA<len> /* container for generic data */

    <tag>

    …

    <tag>

    Tag DFDF47 cannot be read individually. This tag can only be retrieved using the

    ‘Read All Tags’ option.

    When reading all tags for the selected slot, the last tag will be DFDF47, the Database Checksum.

    C4

    07

    0x00..0x3B: valid minute of the hour; last minute = 59.

    Byte 4 Second

    0x00..0x3B: valid second of the minute; last second = 59.

    Byte 5 Reserved 0x00: Reserved

    Byte 6 Year

    0x00..0xFF: valid year value added to 2008; 2017-2008 = 09.

    C4

    Calculated

    0x00 = Vendor Config ID oDynamo-PIN-Bypass (Default)

    · Tag 0x9F33 = 0x604800 (MSR, IC with Contacts, Enciphered PIN for online PIN, No CVM, No Signature, no ODA)

    · Tag 0x9F35 = 0x24 (Unattended, Online Only)

    · Tag 0x9F40 = 0x7200A05001 (Goods, Services, Cashback, Payment, NumCommand Keys, Print Cardholder, Display cardholder, Code table 1)

    · Tag 0xDFDF20 = 0x432380 (Manual language selection, CDA Mode 1, Cardholder Confirmation, EMV language Selection, Application Preferred Order,

    · Subsequent Bypass, PIN Bypass, Floor Limit Checking)

    0x01 = Vendor Config ID oDynamo-No PIN

    · Tag 0x9F33 = 0x600800 (MSR, IC with Contacts, No CVM, No Signature, No ODA)

    · Tag 0x9F35 = 0x24 (Unattended, Online Only)

    · Tag 0x9F40 = 0x7200A05001 (Goods, Services, Cashback, Payment, NumCommand Keys, Print Cardholder, Display cardholder, Code table 1)

    · Tag 0xDFDF22 = 0x432080 (Manual language selection, CDA Mode 1, Cardholder Confirmation, EMV language Selection, Application Preferred Order,Floor Limit Checking)

    0x02 = Vendor Config ID oDynamo-OLP

    · Tag 0x9F33 = 0x60D8C8 (MSR, ICC, Offline and Online PIN, No CVM, No Signature, ODA)

    · Tag 0x9F35 = 0x25 (Unattended, Offline with Online Capability)

    · Tag 0x9F40 = 0x7200F05001 (Goods, Services, Cashback, Payment, NumAlphaCommandFunc Keys, Print Cardholder, Display cardholder, Code table 1)

    · Tag 0xDFDF22 = 0x4323E0 (Manual language selection, CDA Mode 1, Cardholder Confirmation, EMV language Selection, Application Preferred Order,

    · Subsequent Bypass, PIN Bypass, Floor Limit Checking, Random Trans Selection, Velocity Checking)

    0x03 = Vendor Config ID oDynamo-ATM

    · Tag 0x9F33 = 0x60D8C8 (MSR, ICC, Offline and Online PIN, No CVM, No Signature, ODA)

    · Tag 0x9F35 = 0x14 (Unattended, Financial, Online Only)

    · Tag 0x9F40 = 0x8C80F05001 (Cash, Inquiry, Transfer, Cash Deposit, NumAlphaCommandFunc Keys, Print Cardholder, Display cardholder, Code table 1)

    · Tag 0xDFDF22 = 0x432380 (Manual language selection, CDA Mode 1, Cardholder Confirmation, EMV language Selection, Application Preferred Order, Subsequent Bypass, PIN Bypass, Floor Limit Checking)

    0x04 = Vendor Config ID oDynamo-OLEP

    · Tag 0x9F33 = 0x6058C8 (MSR, ICC, Offline Encrypted and Online PIN, No CVM, No Signature, ODA)

    · Tag 0x9F35 = 0x25 (Unattended, Offline with Online Capability)

    · Tag 0x9F40 = 0x7200F05001 (Goods, Services, Cashback, Payment,

    · NumAlphaCommandFunc Keys, Print Cardholder, Display cardholder, Code table 1)

    · Tag 0xDFDF22 = 0x4323E0 (Manual language selection, CDA Mode 1,

    · Cardholder Confirmation, EMV language Selection, Application Preferred Order Subsequent Bypass, PIN Bypass, Floor Limit Checking, Random Trans Selection,Velocity Checking)

    Bytes 19..22: MAC

    MAC computed on Device Serial Number and Configuration Identifier using the AMK key. If the host has set the EMV Configuration Security setting to OEM Behavior, the host should transmit padding here.