ID document OCR

IDs in. Fields out.

Upload a passport, ID card or driving licence as a scan, photo or PDF, forward it by e-mail or send it to the API. Parsevix returns the name, document number, dates, nationality and the machine-readable zone as structured data, ready for your forms and records.

  • Name, number and nationality as fields
  • Both MRZ lines exactly as printed
  • Birth, issue and expiry as ISO dates

No credit card · 20 free pages every month

What you get back

Every field of an ID, already defined.

The built-in ID Document category returns 16 fields: the document, its holder and the two lines of the machine-readable zone. Use it as it is, or change it in your project.

Dates come back as ISO dates, names and places as printed. A field the document doesn't carry, such as an address on a passport, is left out, not guessed.

Document

  • document_typestring
  • document_numberstring
  • issuing_countrystring
  • issuing_authoritystring
  • issue_datedate
  • expiry_datedate

Holder

  • full_namestring
  • date_of_birthdate
  • place_of_birthstring
  • genderstring
  • nationalitystring
  • personal_numberstring
  • addressstring
  • blood_typestring

Machine-readable zone

mrzobject

  • line1string
  • line2string

Your own fields

A name, a type and one sentence on what it is.

  • licence_categories
  • permit_type
  • visa_valid_until
  • card_access_number

For records, not for verification

The data page, read field by field.

Passports, ID cards and driving licences look different in every country but carry the same few facts. This is what Parsevix does with them.

01

The MRZ next to the printed fields

The two lines of the machine-readable zone come back exactly as printed, next to the fields read from the page. The MRZ repeats the document number, nationality, date of birth, sex and expiry date, so your system can decode it and compare.

Parsevix returns both as text. It doesn't decode the MRZ, check its check digits or tell whether a document is genuine.

  • 02

    Passports, ID cards, licences

    The document type comes back as a field, so passports, ID cards, driving licences and residence permits can share one category. Add fields such as licence categories for the kinds you handle.

  • 03

    Dates you can act on

    Date of birth, issue date and expiry date come back as ISO dates, whatever format the document prints, so your system can flag documents about to expire.

  • 04

    Not identity verification

    Parsevix reads what is printed. It doesn't check whether a document is genuine, read its chip or compare the photo with a person. Use it to capture data next to your own checks.

  • 05

    IDs from many countries

    The language is detected on every page. A document in another language fills the same fields, with ISO dates.

  • 06

    Keep only what you need

    Files sent through the API are deleted after processing unless you turn on keeping them for the project. IDs uploaded in the dashboard stay until you delete them.

  • 07

    Every value linked to its spot

    Each value is linked to the spot on the document it came from. Click it in the dashboard to see where it was printed.

How IDs get in

Upload them, forward them or send them from your system.

Dashboard

Upload IDs as scans, photos or PDFs. Check each result next to the image, with every value marked where it was printed, and approve it.

E-mail address

Paid plans

Every project gets its own address. Forward IDs to it, and each attachment becomes a document.

API

Send IDs from your own forms or back office and get the JSON in the same response, or receive results by signed webhook or through Zapier.

Request

curl https://parsevix.com/api/v1/extract \
  -H "X-API-Key: $PARSEVIX_API_KEY" \
  -F file=@passport.jpg \
  -F category="ID Document"

The request stays open until the document is read and answers with the JSON.

  • POST /documentsUpload without waiting; the result arrives by webhook or callback.
  • POST /extract-autoNo category: every field Parsevix finds, named as in the document.
  • POST /classifyOnly the document's category, for 1 credit.
Full API reference

Response · trimmed

{
"status": "Completed",
"category": "ID Document",
"pageCount": 1,
"language": "en",
"extracted": {
"document_type": "Passport",
"document_number": "UT4729185",
"expiry_date": "2034-03-01",
…
},
…
}

Security & compliance

  • PII maskedautomatically, before the AI step
  • Encryptedin transit and at rest
  • No AI trainingon your documents
  • API files deletedafter processing

Priced per page, not per feature.

Every plan reads, sorts and masks documents the same way. Picking the category is included, and a document that fails costs nothing.

See pricing
credit per page
1
free pages every month
20
a month for 500 pages
$39

ID document FAQ

ID documents,
answered.

What teams ask before they send their first IDs.

Still have a question?

Write to us. A person reads every message.

PDF, PNG, JPG and TIFF, up to 10 MB each. Phone photos work if they are sharp; iPhone photos in HEIC have to be saved as JPG first. Put the front and back of a card in one PDF, and both sides come back as one result.

No. It reads what is printed on the document. It doesn't check whether a document is genuine or still valid, read its chip, compare the photo with a person or check the MRZ check digits. For identity verification, use a service built for it.

No. The photo, the signature and the security features are not extracted; only the printed text and the MRZ come back.

Yes. Names, document numbers, dates of birth and the lines of the machine-readable zone are masked automatically before any text goes to the AI model and put back in your result. Detection catches most personal data, not necessarily every item: on a photo or a worn card, a misread line can slip through. Your documents are never used to train AI.

One credit per page: a card with its front and back in one PDF uses two. Choosing the category is included, and if a document fails, its credits are given back.

Files sent through the API are deleted after processing unless you turn on keeping them for the project. IDs uploaded in the dashboard or sent by e-mail stay in your project until you delete them, so delete them once you no longer need them.