Magtek DynaPro Mini Programmer's Manual

Magtek DynaPro Mini Programmer's Manual

Pin encryption device, commands
Table of Contents

Advertisement

Quick Links

DynaPro Mini
PIN Encryption Device
Programmer's Manual (Commands)
October 2018
Document Number:
D99875629-43
REGISTERED TO ISO 9001:2015
MagTek I 1710 Apollo Court I Seal Beach, CA 90740 I Phone: (562) 546-6400 I Technical Support: (888) 624-8350
www.magtek.com

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the DynaPro Mini and is the answer not in the manual?

Questions and answers

Summary of Contents for Magtek DynaPro Mini

  • Page 1 DynaPro Mini PIN Encryption Device Programmer’s Manual (Commands) October 2018 Document Number: D99875629-43 REGISTERED TO ISO 9001:2015 MagTek I 1710 Apollo Court I Seal Beach, CA 90740 I Phone: (562) 546-6400 I Technical Support: (888) 624-8350 www.magtek.com...
  • Page 2 PUBLICATION RELEASE. NO PART OF THIS DOCUMENT MAY BE REPRODUCED OR TRANSMITTED IN ANY FORM OR BY ANY MEANS, ELECTRONIC OR MECHANICAL, FOR ANY PURPOSE, WITHOUT THE EXPRESS WRITTEN PERMISSION OF MAGTEK, INC. MagTek® is a registered trademark of MagTek, Inc.
  • Page 3 Misc. clarifications and corrections Oct 18, 2018 Section 2.3, replace device usage information with cross- reference to installation and operation manual; Throughout, replace BLE with Bluetooth LE. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 3 of 128 (D99875629-43)
  • Page 4: Limited Warranty

    MagTek has been advised of the possibility of such damages, or for any claim by any other party.
  • Page 5: Fcc Warning Statement

    MagTek’s sole liability and buyer’s exclusive remedies are stated in this section and in the section relating to MagTek’s Limited Warranty. FCC WARNING STATEMENT This equipment has been tested and was found to comply with the limits for a Class B digital device pursuant to Part 15 of FCC Rules.
  • Page 6: Table Of Contents

    Command 0x08 - Request Device Status ................36 3.4.9 Command 0x09 - Set / Get Device Configuration ............36 3.4.10 Command 0x0A - Request MSR Data ................40 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 6 of 128 (D99875629-43)
  • Page 7 Report 0x2C - EMV Cardholder Interaction Status Report ..........67 3.6.2 Command 0xA1 - Access EMV Tags ..................69 3.6.2.1 Reading All EMV Tags ....................70 3.6.3 Command 0xA2 - Start EMV Transaction ................71 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 7 of 128 (D99875629-43)
  • Page 8 Bluetooth Device Address Property ..................120 I.1.5 Bluetooth Device Name Property ..................120 I.1.6 Configuration Revision Property .................... 121 I.1.7 Power Timeout Property ......................121 I.1.8 Power Control Property ......................122 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 8 of 128 (D99875629-43)
  • Page 9 Other Commands ......................... 126 I.2.1 Echo Command ........................126 I.2.2 Reset Command ........................127 I.2.3 Erase All Non-volatile Memory Command ................127 I.2.4 Erase All Bonds Command ..................... 127 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 9 of 128 (D99875629-43)
  • Page 10: Introduction

    About This Document This document describes the master command set available through byte-by-byte direct communication with DynaPro Mini PIN encryption devices (referred to in this document as “the device”). About Terminology The general terms “device” and “host” are used in different, often incompatible ways in a multitude of specifications and contexts.
  • Page 11 Token Reversal Handheld Operation Quick Chip Beeper Control Connections and Connection Features USB Connection TCP/IP Over 802.11 Wireless Connection Ethernet Connection Static IP (Ethernet) Apple 30-Pin Connection DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 11 of 128 (D99875629-43)
  • Page 12 1) The number of CAPK key slots per RID depends on firmware revision number. DynaPro firmware up to revision D provides 8 key slots; revisions E and newer provide 16. DynaPro v3 provides 16 key slots. DynaPro Mini firmware up to revision C provides 8 key slots; revisions D and newer provide 16.
  • Page 13: About Apis

    This document provides information and support for the latter method. Information about using MagTek APIs is available in separate documentation, including D99875394 IPAD, DYNAPRO, AND DYNAPRO MINI PROGRAMMER'S MANUAL (.NET).
  • Page 14: Connection Types

    For more information, see the MagTek web site, or contact your reseller or MagTek Support Services. The devices is a full speed high-powered USB device that, when connected, draws power from the USB bus.
  • Page 15: About The Report Descriptor

    Usage (Request Swipe Card) 09 03 Report Count (3) 95 03 Feature (Data,Var,Abs,NWrp,Lin,Pref,Nnul,Nvol,Buf) B2 02 01 Report ID (0x04) - Set 85 04 Usage (Request PIN Entry) 09 04 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 15 of 128 (D99875629-43)
  • Page 16 Report Count (13) 95 0D Feature (Data,Var,Abs,NWrp,Lin,Pref,Nnul,Nvol,Buf) B2 02 01 Report ID (0x0C) - Set 85 0C Usage (Set Bitmap) 09 0C Report Count (2) 95 02 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 16 of 128 (D99875629-43)
  • Page 17 B2 02 01 Report ID (0x14) - Set 85 14 Usage (Request Cardholder Data Entry) 09 14 Report Count (3) 95 03 Feature (Data,Var,Abs,NWrp,Lin,Pref,Nnul,Nvol,Buf) B2 02 01 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 17 of 128 (D99875629-43)
  • Page 18 Usage (Request Clear Text Cardholder Data Entry) 85 1F Report Count (3) 95 03 Feature (Data,Var,Abs,NWrp,Lin,Pref,Nnul,Nvol,Buf) B2 02 01 Report ID (0x20) - Input 85 20 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 18 of 128 (D99875629-43)
  • Page 19 Usage (Send Big Block Data to Host) 09 29 Report Count(127) 95 7F Input (Data,Var,Abs,NWrp,Lin,Pref,Nnul,Buf) 82 02 01 Report ID (0x2A) - Input 85 2A Usage (Delayed Response ACK) 09 2A DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 19 of 128 (D99875629-43)
  • Page 20 85 58 Usage (Key Handling or Manufacturing Command) 09 58 Report Count (2) 95 02 Feature (Data,Var,Abs,NWrp,Lin,Pref,Nnul,Buf) B2 02 01 Report ID (0xA1) - Set 85 A1 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 20 of 128 (D99875629-43)
  • Page 21 09 A8 Report Count (63) 95 3F Feature (Data,Var,Abs,NWrp,Lin,Pref,Nnul,Buf) B2 02 01 Report ID (0xA9) - Get/Set 85 A9 Usage (Get/Set Challenge and Session Key) 09 A9 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 21 of 128 (D99875629-43)
  • Page 22 B2 02 01 Report ID (0xFF) - Set 85 FF Usage (Device Reset) 09 1E Report Count (02) 95 02 Input (Data,Var,Abs,NWrp,Lin,Pref,Nnul,Buf) B2 02 01 End Collection DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 22 of 128 (D99875629-43)
  • Page 23: How To Use Apple Ios Uart Connections (30-Pin Only)

    Command/Response as defined in section 3 Command Set. IMPORTANT: Generally, iOS commands must be transmitted in MSB (big endian) order. By convention, this document gives commands in LSB (little endian) order. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 23 of 128 (D99875629-43)
  • Page 24: How To Use Bluetooth Le Connections (Bluetooth Le Only)

    Max. Size Some frameworks use MSB order DynaPro Mini GATT service 01:01:B6:0C:41:E3:43:F8:8F:89:82:AD:F8:E6:08:05 Application Data From Host Length 1 byte 20:02:B6:0C:41:E3:43:F8:8F:89:82:AD:F8:E6:08:05 Application Data From Host 65 bytes 21:02:B6:0C:41:E3:43:F8:8F:89:82:AD:F8:E6:08:05 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 24 of 128 (D99875629-43)
  • Page 25 1 (Response ACK Report ID) Byte 1..2 (Response ACK Report) Input report format: Byte 0 Report ID Byte 1 - n Report Maximum report size is 127 bytes. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 25 of 128 (D99875629-43)
  • Page 26: Command Set

    Command 0x1A - Request Device Information and examine the Capability String’s SR parameter. The differences in command behavior between SRED and non-SRED devices are described in the usage information for each command. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 26 of 128 (D99875629-43)
  • Page 27: About Message Authentication Codes ("Mac-Amk" Or "Mac-Msr")

    DFDF54 specifying the KSN for the DUKPT working key used to generate the MAC. If the MAC is generated using a fixed key, F9 will not include DFDF54. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 27 of 128 (D99875629-43)
  • Page 28 F9 will always include nested TLV data object DFDF25 containing the device’s unique IFD Serial Number, which the host can read from the device. See Appendix D MagTek Custom EMV Tags (EMV Only) for details about retrieving tags.
  • Page 29 3 - Command Set DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 29 of 128 (D99875629-43)
  • Page 30: General Commands

    This command directs the device to prompt the cardholder to swipe a card by displaying one of four predetermined messages (see Card Message ID in Table 3-3). Example request screens look like this: DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 30 of 128 (D99875629-43)
  • Page 31 3 = Please Swipe Card Again 4 = Chip Error, Use Mag Stripe Tones: 0 = No sound Byte 3 1 = One beep 2 = Two beeps DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 31 of 128 (D99875629-43)
  • Page 32: Command 0X04 - Request Pin Entry

    1 = Enter PIN Amount Byte 2 2 = Reenter PIN Amount 3 = Reenter PIN 4 = Verify PIN Byte 3 Max PIN length (<=12) Min PIN length (>=4) DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 32 of 128 (D99875629-43)
  • Page 33 Tones: 0 = No sound Byte 4 1 = One beep 2 = Two beeps Byte 5 PIN options RESERVED RESERVED Wait Msg Verify PIN ISO3 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 33 of 128 (D99875629-43)
  • Page 34: Command 0X05 - Cancel Command

    This command directs the device to prompt the cardholder to select the transaction type (debit, credit, etc.) or to verify the transaction amount, as shown below. Figure 3-4 - DynaPro Mini "Amount OK" Cardholder Selection Screen If an error occurs, the device will terminate the command and report the error in ACKSTS of Command 0x01 - Response ACK.
  • Page 35: Command 0X07 - Display Message

    3) Send Report 0x27 - Display Message Done Report to the host Table 3-7 - Usage Table for Command 0x07 Byte 0 0x07 Byte 1 Wait Time in seconds, (1 - 255; 0 = infinite wait time) DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 35 of 128 (D99875629-43)
  • Page 36: Command 0X08 - Request Device Status

    The Configuration Lock bit can only be set by the manufacturer. When the device is locked, the host cannot change any of the device configuration settings. When the device is unlocked, the host can only change the following settings: DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 36 of 128 (D99875629-43)
  • Page 37 EMV L2 ICS Configuration  Financial+ICC Card Type reporting All other settings, including the Configuration Lock bit, can only be changed by the supplier or manufacturer. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 37 of 128 (D99875629-43)
  • Page 38 Bit 5 Reserved Bit 6 Reserved Bit 7 Configuration Lock (NOTE: After locking, unlocking can only be performed by the manufacturer): 0 = Unlocked 1 = Locked DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 38 of 128 (D99875629-43)
  • Page 39 8; values less than 5 are interpreted as 5 EMV L2 ICS Configuration (Default = 0x01) Byte 7 Note: This setting is ignored when EMV Mode is disabled. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 39 of 128 (D99875629-43)
  • Page 40: Command 0X0A - Request Msr Data

    If no error occurs, the device will send multiple instances of Report 0x23 - Card Data Report to the host. If no MSR data is available, the device will send a single Report 0x23 - Card Data Report containing a Data Length of 0. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 40 of 128 (D99875629-43)
  • Page 41: Command 0X0B - Get Challenge

    Get mode. If the key ID is not in the list, or a valid authentication key is not available for key ID = 0x63, the data block will be all zeros. Table 3-12 - Usage Table for Command 0x0B (Get mode) Byte 0 0x0B DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 41 of 128 (D99875629-43)
  • Page 42: Command 0X0D - Send Session Data - Amount

    This command is used to send card PAN data to the device in cases where the PAN is coming from a source other than the card being processed. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 42 of 128 (D99875629-43)
  • Page 43: Command 0X0E - Get Information

    Key Status, if Info ID = 0x80: 0 - 5 = KCV type (see Table 3-17) Byte 3 Data length (see Table 3-17); default value is 0 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 43 of 128 (D99875629-43)
  • Page 44 0x60 - SN & subject’s DN** <=59 If associated CA cert exists*** 0x70 0x71 - SN & issuer’s DN** <=59 If associated CA cert exists*** 0x7F DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 44 of 128 (D99875629-43)
  • Page 45: Command 0X0F - Login/Authenticate

    If no error occurs, authentication is successful. Table 3-18 - Usage Table for Command 0x0F (For Login/Authenticate) Byte 0 0x0F 0x00 = Logout Byte 1 0x01 = Login / Authenticate DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 45 of 128 (D99875629-43)
  • Page 46: Command 0X0F - Logout

    0xA1 = EMV data in TLV format, Set EMV Tag(s) (MAC) 0xA4 = EMV data in TLV format, Acquirer Response (ARPC) 0xA5 = CA Public Key Data (MAC) DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 46 of 128 (D99875629-43)
  • Page 47: Command 0X11 - Request Manual Card Entry

     Last 4 digits of account # (minimum length = maximum length = 4)  Card verification code (minimum length = 3, maximum length = 4) DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 47 of 128 (D99875629-43)
  • Page 48 3 - Command Set Figure 3-6 - DynaPro Mini Manual Card Information Entry If an error occurs, the device will terminate the command and report the error in ACKSTS of Command 0x01 - Response ACK. For a full list of error codes, see Appendix C Status and Message Table, Table 3-76.
  • Page 49: Command 0X14 - Request Cardholder Data Entry

    This command directs the device to validate, authenticate, and use the file data to upgrade the device’s main application firmware. It is only available when using the USB or Ethernet connections. Further DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 49 of 128 (D99875629-43)
  • Page 50: Command 0X1A - Request Device Information

    This command requests information about the device. Use this command in Set mode first to specify the information to retrieve, then use Get mode to retrieve the requested information. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 50 of 128 (D99875629-43)
  • Page 51 0x01 “64” (null terminated string) Byte 2 to 63 Table 3-29 - Usage Table for Command 0x1A - Capability String Byte 0 0x1A Byte 1 0x02 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 51 of 128 (D99875629-43)
  • Page 52 Table 3-31 - Usage Table for Command 0x1A - Product Name Byte 0 0x1A Byte 1 0x04 The product name is a null-terminated string containing “DynaPro Mini” Byte 2..63 Table 3-32 - Usage Table for Command 0x1A - Serial Number Byte 0 0x1A...
  • Page 53 Byte 2..63 Table 3-36 - Usage Table for Command 0x1A - Boot2 Firmware Version Byte 0 0x1A Byte 1 0x0B “30050866B02-DEMO” (null terminated string) Byte 2..63 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 53 of 128 (D99875629-43)
  • Page 54: Command 0X1C - Set/Get Bluetooth Le Power Configuration (Bluetooth Le Only)

    Bluetooth LE module. The full set of Bluetooth LE module controls can be found in Appendix I Bluetooth LE Module Control Data. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 54 of 128 (D99875629-43)
  • Page 55: Command 0X1E - Set Ipod Accessory Protocol (Iap) Info (30-Pin Only)

    3.4.26 Command 0x30 - Set / Get KSN When called in Set mode, this command directs the device to generate a KSN data for transmission to a host. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 55 of 128 (D99875629-43)
  • Page 56: Command 0X31 - Set Ksn Encrypted Data

    The host can then use this command to direct the device to process data in the big block. The device decrypts and displays the data until the display timeout expires. This feature is used for the Token Reversal Function. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 56 of 128 (D99875629-43)
  • Page 57 0x01 - Response ACK. For a full list of error codes, see Appendix C Status and Message Table, Table 3-76. Table 3-43 - Usage Table for Command 0x31 Byte 0 0x31 Byte 1 Display Time in seconds, (1 - 255; 0 = 256 seconds) DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 57 of 128 (D99875629-43)
  • Page 58: Command 0X32 - Get Bin Whitelist Table - Non Financial Format

    3.4.30 Command 0xFF - Device Reset This command directs the device to perform a restart. Table 3-46 - Usage Table for Command 0xFF Byte 0 0xFF DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 58 of 128 (D99875629-43)
  • Page 59 3 - Command Set Byte 1 0 = Soft Reset Byte 2 Reserved DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 59 of 128 (D99875629-43)
  • Page 60: General Input Reports

    Table 3-48 - Usage Table for Report 0x21 Byte 0 0x21 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 60 of 128 (D99875629-43)
  • Page 61: Report 0X22 - Card Status Report

    Table 3-50 - Usage Table for Report 0x22 Byte 0 0x22 Byte 1 Operation Status (see Appendix C Status and Message Table) Byte 2 Card Status (see Appendix C Status and Message Table) DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 61 of 128 (D99875629-43)
  • Page 62: Report 0X23 - Card Data Report

    0x09 - Set / Get Device Configuration), then track status (byte 2) of Data ID 0x63 uses a different set of status values, defined as follows: DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 62 of 128 (D99875629-43)
  • Page 63: Report 0X24 - Pin Response Report

    To cover this case, the software should include retry logic that resends Command 0x04 - Request PIN Entry to re-arm the PIN pad. Table 3-53 - Usage Table for Report 0x24 Byte 0 0x24 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 63 of 128 (D99875629-43)
  • Page 64: Report 0X25 - Cardholder Selection Response Report

    Data Block in Block 1 are the expected total length of the response data (from all blocks 1..n), excluding data padding and CBC-MAC. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 64 of 128 (D99875629-43)
  • Page 65 Data block (maximum 123 bytes) Table 3-58 - End of Big Block Sending Format Byte 0 0x29 Byte 1 Not defined Byte 2 99 = End flag DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 65 of 128 (D99875629-43)
  • Page 66: Big Block Data For Authorization Request (Arqc)

    It is an asynchronous version of Command 0x01 - Response ACK. Table 3-60 - Usage Table for Report 0x2A Byte 0 0x2A Status of Command (“ACKSTS”) Byte 1 Byte 2 ID for Command reporting status DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 66 of 128 (D99875629-43)
  • Page 67: Report 0X2D - Bluetooth Le Module Control Data (Bluetooth Le Only)

    This report is used to update the merchant display throughout the transaction based on cardholder interactions. Table 3-62 - Usage Table for Report 0x2C Byte 0 0x2C DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 67 of 128 (D99875629-43)
  • Page 68 If EMV Cardholder Interaction Status ID from Byte 1 = 0x20, bytes 4 and 5 will indicate the length of data starting at byte 6, which is in TLV format. Otherwise, no data. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 68 of 128 (D99875629-43)
  • Page 69: Command 0Xa1 - Access Emv Tags

    The EMV specification, EMV Integrated Circuit Card Specifications for Payment Systems v4.3.  The MagTek custom tags listed in Appendix D MagTek Custom EMV Tags (for example, the host can assign the database of EMV tags a label using tag DFDF26, and read the checksum back using tag DFDF27);...
  • Page 70: Reading All Emv Tags

    If no error occurs, the device will send Command 0x01 - Response ACK, then send Report 0x29 - Send Big Block Data to Host with the EMV tags and requested data. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 70 of 128 (D99875629-43)
  • Page 71: Command 0Xa2 - Start Emv Transaction

    0x04 = Acquirer not available (Note: prevents long timeout on waiting for host approval) Bytes 7..12 Amount Authorized (EMV Tag 9F02, n12 format) Transaction Type: DynaPro (Firmware Rev A to D) and DynaPro Mini (Firmware Rev A to C) 0x02 or 0x09 = Cashback 0x04 = Goods (Purchase) 0x08 = Services (Purchase)
  • Page 72 If an error occurs, the device terminates the command and reports the error in ACKSTS of Command 0x01 - Response ACK. For a full list of error codes, see Command 0x01 - Response ACK. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 72 of 128 (D99875629-43)
  • Page 73: Standard Emv Transaction

    7) If the cardholder inserts a contact chip card, depending on the device’s payment brand account type setting for ICC the Acquirer has set in tag DFDF73 [see Appendix D MagTek Custom EMV Tags (EMV Only)] the device does one of the following: a) Assume Credit, Debit, or Default.
  • Page 74 (6) Depending on the transaction outcome, the device displays APPROVED DECLINED (similar to the screenshots in Command 0x07 - Display Message), and ERROR performs Command 0xA2 Completion. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 74 of 128 (D99875629-43)
  • Page 75: Arqc Request (Emv Only)

    (normally debit card)*/ 99(Encrypted PIN DATA)<len><val> DFDF41(PIN KSN Data)<len><val> DFDF42(PIN EncryptionType)<len><val> <Padding to force F9 plus padding to be a multiple of 8 bytes> <Four byte CBC-MAC> DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 75 of 128 (D99875629-43)
  • Page 76 The device calculates the CBC-MAC using the Message Authentication, request or both ways variant of the current MSR DUKPT working key used in the relevant transaction. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 76 of 128 (D99875629-43)
  • Page 77 DFDF58 to report how many bytes of tag DFDF59 are padding. DFDF59 contains the following after the host decrypts it: FC<len>/* container for encrypted generic data */ F4<len>/* container tag for encrypted MSR data */ DFDF36 <EncT1status><len><val> DFDF37 <EncT1data><len><val> DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 77 of 128 (D99875629-43)
  • Page 78: Command 0Xa2 Completion

    5) The host should send the device Command 0x02 - End Session to clear from the THANK YOU display and make the device ready for the next transaction. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 78 of 128 (D99875629-43)
  • Page 79: Command 0Xa4 - Acquirer Response Arpc (Mac-Msr)

    Byte 0 0xA4 Byte 1..12 Reserved 3.6.5 Command 0xA8 - Get Kernel Info This command directs the device to send the requested kernel information to the host. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 79 of 128 (D99875629-43)
  • Page 80 Checksum/Signature - L1 Kernel 0x11 Checksum/Signature - L2 Kernel LIB 0x12 Checksum/Signature - L2 Kernel Configuration 0x13 Checksum/Signature - L2 HAL 0x14 Checksum/Signature - S/W LIB DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 80 of 128 (D99875629-43)
  • Page 81: Command 0Xab - Request Emv Transaction Data (Mac-Msr)

    AAAA /* 2-byte MSB message length excluding padding and CBC-MAC */ F9<len> /* container for MAC structure and generic data */ DFDF54(MAC KSN)<len><val> DFDF55(MAC Encryption Type)<len><val> DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 81 of 128 (D99875629-43)
  • Page 82 … /* Reversal Data tags */ The following tables provide details about the data format. For an explanation of the “Format” columns, see the definitions in EMV 4.3 Book 3. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 82 of 128 (D99875629-43)
  • Page 83 0x38 = Transaction canceled 0x39 = Aid parse error 0x3A = Code table index not found 0x3B = Error no more record 0x3C = EMV e overflow [sic.] DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 83 of 128 (D99875629-43)
  • Page 84 Counter maintained by the EMV application 9F36 in the ICC (incrementing the ATC is Card managed by the ICC) Device Device Transaction Type Device DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 84 of 128 (D99875629-43)
  • Page 85 9F06 AID - terminal Device Var 5-16 9F12 EMV Application Preferred Name Card Var 1-16 9F1C Terminal ID Device An 8 9F39 POS Entry Mode Device DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 85 of 128 (D99875629-43)
  • Page 86 Primary Account Number Card 0-10 5F34 PAN Sequence Number Card Authorization Code Device 9F15 Merchant Category Code Device 9F16 Merchant Identifier Device 9F39 POS Entry Mode Device DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 86 of 128 (D99875629-43)
  • Page 87: Command 0Xac - Merchant Bypass Pin Command

    This command allows the host to bypass the PIN entry requirement during an EMV transaction (Command 0xA2 - Start EMV Transaction). Table 3-74 - Usage Table for Command 0xAC Byte 0 0xAC Byte 1 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 87 of 128 (D99875629-43)
  • Page 88: Appendix A Examples

    3) The device prompts the cardholder to swipe his or her card, and sends Report 0x20 - Device State Report to the host, which expands to the following bytes: DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 88 of 128 (D99875629-43)
  • Page 89 7) The device sends back eight instances of Report 0x23 - Card Data Report to the host, which the host interprets as meaning the following (Note that additional headers for Ethernet are not shown): DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 89 of 128 (D99875629-43)
  • Page 90 11) The device sends the host Report 0x24 - PIN Response Report if PIN entry is successful. 12) The device sends the host another Report 0x20 - Device State Report. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 90 of 128 (D99875629-43)
  • Page 91: How To Parse Encrypted Big Block Emv Data From An Sred Device

    01C7 is the expected data length not including padding and CBC-MAC. Per Appendix D MagTek Custom EMV Tags and section 3.6.6, the next byte, F9, is a tag that indicates the beginning of a data object containing Message Authentication (MAC) structure and generic data.
  • Page 92 AF626E5A14F19C025B7CD1EF1456A31DDFDF560A9500030000000120039DDFDF570180 DFDF580106F782007FDFDF4001015F25031201015F24031401315F2A0208269F020600 00000002009F0607A00000000410109F1C0831313232333334349F3901059C01009F34 035E03005F5701305F3401005F2009544553542F43415244DFDF4D263B353431333030 303034303030313531333D303131343030303030303030303030303030303F The value of data object FA begins with tag F0, which Appendix D MagTek Custom EMV Tags and section 3.6.6 indicate is transaction results. Its length 0x82019C gives a 412 byte value: F105DFDF1A0100F882010EDFDF598200F08569A27E2A2A9D7E67A96624D10DBE3F366E C3F31C4072676FEF43213AF3C76ABE06A6E90F10E1650BE4ECE9CF64E9143129F66B44 E8C4A697CA5A0E319D933BF9BBC52B2DAF8FCC663354E2B0E545A5002F4A0C976E65DD...
  • Page 93 Appendix A - Examples The value of data object F0 (transaction results) begins with tag F1, which Appendix D MagTek Custom EMV Tags and section 3.6.6 indicate is status data. Its length is a single byte 0x05, giving the value DFDF1A0100.
  • Page 94 57 (Track 2 Equivalent Data) 0012 5413339000001513D0114201000000000000 82 (EMV Application Interchange Profile) 0002 5800 The value if data block F0 (transaction results) continues with: F782007FDFDF4001015F25031201015F24031401315F2A0208269F0206000000000200 9F0607A00000000410109F1C0831313232333334349F3901059C01009F34035E03005F 5701305F3401005F2009544553542F43415244DFDF4D263B3534313330303030343030 30313531333D303131343030303030303030303030303030303F DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 94 of 128 (D99875629-43)
  • Page 95 DFDF4D (Mask T2 ICC Data) 0026 0313134303030303030303030303030303030 3F (“TEST/CARD”) And the remaining data in the whole big block is: 00000000000000C568ACEB …which consists of padding zeroes and the 4-byte CBC-MAC C568ACEB. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 95 of 128 (D99875629-43)
  • Page 96: Appendix B Terminology

    IBM Corporation, since adopted by the US government and ANSI (the American National Standards Institute) as the encryption standard for financial institutions. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 96 of 128 (D99875629-43)
  • Page 97 The term itself is derived from the following expressions: “Magne” as in magnetic and “Print” as in fingerprint. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 97 of 128 (D99875629-43)
  • Page 98 Static Random Access Memory SRED Secure Reading and Exchange of Data Terminal Action Codes Transaction Certificate TDES Triple Data Encryption Standard TRSM Tamper-Resistant Security Module Transaction Status Information DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 98 of 128 (D99875629-43)
  • Page 99 Appendix B - Terminology Term Definition Transaction Verification Results UART Universal Asynchronous Receive Transmit Universal Serial Bus USIP Universal Secure Integrated Platform DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 99 of 128 (D99875629-43)
  • Page 100: Appendix C Status And Message Table

    0x07 = Write with duplicate RID and index 0x08 = Write with corrupted Key 0x09 = CA Public Key reached maximum capacity 0x0A = CA Public Key read with invalid RID or Index DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 100 of 128 (D99875629-43)
  • Page 101 CBC-MAC ACKSTS, wrong serial number, or a bad key. 0x83 = Length Error - The data size is 0 or is larger than the available buffer size, or a data packet is incomplete, or MagTek device OID of the certificate doesn’t match the predefined OID...
  • Page 102 0x02 = Please Swipe Card 0x03 = Please Swipe Again 0x00 = None Buzzer 0x01 = Single Beep 0x02 = Double Beep 0x00 = Credit Amount Type 0x01 = Debit DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 102 of 128 (D99875629-43)
  • Page 103 For each key, the possible values are listed below: Value 0 = the indicated key was not pressed Value 1 = the indicated key was pressed Key Mask Bit 7 Enter Right Middle Left DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 103 of 128 (D99875629-43)
  • Page 104 1 = Amount sent Bit 7 Card Data MSRPAN EXPAN 0 = Certificate does not exist in the device 1 = Certificate exists in the device DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 104 of 128 (D99875629-43)
  • Page 105 Status Unbind Cert 0 = False 1 = True Bit 7 Hardware MagHead Status Tamper .IE3 Programmed SRED Reserved Reserved Reserved Sensors only (IntelliHead Active Only) DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 105 of 128 (D99875629-43)
  • Page 106: Appendix D Magtek Custom Emv Tags (Emv Only)

    Appendix D MagTek Custom EMV Tags (EMV Only) In addition to the standard EMV tags documented in EMV 4.3, Book 3, Annex A, MagTek provides additional custom tags with the device. These are used with Command 0xA1 - Access EMV Tags, Command 0xA2 - Start EMV Transaction, and Command 0xAB - Request EMV Transaction Data (MAC-MSR).
  • Page 107 Number of EMV Applications 31 50 41 59 2E 53 DFDF22 PSE Name 59 53 2E 44 44 46 30 31 DFDF23 ASI (Application Select Indicator) DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 107 of 128 (D99875629-43)
  • Page 108 Encrypted MagnePrint DFDF3D MS2.0 Status DFDF3F CAPK Tag Signature Required: 0x01 = Signature Required DFDF40 0x80 = CBC-MAC checked in ARQC online response DFDF41 PIN KSN DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 108 of 128 (D99875629-43)
  • Page 109 00 00 00 00 00 00 b DFDF66 BIN Table Slot 6 00 00 00 00 00 00 b Acquirer Terminal Config - Fallback DFDF67 (0=Fallback Not Supported, 1=Fallback Supported) DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 109 of 128 (D99875629-43)
  • Page 110 Payment Brand Account Type 0x00 = Default DFDF73 0x01 = Credit, Debit, or Default 0x02 = Debit 0x03 = Credit * - Value is based on the ongoing transaction DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 110 of 128 (D99875629-43)
  • Page 111: Appendix Eemv Configurations (Emv Only)

    MagTek, Inc. working with. 6) Click the attachment icon at the end of the row to open the Letter of Approval for that device. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 111 of 128 (D99875629-43)
  • Page 112: Appendix F Error Codes

    AMS 3911 Failure Communications with AMS chip failed GPIO Extender Failure GPIO Extender Circuit bad Battery Charge Measurement Failure Battery Charge Measurement Circuit bad ADC Failure USIP bad DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 112 of 128 (D99875629-43)
  • Page 113: S Codes

    Code Calculated Cn where n = sum of the Description following Mfg Unbind certificate not loaded Device CA certificate not loaded PIN CA certificate not loaded DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 113 of 128 (D99875629-43)
  • Page 114: Device Offline K Codes

    No PIN keyload cert or key installed No PIN key installed (or exhausted) Device offline A Codes Table 3-83 - "A" Error Codes Code Displayed Description Device awaiting authentication DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 114 of 128 (D99875629-43)
  • Page 115: Appendix G Factory Defaults

    9F 03 9F 26 82 5A 5F 34 9F 36 9F 1A 95 9F Authorization Request 0xDFDF02 MagTek 02 5F 2A 9A 9C 9F 37 9F 10 DF DF 53 F5 Tags (ARQC) DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 115 of 128 (D99875629-43)
  • Page 116 0xDFDF28 MagTek CAPK Database 0xDFDF29 Device Calculated - 20 Bytes Checksum Supported Terminal 0xDFDF2D Manufacturing 65 6e 66 72 69 74 64 65 65 73 Languages DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 116 of 128 (D99875629-43)
  • Page 117: Emv Contact Payment Brand Factory Defaults

    Terminal Threshold Value 0xDFDF10 MagTek 00 00 00 00 40 00 Terminal Target 0xDFDF11 MagTek Percentage Terminal Max Target 0xDFDF12 MagTek Percentage Slots 1 through 9 are left empty. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 117 of 128 (D99875629-43)
  • Page 118: Appendix H Language And Country Codes

    0276 Germany Terminal Language Codes Table 3-87 - Terminal Language Codes 656E English (en) 6672 French (fr) 6974 Italian (it) 6465 German (de) 6573 Spanish (es) DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 118 of 128 (D99875629-43)
  • Page 119: Appendix I Bluetooth Le Module Control Data (Bluetooth Le Only)

    Byte 2 Property identifier Byte 3..n Property value Response message Byte 0 1 (Response message type) Byte 1 Response code I.1.3 Software ID Property Property ID: 0x00 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 119 of 128 (D99875629-43)
  • Page 120: Bluetooth Device Address Property

    To avoid ambiguity, if the solution specifies that more than one device of the same name will be available, MagTek recommends including a unique identifier in the device name so the cardholder or operator can differentiate.
  • Page 121: Configuration Revision Property

    Non-Volatile: Yes. Changes made to this property will persist even if the device is powered off or reset. This property should only be changed once during device configuration. Modifying this property too many times will wear out flash memory. Default value: 60 seconds DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 121 of 128 (D99875629-43)
  • Page 122: Power Control Property

    Example Get Power Control property: Request message (hex): 00 00 05 Response message (hex): 01 00 03 (button controlled and Bluetooth Connection controlled) DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 122 of 128 (D99875629-43)
  • Page 123: Advertising Control Property

    Non-Volatile: Yes. Changes made to this property will persist even if the device is powered off or reset. This property should only be changed once during device configuration. Modifying this property too many times will wear out flash memory. Default value: 0 (000000) DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 123 of 128 (D99875629-43)
  • Page 124: Desired Bluetooth Le Minimum Connection Interval Property

    Default value: 10 (12.5 milliseconds) This property is a two byte integer in least significant byte order that contains the value in 1.25 millisecond units. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 124 of 128 (D99875629-43)
  • Page 125: Desired Bluetooth Le Slave Latency Property

    Default value: 500 (5000 milliseconds) This property is a two byte integer in least significant byte order that contains the value in 10 millisecond units. DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 125 of 128 (D99875629-43)
  • Page 126: Connection Parameter Update Request Control Property

    This command echo’s the data received in the request message by transmitting the same data in the response message. Request message Byte 0 0 (Request message type) Byte 1 2 (Echo command identifier) Byte 2-n Data to echo Response message DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 126 of 128 (D99875629-43)
  • Page 127: Reset Command

    The secure codes are required to DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 127 of 128 (D99875629-43)
  • Page 128 Response message Byte 0 1 (Response message type) Byte 1 Response code Example command: Request message (hex): 00 05 55 AA Response message (hex): 01 00 DynaPro Mini| PIN Encryption Device | Programmer’s Manual (Commands) Page 128 of 128 (D99875629-43)

Table of Contents