Le passeport britannique est l'un des documents qu'un parcours d'inscription au Royaume-Uni voit le plus souvent. HM Passport Office, qui se présente comme « le seul émetteur des passeports du Royaume-Uni », est chargé, selon ses propres termes, « de la délivrance de plus de 6 millions de passeports chaque année aux citoyens britanniques et aux autres ressortissants britanniques ». Si votre produit vérifie des clients au Royaume-Uni, vous en lirez beaucoup.

Cet article s'adresse aux développeurs qui doivent extraire les données d'un passeport britannique pour les faire entrer dans leur propre système. Il présente ce que contient la page de données, comment la zone de lecture automatique est organisée, quels modèles vous rencontrerez en 2026 et ce que renvoie un seul appel d'API. Tout ce qui est dit du passeport lui-même est cité de GOV.UK ou de l'OACI, avec le lien là où la citation apparaît ; les originaux sont en anglais et les traductions sont les nôtres.

Ceci est le blog de doc.cheap, une API d'OCR pour passeports et pièces d'identité. Lisez la partie produit en gardant cela à l'esprit.

La page de données en une image

Le guide d'information historique sur les passeports de HM Passport Office décrit le livret actuel. « Le 1er mars 2020, le passeport électronique série C du Royaume-Uni (passeport électronique bleu) a été progressivement mis en production. » Selon la même page, le passeport :

  • « possède une page de données personnelles en polycarbonate résistant à l'usure au début du livret »
  • « porte des observations imprimées en page 3 »
  • « montre la photo d'identité du client 3 fois dans le livret »
  • « possède la puce électronique, intégrée dans la page de données personnelles »

Pour l'OCR, cela veut dire une seule chose : tout ce qu'il vous faut se trouve sur une page, au début. Photographiez cette page, à plat et en entier, et vous avez dans une seule image les champs imprimés, le portrait et la zone de lecture automatique. La puce est dans cette même page, mais une photo ne peut pas lire une puce ; ce qu'une image vous donne, c'est la page imprimée.

La zone de lecture automatique

La MRZ est le bloc de lettres majuscules, de chiffres et de caractères de remplissage < en bas de la page de données. Le même guide explique d'où elle vient : « Les données personnelles du client sont converties en caractères lisibles par les lecteurs de passeports. Les caractères sont ajoutés au passeport sur 2 lignes de 44 caractères chacune. Ces informations sont appelées zone de lecture automatique. »

Deux lignes de 44 caractères, c'est le format passeport du Doc 9303 de l'OACI. La page de l'OACI consacrée au Doc 9303 intitule sa Partie 4 « Spécifications pour les passeports lisibles à la machine (PLM) et autres DVLM de format TD3 », d'où le nom TD3 du format passeport. Les Parties 5 et 6 couvrent les formats plus petits TD1 et TD2, ceux des cartes d'identité.

En décrivant les premiers livrets britanniques lisibles à la machine, le guide énumère ce que contient la zone : le nom du client, le numéro du passeport, les chiffres de contrôle, la nationalité, la date de naissance, le sexe, la date d'expiration du passeport et un numéro d'identité personnel. Les chiffres de contrôle sont calculés sur ces champs, si bien qu'un caractère mal lu se trahit en général par un chiffre qui ne tombe pas juste. La MRZ est donc la seule partie de la page que vous pouvez revérifier vous-même, sans faire confiance à celui qui l'a lue.

Deux points pratiques pour un parseur :

  • Pas de date de délivrance. La zone n'en contient pas. Si vous en avez besoin, elle doit venir de la page imprimée.
  • La nationalité n'est pas toujours GBR. Les codes pays de la zone suivent le Doc 9303 de l'OACI, pas l'ISO, et les catégories de nationalité britannique ont leurs propres codes. La référence de la réponse de doc.cheap en liste cinq en plus de GBR – GBD, GBN, GBO, GBP et GBS –, si bien qu'un parseur qui n'accepte que GBR rejettera certains passeports britanniques.

Les modèles que vous rencontrerez

Plusieurs modèles de passeport britannique sont valides en même temps : ne construisez pas un contrôle qui attend une seule apparence.

  • Le livret bleu de 2020. Le passeport électronique série C décrit plus haut.
  • Le nouveau modèle à partir de décembre 2025. GOV.UK a annoncé que « Les premiers passeports britanniques portant les armoiries de Sa Majesté le roi Charles III seront délivrés à partir de décembre dans le cadre d'un design remanié », en le qualifiant de « premier design entièrement nouveau depuis 2020 ».
  • Les anciens livrets encore valides. La même annonce indique : « Les passeports délivrés avec les armoiries de la reine Elizabeth II restent valides jusqu'à leur date d'expiration. »

