mx_ineMexican INE voter ID card
Voter ID card issued by Mexico's National Electoral Institute (formerly IFE), the main ID in Mexico; shows CURP, elector key, CIC and OCR, with a TD1 MRZ on the back (models since 2014).
- Category
- Identity
- Country
- Mexico
- Extracted fields
- 14 fields
- Cost
- 1 credit
mx_inespecimen- Document number
- First name
- Last name
- Sex
- Date of birth
- Curp
- Elector key
- Ocr number
- Address
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…).
mx_curp, mx_ine_cic - 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 - Date of birth
birth_date - Curp
curp - Elector key
elector_key - Ocr number
ocr_number - Address
address - Section
section - Registration year
registration_year - Issue date
issue_date - Expiry date
expiry_date - Mrz
mrz
Sample request
curl https://api.constaia.com/v1/analyze \
-H "Authorization: Bearer $CONSTAIA_API_KEY" \
-F "file=@document.pdf" \
-F 'options={
"expect": "mx_ine",
"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": "mx_ine",
"label": "Mexican INE voter ID card",
"confidence": 0.97
},
"verdict": {
"expected": [
"mx_ine"
],
"match": true,
"status": "valid",
"reasons": [
{
"code": "type_match",
"severity": "info",
"message": "The document is: Mexican INE voter ID card."
}
]
},
"fields": {
"document_number": {
"value": "196578434",
"confidence": 0.99,
"validated": true
},
"first_name": {
"value": "JUAN",
"confidence": 0.98,
"validated": null
},
"last_name": {
"value": "PEREZ PEREZ",
"confidence": 0.97,
"validated": null
},
"sex": {
"value": "M",
"confidence": 0.96,
"validated": null
},
"birth_date": {
"value": "1985-07-30",
"confidence": 0.99,
"validated": null
},
"issue_date": {
"value": "2023-01-01",
"confidence": 0.98,
"validated": null
},
"expiry_date": {
"value": "2033-12-31",
"confidence": 0.97,
"validated": null
},
"mrz": {
"value": "IDMEX19657843451234567890123<<\n8507309M3312315MEX<<<<<<<<<<<9\nPEREZ<PEREZ<<JUAN<<<<<<<<<<<<<",
"confidence": 0.96,
"validated": null
},
"curp": {
"value": "PEPJ850730HDFRRN01",
"confidence": 0.99,
"validated": null
},
"elector_key": {
"value": "PRPRJN85073009H100",
"confidence": 0.98,
"validated": null
},
"ocr_number": {
"value": "1234567890123",
"confidence": 0.97,
"validated": null
},
"address": {
"value": "C. HIDALGO 10, COL. CENTRO 06000 CUAUHTEMOC, CDMX",
"confidence": 0.96,
"validated": null
},
"section": {
"value": "0123",
"confidence": 0.99,
"validated": null
},
"registration_year": {
"value": "2003 01",
"confidence": 0.98,
"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.