Skip to main content
Passport OCR · Live

Every passport, parsed in 30 seconds.

Drop a passport — one page or several — and get back structured JSON with every field, confidence scores, and validation status. No setup required.

The response

One call in, one document out.

A clean JSON envelope with every field, a per-field confidence score, an MRZ checksum result, and a request id you can quote in support tickets.

  • Passport number
  • Last name
  • First name
  • Middle name
  • Gender
  • Nationality
  • Birth date
  • Issue date
  • Expiry date
  • Country of issue
  • Place of issue
  • Place of birth
  • Mother name
  • Father name
  • Spouse name
response.json
{
  "success": true,
  "request_id": "req_8c4ae2…",
  "latency_ms": 1380,
  "fields": {
    "surname":         { "value": "GARCIA",         "confidence": 99.6, "band": "verified" },
    "given_names":     { "value": "MARÍA ELENA",    "confidence": 98.4, "band": "verified" },
    "document_number": { "value": "AB1234567",      "confidence": 99.8, "band": "verified" },
    "nationality":     { "value": "ESP",            "confidence": 99.9, "band": "verified" },
    "date_of_birth":   { "value": "1989-04-12",     "confidence": 99.7, "band": "verified" },
    "date_of_expiry":  { "value": "2032-08-09",     "confidence": 99.5, "band": "verified" },
    "mrz_valid":       { "value": true,             "confidence": 100,  "band": "verified" }
  }
}
Why teams pick OnPoint

Designed for the hardest 1% of passports.

Most OCRs handle clean scans. We're built for blurry, glare-flecked phone shots, off-angle bio pages, and visa stamps that bleed into the MRZ.

Every ICAO 9303 field

Names, dates, document number, MRZ, issuing state, gender, nationality — the full visual inspection zone returned in a single response, plus optional family fields where present.

Sub-second median latency

P50 ≈ 1.4 s. P99 below 3.2 s on production traffic. No queueing, no warmup — built for synchronous KYC.

MRZ checksum validation

Every machine-readable line is checksum-verified per ICAO. Tampered or printed-by-hand passports fail loudly, not silently.

Multi-page intelligent merge

Drop a bio page, a visa page, and a stamps page in any order. Fields are reconciled across pages and conflicts surfaced.

Per-field confidence scores

Five confidence bands per field, not per document. Auto-route uncertain extractions to a reviewer instead of failing the whole call.

Zero-retention by default

Images and extracted values are processed in-memory and discarded the moment your response is returned. Enforced at the application layer.

Coverage

If it's a passport, we read it.

180+ issuing countries with continuous benchmarking against fresh in-the-wild documents. Every UN member state. Every modern e-passport variant.

180+ issuing countries
All UN member states
Biometric e-passports
Diplomatic & service passports
Damaged / handheld scans
PDF + JPG + PNG + HEIC
Try it on us

Free for the first 5 passports. No card.

Test the full production API end-to-end before you ever talk to billing. Volume pricing kicks in automatically when you keep going.

Put it in front of real customer documents.

One API key, every modern passport, in production this afternoon.