Cómo validar una CURP (México)
Cómo funciona el dígito verificador
La CURP tiene 18 caracteres. La API verifica el formato (fecha de nacimiento, sexo H/M/X, clave de estado) y el dígito verificador final:
- Convertí los primeros 17 caracteres: 0–9 → 0–9, A–N → 10–23, Ñ → 24, O–Z → 25–36.
- Multiplicá por los pesos
18, 17, …, 2y sumá. - DV =
(10 − suma mod 10) mod 10.
El carácter 17 indica el siglo: dígito para nacidos en 1900s, letra para 2000s.
Validar con la API
Uso directo gratis: 50 requests por IP por día, sin registro. Endpoints: POST /validate, POST /batch, GET /generate/{doc_type} (solo para pruebas: datos sintéticos, no son identidades reales).
curl
curl -X POST "https://validalatam.ia-latam.app/validate" -H "Content-Type: application/json" \
-d '{"type":"MX_CURP","value":"NIPN910513MJCXWY92"}'
# synthetic test data only / solo para pruebas
curl "https://validalatam.ia-latam.app/generate/MX_CURP"Python
import requests
BASE = "https://validalatam.ia-latam.app"
r = requests.post(f"{BASE}/validate", json={"type": "MX_CURP", "value": "NIPN910513MJCXWY92"})
print(r.json()["valid"], r.json()["formatted"])
Respuesta real de la API (valor sintético de /generate)
NIPN910513MJCXWY92 (MX_CURP):
{"valid":true,"type":"MX_CURP","country":"MX","input":"NIPN910513MJCXWY92","normalized":"NIPN910513MJCXWY92","formatted":"NIPN910513MJCXWY92","error":null,"details":{"sex":"M","state":"JC","century":"1900s"}}
Planes
Para producción: Basic gratis (500 req), Pro US$ 9, Ultra US$ 29 y Mega US$ 99 por mes en RapidAPI.
Para asistentes de IA (MCP)
pip install validalatam-mcpgithub.com/elmatis172/validalatam-mcp
← Todas las guías · Contacto: faucolabs@gmail.com