DynaPro

Magtek DynaPro Reference guide

  • Hello! I am an AI chatbot trained to assist you with the Magtek DynaPro Reference guide. I’ve already reviewed the document and can help you find the information you need or explain it in simple terms. Just ask your questions, and providing more details will help me assist you more effectively!
MagTek I 1710 Apollo Court I Seal Beach, CA 90740 I Phone: (562) 546-6400 I Technical Support: (888) 624-8350
www.magtek.com
DynaPro
PIN Encryption Device
Programmers Reference (Commands)
November 2019
Manual Part Number:
D99875585-51
REGISTERED TO ISO 9001:2015
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 2 of 240 (D99875585-51)
Copyright © 2006 - 2019 MagTek, Inc.
Printed in the United States of America
INFORMATION IN THIS PUBLICATION IS SUBJECT TO CHANGE WITHOUT NOTICE AND
MAY CONTAIN TECHNICAL INACCURACIES OR GRAPHICAL DISCREPANCIES. CHANGES
OR IMPROVEMENTS MADE TO THIS PRODUCT WILL BE UPDATED IN THE NEXT
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.
MagnePrint® is a registered trademark of MagTek, Inc.
MagneSafe® is a registered trademark of MagTek, Inc.
Magensa™ is a trademark of MagTek, Inc.
DynaPro™ and DynaPro Mini™ are trademarks of MagTek, Inc.
IPAD® is a registered trademark of MagTek, Inc.
AAMVA™ is a trademark of AAMVA.
American Express® and EXPRESSPAY FROM AMERICAN EXPRESS® are registered trademarks of
American Express Marketing & Development Corp.
Apple Pay® is a registered trademark to Apple Inc.
D-PAYMENT APPLICATION SPECIFICATION® is a registered trademark to Discover Financial
Services CORPORATION
Google Wallet™ payment service is a trademark of Google Inc.
Interac® and the Interac logo are registered trademarks of Interac Inc. Used under license.
MasterCard® is a registered trademark and PayPass and Tap & Go are trademarks of MasterCard
International Incorporated.
Visa® and Visa payWave® are registered trademarks of Visa International Service Association.
ANSI®, the ANSI logo, and numerous other identifiers containing "ANSI" are registered trademarks,
service marks, and accreditation marks of the American National Standards Institute (ANSI).
ISO® is a registered trademark of the International Organization for Standardization.
PCI Security Standards Council® is a registered trademark of the PCI Security Standards Council, LLC.
EMV® is a registered trademark in the U.S. and other countries and an unregistered trademark elsewhere.
The EMV trademark is owned by EMVCo, LLC. The Contactless Indicator mark, consisting of four
graduating arcs, is a trademark owned by and used with permission of EMVCo, LLC.
UL and the UL logo are trademarks of UL LLC.
The Bluetooth® word mark and logos are registered trademarks owned by Bluetooth SIG, Inc. and any
use of such marks by MagTek is under license.
Google Play™ store and Android™ platform are trademarks of Google Inc. Google Wallet™ payment
service is a trademark of Google Inc.
iPhone®, iPod®, and Mac® are registered trademarks of Apple Inc., registered in the U.S. and other
countries. App Store
SM
is a service mark of Apple Inc., registered in the U.S. and other countries. iPad™
is a trademark of Apple, Inc. IOS is a trademark or registered trademark of Cisco in the U.S. and other
countries and is used by Apple Inc. under license.
Microsoft® and Windows® are registered trademarks of Microsoft Corporation.
Some device icons courtesy of https://icons8.com/, used under the Creative Commons Attribution-
NoDerivs 3.0 license.
All other system names and product names are the property of their respective owners.
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 3 of 240 (D99875585-51)
Table 0.1 - Revisions
Rev Number
Date
Notes
1.01
Oct 22, 2013
Initial Release based on 99200078 6.01
12
Jun 22, 2015
Update a reference to an obsolete standard
20
Jul 17, 2015
Updated release based on D99200078-90: Clarify that bitmaps
and contactless are supported only on DynaPro models; clarify
Byte 47 of Command 0xA2; change format of data for PayPass
asynchronous messages in Command 0x2C; add control to
disable checking inbound ARQC response’s MAC; add Balance
Read Before GenAC and Balance Read After GenAC in
Command 0xA2; add new Command 0xAD to send CLEAN
command to PayPass kernel; add PayPass Kernel
Asynchronous Message as a big buffer type in Command 0x29
Send Big Block to Host; add Command 0x033 to read back
whitelisted financial format BIN; add new signed configuration
command to set financial format BIN for whitelisting; update
trademark information; add response spec for Command 0xAD;
made financial+ICC card type reporting configurable; correct
Merchant Data Container elements; clarify the number of slots
in Command 0xA1; add example appendix illustrating how to
parse EMV values from an SRED device; general cleanup and
clarification
30
Feb 22, 2016
Updated release based on D99200078-100: Command 0x04 -
Request PIN Entry: Financial+ICC Card Reporting Option is
now enabled by default, a zero bit value means enabled. Add
DFDF53, 5F20, 5F30, DFDF4D and DFDF52 as clear text tags
in ARQC. Add reporting of new contactless card type
ContactlessICC-MSD. Corrected maximum length of Terminal
and CAPK label from 20 to 16. Add Contactless database
default Terminal and Payment brand settings and supporting
detail. Miscellaneous clarifications.
40
Dec 9, 2016
Updated release based on D99200078-110: Add additional
EMV ICS configuration; add ability to make PayPass
transaction parameters ABSENT or EMPTY; DynaPro L2
Kernel upgrade from 4.3B to 4.3E; add notes to EMV config in
Command 0x09 indicating for kernel 4.3E only C1, C4, and C5
are certified; change EMV configuration ID from 1C to C1 / 7C
to C7; add DFDF1A status; clarify transaction type in command
0xA2; add reporting of technical fallback type; change default
value of DFDF20 (Terminal Features); add Power
Management; change MAC to MAC-MSR to more clearly
identify key used; changed bit 4 of HW status to say “KeyPad
No Tamper”; ongoing cleanup / clarification
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 4 of 240 (D99875585-51)
Rev Number
Date
Notes
50
Aug 17, 2017
Updated release based on D99200078-130:
Address section / feature tagging issues; modify description of
DFDF73 value 0 from unknown to default; Add back missing
control for delayed response in Set feature of command 0xA1;
Fix tags and feature table, including: Contactless only/custom
messages fixes, DynaPro Mini fixes, add test features and
MCL, Token Reversal, Quick Chip, and split signature capture
feature into SC-S and SC-F; Change Command 0x0E - Get
Information to remove MID (Google Applications) type and
clarify usage of info ID 0x80; Add Cash Manual transaction
type to Command 0xA2 - Start EMV Transaction,
Command 0x14 - Request Cardholder Data Entry; Clarify
that some Command 0x09 - Set / Get Device Configuration
calls must be wrapped; Add TLS mode to Command 0x09 -
Set / Get Device Configuration; Update default values of
9F7E to 0x00 in slots 1 and 2 of PayPass/MCL Settings
(PayPass Support Only | MasterCard MCL 3.1.x Support
Only); Add DynaPro PIN Function model to Table 1-1 -
Device Features; Appendix H, update Terminal, Application
and Dynamic Reader default settings to distinguish version
differences; Misc. clarifications and corrections.
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 5 of 240 (D99875585-51)
Rev Number
Date
Notes
51
Nov 27, 2019
Add PIN functions to Command 0x04 - Request PIN Entry
and Command 0xA2 - Start EMV Transaction; Add Clear
Text PAN to feature table, add tag to Command 0x0D - Send
Session Data - Amount (Host-Supplied PAN Only) and
Command 0x0D - Send Session Data - PAN (Host-Supplied
PAN Only); Add Host-Supplied PAN and Fixed PIN Key to
feature table; Add clarifying introduction for Command 0x0B -
Get Challenge; Restructure and clarify MAC usage for whole
document; Add DynaPro v3 and DynaPro Go PIN Function to
devices list; Add option to Command 0xA2 - Start EMV
Transaction, PIN Verify no remove card message; Add
Server/Waiter and Ticket number codes in Report 0x21 -
Cardholder Data Entry Response Report; Add Extended
Device Certificate Status to Report 0x20 - Device State
Report; Update default value of 9F66 in section H.4.2
payWave Terminal Settings (payWave 2.2 Support Only);
Correct PIN Block Format option in 3.4.4 Command 0x04 -
Request PIN Entry; Update About Device Features to show
Interoperability Test Support and add Quick Chip capability to
DynaPro Mini-Bluetooth LE; Clarify detailed Quick Chip
behavior for Command 0xA2 - Start EMV Transaction;
Update About Device Features to add payWave checksum
feature and changes in the contactless kernels specification
supported; Update Command 0xA8 - Get Kernel Info to add
new info ID for payWave checksum and new feature tag;
Correct Byte 4 of Table 3-73; Clarify response sequences for
Command 0xA1 - Access EMV Tags; Add Suppress Signature
Capture to feature table; Add PCI Bluetooth LE to feature table
and add related information about PCI Bluetooth LE devices
throughout; Add byte 56 parameter to Command 0xA2 - Start
EMV Transaction to control transaction final message; Add
byte 57 parameter to Command 0xA2 - Start EMV
Transaction to control when ASF logic is enabled; Clarify
About Device Features that only DynaPro v3 supports Static
IP; Add US Common AID selection in About Device Features
and Command 0x09 - Set / Get Device Configuration; Add
EMV 4.3H Kernel, Interac Support, and Suppress Debit or
Credit to feature table, corresponding sections H.2.3 and H.2.4,
and retrofit EMV 4.3E/F/G kernel for other products; Misc.
clarifications and corrections.
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 6 of 240 (D99875585-51)
LIMITED WARRANTY
MagTek warrants that the products sold pursuant to this Agreement will perform in accordance with
MagTek’s published specifications. This warranty shall be provided only for a period of one year from
the date of the shipment of the product from MagTek (the “Warranty Period”). This warranty shall apply
only to the “Buyer” (the original purchaser, unless that entity resells the product as authorized by
MagTek, in which event this warranty shall apply only to the first repurchaser).
During the Warranty Period, should this product fail to conform to MagTek’s specifications, MagTek
will, at its option, repair or replace this product at no additional charge except as set forth below. Repair
parts and replacement products will be furnished on an exchange basis and will be either reconditioned or
new. All replaced parts and products become the property of MagTek. This limited warranty does not
include service to repair damage to the product resulting from accident, disaster, unreasonable use,
misuse, abuse, negligence, or modification of the product not authorized by MagTek. MagTek reserves
the right to examine the alleged defective goods to determine whether the warranty is applicable.
Without limiting the generality of the foregoing, MagTek specifically disclaims any liability or warranty
for goods resold in other than MagTek’s original packages, and for goods modified, altered, or treated
without authorization by MagTek.
Service may be obtained by delivering the product during the warranty period to MagTek (1710 Apollo
Court, Seal Beach, CA 90740). If this product is delivered by mail or by an equivalent shipping carrier,
the customer agrees to insure the product or assume the risk of loss or damage in transit, to prepay
shipping charges to the warranty service location, and to use the original shipping container or equivalent.
MagTek will return the product, prepaid, via a three (3) day shipping service. A Return Material
Authorization (“RMA”) number must accompany all returns. Buyers may obtain an RMA number by
contacting Technical Support at (888) 624-8350.
EACH BUYER UNDERSTANDS THAT THIS MAGTEK PRODUCT IS
OFFERED AS IS. MAGTEK MAKES NO OTHER WARRANTY, EXPRESS OR
IMPLIED, AND MAGTEK DISCLAIMS ANY WARRANTY OF ANY OTHER
KIND, INCLUDING ANY WARRANTY OF MERCHANTABILITY OR FITNESS
FOR A PARTICULAR PURPOSE.
IF THIS PRODUCT DOES NOT CONFORM TO MAGTEK’S
SPECIFICATIONS, THE SOLE REMEDY SHALL BE REPAIR OR
REPLACEMENT AS PROVIDED ABOVE. MAGTEK’S LIABILITY, IF ANY,
SHALL IN NO EVENT EXCEED THE TOTAL AMOUNT PAID TO MAGTEK
UNDER THIS AGREEMENT. IN NO EVENT WILL MAGTEK BE LIABLE TO
THE BUYER FOR ANY DAMAGES, INCLUDING ANY LOST PROFITS, LOST
SAVINGS, OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES
ARISING OUT OF THE USE OF, OR INABILITY TO USE, SUCH PRODUCT,
EVEN IF MAGTEK HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES, OR FOR ANY CLAIM BY ANY OTHER PARTY.
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 7 of 240 (D99875585-51)
LIMITATION ON LIABILITY
EXCEPT AS PROVIDED IN THE SECTIONS RELATING TO MAGTEK’S LIMITED WARRANTY,
MAGTEK’S LIABILITY UNDER THIS AGREEMENT IS LIMITED TO THE CONTRACT PRICE OF
THIS PRODUCT.
MAGTEK MAKES NO OTHER WARRANTIES WITH RESPECT TO THE PRODUCT, EXPRESSED
OR IMPLIED, EXCEPT AS MAY BE STATED IN THIS AGREEMENT, AND MAGTEK
DISCLAIMS ANY IMPLIED WARRANTY, INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
MAGTEK SHALL NOT BE LIABLE FOR CONTINGENT, INCIDENTAL, OR CONSEQUENTIAL
DAMAGES TO PERSONS OR PROPERTY. MAGTEK FURTHER LIMITS ITS LIABILITY OF ANY
KIND WITH RESPECT TO THE PRODUCT, INCLUDING ANY NEGLIGENCE ON ITS PART, TO
THE CONTRACT PRICE FOR THE GOODS.
MAGTEK’S SOLE LIABILITY AND BUYER’S EXCLUSIVE REMEDIES ARE STATED IN THIS
SECTION AND IN THE SECTION RELATING TO MAGTEK’S LIMITED WARRANTY.
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 8 of 240 (D99875585-51)
FCC INFORMATION
This device complies with Part 15 of the FCC Rules. Operation is subject to the following two
conditions: (1) This device may not cause harmful interference, and (2) This device must accept any
interference received, including interference that may cause undesired operation.
Note: This equipment has been tested and found to comply with the limits for a Class B digital device,
pursuant to part 15 of the FCC Rules. These limits are designed to provide reasonable protection against
harmful interference in a residential installation. This equipment generates, uses and can radiate radio
frequency energy and, if not installed and used in accordance with the instructions, may cause harmful
interference to radio communications. However, there is no guarantee that interference will not occur in a
particular installation. If this equipment does cause harmful interference to radio or television reception,
which can be determined by turning the equipment off and on, the user is encouraged to try to correct the
interference by one or more of the following measures:
Reorient or relocate the receiving antenna.
Increase the separation between the equipment and receiver.
Connect the equipment into an outlet on a circuit different from that to which the receiver is
connected.
Consult the dealer or an experienced radio/TV technician for help.
Caution: Any changes or modifications not expressly approved by the party responsible for
compliance could void the user’s authority to operate this equipment. RF Exposure: A
distance of 20 cm shall be maintained between the antenna and users, and the transmitter
may not be co-located with any other transmitter or antenna.
CUR/UR
This product is recognized per Underwriter Laboratories and Canadian Underwriter Laboratories 1950.
CANADIAN DOC STATEMENT
This digital apparatus does not exceed the Class B limits for radio noise from digital apparatus set out in
the Radio Interference Regulations of the Canadian Department of Communications.
Le présent appareil numérique n’émet pas de bruits radioélectriques dépassant les limites applicables aux
appareils numériques de la classe B prescrites dans le Réglement sur le brouillage radioélectrique édicté
par le ministère des Communications du Canada.
This Class B digital apparatus complies with Canadian ICES-003.
Cet appareil numérique de la classe B est conformé à la norme NMB-003 du Canada.
CE STANDARDS
Testing for compliance with CE requirements was performed by an independent laboratory. The unit
under test was found compliant with standards established for Class B devices.
UL/CSA
This product is recognized per UL 60950-1, 2nd Edition, 2011-12-19 (Information Technology
Equipment - Safety - Part 1: General Requirements), CSA C22.2 No. 60950-1-07, 2nd Edition,
2011-12 (Information Technology Equipment - Safety - Part 1: General Requirements).
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 9 of 240 (D99875585-51)
ROHS STATEMENT
When ordered as RoHS compliant, this product meets the Electrical and Electronic Equipment (EEE)
Reduction of Hazardous Substances (RoHS) European Directive 2002/95/EC. The marking is clearly
recognizable, either as written words like “Pb-free,” “lead-free,” or as another clear symbol ( ).
0 - Table of Contents
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 10 of 240 (D99875585-51)
Table of Contents
Limited Warranty .............................................................................................................................................. 6
FCC Information ................................................................................................................................................ 8
CUR/UR............................................................................................................................................................... 8
CANADIAN DOC STATEMENT ........................................................................................................................... 8
CE STANDARDS ................................................................................................................................................. 8
UL/CSA ............................................................................................................................................................... 8
RoHS STATEMENT ............................................................................................................................................. 9
Table of Contents ............................................................................................................................................ 10
1 Introduction ............................................................................................................................................. 14
1.1 About This Document .................................................................................................................... 14
1.2 About Terminology ......................................................................................................................... 14
1.3 About Connection Types ................................................................................................................ 14
1.4 About Device Features .................................................................................................................. 14
1.5 About SDKs ..................................................................................................................................... 18
2 Connection Types .................................................................................................................................... 19
2.1 How to Use USB Connections (USB Only) ................................................................................... 19
2.1.1 About Reports ......................................................................................................................... 20
2.1.2 About the Report Descriptor ................................................................................................ 21
2.1.3 How to Send Commands On the USB Connection ............................................................ 29
2.1.4 How to Receive Data On the USB Connection ................................................................... 30
3 Command Set ......................................................................................................................................... 31
3.1 About Big Block Data and TLV Format........................................................................................ 31
3.2 About SRED / Non-SRED Firmware (Non-SRED only) ............................................................... 31
3.3 About Message Authentication Codes (“MAC-AMK” or “MAC-MSR”) ..................................... 32
3.4 General Commands ....................................................................................................................... 34
3.4.1 Command 0x01 - Response ACK ........................................................................................ 34
3.4.2 Command 0x02 - End Session ............................................................................................. 36
3.4.3 Command 0x03 - Request Swipe Card .............................................................................. 38
3.4.4 Command 0x04 - Request PIN Entry .................................................................................. 40
3.4.5 Command 0x05 - Cancel Command ................................................................................... 43
3.4.6 Command 0x06 - Request Cardholder Selection ............................................................. 44
3.4.7 Command 0x07 - Display Message .................................................................................... 46
3.4.8 Command 0x08 - Request Device Status .......................................................................... 49
3.4.9 Command 0x09 - Set / Get Device Configuration ............................................................ 50
3.4.10 Command 0x0A - Request MSR Data ................................................................................ 55
3.4.11 Command 0x0B - Get Challenge ......................................................................................... 56
0 - Table of Contents
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 11 of 240 (D99875585-51)
3.4.12 Command 0x0C - Set Bitmap (Bitmaps Only) ................................................................... 57
3.4.13 Command 0x0D - Send Session Data - Amount (Host-Supplied PAN Only) ................. 58
3.4.14 Command 0x0D - Send Session Data - PAN (Host-Supplied PAN Only) ........................ 58
3.4.15 Command 0x0E - Get Information ...................................................................................... 59
3.4.16 Command 0x0F - Login/Authenticate or Logout .............................................................. 62
3.4.17 Command 0x10 - Send Big Block Data to Device ............................................................ 63
3.4.18 Command 0x11 - Request Manual Card Entry .................................................................. 65
3.4.19 Command 0x12 - Request Cardholder Signature (SC-S Only | SC-F Only) ................... 68
3.4.20 Command 0x13 - Get Cardholder Signature (SC-S Only | SC-F Only) ............................ 69
3.4.21 Command 0x14 - Request Cardholder Data Entry ........................................................... 70
3.4.22 Command 0x17 - Update Device ......................................................................................... 73
3.4.23 Command 0x1A - Request Device Information ................................................................ 74
3.4.24 Command 0x1F - Request Clear Text Cardholder Data Entry (Clear Text User Data
Only) 78
3.4.25 Command 0x30 - Get KSN for Display Encrypted Data (Token Reversal Only) ........... 82
3.4.26 Command 0x31 - Display Encrypted Data (Token Reversal Only) ................................. 83
3.4.27 Command 0x32 - Get BIN Whitelist Table - Non Financial Format ................................ 84
3.4.28 Command 0x33 - Get BIN Whitelist Table - Financial Format (Financial Format
Whitelist Only) ......................................................................................................................................... 85
3.4.29 Command 0x58 - Request Device Certificate ................................................................... 86
3.4.30 Command 0xFF - Device Reset ............................................................................................ 87
3.5 General Input Reports ................................................................................................................... 88
3.5.1 Report 0x20 - Device State Report ..................................................................................... 88
3.5.2 Report 0x21 - Cardholder Data Entry Response Report .................................................. 92
3.5.3 Report 0x22 - Card Status Report ....................................................................................... 94
3.5.4 Report 0x23 - Card Data Report (MAC-MSR) ..................................................................... 95
3.5.5 Report 0x24 - PIN Response Report ................................................................................... 97
3.5.6 Report 0x25 - Cardholder Selection Response Report .................................................... 98
3.5.7 Report 0x27 - Display Message Done Report ................................................................... 99
3.5.8 Report 0x28 - Signature Capture State Report (SC-S Only | SC-F Only)...................... 100
3.5.9 Report 0x29 - Send Big Block Data to Host ..................................................................... 101
3.5.9.1 Big Block Data for Authorization Request (ARQC) ................................................. 102
3.5.10 Report 0x2A - Delayed Response ACK ............................................................................. 104
3.5.11 Report 0x2E - Clear Text Cardholder Data Entry Response Report (Clear Text User
Data Only) .............................................................................................................................................. 105
3.6 EMV-Related Commands and Reports (EMV Only) ................................................................. 106
3.6.1 Report 0x2C - EMV Cardholder Interaction Status Report ............................................. 107
3.6.2 Command 0xA1 - Access EMV Tags .................................................................................. 108
0 - Table of Contents
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 12 of 240 (D99875585-51)
3.6.2.1 Reading All EMV Tags ................................................................................................. 109
3.6.3 Command 0xA2 - Start EMV Transaction ......................................................................... 111
3.6.3.1 Standard EMV Transaction ......................................................................................... 114
3.6.3.2 ARQC Request (EMV Only) .......................................................................................... 120
3.6.3.3 Command 0xA2 Completion ..................................................................................... 123
3.6.4 Command 0xA4 - Acquirer Response ARPC (MAC-MSR) .............................................. 124
3.6.5 Command 0xA8 - Get Kernel Info ..................................................................................... 125
3.6.6 Command 0xAB - Request EMV Transaction Data (MAC-MSR) .................................... 127
3.6.7 Command 0xAC - Merchant Bypass PIN Command ....................................................... 134
3.6.8 Command 0xAE - MCL Send DET Command (MCL 3.1 Support Only) ......................... 135
Appendix A Examples ............................................................................................................................... 136
A.1 How to Get MSR/PIN Data from the Device for a Bank Simulation .................................... 136
A.2 How to Parse Encrypted Big Block EMV Data From An SRED Device .................................. 139
Appendix B Terminology .......................................................................................................................... 144
Appendix C Status and Message Codes ................................................................................................ 148
Appendix D MagTek Custom EMV Tags (EMV Only) ............................................................................. 149
Appendix E EMV Configurations (EMV Only) ......................................................................................... 153
Appendix F Error Codes ............................................................................................................................ 154
F.1 H Codes .......................................................................................................................................... 154
F.2 S Codes .......................................................................................................................................... 155
F.3 C Codes .......................................................................................................................................... 155
F.4 Device Offline K Codes ................................................................................................................ 156
F.5 Device Offline A Codes ................................................................................................................ 156
Appendix G Custom Messages (Custom Messages Only) ................................................................... 157
Appendix H EMV Settings (EMV Only) ..................................................................................................... 159
H.1 Certificate Authority Public Keys ............................................................................................... 159
H.2 EMV Contact Settings (EMV Only) .............................................................................................. 159
H.2.1 EMV Contact Terminal Settings (EMV 4.3E/F/G Kernel Only) ...................................... 159
H.2.2 EMV Contact Application Settings (EMV 4.3E/F/G Kernel Only) .................................. 161
H.2.3 EMV Contact Terminal Settings (EMV 4.3H Kernel Only) ............................................... 171
H.2.4 EMV Contact Application Settings (EMV 4.3H Kernel Only)........................................... 173
H.3 PayPass/MCL Settings (PayPass Support Only | MasterCard MCL 3.1.x Support Only) .. 174
H.3.1 PayPass Terminal Settings (PayPass Support Only) ...................................................... 174
H.3.2 PayPass Application Settings (PayPass Support Only) .................................................. 176
H.3.3 MCL Terminal Settings (MCL 3.1.x Support Only) ........................................................... 193
H.3.4 MCL Application Settings (MCL 3.1.x Support Only) ....................................................... 196
H.4 payWave Settings (payWave 2.1.3 Support Only | payWave 2.2 Support Only) ............... 216
H.4.1 payWave Terminal Settings (payWave 2.1.3 Support Only) ......................................... 216
0 - Table of Contents
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 13 of 240 (D99875585-51)
H.4.2 payWave Terminal Settings (payWave 2.2 Support Only) ............................................. 220
H.4.3 payWave Application Settings (payWave 2.1.3 Support Only) ..................................... 225
H.4.4 payWave Application Settings (payWave 2.2 Support Only) ......................................... 226
H.4.5 payWave Dynamic Reader Limit Settings (payWave 2.1.3 Support Only) ................. 227
H.4.6 payWave Dynamic Reader Limit Settings (payWave 2.2 Support Only) ..................... 228
H.5 Expresspay Settings (Expresspay 3.0 Support Only | Expresspay 3.1 Support Only) ........ 230
H.5.1 Expresspay Terminal Settings (Expresspay 3.0 Support Only) ..................................... 230
H.5.2 Expresspay Terminal Settings (Expresspay 3.1 Support Only) ..................................... 232
H.5.3 Expresspay Application Settings (Expresspay 3.0 Support Only | Expresspay 3.1
Support Only) ......................................................................................................................................... 234
H.5.4 Expresspay Dynamic Reader Limit Settings (Expresspay 3.1 Support Only) ............. 235
H.6 D-PAS Settings (D-PAS Support Only) ....................................................................................... 236
H.6.1 D-PAS Terminal Settings ..................................................................................................... 236
H.6.2 D-PAS Application Settings ................................................................................................ 238
Appendix I Language and Country Codes ............................................................................................ 240
I.1 Terminal Country Codes .............................................................................................................. 240
I.2 Terminal Language Codes .......................................................................................................... 240
1 - Introduction
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 14 of 240 (D99875585-51)
1 Introduction
1.1 About This Document
This document describes the command set available using byte-by-byte direct communication with
devices in the DynaPro family listed on the cover page: DynaPro.
1.2 About Terminology
The general terms “device” and “host” are used in different, often incompatible ways in a multitude of
specifications and contexts. For example, “host” may have different meanings in the context of USB
communication than in the context of networked financial transaction processing. In this document,
“device” and “host” are used strictly as follows:
Device refers to the PIN Encryption Device (PED) that receives and responds to the command set
specified in this document. Devices include DynaPro, DynaPro Go, and so on.
Host refers to the piece of general-purpose electronic equipment the device is connected or paired to,
which can send data to and receive data from the device. Host types include PC and Mac
computers/laptops, tablets, smartphones, teletype terminals, and even test harnesses. In many cases
the host may have custom software installed on it that communicates with the device. When “host”
must be used differently, it is qualified as something specific, such as “acquirer host” or “USB host.”
Similarly, the word “user” is used in different ways in different contexts. This document separates users
into more descriptive categories:
The cardholder
The operator (such as a cashier, bank teller, customer service representative, or server), and
The developer or the administrator (such as an integrator configuring the device for the first time).
Because some connection types, payment brands, and other vocabulary name spaces (notably Bluetooth
LE, EMV, smart phones, and more recent versions of Windows) use very specific meanings for the term
“Application,” this document favors the term software to refer to software on the host that provides a user
interface for the operator.
The combination of device(s), host(s), software, firmware, configuration settings, physical mounting and
environment, operator and cardholder experiences, and documentation is referred to as the solution.
1.3 About Connection Types
DynaPro, DynaPro Mini, DynaPro Go, and related products use a common communication protocol
across a variety of physical connection layers, which can include universal serial bus (USB), Ethernet,
Apple 30-pin dock connector, and Bluetooth Low Energy (Bluetooth LE). The set of available
connection layers depends on the device. Details for communicating with devices via each physical
connection type are provided in section 2 Connection Types.
1.4 About Device Features
The information in this document applies to multiple devices. When developing solutions that use a
specific device or set of devices, integrators must be aware of each device’s communication interfaces,
features, and configuration options, which affect the availability and behavior of some commands. Table
1-1 provides a list of device features that may impact command availability and behavior.
1 - Introduction
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 15 of 240 (D99875585-51)
Table 1-1 - Device Features
Feature
IPAD
DynaPro v1
DynaPro v3
DynaPro Plus
DynaPro Mini
30
-pin
DynaPro Mini
Bluetooth LE
DynaPro Go
PIN Function
General Features
Signature Capture Stylus (“SC-S”)
Y
Y
Y
Opt
N
N
N
Signature Capture Finger (“SC-F”)
N
N
N
N
N
N
Y
Suppress Signature Capture
N
N
Y
7
N
N
N
N
EMV Message Control
N
N
Y
9
N
N
N
N
Suppress Debit or Credit
N
N
Y
9
N
N
N
N
PIN Language Select
N
Y
Y
Y
N
N
Y
Re-PIN Support
N
N
N
N
N
N
Y
Custom Messages
Y
Y
Y
Y
N
N
Y
Bitmaps
Y
Y
Y
Y
N
N
Y
Clear Text User Data
N
Y
Y
Y
N
N
Y
Host-Supplied PAN
Y
Y
Y
Y
Y
Y
N
Capacitive Keypad (“Cap
Keypad”)
Y
Y
Y
Y
N
N
N
Activation Codes
N
Y
Y
Y
N
N
Y
Fixed PIN Key
Y
Y
Y
Y
Y
Y
N
PCI 4.x Key Block
N
N
N
N
N
N
Y
IntelliHead
Y
Y
Y
Y
Y
Y
N
Financial Format Whitelisting
N
Y
Y
Y
N
N
Y
Max Financial Card PAN Length
N
18
18
18
18
18
19
MagneSafe 2.0 (MS2.0)
Y
Y
Y
Y
Y
Y
N
Token Reversal
N
Y
Y
Y
Y
Y
N
Handheld Operation
N
N
N
N
N
N
Y
Quick Chip
N
Y
3
Y
3
N
N
Y
6
Y
Beeper Control
N
Y
Y
Y
Y
Y
Y
Connections and Connection Features
USB Connection
Y
Y
Y
Y
Y
Y
Y
TCP/IP Over 802.11 Wireless
Connection
N
N
N
N
N
N
N
1 - Introduction
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 16 of 240 (D99875585-51)
Feature
IPAD
DynaPro v1
DynaPro v3
DynaPro Plus
DynaPro Mini
30
-pin
DynaPro Mini
Bluetooth LE
DynaPro Go
PIN Function
Ethernet Connection
N
Opt
Opt
Opt
N
N
N
Static IP (Ethernet)
N
N
Y
4
N
N
N
N
Apple 30-Pin Connection
N
N
N
N
Y
N
N
RS-232 Connection
N
N
N
N
N
N
N
Bluetooth LE Connection
N
N
N
N
N
Y
N
PCI Bluetooth LE Connection
N
N
N
N
N
N
N
SRED Options
SRED
N
Opt
Opt
Opt
Opt
Opt
Y
Non-SRED
Y
Opt
Opt
Opt
Opt
Opt
N
EMV Features
Chip Card Contact
N
Y
Y
N
Y
Y
Y
Chip Card L1 Mode (“L1”)
N
N
N
N
N
N
N
Chip Card L2 Mode (“L2”)
N
Y
Y
N
Y
Y
Y
2
RID CAPK Key Slots
N
8/16
1
8/16
1
N
8
8/16
1
16
Multiple Payment Brand Defaults
N
N
N
N
N
N
Y
EMV 4.3E/F/G Kernel
N
Y
Y
N
Y
Y
Y
EMV 4.3H Kernel
N
N
Y
N
N
N
N
Chip Card Contactless
N
Opt
Opt
N
N
N
Y
2
MasterCard PayPass
N
Opt
Y
8
N
N
N
N
MasterCard MCL 3.1.x
N
N
Y
7
N
N
N
Y
2
payWave 2.1.3
N
Opt
Y
8
N
N
N
N
payWave 2.2
N
N
Y
7
N
N
N
Y
2
payWave Checksum
N
N
Y
7
N
N
N
N
Expresspay 3.0
N
Opt
Y
8
N
N
N
N
Expresspay 3.1
N
N
Y
7
N
N
N
Y
2
D-PAS
N
Opt
Opt
N
N
N
Y
2
Configurable EMV Support
N
Y
Y
Y
N
N
N
Interac Support
N
N
Y
10
Y
10
N
N
N
1 - Introduction
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 17 of 240 (D99875585-51)
Feature
IPAD
DynaPro v1
DynaPro v3
DynaPro Plus
DynaPro Mini
30
-pin
DynaPro Mini
Bluetooth LE
DynaPro Go
PIN Function
US Common Debit AID Auto
Select
N
N
Y
10
Y
10
N
N
N
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.
2) Feature is not agency-certified.
3) DynaPro v1 firmware revision F and newer; DynaPro v3 firmware revision B and newer.
4) Available with Ethernet module firmware version 30050876-A00 and later.
5) Available on DynaPro v3 with Contactless L1 EMVCo Ver 2.6
6) Available on DynaPro Mini Bluetooth LE firmware revision E or newer.
7) Available on DynaPro v3 firmware version D or newer.
8) No longer supported on DynaPro v3 firmware version D or newer.
9) Available on DynaPro v3 firmware version C4 or newer.
10) Available on DynaPro v3 firmware version E or newer.
1 - Introduction
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 18 of 240 (D99875585-51)
1.5 About SDKs
MagTek provides convenient SDKs and corresponding documentation for many programming languages
and operating systems. The API libraries included in the SDKs wrap the details of the connection in an
interface that conceptually parallels the device’s internal operation, freeing software developers to focus
on the business logic, without having to deal with the complexities of platform APIs for connecting to the
various available connection types, communicating using the various available protocols, and parsing the
various available data formats.
The SDKs and corresponding documentation include:
Functions for sending the direct commands described in this manual
Wrappers for commonly used commands that further simplify development
Sample source code to demonstrate how to communicate with the device using the direct commands
described in this manual
To download the SDKs and documentation, search www.magtek.com for “SDK” and select the SDK and
documentation for the programming languages and platforms you need, or contact MagTek Support
Services for assistance. Table 1-2 provides an example list of SDKs and related documentation available
for this family of devices:
Table 1-2 - Available SDKs and Documentation
Platform
SDK
Documentation
Android
99510129
D99875668 IPAD, DynaPro, DynaPro Go, DynaPro Mini Programmer’s
Manual (ANDROID)
Windows
99510127
D99875633 IPAD, DynaPro, DynaPro Go, DynaPro Mini Programmer’s
Manual (JAVA/JAVA APPLETS)
D998200078 IPAD, DynaPro, DynaPro Go, DynaPro Mini Programmer’s
Manual (MICROSOFT .NET)
D998200078 IPAD, DynaPro, DynaPro Go, DynaPro Mini Programmer’s
Manual (C++)
iOS
99510124
D99875654 DynaPro, DynaPro Go, DynaPro Mini Programmer’s Manual
(IOS)
Software developers also have the option to revert to direct communication with the device using libraries
available in the chosen development framework. This document provides information and support for
developing host software using that method.
2 - Connection Types
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 19 of 240 (D99875585-51)
2 Connection Types
Table 1-1 in section 1.4 includes a list of connection types available for each device. The following
subsections provide details developers need to communicate with the device using each connection type.
2.1 How to Use USB Connections (USB Only)
The device conforms to the USB specification revision 2.0, and is compatible with revision 1.1. It also
conforms to the Human Interface Device (HID) class specification version 1.1, and communicates as a
vendor-defined HID device. This document assumes the reader is familiar with USB HID class
specifications, which are available at www.usb.org. MagTek strongly recommends becoming familiar
with that standard before trying to communicate with the device directly via USB.
Developers can easily create custom software to communicate with the device using any framework that
can make API calls to the standard Windows USB HID driver, such as Visual Basic or Visual C++.
MagTek has developed demonstration software that communicates with the device via this method, and
developers can use it to test the device and to provide a starting point for developing other software. For
more information, see the MagTek web site, or contact your reseller or MagTek Support Services.
The devices documented here are full speed high-powered USB device that, if not designed to use an
external power supply, draw power from the USB bus. They identify themselves with vendor ID 0x0801
and product ID 0x3004 (DynaPro) or product ID 0x3009 (DynaPro Mini or DynaPro Go). The device
enters and wakes up from Suspend mode when directed to do so by the USB host. It does not support
remote wakeup.
This device has programmable configuration properties stored in non-volatile memory. The properties
are configured via the USB port and can be configured at the factory, at a key injection facility, or by the
end user. More details can be found in section 3 Command Set in this document, and in a separate
document which provides details about key loading.
There are no specific security settings or actions required to use the device’s USB connection in a manner
that is compliant with agency certification security requirements.
2 - Connection Types
DynaPro| PIN Encryption Device | Programmer’s Reference (Commands)
Page 20 of 240 (D99875585-51)
2.1.1 About Reports
All USB HID devices send and receive data using Reports. Each report can contain several sections,
called Usages, each of which has its own unique four-byte (32-bit) identifier. The two most significant
bytes of a usage are called the usage page, and the two least significant bytes are called the usage ID.
Vendor-defined HID usages must have a usage page in the range 0xFF00 - 0xFFFF, and it is common
practice for related usage IDs share the same usage page. For these reasons, all usages for these devices
use vendor-defined usage page 0xFF20.
HID reports used by the host can be divided into three types:
Feature Reports are used by the host to send commands to the device and to receive synchronous
responses from the device. Feature reports can be further subdivided into Get Feature and Set
Feature types.
Input Reports are used by the device to send asynchronous responses or notifications to the host
when a related feature report completes, or automatically the device’s state changes. This is common
when a command depends on cardholder interaction, or when a command takes more time for the
device to process than is reasonable for the host to wait on a blocking call for the device to
acknowledge completion.
Output Reports. Output reports are part of the HID standard, but are not used by this device.
For information about determining the device’s available reports, see section 2.1.2 About the Report
Descriptor.
For information about using feature reports to send commands to the device and receive responses from
the device, see section 2.1.3 How to Send Commands On the USB Connection.
For information about receiving unsolicited data from the device via Input Reports, see section 2.1.4 How
to Receive Data On the USB Connection.
/