MICR Commands and Parsing
1112 3255 4073002
The three high order bits of each byte mark the character type. The characters
can be marked in three ways: check serial # character, account # character, or
skip this character or symbol. The five low order bits of each byte contain the
number of characters of that type to extract. Most exceptions will not need to
use all six bytes; in that case clear the unused bytes to zero.
Bits within Byte 7 6 5 4 3 2 1 0
check serial # character string 0 0 1 n n n n n
account # character string 0 1 0 n n n n n
character string to ignore 1 0 0 n n n n n
Example 1
t123456780t12349876543210o 1234 is the check serial #
9876543210 is the account #
To load the second table entry, which starts at word 25, the transit number
123456780 would be stored in the first two words of its table entry using this
string of commands:
0x1B 0x73 0x12 0x34 25
0x1B 0x73 0x56 0x78 26
After the right transit symbol are immediately the four characters of the check
serial #, followed immediately by the ten characters of the account number.
These would be bitwise encoded as:
0 0 1 0 0 1 0 0 (check #, four characters)
and 0 1 0 0 1 0 1 0 (account #, 10 characters)
then stored in the other three words of the table entry using:
0x1B 0x73 0x24 0x4A 27
0x1B 0x73 0x00 0x00 28
0x1B 0x73 0x00 0x00 29