Skip to content
Constaia
gb_brp

UK Biometric Residence Permit (BRP)

UK Biometric Residence Permit (Home Office) with TD1 MRZ. No longer accepted as proof of status after 2024 (replaced by eVisas), but still presented as identification.

Category
Residence
Country
United Kingdom
Extracted fields
14 fields
Cost
1 credit
gb_brpspecimen
Document number
First name
Last name
Sex
Nationality
Date of birth
Issue date
Expiry date
Issuing country

What it checks

  • MRZ ICAO 9303. Check digits of the machine readable zone.
  • MRZ vs printed data. The MRZ matches the visible data.
  • National identifiers. Official checksum or format of the number (NIF, CPF, CURP, RUT, SSN…).gb_nino
  • Holder. Name, number or date of birth match what you expect.
  • Age. Minimum or maximum age from the date of birth.
  • Validity. Not expired on the reference date.

Extracted fields

  • Document numberdocument_number
  • First namefirst_name
  • Last namelast_name
  • Sexsex
  • Nationalitynationality
  • Date of birthbirth_date
  • Issue dateissue_date
  • Expiry dateexpiry_date
  • Issuing countryissuing_country
  • Mrzmrz
  • Permit typepermit_type
  • Remarksremarks
  • Place of birthbirth_place
  • National insurance numbernational_insurance_number

Sample request

curl https://api.constaia.com/v1/analyze \
  -H "Authorization: Bearer $CONSTAIA_API_KEY" \
  -F "file=@document.pdf" \
  -F 'options={
    "expect": "gb_brp",
    "checks": {
      "not_expired": true,
      "holder": {
        "full_name": "Carmen Especimen Ruiz"
      }
    },
    "storage": "none"
  }'

Sample response

Fictitious data. Shortened response.

200 OK · application/json
{
  "id": "an_01J9Z3K8QW4T6Y2B7N5M1R0PXC",
  "object": "analysis",
  "status": "completed",
  "livemode": false,
  "document": {
    "type": "gb_brp",
    "label": "UK Biometric Residence Permit (BRP)",
    "confidence": 0.97
  },
  "verdict": {
    "expected": [
      "gb_brp"
    ],
    "match": true,
    "status": "valid",
    "reasons": [
      {
        "code": "type_match",
        "severity": "info",
        "message": "The document is: UK Biometric Residence Permit (BRP)."
      }
    ]
  },
  "fields": {
    "document_number": {
      "value": "ZU1234567",
      "confidence": 0.99,
      "validated": true
    },
    "first_name": {
      "value": "RAVI",
      "confidence": 0.98,
      "validated": null
    },
    "last_name": {
      "value": "SPECIMEN",
      "confidence": 0.97,
      "validated": null
    },
    "sex": {
      "value": "M",
      "confidence": 0.96,
      "validated": null
    },
    "nationality": {
      "value": "IND",
      "confidence": 0.99,
      "validated": null
    },
    "birth_date": {
      "value": "1990-02-11",
      "confidence": 0.98,
      "validated": null
    },
    "issue_date": {
      "value": "2022-05-20",
      "confidence": 0.97,
      "validated": null
    },
    "expiry_date": {
      "value": "2024-12-31",
      "confidence": 0.96,
      "validated": null
    },
    "issuing_country": {
      "value": "GBR",
      "confidence": 0.99,
      "validated": null
    },
    "mrz": {
      "value": "IRGBRZU12345673<<<<<<<<<<<<<<<\n9002111M2412311IND<<<<<<<<<<<8\nSPECIMEN<<RAVI<<<<<<<<<<<<<<<<",
      "confidence": 0.98,
      "validated": null
    },
    "permit_type": {
      "value": "LEAVE TO REMAIN",
      "confidence": 0.97,
      "validated": null
    },
    "national_insurance_number": {
      "value": "AB123456C",
      "confidence": 0.96,
      "validated": null
    }
  },
  "checks": [
    {
      "code": "mrz_checksums",
      "passed": true,
      "message": "The MRZ check digits are correct."
    },
    {
      "code": "mrz_matches_visual",
      "passed": true,
      "message": "The MRZ matches the printed data."
    },
    {
      "code": "id_number",
      "passed": true,
      "message": "id_number"
    }
  ],
  "warnings": [],
  "storage": {
    "mode": "none",
    "file_deleted_at": "2026-09-29T10:00:02Z",
    "expires_at": null
  },
  "usage": {
    "credits": 1,
    "pages": 1
  }
}

FAQ

Does Constaia prove the document is authentic?

No. It checks the type, data consistency and your rules, and flags signals such as a possible edit or a screen photo. That does not prove authenticity.

Is a copy of the document kept?

No, unless you ask for it. With storage "none" (the default) the file is deleted when the analysis ends.

Other documents

And for the record…

Create your account, copy the test key and validate your first document in five minutes.