Magnetic ink character recognition

Magnetic ink character recognition code, known in short as MICR code, is a character recognition technology used mainly by the banking industry to streamline the processing and clearance of cheques and other documents. MICR encoding, called the MICR line, is at the bottom of cheques and other vouchers and typically includes the document-type indicator, bank code, bank account number, cheque number, cheque amount (usually added after a cheque is presented for payment), and a control indicator. The format for the bank code and bank account number is country-specific.

The technology allows MICR readers to scan and read the information directly into a data-collection device. Unlike barcode and similar technologies, MICR characters can be read easily by humans. MICR encoded documents can be processed much faster and more accurately than conventional OCR encoded documents.

Pre-Unicode standard representation
The ISO standard ISO 2033:1983, and the corresponding Japanese Industrial Standard JIS X 9010:1984 (originally JIS C 6229–1984), define character encodings for OCR-A, OCR-B and E-13B.

International spread
There are two major MICR fonts in use: E-13B and CMC-7. There is no particular international agreement on which countries use which font. In practice, this does not create particular problems as cheques and other vouchers do not usually flow out of a particular jurisdiction.

The E-13B font has been adopted as an international standard in ISO 1004-1:2013, and is the standard in Australia, Canada, the United Kingdom, the United States, as well as Central America and much of Asia, besides other countries.

The CMC-7 font has been adopted as an international standard in ISO 1004-2:2013, and is widely used in Europe, including France and Italy, Mexico, and South America, including Argentina, Brazil, Chile, besides other countries.

Israel is the only country that can use both fonts simultaneously, though the practice makes the system significantly less efficient. This situation is the product of the Israelis adopting CMC-7, while the Palestinians opted for E-13B.

E-13B
E-13B has a 14-character set, comprising the 10 decimal digits, and the following symbols:


 * ⑆ (transit: used to delimit a bank code);
 * ⑈ (on-us: used to delimit a customer account number);
 * ⑇ (amount: used to delimit a transaction amount);
 * ⑉ (dash: used to delimit parts of numbers&mdash;e.g., routing numbers or account numbers).

In the check printing and banking industries the E-13B MICR line is also commonly referred to as the TOAD line. This reference comes from the 4 characters: Transit, Onus, Amount, and Dash. Compared to CMC-7, some pairs of E-13B characters (notably 2 and 5) can produce relatively similar results when magnetically scanned; however, as a fallback if magnetic reading fails, E-13B also performs well under optical character recognition.

The E-13B repertoire can be represented in Unicode (see below). Prior to Unicode, it could be encoded according to ISO 2033:1983, which encodes digits in their usual ASCII locations, transit as 0x3A, on us as 0x3C, amount as 0x3B, and dash as 0x3D. For EBCDIC, IBM code page 1001 encodes digits in their usual EBCDIC locations, transit as 0xDB, on us as 0xEB, amount as 0xCB, and dash as 0xFB.

IBM code page 1032 extends code page 1001 by adding alternative encodings for transit at 0x5C, 0x7A and 0xC1, on us at 0x4C, 0x61 and 0xC3, amount at 0x5B, 0x5E and 0xC2 and dash at 0x60, 0x7E and 0xC4, in addition to a zero-width space at 0x5A. These alternative representations were added for interoperability with Siemens and Océ printers.

CMC-7
CMC-7 includes 10 numeric digits, 26 capital letters, and 5 control characters: S&thinsp;I S&thinsp;II  S&thinsp;III  S&thinsp;IV (an unused character), and S&thinsp;V

CMC-7 has a barcode format, with every character having two distinct large gaps in different places, as well as distinct patterns in between, to minimize any chance for character confusion while reading magnetically; however, these bars are too close and narrow to be reliably recognised at a typical scan resolution if falling back to optical scanning. CMC-7 can also produce superficially successful, but incorrect, scans of upside-down MICR lines.

Unicode does not include support for the CMC-7 control symbols. IBM code page 1033 encodes:


 * Digits and capitals in their usual EBCDIC locations
 * S&thinsp;I (internal) as 0x5E, 0x61 or 0xCB;
 * S&thinsp;II (terminator) as 0x4C, 0x5B or 0xEB;
 * S&thinsp;III (amount) as 0x60, 0x7E or 0xFB;
 * S&thinsp;IV as 0x50, 0x7A or 0xDB;
 * S&thinsp;V (routing) as 0x5C, 0x6E or 0xBB.

