MRZ Passport & ID Reader
Pricing
from $5.00 / 1,000 parsed mrzs
Go to Apify Store
MRZ Passport & ID Reader
Reads ICAO Machine Readable Zones from passport and ID images. Extracts document number, names, nationality, dates, and validates check digits. No LLM API key required.
Pricing
from $5.00 / 1,000 parsed mrzs
Rating
0.0
(0)
Developer
Robin p
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Read ICAO Machine Readable Zones from passport and ID images (or paste raw MRZ text) and return structured identity fields with check-digit validation.
Uses local OCR (Tesseract) + the standard mrz parser — no LLM / Google Vision API key.
What it extracts
| Field | Meaning |
|---|---|
format | TD3 (passport), TD2, or TD1 (ID card) |
documentCode / documentNumber | Document type and number |
issuingState / nationality | ISO 3166-1 alpha-3 codes (as printed in MRZ) |
lastName / firstName | Names (Latin transliteration per ICAO) |
sex | male / female / unspecified |
birthDate / expirationDate | Normalized YYYY-MM-DD |
personalNumber | Optional personal number when present |
checkDigitsValid | All MRZ check digits passed |
valid | Parser’s full validation (includes known state-code checks) |
mrzLines | Raw MRZ lines used for the parse |
MRZ is Latin-only by ICAO design (A–Z, 0–9, <). Non-Latin names are already transliterated on the document.
Pricing
- $0.01 per successfully parsed MRZ (
$10.00 / 1,000 results) - Failed images and invalid/non-MRZ inputs go to the errors dataset and are not billed
How to use
- Paste passport/ID image URLs (MRZ must be visible), or paste raw MRZ lines in
mrzTexts - Keep
onlyValidMrzenabled unless you want partial OCR dumps billed - Start the Actor
- Read structured records from the Dataset
Example input (raw text — great for testing)
{"mrzTexts": ["P<UTOERIKSSON<<ANNA<MARIA<<<<<<<<<<<<<<<<<<<\nL898902C36UTO7408122F1204159ZE184226B<<<<<10"],"onlyValidMrz": true,"maxConcurrency": 3}
Example input (images)
{"imageUrls": ["https://example.com/passport-mrz.jpg"],"onlyValidMrz": true,"maxConcurrency": 3}
Example dataset item
{"imageId": "mrz-1","hasMrz": true,"format": "TD3","documentCode": "P","documentNumber": "L898902C3","issuingState": "UTO","nationality": "UTO","lastName": "ERIKSSON","firstName": "ANNA MARIA","sex": "female","birthDate": "1974-08-12","expirationDate": "2012-04-15","checkDigitsValid": true,"confidence": 1,"error": null}
Notes
- Prefer sharp, well-lit photos of the MRZ band (bottom of the data page).
- Specimen country code
UTOis used in ICAO examples; check digits pass, butvalidmay befalsebecauseUTOis not a real ISO state. - Document images contain personal data — handle outputs according to your privacy obligations.