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

# Проверка по базам данных ЮАР: DHA Fingerprint Match API

> Проверка по базе данных ЮАР через Didit: DHA Fingerprint Match с оплатой за вызов от $1.28. Без контрактов и минимальных объёмов.

Сервис сверяет предоставленные изображения отпечатков пальцев с реестром отпечатков Департамента внутренних дел (Department of Home Affairs). Didit предоставляет этот сервис через `POST /v3/database-validation/`, чтобы вы могли проверить переданные данные по авторитетному источнику и получить нормализованные результаты сопоставления.

## Охват

* **Охват:** —
* **Страна:** ЮАР
* **ID сервиса:** `zaf_dha_fingerprint_match`
* **Домен данных:** Биометрия
* **Категория:** Государственная

## Входные данные

| Поле | Обязательно | Пример |
| - | -: | - |
| `national_id` | Да | `SAMPLE-NID-12345` |
| `right_thumb` | Да | `RIGHT_THUMB_TEMPLATE` |
| `left_thumb` | Да | `LEFT_THUMB_TEMPLATE` |
| `vendor_data` | Нет | `user-1234` |

* **Обязательные входные данные:** `national_id`, `right_thumb`, `left_thumb`
* **Необязательные входные данные:** `vendor_data`
* **Согласие:** Требуется
* **Доступность в сценарии:** Только в отдельном API
* **Охват:** —
* **Цена:** \$1.28 за успешный запрос

Этому сервису нужны `right_thumb` и `left_thumb`, которые шаг сценария не формирует, поэтому он доступен только в отдельном API, где вы передаёте значения напрямую.

## Параметры тела запроса

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

Код страны ISO 3166-1 alpha-3 для этого сервиса проверки по базам данных.

Пример: `ZAF`

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

Массив, содержащий ID этого сервиса. Указание сервиса ограничивает запрос этой конкретной базой данных.

Пример: `zaf_dha_fingerprint_match`

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

Явное согласие конечного пользователя на использование этого сервиса.

Пример: `true`

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

Национальный идентификационный номер для этого сервиса.

Пример: `SAMPLE-NID-12345`

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

Значение `right_thumb`, которое требуется этому сервису проверки по базам данных.

Пример: `RIGHT_THUMB_TEMPLATE`

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

Значение `left_thumb`, которое требуется этому сервису проверки по базам данных.

Пример: `LEFT_THUMB_TEMPLATE`

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

Ваш стабильный идентификатор пользователя, например внутренний ID пользователя. Didit использует его, чтобы связывать проверки через отдельный API с одним и тем же конечным пользователем и уменьшать количество ложных срабатываний при поиске дубликатов.

Пример: `user-1234`

## Правила входных данных и примечания по валидации

* Передавайте перечисленные выше поля точно так, как они получены от пользователя или документа.
* Didit проверяет обязательные поля до обращения к базе данных. Запросы, отклонённые до обращения к источнику, не тарифицируются.

## Как вызвать сервис

```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"
```

Каждый успешный вызов возвращает HTTP `200`. Поле **`outcome_code`** показывает, что произошло на самом деле: например, отличает реальное несовпадение биометрии (`BIOMETRIC_NO_MATCH`) от селфи, которое не удалось прочитать (`BIOMETRIC_IMAGE_UNUSABLE`). Показанный `status` — это статус функции по умолчанию; ваши настроенные [действия для частичного совпадения / отсутствия совпадения](https://docs.didit.me/ru/core-technology/database-validation/database-validation-warnings.md) могут его переопределить.

**`MATCH`**: реестр подтвердил личность, и все проверенные поля совпали.

```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`**: реестр не вернул совпадений для переданных данных.

```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"
      }
    }
  ]
}
```

## Возвращаемые данные

Точные поля, которые попадают в `source_data`, зависят от того, что возвращает реестр. В автоматически сгенерированном примере для `zaf_dha_fingerprint_match` сейчас описана такая нормализованная структура:

* `identification_number`

## Цены и SLA

Запросы на сопоставление отпечатков пальцев DHA в ЮАР тарифицируются только тогда, когда Didit получает окончательный результат от источника проверки.

* **Цена за вызов:** \$1.28 USD.
* **Тарификация:** за успешный запрос. Плата не взимается, если реестр недоступен, если не заполнены обязательные поля или если запрос отклонён до обращения к источнику.
* **Задержка:** типичное значение p95 \< 2 с.
* **Доступность:** 99.9% за квартал на стороне Didit; доступность источника данных зависит от страны и набора данных.

## Читайте также

* [Обзор проверки по базам данных в ЮАР](https://docs.didit.me/api-reference/database-validation/south-africa.md)
* [Обзор проверки по базам данных](https://docs.didit.me/ru/core-technology/database-validation/overview.md)
* [Коды результатов](https://docs.didit.me/ru/core-technology/database-validation/database-validation-outcome-codes.md)


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