fr_cniFrench national identity card (2021)
New French national identity card in credit-card format (since 2021), with chip and TD1 MRZ; 9-character alphanumeric number.
- Category
- Identity
- Country
- France
- Extracted fields
- 14 fields
- Cost
- 1 credit
fr_cnispecimen- 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.
- 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 number
document_number - First name
first_name - Last name
last_name - Sex
sex - Nationality
nationality - Date of birth
birth_date - Issue date
issue_date - Expiry date
expiry_date - Issuing country
issuing_country - Mrz
mrz - Place of birth
birth_place - Address
address - Alternate name
alternate_name - Issuing authority
issuing_authority
Sample request
curl https://api.constaia.com/v1/analyze \
-H "Authorization: Bearer $CONSTAIA_API_KEY" \
-F "file=@document.pdf" \
-F 'options={
"expect": "fr_cni",
"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": "fr_cni",
"label": "French national identity card (2021)",
"confidence": 0.97
},
"verdict": {
"expected": [
"fr_cni"
],
"match": true,
"status": "valid",
"reasons": [
{
"code": "type_match",
"severity": "info",
"message": "The document is: French national identity card (2021)."
}
]
},
"fields": {
"document_number": {
"value": "X4RTBPFW4",
"confidence": 0.99,
"validated": true
},
"first_name": {
"value": "MARIE",
"confidence": 0.98,
"validated": null
},
"last_name": {
"value": "MARTIN",
"confidence": 0.97,
"validated": null
},
"sex": {
"value": "F",
"confidence": 0.96,
"validated": null
},
"nationality": {
"value": "FRA",
"confidence": 0.99,
"validated": null
},
"birth_date": {
"value": "1990-01-13",
"confidence": 0.98,
"validated": null
},
"issue_date": {
"value": "2024-02-01",
"confidence": 0.97,
"validated": null
},
"expiry_date": {
"value": "2034-01-31",
"confidence": 0.96,
"validated": null
},
"issuing_country": {
"value": "FRA",
"confidence": 0.99,
"validated": null
},
"mrz": {
"value": "IDFRAX4RTBPFW46<<<<<<<<<<<<<<<\n9001136F3401310FRA<<<<<<<<<<<4\nMARTIN<<MARIE<<<<<<<<<<<<<<<<<",
"confidence": 0.98,
"validated": null
},
"birth_place": {
"value": "PARIS (75)",
"confidence": 0.97,
"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."
}
],
"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.