Page 1
Secure Card Reader Authenticators Programmer’s Reference (Java and Java Applet) November 2019 Manual Part Number: D99875724-101 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
Updated SDK Contents and tested Java Runtime environments. Added support for tDynamo and DynaWave. 01/21/2019 Updated to correctly reference Bluetooth LE. Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 2...
Page 3
Updated the function startTransaction(): cardType, option, and transactionType. 11/11/2019 Added the format of card data returned from GetCardData(). Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 3...
Page 4
PROFITS, LOST SAVINGS, OR OTHER INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE, OR INABILITY TO USE, THE SOFTWARE. Licensee's sole remedy in Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet)
Page 5
Agreement and will not affect the enforceability of any of the remaining provisions. This Agreement shall be governed by the laws of the State of California and shall inure to the benefit of MagTek, Incorporated, its successors or assigns.
Tested Java Runtime Environments: Java 8 Interfaces for Operating Systems The following table matches the device interface to operating system. Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 11...
Page 12
Windows 7, Windows 8 and 8.1, Windows 10 iDynamo 6 Windows 7, Windows 8 and 8.1, Windows 10 Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 12...
5) Enter app mode, scroll down to Apps by name , and launch the Windows PC Settings app. Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 13...
Page 14
Add a Bluetooth Device (see Figure 2-1). Figure 2-1 - Launch Manage Bluetooth Devices App from Desktop Mode Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 14...
Page 15
If the device is configured to run in KB mode, Windows Pair will prompt you Enter the passcode for your keyboard Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 15...
Page 16
Connected After a few seconds the device will disconnect, which is normal power-saving behavior. Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 16...
How to Manually Set Up the Java Library With the 64-bit JRE/JVM MagTek highly recommends using the 32-bit version of Java if you intend to use the MTSCRA Java applet as described in section 2.3, regardless of whether you are using a 32-bit or 64-bit version of Windows.
Windows Features e) Turn on the checkboxes for Internet Information Services Internet Information Services Hostable Web Core Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 19...
Page 20
By default, it will be C:\Program Files\MagTek\SCRA Windows SDK\Sample Code\Java Applet\Object for 32-bit operating Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 20...
Page 21
Also turn Protected Mode the checkbox for in the > tab. Enhanced Protected Mode Internet Options Advanced Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 21...
The Caller-Allowable-Codebase attribute is used to identify the domains from which JavaScript code can make calls to your RIA without security prompts. Set this attribute to the domain that hosts the Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet)
4) Save the certificate received from the Certificate provider as Certname.p7b. 5) Import your Digital Certificate by entering the following command: keytool -import -alias MyCert -file Certname.p7b Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 24...
Page 25
8) Verify the output of your signed JAR file by entering the following command: jarsigner -verify -verbose -certs C:\mtscra.jar Please visit this website https://docs.oracle.com/javase/tutorial/deployment/jar/signing.html for more information regarding signing JAR files. Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 25...
This function returns a string value for a card type after a cardholder has swiped a card. String getEncodeType(); Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 29...
“0” = Device does not use MagneSafe 2.0 Encryption 3.21 getCapMagStripeEncryption This function retrieves device capability of track encryption after a cardholder has swiped a card. Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 30...
This function retrieves the last 4 digits of the card number (PAN) after a cardholder swipes a card. String getCardLast4(); Return Value: String containing the last 4 digits. Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 31...
Return Value: Returns a string containing the session id. 3.46 getKSN This function retrieves the device’s key serial number (KSN) after a card swipe. String getKSN(); Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 34...
Return Value: 0 for no error. 3.50 getBatteryLevel This function retrieves battery level between 0% and 100%. long getBatteryLevel(); Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 35...
Return Value: This function will always returns an empty string. To get the result code of this command, use getResultCode() function. Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet)
This function sends a direct extended command to the device using a hex value. long sendExtendedCommmand(String data); Return Value: 0 for no error. Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 40...
This event is called when the device has card data to transmit to the host. public void onDataReceived(String data); Parameter Description lpData A string containing card data. onDeviceResponse Return event for sendData. Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 41...
Indicates the remaining time available, in seconds, for the transaction to Transaction complete. If the transaction does not complete within this time it will be Time aborted. remaining Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 42...
This event is called when the device has transaction message update for the host to display to user. void onDisplayMessageRequest(String data); This notification will send a hex string to represent transaction status. For example: Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 43...
This event is called when the device has an ARQC message send to the host. void onARQCReceived(String data); This notification will send a hex string for ARQC of this transaction. Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 44...
This notification will send a hex string for result of the extended command. Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 45...
Page 46
0x0391 = Invalid Device Serial Number 0x0396 = Invalid System Date and Time Return Value: None Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 46...
Keep temporary files on my computer Delete Files… 8) Press the button to launch the window. Delete Files and Applications Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 48...
Page 49
14) Re-install the applet by following the steps in section 2 How to Set Up the Swipe Reader Control Panel. Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet)
Trusted libraries list file not found security: Blacklist file not found or revocation check is disabled network: Disconnect connection to http://localhost/SCRA/mtscra.jar Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 50...
Page 51
Saved certificates in Deployment session certificate store network: Created version ID: 1.7.0.72 network: Created version ID: 1.7.0.71 Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 51...
The Value inside tag DFDF59 is encrypted and contains the following after decryption: FC<len>/* container for encrypted generic data */ <tags defined by DFDF02 > Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 56...
CBC-MAC (4 bytes, use MAC variant of MSR DUKPT key that was used in ARQC request, from message length up to and including ARQC padding, if any) Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet)
0x21 = Waiting for Card Cancelled by Host 0x22 = Waiting for Card Timeout 0x23 = Cancelled by Card Swipe 0xFF = Unknown Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 58...
Page 59
… /* < Merchant Data tags */ (Buffer if any to be a multiple of 8 bytes) CBC-MAC (4 bytes, always set to zeroes) Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 59...
N N N N N N OEM Features N N N N N N Transaction Validation N N N N N N Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 60...
Page 61
N N N N N N Encrypt Bulk Data (b) 120 24 24 120 N N N N N 24 Dynamag, DynaMAX, eDynamo, mDynamo, tDynamo, DynaWave, and iDynamo 6| Secure Card Reader Authenticators | Programmer’s Reference (Java and Java Applet) Page 61...
Need help?
Do you have a question about the Dynamag and is the answer not in the manual?
Questions and answers