Precision MRZ Scanning in All Conditions
Precision MRZ Scanning in All Conditions logo

OCR MRZ-Scan: precision MRZ Scanning in All Conditions

Scan MRZ on passports, IDs or visas in photos, images or video. Seamlessly integrate MRZ scanning SDK in your web apps, mobile applications or cloud-based solutions.

Send request
Precision MRZ Scanning in All Conditions

These companies trust OCR Studio

data on premise illustration

What Is On-Premise OCR?

The core idea behind OCR Studio is Data Privacy.
In line with this idea, we created on-premise solutions.

On-premise OCR means all data is processed offline directly in the local memory (RAM) and never leaves the client’s device, which allows us to ensure an unrivaled level of data privacy for our clients.

Key Benefits of Our Approach:

Learn more about Data Privacy

data on premise illustration

Precise MRZ Solutions for Secure Access

Next-Gen Neural Networks for flawless 2-line and 3-line MRZ detection in any environment: unmatched accuracy with custom neural architecture and curved line recognition, adaptive to any lighting variations.

Scanning of Machine-Readable Zones on Identity Documents

Comprehensive MRZ Scanning

Reads MRZ data from passports, IDs, and visas.

Real-time MRZ Reader

Designed to support ISO/ICAO standard documents for instant data entry and verification.

Non-Standard MRZ Compatibility

Supports all standardized formats as well as local MRZ formats from France, Switzerland, Bulgaria, and more.

Face Photo Detection & Matching

Accurately matches face photos on passports, IDs, and visas.

WebAssembly SDK

Ensures seamless integration with web applications and PWAs.

On-Premise SDK

Available for smartphones, desktops, or servers for localized MRZ processing.

Biometric Chip Validation

RFID chip verification and data comparison module included in the SDK.

Precision MRZ Scanning in All Conditions

Precision MRZ Scanning in All Conditions

Advanced Neural Networks

State-of-the-art AI-driven technology for detecting 2-line and 3-line MRZs in scans, photos, and video.

Custom Neural Architecture

Our proprietary design ensures rapid and accurate MRZ OCR from any angle.

Curved Line Recognition

Effectively reads curved MRZ lines for enhanced versatility.

Lighting Adaptability

Reliable MRZ scan under both low and excessive lighting conditions.

Glare and Shadow Robustness

Maintains accuracy despite high-contrast glares and shadows.

Low-Resolution Resilience

Shows high quality even with low-resolution images with small DPI values.

Precision MRZ Scanning in All Conditions

The Future of Secure Identification – Introducing the MRZ Scanner with Advanced Authentication & Verification

OCR MRZ-scan redefines how we approach identity verification. Equipped with Automatic Face Photo Detection, our system not only scans documents but intelligently validates identities by seamlessly comparing the document photo with a real-time selfie.

MRZ Scanner with Advanced Authentication and Verification

Automatic Face Photo Detection

Instantly identifies the document holder’s photo.

Photo Comparison

Compares the document photo with a selfie for added security.

MRZ Data Consistency Control

Ensures the accuracy and authenticity of MRZ information.

Font Authentication

MRZ scanning with automatic font verification.

Standards Compliance Verification

Confirms adherence to ISO/ICAO standard (ISO/IEC 7501-1 / ICAO Document 9303) and local standards.

Automatic MRZ Data Extraction

Effectively extracts all MRZ data fields.

The Future of Secure Identification – Introducing the MRZ Scanner with Advanced Authentication & Verification

Seamless On-premise MRZ Scanner Integration

Advanced Recognition Features

Provides MRZ OCR confidence scores, object coordinates, personal data masking, and more.

WebAssembly SDK

Enables in-browser MRZ scan, compatible with all modern web browsers.

Flexible Integration Options

Provides a REST API for low-code MRZ scanner integration and native APIs for C++, C#, Java, and Python.

Mobile Framework Compatibility

Supports React Native and Flutter for mobile app development.

Comprehensive Usage Examples

Includes practical examples for all supported integration methods.

Multi-Platform MRZ scanning SDKs

Available for Android, iOS, Windows, and Linux.

Broad CPU Architecture Support

