> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Validación con bases de datos: coincidencia 1x1 y 2x2

> Didit deriva resultados 1x1 y 2x2 por servicio: umbrales de nombre difuso, reglas partialMatchAction y lógica en cascada. Desde $0.05/consulta.

Para cada país, la API de [Validación de base de datos](https://docs.didit.me/es/core-technology/database-validation/overview.md) de Didit contrasta los datos de identidad con el registro civil, la autoridad tributaria o el padrón electoral oficial correspondiente: RENAPER (Argentina), Receita Federal (Brasil), Tribunal Electoral (Panamá), RENAPO (México), Junta Central Electoral (República Dominicana), Registraduría Nacional (Colombia) y otros. Cada consulta se factura por llamada exitosa, desde **\$0.05/consulta** y sin mínimos mensuales.

Los resultados se obtienen a partir de los resultados de cada servicio: **1×1** cuando un único registro devuelve una coincidencia total y **2×2** cuando dos registros independientes corroboran los datos. Esta página explica cómo se calculan esos resultados, qué umbrales de coincidencia aproximada se aplican a los nombres y qué lógica de decisión rige `partialMatchAction` y `noMatchAction` en las reglas de tu flujo de verificación (workflow).

## Coincidencia 1×1

Este método compara un único dato de entrada (normalmente un documento nacional de identidad o un identificador similar) con nuestra base de datos. Si se encuentra una coincidencia directa, confirmamos la identidad. Sin embargo, si el primer intento falla, podemos consultar fuentes de datos fiables alternativas en una secuencia en cascada. Es decir, seguimos validando con proveedores sucesivos hasta obtener una coincidencia o agotar todas las opciones. Es importante destacar que una coincidencia parcial no detiene el proceso: solo nos detenemos cuando encontramos una coincidencia total y concluyente o determinamos que no existe ninguna coincidencia.

La lógica de coincidencia 1x1 exige que los datos personales del usuario coincidan con una sola fuente para obtener una Coincidencia total de su identidad.\*

| Resultado de la verificación | Categoría de nombre | Categoría de identificación | Categoría de fecha de nacimiento |
| :- | :- | :- | :- |
| Coincidencia total | Coincidencia total | Coincidencia total | Cualquier valor |
| Coincidencia parcial | Coincidencia parcial | Coincidencia total | Cualquier valor |
| Sin coincidencia | Todas las demás combinaciones | | |

*\*Se consultan las fuentes aplicables del país hasta obtener una Coincidencia total de la identidad. Si no se encuentra una Coincidencia total, el sistema consulta repetidamente esas fuentes en busca de una Coincidencia parcial de la identidad del usuario.*

> [!NOTE]
>
> La tabla 1×1 anterior y la tabla 2×2 siguiente describen el modelo general, no una garantía aplicable a todos los servicios. Los campos determinantes varían según el servicio y según las entradas opcionales que envíes: un registro solo puede comparar los campos que tiene y los campos que le proporcionas, y el resultado de un servicio lo deciden los campos que realmente compara. No todos los servicios comparan el número de identificación, y algunos solo lo comparan cuando lo envías. Por ejemplo, [España - Verificación de DNI/NIE](https://docs.didit.me/es/api-reference/database-validation/spain/dni.md) (`esp_dni`) requiere nombre, fecha de nacimiento y dirección, y admite `national_id` como entrada opcional. Siempre compara el nombre, la fecha de nacimiento y la dirección, y además compara el número de identificación cuando envías `national_id`.
>
> Un campo obligatorio no es necesariamente determinante, y un campo opcional puede serlo. Un campo obligatorio debe enviarse para que se acepte la solicitud, y un campo que aparece en `source_data` es un dato que devolvió el registro. Ninguno de los dos indica qué campos decidieron el resultado. Los ejemplos de respuesta de la página de cada servicio ilustran una respuesta posible, por lo que las claves de su objeto `validation` no son una lista completa de los campos que compara ese servicio. La página de referencia de la API de cada servicio, que encontrarás en [Países y servicios compatibles](https://docs.didit.me/es/core-technology/database-validation/database-validation-supported-countries.md), indica sus entradas obligatorias y opcionales en **Entradas**.

## Coincidencia 2×2

Este método exige que dos datos de entrada (p. ej., nombre + fecha de nacimiento, o identificación nacional + número de teléfono) coincidan con los dos campos correspondientes de nuestra base de datos. Igual que con 1x1, seguimos un enfoque en cascada y consultamos varias fuentes de datos de forma secuencial. Avanzamos paso a paso hasta encontrar una coincidencia completa en ambos campos. Las coincidencias parciales o de un solo campo no bastan: el proceso de validación continúa hasta lograr una coincidencia definitiva en los 2 campos o hasta haber consultado todas las fuentes.

La lógica de coincidencia 2x2 requiere contrastar los datos personales de un usuario con dos fuentes para obtener una Coincidencia total de su identidad.\*

| Resultado de la verificación | 1.ª fuente de datos | 2.ª fuente de datos |
| :- | :- | :- |
| Coincidencia total | Nombre Coincidencia total + Identificación nacional Coincidencia total | Nombre Coincidencia total + Identificación nacional Coincidencia total |
| Coincidencia total | Nombre Coincidencia total + Identificación nacional Coincidencia total | Nombre Coincidencia parcial + Identificación nacional Coincidencia total |
| Coincidencia total | Nombre Coincidencia total + Identificación nacional Coincidencia total | Nombre Coincidencia total + Fecha de nacimiento Coincidencia total |
| Coincidencia total | Nombre Coincidencia total + Identificación nacional con cualquier valor | Nombre Coincidencia total + Identificación nacional con cualquier valor |
| Coincidencia parcial | Nombre Coincidencia total + Identificación nacional Coincidencia total | |
| Coincidencia parcial | Nombre Coincidencia parcial + Identificación nacional Coincidencia total | |
| Coincidencia parcial | Nombre Coincidencia total + Fecha de nacimiento Coincidencia total | |
| Coincidencia parcial | Nombre Coincidencia total + Número de identificación nacional con cualquier valor | |
| Sin coincidencia | Todas las demás combinaciones | |

*\*Se consultan las fuentes aplicables del país hasta obtener una Coincidencia total con la identidad. Si no se encuentra una Coincidencia total, el sistema vuelve a consultar esas fuentes de forma reiterada en busca de una Coincidencia parcial con la identidad del usuario.*

***

## Coincidencia por categoría y atributo de datos

A continuación se describen los escenarios que dan como resultado una Coincidencia total en las categorías de datos Nombre, Fecha de nacimiento e ID. Una Coincidencia parcial solo es posible en la categoría Nombre.

### Coincidencia en la categoría Nombre

Se considera una **Coincidencia total** en la categoría Nombre cuando se cumple cualquiera de los siguientes escenarios de coincidencia de atributos de datos:

* Concatenación del nombre completo: Coincidencia total (nombre + apellido combinados, con un umbral de similitud del 85%)
* Nombre con Coincidencia total + apellido con Coincidencia total
* Nombre con Coincidencia total + apellido materno con Coincidencia total
* Nombre con Coincidencia total + apellido paterno con Coincidencia total

Se considera una **Coincidencia parcial** en la categoría Nombre cuando se cumple cualquiera de los siguientes escenarios de coincidencia de atributos de datos:

* Nombre con Coincidencia total
* Apellido con Coincidencia total
* Apellido paterno con Coincidencia total
* Apellido materno con Coincidencia total
* Apellido materno con Coincidencia total + apellido paterno con Coincidencia total

### Coincidencia en la categoría Fecha de nacimiento

Solo se considera una **Coincidencia total** en la categoría Fecha de nacimiento cuando se cumple el siguiente escenario de coincidencia de atributos de datos:

* Año de nacimiento con Coincidencia total + mes de nacimiento con Coincidencia total + día de nacimiento con Coincidencia total

No es posible una Coincidencia parcial en la categoría Fecha de nacimiento.

### Coincidencia en la categoría ID

Solo se considera una **Coincidencia total** en la categoría ID cuando se cumple el siguiente escenario de coincidencia de atributos de datos:

* Número de identificación con Coincidencia total

No es posible una Coincidencia parcial en la categoría ID.

La categoría ID solo cuenta cuando el servicio compara el número de identificación. Algunos servicios nunca lo comparan y otros solo lo comparan cuando lo envías como dato de entrada.

***

## Coincidencia aproximada para atributos de datos

Estos son los criterios de coincidencia aproximada (fuzzy matching) para los distintos atributos de datos frente a las fuentes de cada país.

* **Atributos de datos de nombre**
  Para que un atributo de datos de la categoría Nombre genere una Coincidencia total, su similitud de caracteres según Levenshtein con los registros de las fuentes de datos debe alcanzar el 70%. Para la concatenación del nombre completo (nombre + apellido combinados), se usa un umbral más alto, del 85% de similitud. Por ejemplo, si el atributo Nombre introducido es 'Christophel' y el nombre real es 'Christopher', se devuelve una Coincidencia total según la lógica de coincidencia aproximada. Este sistema se aplica a los atributos de datos *Nombre*, *Apellido*, *Apellido paterno* y *Apellido materno*.

* **Atributos de datos de fecha de nacimiento e identificación**
  No aplicamos ningún tipo de coincidencia aproximada a los atributos de datos de las categorías Fecha de nacimiento o Identificación. Estos campos requieren una coincidencia exacta.

### Ejemplos

A continuación se muestran ejemplos de valores introducidos para atributos de datos que cumplirían los criterios de la lógica de coincidencia aproximada y generarían una Coincidencia total.

| Atributo de datos | Valor introducido | Registro de la fuente de datos | Resultado |
| :- | :- | :- | :- |
| first\_name | Christopher | Christopher | Coincidencia total |
| first\_name | Christophel | Christopher | Coincidencia total |
| first\_name | Chris | Christopher | Sin coincidencia |
| last\_name | Smith | Smith | Coincidencia total |
| last\_name | Smyth | Smith | Coincidencia total |
| last\_name | Smitty | Smith | Sin coincidencia |

## Consulta también

* [Descripción general de la Validación de base de datos](https://docs.didit.me/es/core-technology/database-validation/overview.md): cómo funciona la API de principio a fin, registros compatibles y precios.
* [Códigos de resultado](https://docs.didit.me/es/core-technology/database-validation/database-validation-outcome-codes.md): lista completa de los códigos de respuesta de los proveedores (fallecido, menor de edad, documento no encontrado, discrepancia biométrica).
* [Advertencias](https://docs.didit.me/es/core-technology/database-validation/database-validation-warnings.md): qué mostramos cuando un servicio no puede ejecutarse porque faltan datos de entrada.
* [Países y servicios compatibles](https://docs.didit.me/es/core-technology/database-validation/database-validation-supported-countries.md): todos los registros activos, los campos obligatorios y el precio por solicitud.
* [Informes](https://docs.didit.me/es/core-technology/database-validation/database-validation-report.md): exportaciones mensuales de facturación por servicio.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.