roposh

MRZ Generator

Generate ICAO 9303 Compliant Machine Readable Codes

Free MRZ Generator: Create ICAO Compliant Passport Data

The Machine Readable Zone (MRZ) is the area at the bottom of a passport or identity card containing critical personal data formatted for optical character recognition (OCR). Whether you are building a travel booking engine, an ID verification app, or testing airport kiosk software, you need accurate MRZ strings to validate your code. Our **Online MRZ Generator** creates fully compliant codes based on ICAO Document 9303 standards. It automatically calculates the necessary check digits (checksums) to ensure the generated code is mathematically valid and readable by scanners.

Generate MRZ Code

Select the document type (Passport, ID Card, or Visa) and fill in the details to generate the corresponding MRZ lines.

Why Use Our MRZ Generator?

Hand-typing MRZ strings is prone to errors, especially when calculating the cryptographic check digits. Our tool solves this for developers and QA engineers:
  • ICAO 9303 Compliance: We adhere strictly to the International Civil Aviation Organization standards, ensuring compatibility with all standard passport readers.
  • Automatic Checksums: The tool automatically calculates the check digits for the document number, date of birth, and expiration date using the standard Modulo 10 algorithm.
  • Multi-Format Support:
    • TD3 (Passports): The standard 2-line format used on most passports worldwide.
    • TD1 (ID Cards): The 3-line format often used on national identity cards.
    • MRV (Visas): Supports Machine Readable Visa formats A and B.
  • Test Edge Cases: Easily generate data with long names, specific nationalities, or future expiration dates to test your software’s limits.

Understanding the MRZ Structure

An MRZ string might look like random characters, but it is highly structured. A standard TD3 Passport MRZ (2 lines, 44 characters each) contains:
  1. Line 1: Document Type (P), Issuing Country Code (ISO 3166-1 alpha-3), and the Holder’s Name.
  2. Line 2: Passport Number, Nationality, Date of Birth, Sex, Expiration Date, and strictly calculated Check Digits.

Frequently Asked Questions (FAQ)

Can I use this for real travel?

Absolutely not. This tool generates mock data for software testing purposes. The generated MRZ code does not correspond to a valid government database entry. Attempting to use it at a border crossing is illegal and will fail.

Why is the check digit important?

Scanners use check digits to verify that the scan was successful. If the math doesn’t add up (e.g., if a character was misread), the scanner rejects the read. Our generator ensures these digits are mathematically correct so your tests pass.

Does it support special characters?

According to ICAO standards, the MRZ only supports A-Z (uppercase), 0-9, and the filler character (<). Special characters in names (like é, ü, ñ) are transliterated automatically by our tool (e.g., ‘ü’ becomes ‘UE’).
Hey there! Ask me anything!
Scroll to Top