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

# Verificació del permís de conduir a Sud-àfrica (API)

> Verificació de permisos de conduir de Sud-àfrica amb Didit: consulta a la base de dades oficial. Des de $0.80 per consulta, sense contractes ni mínims.

Verifica una llicència de conducció sud-africana amb el registre NATIS / del Departament de Transport. Didit ofereix aquest servei mitjançant `POST /v3/database-validation/` perquè puguis verificar les dades enviades amb la font oficial i rebre resultats de coincidència normalitzats.

## Cobertura

* **Cobertura:** —
* **País:** Sud-àfrica
* **ID del servei:** `zaf_drivers_license`
* **Domini de dades:** Identitat
* **Categoria:** DriverLicence

## Entrades

| Camp | Obligatori | Exemple |
| - | -: | - |
| `national_id` | Sí | `SAMPLE-NID-12345` |
| `last_name` | Sí | `Doe` |
| `initials` | Sí | `JD` |
| `licence_number` | Sí | `LIC123456` |
| `first_name` | No | `John` |
| `date_of_birth` | No | `1990-01-01` |
| `vendor_data` | No | `user-1234` |

* **Entrades obligatòries:** `national_id`, `last_name`, `initials`, `licence_number`
* **Entrades opcionals:** `first_name`, `date_of_birth`, `vendor_data`
* **Consentiment:** No requerit
* **Disponibilitat al flux de treball:** Disponible al flux de treball amb mapatge de camps
* **Cobertura:** —
* **Preu:** \$0.80 per consulta satisfactòria

En un flux de treball, `initials` i `licence_number` no apareixen impresos en cap document d'identitat, de manera que cap pas els produeix per si sol. Recull-los d'una resposta de qüestionari, d'un camp d'extracció de Document AI o d'un valor que envies en crear la sessió, i mapa cadascun al pas de Validació en bases de dades. Fins que no estiguin mapats, l'editor del flux de treball mostra aquest servei desactivat i indica quina entrada falta. En temps d'execució, una entrada que falta fa que la comprovació s'ometi abans de cap consulta, de manera que mai no et cobren per una base de dades que no s'ha pogut consultar.

## Paràmetres del cos

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

Codi de país ISO 3166-1 alpha-3 per a aquest servei de base de dades.

Exemple: `ZAF`

**services** `string` *required* (default: zaf\_drivers\_license)

Matriu que conté aquest ID de servei. Fixar el servei manté la sol·licitud limitada a aquesta base de dades exacta.

Exemple: `zaf_drivers_license`

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

Número d'identitat nacional per a aquest servei.

Exemple: `SAMPLE-NID-12345`

**last\_name** `string` *required* (default: Doe)

Cognom a validar.

Exemple: `Doe`

**initials** `string` *required* (default: JD)

Valor de `initials` que requereix aquest servei de base de dades.

Exemple: `JD`

**licence\_number** `string` *required* (default: LIC123456)

Valor de `licence_number` que requereix aquest servei de base de dades.

Exemple: `LIC123456`

**first\_name** `string`

Nom de pila a validar.

Exemple: `John`

**date\_of\_birth** `string`

Data de naixement en format `YYYY-MM-DD`.

Exemple: `1990-01-01`

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

La teva referència estable d'usuari per a aquesta persona, com ara el teu ID intern d'usuari. Didit l'utilitza per vincular les verificacions independents al mateix usuari final i reduir el soroll de detecció de duplicats.

Exemple: `user-1234`

## Regles d'entrada i notes de validació

* Envia els camps indicats anteriorment exactament tal com els ha capturat l'usuari o el document.
* Didit valida els camps obligatoris abans de cridar la base de dades. Les sol·licituds rebutjades abans de la consulta a la font no es cobren.

## Com fer la crida

```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_drivers_license" \
  -F "vendor_data=user-1234" \
  -F "national_id=SAMPLE-NID-12345" \
  -F "last_name=Doe" \
  -F "initials=JD" \
  -F "licence_number=LIC123456"
```

