Skip to content
Constaia
mx_ine

Mexican 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 numberdocument_number
  • First namefirst_name
  • Last namelast_name
  • Sexsex
  • Date of birthbirth_date
  • Curpcurp
  • Elector keyelector_key
  • Ocr numberocr_number
  • Addressaddress
  • Sectionsection
  • Registration yearregistration_year
  • Issue dateissue_date
  • Expiry dateexpiry_date
  • Mrzmrz

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.