MRZPreview

OCR for International ID Document

Generic OCR for any international identity document (Passports, ID Cards, Travel Documents, Residence Permits, etc.)

OCR for International ID Document
Start in Seconds
Sign up to get your API key and start processing your documents
State of the Art Accuracy
We use the most powerful models to ensure the highest accuracy and throughput
GDPR Compliant
We are EU Hosted, GDPR Compliant and follow Zero Data Retention by default
Just pay for what you extract
No monthly commitments or high starting tiers. Volume discounts available.

Try it out

Experience the power of our OCR. Upload a document and see the results instantly.

Drop document or click to upload

Supports PDF, PNG, JPG (max 10MB)

By uploading a document, you agree to our terms. We do not store your data.

JSON Response
{
"success":
true,
"data":{
"document_type":
"PASSPORT",
"document_type_verified":
true,
"document_number":
"AB123456",
"document_number_verified":
true,
"nationality":
"GBR",
"nationality_verified":
true,
"given_names":
"JOHN MICHAEL",
"given_names_verified":
true,
"first_surname":
"BROWN",
"first_surname_verified":
true,
"second_surname":
null,
"second_surname_verified":
false,
"date_of_birth":
"1990-07-22",
"date_of_birth_verified":
true,
"place_of_birth":
"LONDON",
"gender":
"M",
"gender_verified":
true,
"issuing_date":
"2018-01-10",
"issuing_date_verified":
true,
"expiry_date":
"2028-01-09",
"expiry_date_verified":
true,
"issuing_authority":
"IPS",
"personal_number":
null,
"personal_number_verified":
false,
"mrz_detected":
true,
"address_line_1":
null,
"address_line_2":
null,
"address_city":
null,
"address_state":
null,
"address_country":
null,
"address_zip_code":
null
},
"balance":
14.5,
"cost":
0.005
}
document_typestring | null

Type of identity document (e.g. passport, national ID card, residence permit)

document_type_verifiedboolean

Whether the document type has been verified against the MRZ

document_numberstring | null

Unique identifier of the document

document_number_verifiedboolean

Whether the document number has been verified against the MRZ

nationalitystring | null

Holder's nationality as an ISO 3166-1 alpha-3 country code

nationality_verifiedboolean

Whether the nationality has been verified against the MRZ

given_namesstring | null

Holder's given name(s)

given_names_verifiedboolean

Whether the given names have been verified against the MRZ

first_surnamestring | null

Holder's first (paternal) surname

first_surname_verifiedboolean

Whether the first surname has been verified against the MRZ

second_surnamestring | null

Holder's second (maternal) surname

second_surname_verifiedboolean

Whether the second surname has been verified against the MRZ

date_of_birthstring | null

Holder's date of birth

date_of_birth_verifiedboolean

Whether the date of birth has been verified against the MRZ

place_of_birthstring | null

Holder's place of birth

genderstring | null

Holder's gender as a single letter (M, F, or X)

gender_verifiedboolean

Whether the gender has been verified against the MRZ

issuing_datestring | null

Date on which the document was issued

issuing_date_verifiedboolean

Whether the issuing date has been verified against the MRZ

expiry_datestring | null

Date on which the document expires

expiry_date_verifiedboolean

Whether the expiry date has been verified against the MRZ

issuing_authoritystring | null

Authority that issued the document

personal_numberstring | null

Personal number or national identification number of the holder

personal_number_verifiedboolean

Whether the personal number has been verified against the MRZ

mrz_detectedboolean | null

Whether a Machine Readable Zone (MRZ) was detected on the document

address_line_1string | null

First line of the holder's registered address

address_line_2string | null

Second line of the holder's registered address

address_citystring | null

City of the holder's registered address

address_statestring | null

State or region of the holder's registered address

address_countrystring | null

Country of the holder's registered address

address_zip_codestring | null

ZIP or postal code of the holder's registered address

Easy to Integrate

Connect our OCR to your application in minutes. We provide ready-to-use fragments for the most popular languages and tools.

Terminal - File Upload
curl -X POST "https://api.tiny-idp.com/api/extractors/run/generic-id-document" \
  -H "x-api-key: YOUR_API_KEY" \
  -F "files=@/path/to/your/document.jpg"

Ready to build?

Get your free API key and start extracting data from documents in minutes. No credit card required for the free tier.

Common Use Cases

Discover how businesses are using our OCR to automate their workflows.

Automated Onboarding

Extract data from documents to streamline user registration and KYC processes.

Data Verification

Instantly verify document details against your records or third-party databases.

International Documents

Process identity documents from over 190 countries with high accuracy.

Workflow Automation

Eliminate manual data entry by piping structured document data directly into your CRM or ERP.

Enterprise-grade Compliance & Security

We take data privacy seriously. Tiny IDP is built from the ground up to meet the strictest European data protection standards.

Zero Data Retention

We don't store your documents, images, or predictions. Data is processed in-memory and immediately discarded.

GDPR Compliant

Full compliance with European data protection regulations (GDPR) for your peace of mind.

EU-Based Infrastructure

All data is processed and hosted exclusively in secure European data centers.

Visit Trust Center
EU Hosted
Encrypted
No Storage
GDPR

Do you need a custom OCR?

We support custom extractors! Define your own fields, rules, and logic to extract data from any type of document.