La validité cache aussi un piège. Avant octobre 2018, un renouvellement pouvait reporter le temps restant sur l'ancien livret : le guide donne l'exemple d'un adulte qui a renouvelé avec 7 mois restants et a reçu un passeport « valable 10 ans et 7 mois ». Depuis octobre 2018, les renouvellements obtiennent « au maximum : 10 ans de validité (pour les adultes), 5 ans de validité (pour les enfants) ». Lisez donc la date d'expiration sur le document ; ne la calculez pas à partir de la date de délivrance.

Le lire en un seul appel d'API

doc.cheap lit le passeport à partir d'une image : un POST /v1/scans avec la photo encodée en base64 dans un corps JSON. La clé publique de sandbox sk_sandbox_public fonctionne sans compte. Utilisez-la avec une image de spécimen, jamais avec un vrai passeport, car les scans faits avec la clé publique sont conservés un an.

curl -X POST https://api.doc.cheap/v1/scans \
  -H "Authorization: Bearer sk_sandbox_public" \
  -H "Content-Type: application/json" \
  -d "{\"image\": \"$(base64 < document.jpg | tr -d '\n')\",
       \"options\": {\"expect_country\": \"GBR\", \"return_portrait\": false}}"

expect_country transmet l'émetteur comme indice quand vous le connaissez déjà, et return_portrait: false laisse le visage du titulaire hors de la réponse. Les parties de la réponse qui comptent pour un passeport britannique ressemblent à ceci, avec des valeurs inventées :

{
  "document": {
    "kind": "passport",
    "issuing_state": "GBR",
    "issuing_state_detail": { "code": "GBR", "alpha3": "GBR", "alpha2": "GB", "category": "iso" },
    "number": "000000000",
    "issue_date": "2025-12-01",
    "expiry_date": "2035-12-01",
    "is_expired": false
  },
  "holder": {
    "surname": "SPECIMEN",
    "given_names": "ANGELA ZOE",
    "birth_date": "1990-01-01",
    "nationality": "GBR"
  },
  "mrz": { "status": "passed", "reason": null },
  "authenticity": { "overall": "not_checked", "checks": [] }
}

Ce qu'il faut y lire :

  • mrz.status vaut passed, failed ou absent. passed signifie que chaque chiffre de contrôle a été validé et que rien dans la zone ne contredit la page imprimée. Avec failed, mrz.reason nomme le champ, vous savez donc s'il faut demander une nouvelle photo. mrz.text contient la zone sous forme d'une seule chaîne si vous voulez recalculer les chiffres vous-même ; le guide de contrôle de la MRZ le détaille pas à pas.
  • document.issue_date vient de la page imprimée, puisque la zone n'en a pas.
  • holder.nationality_detail conserve GBD et les autres codes britanniques tels qu'ils sont écrits, avec category à british_nationality et alpha3 à GBR, pour que vous puissiez regrouper par État sans perdre la catégorie.

La page OCR du passeport britannique réunit les mêmes faits au même endroit, avec les liens vers GOV.UK et l'OACI.

Ce que l'OCR ne vous dit pas

Lire un passeport et le vérifier sont deux métiers différents. doc.cheap lit ce qui est imprimé et contrôle la MRZ par rapport à elle-même et à la zone visuelle. Il ne vérifie pas si le document est authentique : dans le scénario de reconnaissance seule, authenticity.overall vaut not_checked, et il ne lit pas la puce. Si votre parcours a besoin d'une comparaison faciale, d'une détection du vivant ou d'un contrôle d'authenticité, ce sont des étapes distinctes, avec des outils conçus pour elles.

Essayez

La clé publique de sandbox ne demande pas de compte. En vous inscrivant, vous recevez 100 reconnaissances gratuites chaque mois sur votre propre clé, de quoi construire et tester tout le parcours. Si vous choisissez un fournisseur, la comparaison des API d'OCR de passeport met les prix publiés côte à côte, et la page OCR du passeport britannique est le point de départ pour les documents britanniques.

Une question pour vous : quelle partie du passeport britannique a posé le plus de problèmes à votre parseur – les codes de nationalité, les anciennes règles de validité ou autre chose ? Dites-le-nous dans les commentaires ci-dessous.