---
title: "INE (Institutio Nacional Electoral) database verification guide | Veriff.com"
slug: "ine-institutio-nacional-electoral-database-verification-guide"
description: "Learn how to verify user identities in Mexico using the INE registry and Veriff's API for secure identity verification processes."
tags: ["Identity Verification", "INE Registry", "Mexican registries"]
updated: 2025-11-12T16:29:17Z
published: 2025-11-12T16:29:17Z
---

> ## 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 (Institutio Nacional Electoral) database verification guide

> [!WARNING]
> This is a legacy solution. If you are interested in Veriff’s INE Database Verification solution, please refer to [INE Database Verification](/v1/docs/ine-database-verification) documentation

Businesses operating in Mexico are obliged to verify their users’ identity using database verification checks as part of the identity verification process.

This guide gives an overview of the **verification check of the Mexican Instituto Nacional Electoral (INE)**. This is the organization that issues the voter ID cards and maintains the voters registry.

The solution is available via API, web flow, and native SDKs.

> [!NOTE]
> Contact your **solutions engineer** for info and configuration.

---

## Prerequisites

- You have a regular identity verification (IDV) integration set up with Veriff
- The **solution/check is configured** for that integration **by your Solutions Engineer**
- A verification session generated for the end-user
- You have configured the [INE registry validation webhook](/v1/docs/ine-webhook) to get responses from Veriff (see the [Webhooks](/v1/docs/webhooks-guide) section for info)

---

## Flow overview

The flow is a bit different, depending on the method you are using to verify your end-users with Veriff.

### Use over SDK

1. Generate a verification session using the `API keys` and the `baseURL` of the integration used for this solution (see the <meta charset="utf-8">[API Documentation and API Reference](https://devdocs.veriff.com/apidocs)[↗] how to find these)
2. Capture end-user’s document and selfie images with Veriff’s SDKs
  1. Send the end-user through the verification flow to capture the images (using the preferred [Veriff SDK](/v1/docs/sdk-guide))
  2. You need the session URL generated in step 1 to use the SDKs (found in response payload as `verification.url`)
3. Session will be submitted automatically once the end-user takes and submits necessary images
4. Receive the results from Veriff via [INE registry validation webhook](/v1/docs/ine-webhook)

### Use over API

1. Generate a verification session using the a `API keys` and the `baseURL` of the integration used for this solution integration (see the <meta charset="utf-8">[API Documentation and API Reference](https://devdocs.veriff.com/apidocs)[↗] how to find these)
  1. Veriff strongly recommends you create and send the `endUserId` or `vendorData`
  2. Veriff strongly recommends you collect and send additional session/device data via <meta charset="utf-8">[POST sessions/{sessionid}/collected-data](https://veriff-dev-documentation.document360.io/apidocs/v1sessionsidcollected-data-1)[↗] for improved fraud detection
2. Use your image-capturing method, or prepare previously collected end-user selfie and document images
3. Upload the end-user's media via <meta charset="utf-8">[POST /sessions/{sessionId}/media](https://veriff-dev-documentation.document360.io/apidocs/v1sessionsidmedia-3)[↗] call
  1. Specify the `image.context` as appropriate for the image (see [Context types (image, video)](/v1/docs/context-types-image-video-1) for more info about image context types)
4. Patch session status to `submitted` status using <meta charset="utf-8">[PATCH /sessions/{sessionId}](https://veriff-dev-documentation.document360.io/apidocs/v1sessionsid-2)[↗] call
5. Check the decision data and/or session related info from the [INE registry validation webhook](/v1/docs/ine-webhook) and/or query the data from the <meta charset="utf-8">[GET /sessions/{sessionId}/decision/ine-registry](https://devdocs.veriff.com/apidocs/v1sessionsiddecisionine-registry-1)[↗] endpoint

---

## Find decision and/or session related info

You can get the data from three sources:

- Receive the INE registry validation webhook
- Query the results via GET sessions/{sessionId}/decision/ine-registry
- View the session in Veriff Customer Portal

### Webhook payload

Check the INE registry validation**webhook payload**, see [INE webhook](/v1/docs/ine-webhook) documentation for detailed info.

### API call

You can use the <meta charset="utf-8">[GET /sessions/{sessionId}/decision/ine-registry](https://devdocs.veriff.com/apidocs/v1sessionsiddecisionine-registry-1)[↗] endpoint, see the documentation for more info.

> [!NOTE]
> Make sure to add the mandatory query parameter version=1.0.0 to the API URL: `GET sessions/{sessionId}/decision/ine-registry?version=1.0.0`

> [!NOTE]
> Note: in the respective jurisdiction, an `active = true` credential can be used for identification and related activities; an `active = false` credential could still be in the database, but it cannot be used for identification and related activities.

#### Sample response of a inactive INE identification number

```json
{
    "active": false,
    "documentState": "No se obtuvieron datos de la consulta con los parámetros seleccionados"
}
```

#### Sample response of a active INE identification number

```json
{
    "active": true,
    "documentState": "...."
}
```

### Veriff Customer Portal

You can find the verification session related info, including the decision, in the Veriff Customer Portal, under the **Webhooks** tab.

<meta charset="utf-8">

→ *See*[*Review verification in Veriff Customer Portal*](/v1/docs/how-to-review-verification-in-veriff-customer-portal)*about how to view the session info in the Veriff Customer portal*

---

## Status and reason codes

For an `approved` session, see the `verification.code` and `verification.status` parameters.

If the session was `declined` or `resubmission_requested`, you can find additional information by checking the `verification.status`, `verification.code`, `verification.reason` and `verification.reasonCode` data objects.

For more info about the codes you are seeing, refer to:

- [Verification session status codes (table)](/v1/docs/verification-session-status-codes-table)
- [Verification session decision codes (table)](/v1/docs/verification-session-decision-codes-table)
- [Granular reason codes (table)](/v1/docs/granular-reason-codes)

---

## Changelog

| Date | Description |
| --- | --- |
| Nov 12, 2025 | Legacy solution label added |
| Mar 12, 2025 | Documentation published |

An environment created according to customer's needs to carry out, manage and observe verifications.

You can find the list of your integrations in **Veriff Customer Portal**> **All** **Integrations**page (you need to be logged in).

A session during which the end-user is verified. It starts when a session is created, it can contain several attempts (i.e. steps of uploading media, sending additional data etc.) and it ends when a conclusive decision (“approved”, “declined”, “expired”/”abandoned”) is granted.

Each verification session receives an unique ID, aka the **session ID**, which can be added to the API URL when making API requests.

**User of Veriff customer's solution**, the person who goes through the verification flow (aka "end-user flow").

This where the end-user is directed to go through the verification flow, and it is **unique for each verification session**.

It is a combination of the `base URL` and the `sessionToken`, created as soon as a verification session is created. You can find its value in the response payload of your POST /sessions call, as `verification.url`.

The data that you send when you make an API request, or that you receive when you get a response.

Veriff customer back-office, a dashboard where you can see your end-users' verification data.

Depending on your setup, you may be required to access the environment via station.veriff.com or hub.veriff.com. Always **check your sign-up email** and make sure that you **log in via correct address**.

## Related

- [Getting Started](/getting-started.md)
- [Integrations](/how-to-create-an-integration.md)
- [Create verification session](/how-to-generate-sessions-manually.md)
- [INE webhook](/ine-webhook.md)
- [Codes](/codes.md)