Totes les crides satisfactòries retornen HTTP `200`. El camp **`outcome_code`** indica què ha passat realment, distingint, per exemple, una discrepància biomètrica real (`BIOMETRIC_NO_MATCH`) d'una selfie que no s'ha pogut llegir (`BIOMETRIC_IMAGE_UNUSABLE`). L'`status` mostrat és l'estat per defecte de la funcionalitat; les [accions configurades per a coincidència parcial i sense coincidència](https://docs.didit.me/ca/core-technology/database-validation/database-validation-warnings.md) poden substituir-lo.

**`MATCH`**: El registre ha retornat un registre de llicència per a aquest número de llicència, i les dades enviades hi coincideixen.

```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_drivers_license",
      "service_name": "South Africa - Driving License Verification",
      "source_data": {
        "expiration_date": "2030-05-31",
        "first_name": "John",
        "identification_number": "SAMPLE-ID-12345",
        "last_name": "Doe",
        "vehicle_codes": "EB"
      },
      "validation": {
        "full_name": "full_match",
        "identification_number": "full_match"
      }
    }
  ]
}
```

**`NO_MATCH`**: El registre ha buscat la llicència i l'ha informat com a no vàlida. S'aplica la teva acció per a no coincidència.

```json 200 OK — NO_MATCH theme={null}
{
  "request_id": "req_01H…",
  "status": "Declined",
  "issuing_state": "ZAF",
  "match_type": null,
  "validations": [
    {
      "outcome_code": "NO_MATCH",
      "service_id": "zaf_drivers_license",
      "service_name": "South Africa - Driving License Verification",
      "source_data": {
        "licence_valid": false
      },
      "validation": {}
    }
  ]
}
```

**`INCONCLUSIVE`**: El registre ha acceptat la consulta però no ha retornat cap registre de llicència amb què comparar les dades enviades, de manera que no es confirma res sobre la llicència i la verificació s'envia a revisió, també quan un altre servei de la mateixa sol·licitud ha coincidit amb la persona.

```json 200 OK — INCONCLUSIVE theme={null}
{
  "request_id": "req_01H…",
  "status": "In Review",
  "issuing_state": "ZAF",
  "match_type": null,
  "validations": [
    {
      "outcome_code": "INCONCLUSIVE",
      "service_id": "zaf_drivers_license",
      "service_name": "South Africa - Driving License Verification",
      "source_data": {
        "licence_valid": true
      },
      "validation": {}
    }
  ]
}
```

## Dades retornades

Els camps exactes que apareixen a `source_data` depenen del que retorni el registre. L'exemple generat per a `zaf_drivers_license` documenta actualment aquesta estructura normalitzada:

* `expiration_date`
* `first_name`
* `identification_number`
* `last_name`
* `licence_valid`
* `vehicle_codes`

## Preus i SLA

Sud-àfrica: verificació de llicències de conducció. Les consultes només es facturen quan Didit rep un resultat concloent de la font de validació.

* **Preu per crida:** \$0.80 USD.
* **Facturació:** per consulta satisfactòria. No es cobra quan el registre no és accessible, quan falten camps obligatoris o quan la sol·licitud es rebutja abans d'arribar a la font.
* **Latència:** p95 típic \< 2 s.
* **Disponibilitat:** 99.9% per trimestre per part de Didit; la disponibilitat de la font varia segons el país i el conjunt de dades.

## Què significa cada resultat

Aquesta comprovació consulta el registre de llicències de conducció amb el número de llicència que envieu, juntament amb el número d'identitat sud-africà, el cognom i les inicials. El resultat depèn del que retorni el registre:

* **`MATCH`** - el registre ha retornat un registre de llicència per a aquest número de llicència, i les dades que heu enviat hi coincideixen. `source_data` conté el registre: `identification_number` (el número de llicència), `first_name` i `last_name`, `vehicle_codes` (les classes de llicència, p. ex. `EB`, `C1`) i `expiration_date` (la data de caducitat del carnet de conduir).
* **`INCONCLUSIVE`** - el registre ha acceptat la consulta però no ha retornat cap registre de llicència, de manera que no hi havia res amb què comparar les dades enviades. `source_data.licence_valid` és `true`, `validation` és buit i `match_type` és `null`. No es confirma res sobre la llicència, així que la comprovació s'envia a revisió, també quan un altre servei de la mateixa sol·licitud, com la comprovació del document d'identitat nacional, ha coincidit amb la persona, perquè això confirma la persona i no la llicència.
* **`NO_MATCH`** - el registre ha buscat la llicència i ha informat que no és vàlida (`source_data.licence_valid: false`). S'aplica la vostra acció per a no coincidències.
* **`REGISTRY_ERROR`** - el registre no ha dut a terme la cerca, de manera que no s'ha establert res sobre la llicència. La comprovació s'envia a revisió i no es factura.

**Què no es retorna mai.** No hi ha cap camp de suspensió, cancel·lació, retirada, anotació o punts de demèrit, així que ni tan sols un `MATCH` no s'ha de presentar als vostres usuaris com a «la llicència és vàlida i està en bon estat». `expiration_date`, quan el registre el retorna, és l'única dada relacionada amb l'estat de la llicència que obteniu: compareu-la amb la data de la sessió per decidir si la llicència ha caducat, i tracteu-ho com a regla pròpia i no com a part del resultat de coincidència.

Si cal indicar-ho en els termes i condicions, redacteu-ho així: Didit comprova les dades de la llicència amb el registre nacional i, quan el registre retorna un registre de llicència, les seves classes i la data de caducitat, però no confirma que el titular estigui habilitat per conduir avui.

## Continua llegint

* [Visió general de la validació en bases de dades a Sud-àfrica](https://docs.didit.me/api-reference/database-validation/south-africa.md)
* [Visió general de la validació en bases de dades](https://docs.didit.me/ca/core-technology/database-validation/overview.md)
* [Codis de resultat](https://docs.didit.me/ca/core-technology/database-validation/database-validation-outcome-codes.md)


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