MICR reader
MICR characters are printed on documents in one of the two MICR fonts, using magnetizable (commonly known as magnetic) ink or toner, usually containing iron oxide. In scanning, the document is passed through a MICR reader, which performs two functions: magnetization of the ink, and detection of the characters. The characters are read by a MICR reader head, a device similar to the playback head of a tape recorder. As each character passes over the head, it produces a unique waveform that can be easily identified by the system.

MICR readers are the primary tool for cheque sorting and are used across the cheque distribution network at multiple stages. For example, a merchant will use a MICR reader to sort cheques by bank and send the sorted cheques to a clearing house for redistribution to those banks. Upon receipt, the banks perform another MICR sort to determine which customer's account is charged and to which branch the cheque should be sent on its way back to the customer. However, many banks no longer offer this last step of returning the cheque to the customer. Instead, cheques are scanned and stored digitally. Sorting of cheques is done as per the geographical coverage of banks in a nation.

Unicode
OCR and MICR characters have been included in the Unicode Standard since at least version 1.1 (June 1993). Since the Unicode Character Database only tracks characters starting with version 1.1, they may also have been present in Unicode 1.0 or 1.0.1.

The Unicode block that includes OCR and MICR characters is called Optical Character Recognition and covers U+2440–U+245F. Of the characters in this block, four are from the MICR E-13B font:
 * (corrected alias )
 * (corrected alias )
 * (corrected alias )
 * (corrected alias )

The names of the latter two characters were inadvertently switched when they were named in ISO/IEC 10646:1993, and they have been assigned accurate names as formal aliases. Per the Unicode Stability Policy, the existing names remain, allowing their use as stable identifiers. Additionally, all four characters have informative (non-formal) aliases in the Unicode charts: "transit", "amount", "on us", and "dash" respectively.

Prior to Unicode, these symbols had been encoded by the ISO-IR-98 encoding defined by ISO 2033:1983, in which they were simply named through. They were encoded immediately following the digits, which were encoded at their ASCII locations. Although ISO 2033 also specifies encoding for OCR-A and OCR-B, its encoding for E-13B is known simply as ISO_2033-1983 by the IANA.

History
Before the mid-1940s, cheques were processed manually using the Sort-A-Matic or Top Tab Key method. The processing and cheque clearing was very time-consuming and was a significant cost in cheque clearance and bank operations. As the number of cheques increased, ways were sought for automating the process. Standards were developed to ensure uniformity in financial institutions. By the mid-1950s, the Stanford Research Institute and General Electric Computer Laboratory had developed the first automated system to process cheques using MICR. The same team also developed the E-13B MICR font. "E" refers to the font being the fifth considered, and "B" to the fact that it was the second version. The "13" refers to the 0.013-inch character grid.

The trial of MICR E-13B font was shown to the American Bankers Association (ABA) in July 1956, which adopted it in 1958 as the MICR standard for negotiable documents in the United States. ABA adopted MICR as its standard because machines could read MICR accurately, and MICR could be printed using existing technology. In addition, MICR remained machine readable, even through overstamping, marking, mutilation and more. The first cheques using MICR were printed by the end of 1959. Although compliance with MICR standards was voluntary in the United States, it had been almost universally adopted in the United States by 1963. In 1963, ANSI adopted the ABA's E-13B font as the American standard for MICR printing, and E-13B was also standardized as ISO 1004:1995.

Other countries set their own standards, though the MICR readers and most other equipment were US manufactured. MICR technology has been adopted in many countries, with some variations. The E-13B font was adopted as the standard in the United States, Canada, United Kingdom, Australia, and many other countries. In Australia, the system is managed by the Australian Payments Network.

The CMC-7 font was developed in France by Groupe Bull in 1957. It was adopted as the MICR standard in Argentina, France, Italy, and some other European countries.

In the 1960s, the MICR fonts became a symbol of modernity or futurism, leading to the creation of lookalike "computer" typefaces that imitated the appearance of the MICR fonts, which unlike real MICR fonts, had a full character set.

MICR E-13B is also used to encode information in other applications, such as sales promotions, coupons, credit cards, airline tickets, insurance premium receipts, deposit tickets, and more. E-13b is the version specifically developed for offset litho printing. There was a subtly different called E-13a. Also, there was a rival system named 'Fred' (Figure Reading Electronic Device) which used figures that looked more conventional.