Skip to main content

Mexican CURP Validation (Renapo)

Jumio has a number of database check services available for Mexico. These checks allow you to validate Mexican National IDs and personal identifiable information. This service connects with the Mexican National Population Registry (Registro Nacional de Población / RENAPO) to validate that the Unique Population Registry Code (Clave Única de Registro de Población / CURP) number present on the ID card exists and its owner matches the data.

image

Service NameDescriptionRequired FieldsVerifiable Fields
Mexico CURP ValidationInput is verified against the RENAPO (Registro Nacional de Población e Identificación Personal). This stands for the National Census and Personal Identification Registry.
  • First Name
  • Paternal Name
  • Maternal Name
  • Address (country)
  • ID (IDNumber)
  • CURP ID#
  • First Name
  • Paternal Name
  • Maternal Name
  • Date of Birth (DOB)
  • Gender
  • Address (country)

CURP Validation

Required Credentials

Prepared Data
KeyTypeMandatoryDescription
firstNamestringyesFirst name of the subject. Optimal to include.
paternalSurnamestringyesPaternal Surname of the subject.
maternalSurnamestringyesMaternal Surname of the subject.
sexstringyesGender (M - Male, F - Female)
emailstringnoEmail Address
phoneNumberstringnoPhone Number
ipAddressstringnoIP Address
socialSecurityNumberstringnoEither socialSecurityNumber, personNumber, or idNumber should be provided
dateOfBirthLocalDateyesDate of Birth in YYYY-MM-DD format only
addressObjectyesOnly the fields mentioned below are required
address.countrystringyesCountry should be MEX (ISO Alpha-3 Code for Mexico)
address.subdivisionstringnoAdded in request without CURP. City subdivision of residence as it appears on the ID.
address.statestringnoState name can be provided here.
See Supported States here.
idObjectyesSee details below
id.idNumberstringyesCURP ID (Example: XXXXXXXXXXXXX)
id.typestringconditionalID_CARD
id.subTypestringconditionalSubtype of ID
id.issuingDatestringconditionalDate the ID was issued
id.expiryDatestringconditionalExpiry date of the ID
info
  • If CURP (nationalID) is present, we validate the CURP and surface match/no match for address (state), gender, name (first name), Date of Birth (DOB), and nationalID, if provided.
  • If CURP/nationalID is not present, we validate KYC namely name (full name, paternal surname, maternal surname, gender, DOB, and address (state). All fields are mandatory except maternal surname.
  • 10054 may not work, since extraction does not extract paternal and maternal surnames. It is extracted as full name and we are unable to bifurcate).

Supported States

Expand the list to view the Supported States
  • AGUASCALIENTES
  • BAJA CALIFORNIA
  • BAJA CALIFORNIA SUR
  • BORN ABROAD
  • CAMPECHE
  • CHIAPAS
  • CHIHUAHUA
  • COAHUILA
  • COLIMA
  • DISTRITO FEDERAL
  • DURANGO
  • GUANAJUATO
  • GUERRERO
  • HIDALGO
  • JALISCO
  • MÉXICO
  • MICHOACÁN
  • MORELOS
  • NAYARIT
  • NACIDO EN EL EXTRANJERO
  • NUEVO LEÓN
  • OAXACA
  • PUEBLA
  • QUERÉTARO
  • QUINTANA ROO
  • SAN LUIS POTOSI
  • SINALOA
  • SONORA
  • TABASCO
  • TAMAULIPAS
  • TLAXCALA
  • VERACRUZ
  • YUCATÁN
  • ZACATECAS

Response Values

Details
ParameterTypeNote
idstringUUID of the capability
credentialsarray(Credential)
decisionobject
decision.typestringPossible values: NOT_EXECUTED, PASSED, REJECTED, WARNING
decision.detailsobject
decision.details.labelstringPossible values: OK, DENY, ALERT, NOT_ENOUGH_DATA, TECHNICAL_ERROR, PERMISSION_DENIED, BAD_REQUEST, PRECONDITION_NOT_FULFILLED
dataobject
data.nationalidMatchstringPossible values: Match, NoMatch
data.reasonMessagestringPossible values: Verification Successful, WITHOUT RENAPO RESPONSE, DOES NOT RESPOND, INCORRECT DATA, REFERENCE ALREADY EXIST, UNEXPECTED ERROR
data.firstNameMatchstringMatch, NoMatch
data.dobMatchstringMatch, NoMatch
data.sexMatchstringMatch, NoMatch
data.paternalSurnameMatchstringMatch, NoMatch
data.maternalSurnameMatchstringMatch, NoMatch
data.stateKeyMatchstringMatch, NoMatch

Credential

KeyTypeDescription
idstringUUID of credential used
categorystringCategory of credential used

Capability Request (with/without CURP)

{
"firstName": "Jorge",
"paternalSurname": "Garcia",
"maternalSurname": "Perez",
"sex": "H",
"dateOfBirth": "1991-01-01",
"address": {
"country": "MEX"
},
"id": {
"idNumber": "ID1234567890",
"type": "ID_CARD"
}
}

Capability Response (CURP ID)

{
"govtIdVerification": [
{
"id": "439e2649-d1f4-4418-a9e7-14cba6522124",
"credentials": [
{
"id": "45591915-55b2-42fc-a615-8f170c5558b4",
"category": "DATA"
}
],
"decision": {
"type": "PASSED",
"details": {
"label": "OK"
}
},
"data": {
"firstNameMatch": "NOT_MATCH",
"nationalIdMatch": "MATCH",
"sexMatch": "MATCH",
"stateKeyMatch": "NOT_MATCH",
"reasonMessage": "Verification Successful"
}
}
]
}

Capability Response (No CURP ID)

{
"govtIdVerification": [
{
"id": "bd84dbf7-35dc-4136-bc54-8faea1f09116",
"credentials": [
{
"id": "b8d793ab-8f65-47c1-8025-9f00a477b5fb",
"category": "DATA"
}
],
"decision": {
"type": "PASSED",
"details": {
"label": "OK"
}
},
"data": {
"firstNameMatch": "MATCH",
"dobMatch": "MATCH",
"sexMatch": "MATCH",
"paternalSurnameMatch": "MATCH",
"maternalSurnameMatch": "MATCH",
"stateKeyMatch": "MATCH",
"reasonMessage": "Verification Successful"
}
}
]
}