--- title: "INE+CURP webhook | Veriff.com" slug: "inecurp-webhook" description: "Use the INE+CURP webhook to receive data from combined Mexican registry verification." updated: 2025-11-14T11:26:12Z published: 2025-11-14T11:26:12Z canonical: "devdocs.veriff.com/inecurp-webhook" --- > ## Documentation Index > Fetch the complete documentation index at: https://devdocs.veriff.com/llms.txt > Use this file to discover all available pages before exploring further. # INE+CURP webhook > [!WARNING] > This webhook is part of the [**legacy** INE and CURP verification](/v1/docs/combined-inecurp-database-verification-guide) solution. If you are interested in Mexican database verification solutions, see the documentation of the [INE Database Verification](/v1/docs/ine-database-verification) and [CURP Database Verification](/v1/docs/curp-database-verification) solutions. The INE+CURP webhook passes data after the combined checks in the [**Mexican Electoral Registry (Instituto National Electoral) and the Population Registry (Clave Única de Registro de Población)**](/v1/docs/combined-inecurp-database-verification-guide) have been completed. The payload is sent to `Webhook INE CURP registry URL`, which you need to set up in the Veriff Customer Portal. → *See Webhooks Guide > [Set up webhooks](https://veriff-dev-documentation.document360.io/docs/webhooks-guide#set-up-webhooks) sub-section for detailed overview of the setup process* --- ## When is INE + CURP webhook sent? The INE + CURP webhook is sent after the verification session is done and after the registry checks have been completed. --- ## Prerequisites 1. Make sure you **have access to the Veriff Customer Portal** 1. If you do not, see the Getting Started → [Sign up](https://devdocs.veriff.com/docs/signing-up) and [Log in](https://devdocs.veriff.com/docs/logging-in) articles 2. Set up webhook URL(s) **on your side** and have them at hand 1. Make sure they **match** the [Webhook URL](https://devdocs.veriff.com/docs/webhooks-guide#webhook-url-requirements) requirements 2. Make sure your system is **able to handle** [Webhooks receipt, delivery and resending](https://devdocs.veriff.com/docs/webhooks-guide#webhook-delivery-receipt-and-resending) requirements 3. Check the [Webhooks headers and payload](https://devdocs.veriff.com/docs/webhooks-guide#webhooks-headers-and-payload) section for info 3. Secure your communication, check the [HMAC Authentication and Endpoint Security](https://devdocs.veriff.com/docs/hmac-authentication-and-endpoint-security) article 4. Make sure your system is **able to handle** the [Backwards compatible changes](https://devdocs.veriff.com/docs/backwards-compatible-changes) 5.Proceed to [/v1/docs/inecurp-webhook#inecurp-webhook-setup](/v1/docs/inecurp-webhook#inecurp-webhook-setup) --- ## INE+CURP webhook setup 1. Log in to the **Veriff Customer Portal** 2. Navigate to the **Integrations** page via the top menu and open the integration used for the registries check 3. On the integration's page, select the **Settings** tab 4. Under the title **Integration settings** you see a list of webhooks 5. Fill in the `Webhook INE CURP registry URL` → *See Webhooks Guide > [Set up webhooks](https://veriff-dev-documentation.document360.io/docs/webhooks-guide#set-up-webhooks) sub-section for detailed overview of the setup process* --- ## Additional notes > [!NOTE] > The `data.details.ine` field returns either `ifeIdentifier` or `ineIdentifier`. **Both are not present** at the same time. `ifeIdentifeir` and `ineIdentifier` both represent person's identification number. `ife` is a legacy name, it was changed to `ine`. --- ## Sample request ```json {  "eventType": "combined-ine-curp-registry",  "sessionId": "f04bdb47-d3be-4b28-b028-a652feb060b5",  "vendorData":  "1234567812345678",  "endUserId": "a1b2c35d-e8f7-6d5e-3cd2-a1b2c35db3d4",  "attemptId": "e30122d1-740b-4764-853f-470374a7abf4",  "version": "1.0.0",  "data": {            "status": "found",      "code": 200,      "details": {          "ine": {              "active": true,              "status": "La credencial esta vigente",              "comments": [                  "CIC 000000000\r\nClave de elector ...",                  "Fecha de actualización de la información: ...",                  "Fecha de consulta: 11 de agosto del 2023",                  "Tus datos se encuentran en el Padrón Electoral,..."              ],              "information": "CIC 000000000\r\nClave de elector š... ",              "ifeIdentifier": "",              "ineIdentifier": "000000000"          },          "curp": {              "curp": "ABCD000000HVZRGS00",              "names": "JUAN",              "gender": "HOMBRE",              "regionCode": "VZ",              "statusCurp": "RCN",              "descriptionStatusCurp": "Registro de cambio no afectando a curp",              "birthRegion": "Veracruz",              "dateOfBirth": "06/04/1991",              "nationality": "MEX",              "firstSurname": "JUAREZ",              "secondSurname": "PEREZ",              "documentEvidence": 1,              "docEvidenceData": {                  "book": "",                  "sheet": "",                  "volume": "",                  "actNumber": "00123",                  "registryCity": "",                  "regionRegistry": "30",                  "registrationYear": "1991",                  "registryCityCode": "125",                  "registryRegionCode": "VZ"              },          }      }   } } ``` ## Full forms of the CURP data status acronyms The field `statusCurp` returns acronyms, which mean the following: - **For active CURP**: AN (Alta Normal), AH (Alta con Homonimia), CRA CU (CURP Reactivada), RCN (Registro de Cambio no Afectando a CURP), RCC (Registro de Cambio Afectando a CURP) - **For inactive CURP**: BD (Baja por Defuncion), BDA (Baja por Duplicidad), BCC (Baja por Cambio en CURP), BCN (Baja no Afectando a CURP) --- ## Request properties explained *Required field - `eventType`: `string`* CURP registry check name - `sessionId`: `string`* UUID for the session where this check was executed - `vendorData`: `string | null`* The unique identifier that you created for your end-user. `null` if not specified - `endUserId`: `string | null`* The `UUID` that you created for your end-user. `null` if not specified - `attemptId`: `string`* UUID v4 which identifies session attempt - `version`: `string`* Version number of the check - `data`: `object | null`* Array of data objects - `status`: `string`* Status of the data, one of `found`, `not found` - `code`: `number`* An integer number of the HTTP status code. See the [Common HTTP status codes table](/v1/docs/common-http-status-codes) for more info - `details`: `object`* Details connected to the specific check against the registry - **`ine`: `object`* Details about the INE/IFE identification number** - `active`: `boolean` Indication of if the INE identification number is active (`true`) or inactive (`false`) - `status`: `string` Explanation of the `data.status` value - `information`: `string` Extra information about the INE identification number - `comments`: `array` Comments regarding the status of the identification - `ifeIdentifier`: `string | null` INE identification number. When this is returned, the `ineIdentifier` is not present. - `ineIdentifier`: `string | null` IFE identification number. When this is returned, the `ifeIdentifier` is not present. - **`curp`: `object`* Details about the CURP identification number** - `curp`: `string` CURP identification number - `names`: `string` Name - `gender`: `string` Gender, one of `HOMBRE`, `MUJER` - `regionCode`: `string` Region code - `statusCurp`: `string | null` Curp data status acronym, one of `AN`, `AH`, `CRA CU`, `RCN`, `RCC`, `BD`,` BDA`, `BCC`, `BCN` - `descriptionStatusCurp`: `string` Explanation of the `details.curp.statusCurp` value - `birthRegion`: `string` Birth region - `dateOfBirth`: `string` Date of birth, represented as DD/MM/YYYY, - `nationality`: `string` Nationality - `firstSurname`: `string` First surname - `secondSurname`: `string` Last surname - `documentEvidence`: `number` Document evidence - `docEvidenceData`: `object` Details about the document evidence data - `book`: `string` Book - `sheet`: `string` Sheet - `volume`: `string` Volume - `actNumber`: `string` Act number - `registryCity`: `string` Registry city - `regionRegistry`: `string` Region registry - `registrationYear`: `string` Registration year - `registryCityCode`: `string` Registry city code - `registryRegionCode`: `string` Registry region code --- ## Changelog | Date | Description | | --- | --- | | Nov 14, 2025 | Legacy note added | | Mar 12, 2025 | Documentation published | ## Related - [Webhooks Guide](/webhooks-guide.md) - [Combined INE+CURP database verification guide](/combined-inecurp-database-verification-guide.md)