Servicio de Consulta CURP - RENAPO
Información General
INFORMACIÓN
Propósito: Este documento describe la integración con el servicio SOAP de RENAPO para la consulta de datos de CURP (Clave Única de Registro de Población) en los ambientes de desarrollo y preproducción.
Endpoints del Servicio
POST http://172.21.66.90/ServiciosInternos/ServicioRenapo?wsdlPOST http://172.21.62.1/ServiciosInternos/ServicioRenapo?wsdlConfiguración General:
- Protocolo: SOAP 1.1
- Método: POST
- Encoding: UTF-8
Configuración por Ambiente
Para configurar los endpoints según el ambiente, utilice las siguientes URLs:
http://172.21.66.90/ServiciosInternos/ServicioRenapo?wsdlhttp://172.21.62.1/ServiciosInternos/ServicioRenapo?wsdlOperación: consultarCurp
Descripción
Permite consultar los datos completos asociados a una CURP específica, obteniendo información personal del ciudadano registrada en el sistema de RENAPO.
Request
Estructura SOAP
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:con="http://www.procesar.com.mx/ServiciosInternos/ServicioRenapo/consultarCurp/">
<soapenv:Header/>
<soapenv:Body>
<con:consultarCurpRequest>
<cuerpo>
<curp>CADM680118HMNBRR06</curp>
</cuerpo>
</con:consultarCurpRequest>
</soapenv:Body>
</soapenv:Envelope>CONSEJO
CURP de ejemplo: La línea resaltada contiene una CURP válida para pruebas. Reemplázala con la CURP real que necesites consultar.
Parámetros
| Parámetro | Tipo | Requerido | Descripción |
|---|---|---|---|
| curp | String | Sí | CURP de 18 caracteres a consultar |
Implementación
Para implementar el cliente SOAP, configure la petición con la estructura XML mostrada anteriormente y envíela al endpoint correspondiente según el ambiente.
Response
Estructura de Respuesta
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<con:consultarCurpResponse xmlns:con="http://www.procesar.com.mx/ServiciosInternos/ServicioRenapo/consultarCurp/">
<objetoRespuesta>
<respuestaServicioRenapo>
<![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<CURPStruct statusOper="EXITOSO" message="LA OPERACION SE EJECUTO."
TipoError="" CodigoError=""
SessionID="En0Jcmk6jouyBswcfbC_lmtfxR-G_-2uufj6Tb90bdX92C1klOVy!-1950319781!1761095084346">
<CURP>CADM680118HMNBRR06</CURP>
<apellido1>CABRERA</apellido1>
<apellido2>DUARTE</apellido2>
<nombres>MARTIN</nombres>
<sexo>H</sexo>
<fechNac>18/01/1968</fechNac>
<nacionalidad>MEX</nacionalidad>
<docProbatorio>1</docProbatorio>
<anioReg>1972</anioReg>
<foja></foja>
<tomo></tomo>
<libro></libro>
<numActa>01649</numActa>
<CRIP></CRIP>
<numEntidadReg>16</numEntidadReg>
<cveMunicipioReg>038</cveMunicipioReg>
<NumRegExtranjeros></NumRegExtranjeros>
<FolioCarta></FolioCarta>
<cveEntidadNac>MN</cveEntidadNac>
<cveEntidadEmisora></cveEntidadEmisora>
<statusCurp>BD</statusCurp>
<curpHistoricas>CADM680118HMNBRR06</curpHistoricas>
</CURPStruct>
]]>
</respuestaServicioRenapo>
<resultadoOperacion>01</resultadoOperacion>
</objetoRespuesta>
</con:consultarCurpResponse>
</soapenv:Body>
</soapenv:Envelope>CONSEJO
Datos principales: Las líneas resaltadas (81-84) contienen la información básica del ciudadano. Estos son los campos más utilizados en las validaciones.
Campos de Respuesta
Datos Principales
| Campo | Descripción | Ejemplo |
|---|---|---|
| CURP | Clave Única de Registro de Población | CADM680118HMNBRR06 |
| apellido1 | Primer apellido | CABRERA |
| apellido2 | Segundo apellido | DUARTE |
| nombres | Nombres | MARTIN |
| sexo | Sexo (H=Hombre, M=Mujer) | H |
| fechNac | Fecha de nacimiento (DD/MM/YYYY) | 18/01/1968 |
| nacionalidad | Nacionalidad | MEX |
Datos de Registro
| Campo | Descripción | Ejemplo |
|---|---|---|
| docProbatorio | Documento probatorio | 1 |
| anioReg | Año de registro | 1972 |
| numActa | Número de acta | 01649 |
| numEntidadReg | Número de entidad de registro | 16 |
| cveMunicipioReg | Clave de municipio de registro | 038 |
| cveEntidadNac | Clave de entidad de nacimiento | MN |
| statusCurp | Estatus de CURP | BD |
Metadatos de Operación
| Campo | Descripción | Ejemplo |
|---|---|---|
| statusOper | Estatus de la operación | EXITOSO |
| message | Mensaje de la operación | LA OPERACION SE EJECUTO |
| resultadoOperacion | Código de resultado | 01 |
| SessionID | Identificador de sesión | En0Jcmk6jouyBswcfbC_lmtfxR-G_-2uufj6Tb90bdX92C1klOVy!-1950319781!1761095084346 |
Códigos de Error
| Código | Descripción | Acción |
|---|---|---|
| 01 | Operación exitosa | Continuar flujo normal |
| 02 | CURP no encontrada | Verificar CURP ingresada |
| 03 | Error en formato de CURP | Validar estructura de CURP |
| 99 | Error interno del servicio | Reintentar o contactar soporte |
Consideraciones de Implementación
Validación de CURP
ADVERTENCIA
Validación importante: Antes de enviar la petición, se recomienda validar el formato de la CURP utilizando una expresión regular que verifique los 18 caracteres y la estructura correspondiente.
Manejo de Errores
PELIGRO
Manejo de errores crítico: Implemente un manejo de errores adecuado que:
- Verifique los códigos de respuesta
- Procese los mensajes de error del servicio
- Implemente reintentos para errores temporales
- Registre errores para monitoreo
Parseo de Respuesta XML
INFORMACIÓN
Procesamiento de respuesta: La respuesta del servicio incluye los datos de CURP dentro de una sección CDATA. Extraiga y procese estos datos según los requisitos de su aplicación.
Pruebas y Validación
CURPs de Prueba
| CURP | Nombre | Resultado Esperado |
|---|---|---|
| CADM680118HMNBRR06 | MARTIN CABRERA DUARTE | Datos completos |
| BADD550321MVZRRL04 | DATOS DE PRUEBA | Respuesta de prueba |
Casos de Uso por Ambiente
- Pruebas unitarias y funcionales
- Desarrollo local de nuevas funcionalidades
- Integración continua
- Validación con datos de prueba- Testing de aceptación
- Validación final antes de producción
- Pruebas con datos reales (controlados)
- Certificación de funcionalidadesBuenas Prácticas
Detalles
1. Configuración de Ambiente
- Usar variables de entorno para definir el ambiente
- Nunca hardcodear URLs de producción en código de desarrollo
- Implementar validación de ambiente antes de ejecutar operaciones críticas
Detalles
2. Manejo de Datos Sensibles
- Implementar logging adecuado sin exponer datos personales
- Cifrar información sensible en tránsito y reposo
- Seguir principios de mínimo privilegio para acceso a datos
Detalles
3. Monitoreo y Alertas
- Implementar monitoreo de respuesta del servicio
- Configurar alertas para errores frecuentes
- Registrar métricas de rendimiento por ambiente