Skip to main content

Mexico โ€” Professional License

Confirms that a person holds a professional license (cรฉdula profesional) in the official professional registry. This is credential verification, not identity proofing.

Send either a document or a name:

  • CURP (recommended). The registry is checked for licenses tied to that CURP first.
  • License number. An exact match on the cรฉdula number.
  • Name. An exact, accent-insensitive match on given names plus both surnames.

A person can hold several licenses, so cedulas is an array. For the CURP holderโ€™s civil record, see Mexican Citizen (CURP). For a voter credential, see INE Validation. For health-only licenses, see Health Worker License.

API referenceโ€‹

Endpointโ€‹

https://api.verifik.co/v2/mx/cedula-profesional

A match returns fullName, matchMethod, ambiguous, and cedulas[] with licenseNumber, title, profession, institution, and registrationYear.

Headersโ€‹

NameValue
Acceptapplication/json
AuthorizationBearer <token>

Parametersโ€‹

Send documentType + documentNumber, or firstName + lastName. Do not mix the two modes.

NameTypeRequiredDescriptionExample
documentTypestringDocument modeCURP or CEDULA (case-insensitive).CURP
documentNumberstringWith documentTypeA CURP of 17โ€“18 characters (uppercased automatically) or a license number.LOPE900501HDFGRN01
firstNamestringName modeGiven names. 2โ€“80 characters.ANA
lastNamestringName modeBoth surnames, paternal first. 2โ€“80 characters.LOPEZ RUIZ

How matching worksโ€‹

  • CURP. Licenses tied to that CURP are returned first (matchMethod: "curp"). If none are tied directly, Verifik resolves the CURP holderโ€™s official name and searches for an exact full-name match. That step costs nothing extra (matchMethod: "curp_to_name", with matchNote). Rows that carry the same CURP win. Otherwise, rows without a CURP that match the exact name are returned.
  • ambiguous: true means those rows belong to more than one institution and registration-year group, so a homonym is possible. Review the rows or ask for the license number.
  • CEDULA. An exact license-number match (matchMethod: "license").
  • Name. An exact accent- and case-insensitive full-name match (matchMethod: "name"). ambiguous uses the same institution/year rule. Prefer CURP.

Requestโ€‹

import axios from "axios";

const { data } = await axios.get("https://api.verifik.co/v2/mx/cedula-profesional", {
params: {
documentType: "CURP",
documentNumber: "LOPE900501HDFGRN01",
},
headers: { Accept: "application/json", Authorization: `Bearer ${process.env.VERIFIK_TOKEN}` },
});
console.log(data);

Name mode uses firstName=ANA and lastName=LOPEZ RUIZ and omits documentType and documentNumber.

Responseโ€‹

{
"data": {
"ambiguous": false,
"arrayName": ["ANA", "LOPEZ", "RUIZ"],
"cedulas": [
{
"curp": "LOPE900501HDFGRN01",
"firstName": "ANA",
"fullName": "ANA LOPEZ RUIZ",
"gender": "MUJER",
"institution": "UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO",
"lastName": "LOPEZ RUIZ",
"licenseNumber": "10050101",
"licenseType": "C1",
"profession": "LICENCIATURA COMO MEDICO CIRUJANO",
"registrationYear": 2019,
"title": "LICENCIATURA COMO MEDICO CIRUJANO"
},
{
"curp": "LOPE900501HDFGRN01",
"firstName": "ANA",
"fullName": "ANA LOPEZ RUIZ",
"gender": "MUJER",
"institution": "UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO",
"lastName": "LOPEZ RUIZ",
"licenseNumber": "20050101",
"licenseType": "C1",
"profession": "LICENCIATURA EN DERECHO",
"registrationYear": 2019,
"title": "LICENCIATURA EN DERECHO"
}
],
"curp": "LOPE900501HDFGRN01",
"documentNumber": "LOPE900501HDFGRN01",
"documentType": "CURP",
"firstName": "ANA",
"fullName": "ANA LOPEZ RUIZ",
"lastName": "LOPEZ RUIZ",
"matchMethod": "curp",
"matchNote": null
},
"signature": {
"dateTime": "October 20, 2026 12:00 PM",
"message": "Certified by Verifik.co"
}
}

Notesโ€‹

  • A valid CURP whose holder has no license returns 404, including in sandbox. An empty cedulas array is not a success response.
  • ambiguous: true means the rows span more than one institution and registration year. Review them or look up the license number.
  • Results are cached for up to 7 days, so a repeat lookup is fast.
  • Sandbox persona ANA LOPEZ RUIZ. Any CURP except the triggers below returns a direct match with two licenses.
  • A CURP containing 000003 (for example LOPE000003MDFRRN03) returns matchMethod: "curp_to_name" and cedulas[].curp: null.
  • A CURP containing 000002 (for example LOPE000002MDFRRN02) returns 404 (valid CURP, no license).
  • CURP LOPE900404HDFNTF01, license 90040401, or lastName=NOTFOUND returns 404.
  • documentType=CEDULA and documentNumber=10000001 returns one law license. firstName=ANA and lastName=AMBIGUA returns ambiguous: true.
  • A CURP shorter than 17 or longer than 18 characters, or an invalid documentType, returns 409 MissingParameter.
  • When the registry cannot be reached, the response is 409 Endpoint_out_of_service. Retry later.
  • Related: Mexican Citizen (CURP), INE Validation, Health Worker License, Education Certificate (folio).