Compatible with x86, x86_64, ARMv7, ARMv8, and ARMv9 (AArch32 and AArch64) architectures.

Here’s how to scan MRZ using our SDK

# Python
engine_instance = ocrstudiosdk.OCRStudioSDKInstance.CreateFromPath(<PATH_TO_CONFIGURATION_FILE>)
session = engine_instance.CreateSession(
  <SIGNATURE>,
  "{\"session_type\": \"document_recognition\", \"target_group_type\": \"default\", \"target_masks\": \"mrz.*\"}"
)
image = ocrstudiosdk.OCRStudioSDKImage.CreateFromFile(<PATH_TO_IMAGE>)
session.ProcessImage(image)

result = session.CurrentResult()
target = result.TargetByIndex(0)
item_it = target.ItemsBegin('string')
while not item_it.IsEqualTo(target.ItemsEnd('string')):
  name = item_it.Item().Name()
  value = item_it.Item().Value()
  item_it.Step()
// Java
OCRStudioSDKInstance engine_instance = OCRStudioSDKInstance.CreateFromPath(<PATH_TO_CONFIGURATION_FILE>);
OCRStudioSDKSession session = engine_instance.CreateSession(<SIGNATURE>,
  "{\"session_type\": \"document_recognition\", \"target_group_type\": \"default\", \"target_masks\": \"mrz.*\"}");
OCRStudioSDKImage image = OCRStudioSDKImage.CreateFromFile(<PATH_TO_IMAGE>);
session.ProcessImage(image);
OCRStudioSDKResult result = session.CurrentResult();
OCRStudioSDKTarget target = result.TargetByIndex(0);
for (OCRStudioSDKItemIterator item_it = target.ItemsBegin("string"); !item_it.IsEqualTo(target.ItemsEnd("string")); item_it.Step()) {
  String name = item_it.Item().Name();
  String value = item_it.Item().Value();
  }
// C#
ocrstudio.OCRStudioSDKInstance engine_instance = ocrstudio.OCRStudioSDKInstance.CreateFromPath(<PATH_TO_CONFIGURATION_FILE>);
ocrstudio.OCRStudioSDKSession session = engine_instance.CreateSession(<SIGNATURE>,
  "{\"session_type\": \"document_recognition\", \"target_group_type\": \"default\", \"target_masks\": \"mrz.*\"}");
ocrstudio.OCRStudioSDKImage image = ocrstudio.OCRStudioSDKImage.CreateFromFile(<PATH_TO_IMAGE>);
session.ProcessImage(image);

ocrstudio.OCRStudioSDKResult result = session.CurrentResult();
ocrstudio.OCRStudioSDKTarget target = result.TargetByIndex(0);
for (OCRStudioSDKItemIterator item_it = target.ItemsBegin("string"); !item_it.IsEqualTo(target.ItemsEnd("string")); item_it.Step()) {
  String name = item_it.Item().Name();
  String value = item_it.Item().Value();
  }
// C++
std::unique_ptr<ocrstudio::OCRStudioSDKInstance> engine_instance(ocrstudio::OCRStudioSDKInstance::CreateFromPath(<PATH_TO_CONFIGURATION_FILE>));
std::unique_ptr<ocrstudio::OCRStudioSDKSession> session(engine_instance->CreateSession(<SIGNATURE>,
  "{\"session_type\": \"document_recognition\", \"target_group_type\": \"default\", \"target_masks\": \"mrz.*\"}"));
std::unique_ptr<ocrstudio::OCRStudioSDKImage> image(ocrstudio::OCRStudioSDKImage::CreateFromFile(<PATH_TO_IMAGE>));
session->ProcessImage(*image);
const ocrstudio::OCRStudioSDKResult& result = session->CurrentResult();
const ocrstudio::OCRStudioSDKTarget& target = result.TargetByIndex(0);
for (auto item_it = target.ItemsBegin("string"); item_it != target.ItemsEnd("string"); item_it.Step()) {
  string name = item_it.Item().Name();
  string value = item_it.Item().Value();
  }

Example output

