MRZ

The Anyline MRZ Plugin provides the functionality to scan passports and other IDs holding a Machine Readable Zone (MRZ)

For each scan result, MRZ generates an Identification object, containing all relevant information as well as the image of the scanned document

Examples

A couple of different examples can be found at Anyline Demos and Samples: MRZ.

Crop and Transform IDs

New in version 3.25.1.

Passports and IDs, which contain an MRZ can be automatically cropped and transformed to an orthogonal frontal view. This way, even if the user scans the document from the top-, side-, rotated-, or zoomed out view, the document will be returned in a standardized way.

Not cropped passport image Cropped passport image

Scannable MRZ Information

Document Type

The Type of the Machine Readable Travel Document.

Example Type
Document Type -

Document Number

The Document Number Machine Readable Travel Document.

Example Type
Document Number -

Checkdigit for the Document Number

A Checkdigit which is validating the integrity of the Document Number field.

Example Type
Checkdigit for the Document Number -

Expiration Date

Represents the date the ID expires.

Example Type
Document Type Date

Checkdigit for Expiration Date

A Checkdigit which is validating the integrity of the Expiration Date field.

Example Type
Checkdigit for Expiration Date -

Day of Birth

The Date of Birth of the ID holder.

Example Type
Day of Birth Date

Checkdigit for Day of Birth

A Checkdigit which is validating the integrity of the Day of Birth field.

Example Type
Checkdigit for Day of Birth -

Issuing Country Code

The three-letter Code for the issuing country of this ID. Exception: The Code for Germany only contains one letter (D).

Example Type
Issuing Country Code Three-Letter Code

New in version 3.2.1.

Nationality Country Code

The three-letter country code for the nationality of the ID holder. Exception: The Code for Germany only contains one letter (D).

Example Type
Nationality Country Code Three-Letter Code

New in version 3.2.1.

Country Code

The Code for the issuing country of this ID. Exception: The Code for Germany only contains one letter (D).

Example Type
Country Code Three-Letter Code

Deprecated since version 3.2.1: Use Issuing Country Code and Nationality Country Code instead

Surnames

The surnames of the holder of the ID.

Example Type
Surnames -  

Given Names

The given names of the holder of the ID.

Example Type
Given Names -

Personal Number

Optional data at the discretion of the issuing state. Might contain additional information.

Example Type
Personal Number -

Checkdigit for the Personal Number

A Checkdigit which is validating the integrity of the Personal Number field.

Example Type
Checkdigit Final -

Personal Number 2

Optional data at the discretion of the issuing state. Only available in TD1 sized MROTDs. Might contain additional information.

Example Type
- -

Note

This information may only be available on TD1 sized MROTDs

Sex

The Sex of the ID holder. May not be present on each document.

Example Type
Sex -  

Checkdigit Final

A Checkdigit which is validating the integrity of the lower line (on TD2 and TD3 MROTDs), or the upper and middle line (on TD1 MROTDs).

Example Type
Checkdigit Final -

MRZ String

The full MRZ String including line breaks.

Example Type
MRZ String -

New in version 3.13.0.

All Checkdigits Valid

Since some countries do not fully implement the ICAO Specifications, invalid check digits do not result in an invalid result object. Instead, the allCheckDigitsValid flag is set to false if at least one of the check digits is invalid. To determine the validity of individual check digits, the ICAO checkdigit algorithm can be found in Doc 9303 Part 3 on the ICAO Website.
If the character at the check digit’s position is not a digit, no valid result will be returned. Exception: If the optional Personal Number field is left empty (only containing ‘<’), an empty Checkdigit for the Personal Number (‘<’) is considered valid.

Example Type
True -

New in version 3.2.1.

Machine Readable Travel Documents

This section shows the five main types of Machine Readable Travel Documents, according to ICAO

TD3 Documents

TD3 sized Machine Readable Travel Documents consist of two lines of 44 characters each.

The full specification can be found in Doc 9303 Part 4 on the ICAO Website

A TD3 Machine Readable Travel Document MRZ Fields of a TD3 Document

TD2 Documents

TD2 sized Machine Readable Official Travel Documents consist of two lines of 36 characters each.

The full specification can be found in Doc 9303 Part 6 on the ICAO Website

A TD2 Machine Readable Official Travel Document MRZ Fields of a TD2 Document

TD1 Documents

TD1 sized Machine Readable Official Travel Documents consist of two lines of 30 characters each.

The full specification can be found in Doc 9303 Part 5 on the ICAO Website

A TD1 Machine Readable Official Travel Document MRZ Fields of a TD1 Document

MRV-A Visa

Format-A Machine Readable Visas consist of two lines of 44 characters each.

The full specification can be found in Doc 9303 Part 7 on the ICAO Website

A Format-A Machine Readable Visum MRZ Fields of a Format-A Machine Readable Visa

MRV-B Visa

Format-B Machine Readable Visas consist of two lines of 36 characters each.

The full specification can be found in Doc 9303 Part 7 on the ICAO Website

A Format-B Machine Readable Visas MRZ Fields of a Format-B Machine Readable Visa

Additional Information Scanning

Address on German IDs

New in version 5.

German ID

On german IDs the address and the MRZ are scanned in parallel. The address might be NULL for german IDs in the following cases:

  1. The address is not visible in the cutout.
  2. The quality of the scanned address is not good enough (it does not pass the validation check for the ZIP code).

For non german IDs, the address will always be NULL.

Example Type
German ID Address -

Known Limitation

The scanning of the address on german IDs does not work for address stickers.

Issue Date on supported Passports

New in version 6.

On passports of supported countries (see list below), the issue date and the MRZ are scanned in parallel. The issue date might be NULL for supported passports in the following cases:

  1. The issue date is not visible in the cutout.
  2. The quality of the scanned issue date is not good enough (it does not pass the validation check for the date format).

For passports of countries that are not supported, the issue date will always be NULL.

Supported countries:

Country Country Code
Austria AUT
United Kingdom GBR
Denmark DNK
Sweden SWE
Netherlands NLD
Ireland IRL
Norway NOR
France FRA
United States of America USA
Germany D
Morocco MAR
Finland FIN
Italy ITA
Spain ESP
Russia RUS
Canada CAN
Poland POL
Argentina ARG
Switzerland CHE
Czech Republic CZE
Romania ROU
Australia AUS
Algeria DZA
Ukraine UKR
South Korea KOR
Slovakia SVK
Example Type
AUT Passport Issue Date Date