Machine-Readable Zone Capture

  • The official travel or identity documents of many countries contain a machine-readable zone (MRZ) that contains encoded information of personal data.
  • The MRZ includes 2 or 3 lines with the OCR-B font text written in accordance with ICAO Document 9303 (ICAO -


The information in MRZ area of ID documents can be for example used for automatical verification of personal data during immigration. However, during customer onboarding or verification processes, the information in MRZ area on ID documents can be used to enter or verify personal data of applicants and clients.

ABBYY FineReader Engine automatically detects MRZ on the ID document image and extracts the encoded data. The extracted data contains several fields with the personal information about the document and its holder, such as:

  • Type of document (Passport, ID, Visa)
  • Issuing country
  • Surname (primary identifier)
  • Names (secondary identifier)
  • Document number (+ check digit)
  • Nationality
  • Date of birth (+ check digit)
  • Sex
  • Date of expiry (+ check digit)
  • Additional date of the issuing state (+ check digit)

With FineReader Engine implemented, your application can be extended by the ability to search through the personal data fields, verify the data and save it to an external file for the further processing.

To extract the data from MRZ, image files obtained by scanning, photographing or saved in electronic format typically undergo several processing stages:

  • Preprocessing of scanned images or photos

You either scan or take a photo of a ID document's identity page with MRZ. Photos made with digital cameras of mobile devices may have low resolution and quality. Also images may require some preprocessing prior to recognition.

  • Extracting data from MRZ

Only one MRZ may be captured from each image. The text of each of the 2 or 3 lines will be recognized and parsed to extract the data fields. Some of the fields and the MRZ as a whole pde checksums. FineReader Engine provides the calculation of the checksum of the extracted data according to the ICAO standard. The calcualted checksums can be compared with the original checksums, which makes the data verification an easy step.

  • Export to an external file

You may also save the extracted data in an external format: XML and JSON are supported.

To save your time and efforts, FineReader Engine contains a source code sample for MRZ data extraction (MRZExtraction) which can be used in your application free of charge.

This website uses cookies which enable you to see pages or use other functions of our websites. You can turn off such cookies in your browser’s settings. If you continue to use these pages, you consent to the use of cookies.