full_mrz: P<AREALKAABI<<SAIF<ABDULRAHMAN<OBAID<MOHAMMEAAAA149756ARE7402027M1610051<<<<<<<<<<<<<<<<<<<<<6
mrz_birth_date: 02.02.1974
mrz_cd_birth_date: 7
mrz_cd_composite: 6
mrz_cd_expiry_date: 1
mrz_cd_number: 6
mrz_cd_opt_data_2: <
mrz_doc_type_code: P<
mrz_expiry_date: 05.10.2016
mrz_gender: M
mrz_issuer: ARE
mrz_last_name: ALKAABI
mrz_line1: P<AREALKAABI<<SAIF<ABDULRAHMAN<OBAID<MOHAMME
mrz_line2: AAAA149756ARE7402027M1610051<<<<<<<<<<<<<<<<<<<<<6
mrz_name: SAIF ABDULRAHMAN OBAID MOHAMME
mrz_nationality: ARE
mrz_number: AAAA14975
For more information, please visit Developer section

NFC/RFID Chip Reader

Securely extracts information from the NFC chip, including the holder's personal data and digital photographs

NFC ePassport Reading

SDK gives the ability to create an NFC access key using the document's MRZ and extract data from the RFID chip.

Multimodal document verification

Verify identity documents using advanced image analysis, visible document features analysis, cross-checking of personal data, and validation of both textual and graphical RFID chip data.

  • Full ePassport NFC reading (.COM, .SOD, .DG1, .DG2) with passive authentication
  • Document integrity checks across MRZ ↔ Chip ↔ VIZ
  • Confirms adherence to ISO/ICAO standard (ISO/IEC 7501-1 / ICAO Document 9303)
NFC/RFID Chip Reader
data privacy illustration

Data Privacy

Our AI solution ensures maximum data protection by processing all customer information exclusively on the end-user's device.

  • Your clients' data is never shared with us or any third parties, eliminating the risk of external breaches while maintaining seamless, real-time verification capabilities
  • All data is processed strictly in the RAM of the device and is never logged or stored, which allows to achieve 100% on-premise architecture.
  • Verification is fully automated, with no human operators (HITL), crowdsourcing, or Mechanical Turk involvement.
airplane-mode-icon Verify the functionality by disabling the network connection during your testing.
data privacy illustration

Multi-platform Integration

Frequently Asked Questions

What is MRZ OCR?

MRZ OCR is the specialized technology that automatically reads and decodes the machine-readable zone on passports and ID cards to instantly extract personal data.

Which documents does OCR Studio scan the MRZ from?

OCR Studio’s technology reads MRZ data from passports, IDs, and visas.

Which MRZ formats does OCR Studio support?

OCR Studio supports all ICAO-compliant MRZ formats, including:

  • TD1 (ID cards, residence permits): 3 lines, 30 characters each
  • TD2 (ID cards, residence permits): 2 lines, 36 characters each
  • TD3 or MRP (passports): 2 lines, 44 characters each
  • MRVA (visas): 2 lines, 44 characters each
  • MRVB (visas): 2 lines, 36 characters each

These formats cover the majority of global identity documents used in travel, finance, and government services.

How does MRZ scanning help in the fight against fraud?

Our MRZ reader provides instant verification by cross-validating extracted MRZ data with personal details from the document's visual zone.

What role does MRZ code reader play in RFID/NFC chip verification?

MRZ code reader provides the essential key to unlock and authenticate the RFID/NFC chip in ePassports, enabling secure data verification.

Why is it important for MRZ reading to be able to work offline?

Firstly, the offline operation of the AI solution ensures there is no data leakage and guarantees the privacy of personal data, as all information is processed on-premise and never leaves the client's device.

Secondly, given the potential for unreliable internet connections — such as unstable Wi-Fi or operating in production areas outside network coverage — the MRZ document checker must support offline operation without any degradation in speed or accuracy.

OCR Studio Demo Application

Try our free demo app, which showcases all our technologies

OCRstudio Demo Application

Get in Touch With Us Today!

For comprehensive details about our complete range of solutions and services.

Please contact our sales team

sales@ocrstudio.ai

or simply fill out the form and we'll reach out to you.

Valid first name is required.
Valid last name is required.
Please enter a valid email address.
* Required information
By clicking the “Sign up” button, you
consent to data processing