6 - Magnetic Stripe Card Data Sent from Device to Host (MSR Only | Keypad Entry Only)
eDynamo| Secure Card Reader Authenticator | Programmer’s Manual (COMMANDS)
Page 39 of 245 (
D998200115-17
)
Data
HID Usage GATT/SLIP Offset
Track 3 Absolute Data Length (HID | GATT | SLIP, 3-Track
Only)
0x53
854
MagnePrint Absolute Data Length (HID | TLV | GATT | SLIP)
0x54
855
0x55
856..858
MagneSafe Version Number (HID | GATT | SLIP)
0x56
859..866
SHA-1 Hashed Track 2 Data (HID | TLV | GATT | SLIP,
SHA-1 Only)
0x57
867…886
HID Report Version (HID | GATT | SLIP)
0x58
887
MagnePrint KSN (HID | TLV | GATT | SLIP)
0x5A
920..929
Battery Level (HID | GATT | SLIP)
0x5B
930
6.1
About Track Data
After the host receives and decrypts
from the device, or receives clear text track
data (based on device settings or state), or receives
, it may need to parse each track
into individual values embedded in the tracks. The device can read multiple card formats, which vary
even between different issuers and payment brands using the same underlying standards. Describing all
possible formats is beyond the scope of this document, but this section describes how to parse data from
tracks 1, 2, and 3 in a generic ISO/ABA compliant format as an example.
shows an example of ISO/ABA track data the device sends to the host, using unmasked
placeholder numbers to make it easier to see the relative positions of the values embedded in the track
data. It is important to note that some cards do not include Track 3 data, and some devices do not read or
transmit Track 3 data (see section
Table 6-2 – Example Generic ISO/ABA Track Data Format
Generic ISO/ABA Track Data Format
Track 1 Data
%75555555555555555^CARDHOLDER NAME/^33338880004444000006?
Track 2 Data
;5555555555555555=33338880004444006?
Track 3 Data
;5555555555555555=333388800044440000006?
The example track data in
can be interpreted as follows:
The
%
,
?
, and
;
are Sentinels / delimiters, and are taken directly from the data on the card.
The
7
at the beginning of Track 1 data is the card format code. For swiped credit / debit cards, this
comes from the card and is generally
B
.
The string of
5
s is the Account Number / License Number / PAN.
The carets
^
are a standard ISO track 1 delimiter surrounding the Cardholder Name.
CARDHOLDER NAME/
is the Cardholder Name.
The string of
3
s is the Expiration Date.
The string of
8
s is the Service Code. For swiped credit / debit cards, this comes from the card.