CURP Validation API
Validate Mexican CURP codes with our high-precision service and direct data from RENAPO.
An API key is required to use this API. Official RENAPO source.
Sign Up to Get StartedFeatures
✓ Real-Time Validation
Instant verification against official RENAPO records with millisecond response times.
✓ High Accuracy
99.9% accuracy with data directly from the National Population Registry.
✓ Complete Information
Get full name, date of birth, gender, nationality, and birth state.
✓ Registration Data
Birth certificate information including registration state, municipality, and certificate number.
API Endpoint
GET https://api.tlaloc.sh/mx/v1/curp?curp={curp}
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
curp |
string | Yes | CURP to validate (18 characters) |
Example Request
curl -X GET "https://api.tlaloc.sh/mx/v1/curp?curp=JUPC850621HJCLRR05" \
-H "Authorization: Bearer tlmx_YOUR_API_KEY"
The example CURP is fictitious — we don't publish real personal data. Replace it with a real one to get a valid response.
Example Response
{
"nacionalidad": "MEXICO",
"docProbatorio": 1,
"statusCurp": "RCN",
"nombres": "CARLOS ALBERTO",
"parametro": "?curp=JUPC850621HJCLRR05&pcurp=A8B7D3F9E2C1A456B789",
"primerApellido": "JUAREZ",
"segundoApellido": "PEREZ",
"curp": "JUPC850621HJCLRR05",
"fechaNacimiento": "21/06/1985",
"sexo": "HOMBRE",
"datosDocProbatorio": {
"claveEntidadRegistro": "19",
"entidadRegistro": "NUEVO LEON",
"claveMunicipioRegistro": "039",
"municipioRegistro": "MONTERREY",
"anioReg": "1985",
"foja": "123",
"tomo": "45",
"libro": "2",
"numActa": "00456"
},
"claveEntidad": "JC",
"entidad": "JALISCO"
}
Use Cases
User Onboarding
Verify identity during new user registration for digital platforms.
Financial Services
Validate identity for bank account opening and financial products.
Human Resources
Verify employee data during hiring processes.
Digital Government
Validate citizens in government online procedures and services.
Frequently Asked Questions
What exactly does the CURP API validate?
It queries the official RENAPO registry in real time and returns the CURP status together with the registered data: names, last names, date of birth, gender, registration state and supporting document. We don't serve cached databases — every lookup reflects what RENAPO has on record at that moment.
Can I find a CURP without having it?
Yes. Besides validating an 18-character CURP, you can search by personal data: names, first and second last name, date of birth, gender and state of birth. It is the same search the gob.mx portal offers, but as an API.
How do I validate thousands of CURPs at once?
Use the batch endpoint POST /v1/curp/batch: send your whole list in a single request and poll progress and results whenever you want. Read the guide Validate CURPs in Batch.
How much does each lookup cost?
$0.25 MXN (0.25 units) per lookup, VAT included. Prepaid model: top up via SPEI transfer, no monthly fees, no minimums. You only pay for the lookups you make.
How do I authenticate?
With a Bearer API key (prefix tlmx_) generated in the console. Send it in the Authorization: Bearer tlmx_YOUR_API_KEY header.
What is this API typically used for?
Customer onboarding and KYC (fintech, insurance, leasing), employee and payroll verification, cleaning up registries and databases, and pre-filling forms with official data.