Deja de pedirle a tu usuario la tarjeta del Seguro Social, que casi nadie encuentra. Mandas su CURP y recibes su Número de Seguridad Social en la respuesta de esa misma llamada.
¿Dudas técnicas? Habla con un ingeniero por WhatsApp — 0% bots.
Elige un escenario y mira qué recibe tu sistema:
Datos ficticios con la misma estructura que regresa el API. Ninguno corresponde a una persona real.
El NSS son once dígitos que casi nadie se sabe de memoria y que viven en una tarjeta que casi nadie encuentra. Pedirlos en un formulario cuesta abandono; reconstruirlos a mano cuesta tiempo. La CURP, en cambio, ya la tienes.
Ninguna respuesta te deja adivinando. El campo type nombra el caso con un código estable y tu backend decide con un switch.
| type | Qué pasó | Qué hacer |
|---|---|---|
SUCCESS | Se encontró el NSS de la persona. Vienen los 11 dígitos. | Avanza. Úsalo para el alta o para encadenar la verificación de empleo. |
PERSON_WITHOUT_NSS | La CURP existe, pero no tiene un NSS asignado. | Analiza. Normalmente significa que nunca ha sido dada de alta ante el IMSS. No es un error del dato que capturaste. |
CURP_NOT_FOUND | El IMSS no localizó esa CURP. | Analiza. Verifica la CURP contra RENAPO antes de concluir algo. |
IMSS_INCONSISTENT_DATA | La CURP existe, pero sus datos están inconsistentes del lado del IMSS. | Analiza. El dato no es utilizable hasta que la persona lo corrija ante el instituto. |
IMSS_OPERATION_LIMIT | Se alcanzó el límite diario de operaciones del IMSS. | Reintenta más tarde. No tiene que ver con los datos de tu usuario. |
SERVICE_UNAVAILABLE | El IMSS no está respondiendo en este momento. | Reintenta. Llega con billable: false: no se te cobra. |
INVALID_REQUEST | La CURP viene mal formada. | Corrige la captura. También llega con billable: false. |
Mandas la CURP y la respuesta trae el NSS. Mismo envelope que todos los servicios de OrigoID: aprendes el contrato una vez y te sirve para IMSS, CURP, INE, RFC y más.
PERSON_WITHOUT_NSS te dice que esa persona no tiene uno asignado — información, no un silencio.const res = await fetch("https://api.origoid.com/mex/social-security/v1/imss-nss-lookups", { method: "POST", headers: { "x-api-key": process.env.ORIGOID_API_KEY, "content-type": "application/json", }, body: JSON.stringify({ curp: "XEXX010101HNEXXXA4" }), }); const result = await res.json();
import os, requests res = requests.post( "https://api.origoid.com/mex/social-security/v1/imss-nss-lookups", headers={"x-api-key": os.environ["ORIGOID_API_KEY"]}, json={"curp": "XEXX010101HNEXXXA4"}, timeout=60, ) result = res.json()
curl -X POST https://api.origoid.com/mex/social-security/v1/imss-nss-lookups \ -H "x-api-key: $ORIGOID_API_KEY" \ -H "content-type: application/json" \ -d '{"curp": "XEXX010101HNEXXXA4"}'
{
"status": "OK",
"type": "SUCCESS",
"message": "NSS found",
"data": { "nss": "00000000000" },
"transactionId": "c5841679-321e-4b05-8d0b-42c457f79e31",
"billable": true
}
Con la CURP y el NSS juntos puedes consultar al IMSS la situación laboral vigente de la persona: patrón, salario base de cotización y días cotizados del periodo.
Muchos proveedores resuelven este dato por lotes: subes un archivo y recoges resultados más tarde. Eso no cabe en un onboarding donde la persona está esperando del otro lado de la pantalla.
OrigoID no es el IMSS ni actúa en su nombre: es un medio técnico de consulta y cotejo respecto de esa fuente. La exactitud y la vigencia de la información dependen del propio instituto.
Sí. Mandas la CURP y recibes el Número de Seguridad Social de 11 dígitos en la misma respuesta. No necesitas la tarjeta ni ningún otro dato de la persona.
La respuesta lo dice con PERSON_WITHOUT_NSS: la CURP existe pero no tiene un NSS asignado, lo que normalmente significa que nunca ha sido dada de alta ante el IMSS. Es información útil para tu proceso, no un error.
Síncrono. El NSS viene en la respuesta de tu petición HTTP: sin folios que consultar después, sin webhooks que configurar y sin archivos que subir. Toda la API de OrigoID funciona igual.
Para dar de alta personas en nómina o seguridad social sin pedir documentos extra, y como paso previo a la verificación de empleo, que necesita CURP y NSS juntos.
No. Cada consulta se valida, se responde y se descarta, sin guardar los datos. Cero retención en todas nuestras regiones.
1 crédito por consulta. Empiezas con créditos de cortesía y el precio por crédito baja con tu volumen; todos los planes están publicados.
Créditos de cortesía para consultar en producción, contra el IMSS. El acceso se habilita tras una breve validación de tu empresa.