MRZ validation

ICAO 9303 TD3 machine readable zone line — checksum: ICAO 9303 TD3 check digits (weights 7,3,1). Free in your browser, or over the JSON API.

What it is

ICAO 9303 TD3 machine readable zone line. CodeCheck verifies three things separately — format, length and check digit — and returns the expected and provided check digit, so a failed value tells you exactly what is wrong instead of just saying no.

Algorithm

ICAO 9303 TD3 check digits (weights 7,3,1). The answer is derived from the value itself, with no database lookup and no third-party call, so it is deterministic, fast and privacy-safe.

Examples

ValueResultExpectedProvided
L898902C36UTO7408122F1204159ZE184226B<<<<<10valid00

API

curl "https://<your-worker>.workers.dev/v1/validate/mrz/L898902C36UTO7408122F1204159ZE184226B<<<<<10"

This type has no single trailing check digit, so there is no completion endpoint for it. Validation still reports format, length and any check digits found.

Try it in the browser demo — the demo runs the same code offline.

Other identifier types