CURP service
CURP API gives the service of CURP (Clave Única de Registro de Población) query, you only need to give birth-data or client id. Also, you can search client data giving CURP values. Both types of methods return same data. * it means Unique id of population register. It´s an id for Mexican people, there only can be one for each person.
Description
Response time
The service is responding in 1-5s per request in production. Next, we expose the web services given by CURPAPI.
Validation ByData
This method makes the consult of CURP when you give biographic data.
Endpoint of byData
~/api/Business/Curp/bydata
Parameters
Tag |
Type |
Required |
Maximum lenght |
Description |
nombres |
string |
yes |
50 |
Names. |
apellidoPaterno |
string |
yes |
50 |
First surname . |
apellidoMaterno |
string |
yes |
50 |
Second surname. |
sexo |
string |
yes |
1 |
Gender: “H” For man and “M” for woman. |
fechaNacimiento |
string |
yes |
10 |
Birthdate: dd/mm/yyyy. Example August 2 of 1990 02/08/1990. |
entidadNacimiento |
string |
yes |
2 |
Birth entity: Read the table 1. |
Tag |
Type |
Required |
Description |
apikey |
string |
yes |
Customer key. |
{
"nombres": "string",
"apellidoPaterno": "string",
"apellidoMaterno": "string",
"sexo": "string",
"fechaNacimiento": "string",
"entidadNacimiento": "string"
}
Response:
Correct
Name |
Type |
Description |
codigoRespuesta |
string |
Answer code |
descripcionRespuesta |
string |
Answer description |
referencia |
string |
Operation reference |
statusOper |
string |
Operation status |
Message |
string |
Status description |
tipoError |
string |
Type error |
codigoError |
string |
Error code |
sessionID |
string |
Id’s session |
resultCURPS |
|
|
CURP |
string |
Clave Única de Registro de Población |
apellidoPaterno |
string |
First surname |
apellidoMaterno |
string |
Second surname |
Nombres |
string |
Names |
Sexo |
string |
Gender |
fechNac |
string |
Birthdate |
Nacionalidad |
string |
Nationality |
docProbatorio |
string |
Type of the probatory document |
anioReg |
string |
Year of register |
Foja |
string |
Sheet number |
tomo |
string |
Tome |
libro |
string |
Book |
numActa |
string |
Act number |
CRIP |
string |
Register code and Personal id |
numEntidadReg |
string |
Number of register place |
cveMunicipioReg |
string |
Code of register place |
NumRegExtranjeros |
string |
Number of National registry of Foreigners |
FolioCarta |
string |
Folio carta |
cveEntidadNac |
string |
State of birth code |
cveEntidadEmisora |
string |
Issuing state code |
statusCurp |
string |
CURP Status |
Validation ByCURP
This method allows you to consult client data when you give the CURP.
Endpoint ByCurp
~/api/Business/Curp/byCURP
Parameters ByCurp
Tag |
Type |
Required |
Description |
CURP |
string |
yes |
Clave Única de Registro de Población |
Tag |
Type |
Required |
Description |
apikey |
string |
yes |
Customer key. |
{
"curp": "string"
}
Response: ByCurp
Correct ByCurp
Name |
Type |
Description |
codigoRespuesta |
string |
Answer code |
descripcionRespuesta |
string |
Answer description |
referencia |
string |
Operation reference |
statusOper |
string |
Operation status |
Message |
string |
Status description |
tipoError |
string |
Type error |
codigoError |
string |
Error code |
sessionID |
string |
Id’s session |
resultCURPS |
|
|
CURP |
string |
Clave Única de Registro de Población |
apellidoPaterno |
string |
First Surname |
apellidoMaterno |
string |
Second Surname |
Nombres |
string |
Names |
Sexo |
string |
Gender |
fechNac |
string |
Birthdate |
Nacionalidad |
string |
Nationality |
docProbatorio |
string |
Type of the probatory document |
Foja |
string |
Sheet number |
tomo |
string |
Tome |
libro |
string |
Book |
numActa |
string |
Act number |
CRIP |
string |
Register code and Personal id |
numEntidadReg |
string |
Number of register place |
cveMunicipioReg |
string |
Code of register place NumRegExtranjeros |
FolioCarta |
string |
Folio carta |
cveEntidadNac |
string |
State of birth code |
cveEntidadEmisora |
string |
Issuing state code |
statusCurp |
string |
CURP Status |
JSON file
{
"codigoRespuesta": "string",
"descripcionRespuesta": "string",
"referencia": "string",
"respuestaRENAPO": {
"curpStatus": {
"statusOper": "string",
"message": "string",
"tipoError": "string",
"codigoError": "string",
"sessionID": "string",
"resultCURPS":{
"curp": "string",
"apellidoPaterno": "string",
"apellidoMaterno": "string",
"nombres": "string",
"sexo": "string",
"fechNac": "string",
"nacionalidad": "string",
"docProbatorio": "string",
"anioReg": "string",
"foja": "string",
"tomo": "string",
"libro": "string",
"numActa": "string",
"crip": "string",
"numEntidadReg": "string",
"cveMunicipioReg": "string",
"numRegExtranjeros": "string",
"folioCarta": "string",
"cveEntidadNac": "string",
"cveEntidadEmisora": "string",
"statusCurp": "string"
}
}
}
Error structure
Name |
Type |
Description |
code |
string |
Error code |
message |
string |
Error message |
Error model
{
"error": "string", // Error code
"message": "string" // Error message
}
Table 1. Federal entities
State |
Code |
Aguascalientes |
AS |
Baja California |
BC |
Baja California Sur |
BS |
Campeche |
CC |
Chiapas |
CS |
Chihuahua |
CH |
Coahuila |
CL |
Colima |
CM |
Distrito Federal |
DF |
Durango |
DG |
Guerrero |
GR |
Hidalgo |
HG |
Jalisco |
JC |
México |
MC |
Michoacán |
MN |
Morelos |
MS |
Nayarit |
NT |
Nuevo León |
NL |
Oaxaca |
OC |
Puebla |
PL |
Querétaro |
QT |
Quintana Roo |
QR |
San Luis Potosí |
SP |
Sinaloa |
SL |
Sonora |
SR |
Tabasco |
TC |
Tlaxcala |
TL |
Tamaulipas |
TS |
Guanajuato |
GT |
Veracruz |
VZ |
Yucatán |
YN |
Zacatecas |
ZS |
Jalisco |
JC |
México |
MC |
Michoacán |
MN |
Morelos |
MS |
Nayarit |
NT |
Nuevo León |
NL |
Table 2. Service messages
Atribute |
Description |
Operation status |
Indicates if the operation was successful or not. The values will be EXITOSO o NO EXITOSO. In case of error it will always be NO EXITOSO. |
Error type |
Indicates the type of error that can be: |
|
01 for business. Errors that have to do with business rules (business layer). These types of errors are returned by the eCURP system. |
|
02 EJB invocation errors. This type of errors are returned when the call to some EJB corresponds to the eCURP system returns an error. |
|
03 for Errors in the input parameters. These types of errors are generated when the input parameters of the web service do not comply with the required format, data type or field. |
|
04 for LDAP connection errors. This type of error will be generated when the connection to the LDAP server cannot be established. |
|
05 For Output Parameter Errors. This type of errors will be generated when the output data processing cannot be carried out. |
Error code |
Indicates the error code that corresponds to a subtype of error more detailed. |
Description of the movement. |
Detailed description of the operation. |
Service errors
Error type |
Error code |
Description |
Cause of error |
01 |
01 |
"Los cambios no han sido aplicados por igualdad con una versión anterior, revise sus cambios." |
Occurs when a previous version of the curp is not updated for equality with the changes of a current version. |
01 |
02 |
"No se han modificado los datos." |
It is presented when the CURP data to be modified have not changed in the CURP national database. |
01 |
03 |
"Alguno(s) de los datos seleccionados para actualizar no han sido modificados." |
Occurs when some of the data selected have not changed in the CURP national database. |
01 |
04 |
"CURP previamente dada de baja." |
Occurs when the CURP to be deleted was deleted previously. |
01 |
05 |
"No se pudo dar de baja. La CURP tiene una nueva versión." |
When the data to be deleted have changed in the database and not corresponds to the data to be deleted. |
01 |
06 |
"La CURP no se encuentra en la base de datos." |
When the CURP requested doesn't exists in the national database. |
01 |
07 |
"No se pudo realizar la baja, CURP no encontrada en la base de datos." |
When the CURP to be deleted doesn't exists in the national database. |
01 |
08 |
"El documento probatorio está mal formado". |
Occurs when the data type of the supporting document aren't correct and neccesary to execute some transaction. |
01 |
09 |
"La llave de la CURP no está bien formada." |
Occurs when the CURP format is incorrect. |
01 |
10 |
"No se pudo desplegar la CURP." |
Occurs when there was a problem when removing the CURP from the database. |
01 |
11 |
"No se puede realizar el cambio". |
It occurs when the specified change could not be made in the database of some of the data that defines the CURP. |
01 |
12 |
"No se encontró la CURP especificada." |
It is presented when a query is made to verify that the CURP to modify exists in the Database. |
01 |
13 |
"Se detectó un error al procesar su requerimiento, por favor inténtelo de nuevo." |
It occurs when an error occurs during the process of the transaction to modify the CURP. |
01 |
14 |
"No se pudo realizar la consulta, inténtelo nuevamente." |
It is presented when an error occurred during the query to the database. |
01 |
15 |
"No se pudo desplegar los factores." |
It occurs when the CURP has risk factors and these cannot be obtained from the Database and presented to the user. |
01 |
16 |
"No se pudo realizar el cambio especial, inténtelo nuevamente." |
It occurs when an error occurs in the special change in CURP. |
01 |
17 |
"No se pudo realizar el registro, inténtelo nuevamente." |
It occurs when the system could not register the CURP in the database. |
01 |
18 |
"Usuario no válido." |
It occurs when the system user is not valid to execute the transaction. |
01 |
19 |
"CURP ya existente en la base de datos." |
It occurs when a valid user tries to register a CURP that already exists in the database. |
02 |
01 |
Error al invocar al sistema eCURP. |
javax.ejb.CreateException. Error in the creation of an EJB object. |
02 |
02 |
Error invoking the eCURP system. |
javax.ejb.NamingException. This is the superclass of all exceptions returned by operations with the context and dirContext interfaces. |
02 |
03 |
Error invoking the eCURP system. |
java.rmi.RemoteException |
03 |
01 |
[field name] It do not have the specified format. |
This exception is generated when the field don't have the correct format. |
03 |
02 |
[field name] Is a required data. |
This exception is generated when the field is required for the operation indicated for the client. |
04 |
01 |
LDAP connection couldn't be set successfully. |
This exception is generated when it is required to connect to the LDAP server in order to carry out the validation of the user who requested the execution of an operation with eCURP through a web service. |
05 |
01 |
Error processing XML output parameters. |
This exception is generated when processing the curp object or objects obtained from the EJB, in order to pass them to XML. |
Service error messages
Code |
Message |
FullMessage |
CURP000 |
|
El servicio de RENAPO no se encuentra disponible. |
CURP001 |
|
No data were found to consult. |
CURP003 |
Error on request information |
Error processing your request, please try again. |
CURP004 |
Apikey invalid |
Access Denied - Header Apikey not Found. |
CURP005 |
The Name is invalid. |
Message displayed when name value is not entered or invalid characters are entered as numbers. |
CURP006 |
The lastname is invalid. |
Message displayed when the value of the paternal last name is not entered or when invalid characters are entered as numbers. |
CURP007 |
The secondLastname is invalid. |
Message displayed when the value of the mother's last name is not entered or when invalid characters are entered as numbers. |
CURP008 |
The sex field is invalid. |
Message displayed when gender value null or incorrect. |
CURP009 |
The birthDate field is invalid. |
Message displayed when the value of the date of birth is null or when invalid characters such as $ # $! #% are entered. |
CURP010 |
The state field is invalid. |
Message displayed when the correct birth status value is not entered or when invalid characters such as # $% &% $ & are entered. |
CURP011 |
The CURP field is invalid. |
Message displayed when the value of the CURP is null or when invalid format are entered. |
CURP018 |
|
Something was wrong, We're working on the failure. Please try again. |
CURP019 |
|
Empty data response from RENAPO, please verify data request. |
Data returned by RENAPO
CURP status |
Descripción |
Description |
Response to clients |
Registration status |
AN |
Alta Normal |
Normal registration |
AN |
Active |
AH |
Alta con Homonimia |
Registration with homonymy |
AH |
Active |
RCC |
Registro de cambio afectando a CURP |
Change affecting CURP. |
RCC |
Active |
RCN |
Registro de cambio no afectando a CURP |
Change not affecting CURP |
RCN |
Active |
BAP |
Baja por documento apócrifo |
Low due to apocryphal document. |
BAP |
Inactive |
BSU |
Baja sin uso |
Low curp without use |
BSU |
Inactive |
BD |
Baja por defunción |
Low curp due to death |
BD |
Inactive |
BDM |
Baja administrativa |
Low, due to administrative process |
BDM |
Inactive |
BDP |
Baja por adopción |
Low, due to adoption |
BDP |
Inactive |
BJD |
Baja Judicial |
Low for judicial reasons |
BJD |
Inactive |
Field |
Campo |
Observations of the evidentiary document |
|
|
1. Birth certificate. |
|
|
3. Immigration document. |
|
|
4. Naturalization letter. |
|
|
7. Certificate of Mexican nationality. |
|
|
8. Processing before SEGOB. |
Register year |
Año de registro |
If the supporting document is 1, 4 and 7. |
Sheet |
Foja |
If the supporting document is 1. |
Tome |
Tomo |
If the supporting document is 1. |
Book |
Libro |
If the supporting document is 1. |
Act number |
Número de acta |
If the supporting document is 1. |
CRIP |
CRIP |
If the supporting document is 1 and 8. |
Register entity |
Entidad de Registro |
If the supporting document is 1. |
City of registration |
Municipio de Registro |
If the supporting document is 1. |
Foreigner registration number |
Número de Registro de Extranjeros |
If the supporting document is 3. |
Folio of Naturalization Letter |
Folio de Carta de Naturalización |
If the supporting document is 4. |
Folio of Certificate of Mexican Nationality |
Folio de Certificado de Nacionalidad Mexicana |
If the supporting document is 7. |