> ## 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.

# API de coincidencia de huellas DHA Sudáfrica: ID Match

> Huellas DHA de Sudáfrica: consulta la base de datos oficial con Didit. Pago por consulta desde $1.28, sin contratos ni mínimos.

Verifica las imágenes de huellas dactilares proporcionadas contra el registro de huellas dactilares del Departamento de Asuntos Internos. Didit ofrece este servicio a través de `POST /v3/database-validation/` para que puedas verificar los datos enviados contra la fuente oficial y recibir resultados de coincidencia normalizados.

## Cobertura

* **Cobertura:** —
* **País:** Sudáfrica
* **ID del servicio:** `zaf_dha_fingerprint_match`
* **Dominio de datos:** Biométrico
* **Categoría:** Gobierno

## Datos de entrada

| Campo | Obligatorio | Ejemplo |
| - | -: | - |
| `national_id` | Sí | `SAMPLE-NID-12345` |
| `right_thumb` | Sí | `RIGHT_THUMB_TEMPLATE` |
| `left_thumb` | Sí | `LEFT_THUMB_TEMPLATE` |
| `vendor_data` | No | `user-1234` |

* **Datos de entrada obligatorios:** `national_id`, `right_thumb`, `left_thumb`
* **Datos de entrada opcionales:** `vendor_data`
* **Consentimiento:** Obligatorio
* **Disponibilidad en flujos de verificación (workflow):** solo API independiente
* **Cobertura:** —
* **Precio:** \$1.28 por consulta exitosa

Este servicio solicita `right_thumb` y `left_thumb`, que no son datos que genere ningún paso de un flujo, por lo que solo está disponible en la API independiente, donde proporcionas los valores directamente.

## Parámetros del cuerpo

**issuing\_state** `string` *required* (default: ZAF)

Código de país ISO 3166-1 alfa-3 para este servicio de base de datos.

Ejemplo: `ZAF`

**services** `string` *required* (default: zaf\_dha\_fingerprint\_match)

Array que contiene este ID de servicio. Fijar el servicio limita la solicitud a esta base de datos exacta.

Ejemplo: `zaf_dha_fingerprint_match`

**consent** `boolean` *required* (default: true)

Consentimiento explícito del usuario final para este servicio.

Ejemplo: `true`

**national\_id** `string` *required* (default: SAMPLE-NID-12345)

Número de identidad nacional para este servicio.

Ejemplo: `SAMPLE-NID-12345`

**right\_thumb** `string` *required* (default: RIGHT\_THUMB\_TEMPLATE)

Valor de `right_thumb` que requiere este servicio de base de datos.

Ejemplo: `RIGHT_THUMB_TEMPLATE`

**left\_thumb** `string` *required* (default: LEFT\_THUMB\_TEMPLATE)

Valor de `left_thumb` que requiere este servicio de base de datos.

Ejemplo: `LEFT_THUMB_TEMPLATE`

**vendor\_data** `string` (default: user-1234)

Tu referencia estable de usuario para esta persona, como tu ID de usuario interno. Didit la usa para vincular las comprobaciones independientes con el mismo usuario final y reducir el ruido en la detección de duplicados.

Ejemplo: `user-1234`

## Reglas de entrada y notas de validación

* Envía los campos indicados arriba exactamente como se capturaron del usuario o del documento.
* Didit valida los campos obligatorios antes de consultar la base de datos. Las solicitudes rechazadas antes de la consulta a la fuente no se cobran.

## Cómo invocarlo

```bash cURL theme={null}
curl -X POST "https://verification.didit.me/v3/database-validation/" \
  -H "x-api-key: YOUR_API_KEY" \
  -F "issuing_state=ZAF" \
  -F "services=zaf_dha_fingerprint_match" \
  -F "vendor_data=user-1234" \
  -F "consent=true" \
  -F "national_id=SAMPLE-NID-12345" \
  -F "right_thumb=RIGHT_THUMB_TEMPLATE" \
  -F "left_thumb=LEFT_THUMB_TEMPLATE"
```

Toda llamada exitosa devuelve HTTP `200`. El campo **`outcome_code`** te indica qué ocurrió realmente y distingue, por ejemplo, una falta de coincidencia biométrica real (`BIOMETRIC_NO_MATCH`) de una selfie que no se pudo leer (`BIOMETRIC_IMAGE_UNUSABLE`). El `status` que se muestra es el estado predeterminado de la función; las [acciones de Partial Match / No Match](https://docs.didit.me/es/core-technology/database-validation/database-validation-warnings.md) que hayas configurado pueden anularlo.

**`MATCH`**: el registro confirmó la identidad y todos los campos comprobados coincidieron.

```json 200 OK — MATCH theme={null}
{
  "request_id": "req_01H…",
  "status": "Approved",
  "issuing_state": "ZAF",
  "match_type": "full_match",
  "validations": [
    {
      "outcome_code": "MATCH",
      "service_id": "zaf_dha_fingerprint_match",
      "service_name": "South Africa - DHA Fingerprint Match",
      "source_data": {
        "identification_number": "SAMPLE-ID-12345"
      },
      "validation": {
        "identification_number": "full_match"
      }
    }
  ]
}
```

**`NO_MATCH`**: el registro no devolvió ninguna coincidencia para los datos enviados.

```json 200 OK — NO_MATCH theme={null}
{
  "request_id": "req_01H…",
  "status": "Declined",
  "issuing_state": "ZAF",
  "match_type": "no_match",
  "validations": [
    {
      "outcome_code": "NO_MATCH",
      "service_id": "zaf_dha_fingerprint_match",
      "service_name": "South Africa - DHA Fingerprint Match",
      "source_data": {
        "identification_number": "NO_MATCH"
      },
      "validation": {
        "identification_number": "no_match"
      }
    }
  ]
}
```

## Datos devueltos

Los campos exactos que aparecen en `source_data` dependen de lo que devuelva el registro. El ejemplo generado para `zaf_dha_fingerprint_match` documenta actualmente esta estructura normalizada:

* `identification_number`

## Precios y SLA

Las consultas de Sudáfrica - DHA Fingerprint Match solo se facturan cuando Didit recibe un resultado concluyente de la fuente de validación.

* **Precio por llamada:** \$1.28 USD.
* **Facturación:** por consulta exitosa. No se te cobra cuando el registro no está disponible, cuando faltan campos obligatorios o cuando la solicitud se rechaza antes de llegar a la fuente.
* **Latencia:** p95 típico \< 2 s.
* **Disponibilidad:** 99.9% por trimestre por parte de Didit; la disponibilidad de la fuente externa varía según el país y el conjunto de datos.

## Continúa leyendo

* [Visión general de la validación de base de datos de Sudáfrica](https://docs.didit.me/api-reference/database-validation/south-africa.md)
* [Visión general de la validación de base de datos](https://docs.didit.me/es/core-technology/database-validation/overview.md)
* [Códigos de resultado](https://docs.didit.me/es/core-technology/database-validation/database-validation-outcome-codes.md)


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