> For the complete documentation index, see [llms.txt](https://docs.facephi.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.facephi.com/api-rest/identity-api/identity-api-reference/onboarding/civil-validation/honduras.md).

# Honduras

Servicio de validación civil para Honduras. Realiza la verificación de identidad contra los datos del Registro Civil de Honduras.

### Endpoint

```
POST /services/civilValidation
```

### Headers

| Nombre        | Tipo   | Requerido | Descripción                                                   |
| ------------- | ------ | --------- | ------------------------------------------------------------- |
| **x-api-key** | string | **Sí**    | API key de autorización de acceso.                            |
| **family**    | string | No        | Valor: **OnBoarding**. Requerido con el servicio de tracking. |

{% hint style="info" %}
Todas las llamadas a los Endpoints para tracking con **Identity Platform** deben contener el header `family`.
{% endhint %}

## Full Validation Mobile

Realiza la validación de datos y coincidencia facial contra el Registro Civil de Honduras utilizando plataforma móvil.

### Cuerpo de la solicitud

**Content-Type:** `application/json`

#### Parámetros

| Parámetro              | Tipo    | Requerido | Descripción                                                                                                                                                                       |
| ---------------------- | ------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `operation`            | string  | **Sí**    | Operación de validación a realizar. Valor: `"FULL"`.                                                                                                                              |
| `platform`             | string  | **Sí**    | Plataforma desde la que se realiza la solicitud. Valor: `"MOBILE"`.                                                                                                               |
| `tokenOcr`             | string  | **Sí**    | Token generado por el widget SelphID nativo o híbrido, cifrado en AES256 y tokenizado, enviado en formato Base64. Contiene el resultado OCR del documento de identidad capturado. |
| `templateRaw`          | string  | **Sí**    | Plantilla biométrica generada por el widget Selphi. Requerida para operaciones FACIAL o FULL.                                                                                     |
| `countryCode`          | string  | **Sí**    | Código de país en formato ISO 3166-1 alfa-3. Valor: `"HND"`.                                                                                                                      |
| `returnPII`            | boolean | No        | Indica si se desean recibir los datos personales generados por el servicio OCR y la respuesta del Registro Civil.                                                                 |
| `documentValidation`   | boolean | No        | Indica si se desea iniciar la validación del documento, retornando `scanReference` y `type`.                                                                                      |
| `tracking`             | object  | No        | Objeto que representa la información de seguimiento necesaria.                                                                                                                    |
| `tracking.extraData`   | string  | No        | Token generado por el SDK Mobile/Web. Contiene información de seguimiento tokenizada con la Plataforma.                                                                           |
| `tracking.operationId` | string  | No        | Identificador de operación generado por el SDK Mobile/Web.                                                                                                                        |

#### Ejemplo de solicitud

```json
{
  "operation": "FULL",
  "platform": "MOBILE",
  "tokenOcr": "base64TokenOcrString",
  "templateRaw": "base64TemplateRawString",
  "countryCode": "HND",
  "returnPII": false,
  "tracking": {
    "extraData": "BQABAQG2gBNjuHN...",
    "operationId": "xxxxx-xxxxx-xxxxx-xxxxx-xxxxx"
  }
}
```

### Respuestas

#### `200` Éxito

#### Parámetros de respuesta

| Parámetro                           | Tipo    | Descripción                                                                                                                                  |
| ----------------------------------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `serviceResultCode`                 | integer | Código que indica el resultado general de la ejecución del servicio. Ver [Service Result Code](#service-result-code).                        |
| `serviceTime`                       | string  | Tiempo total de procesamiento (milisegundos).                                                                                                |
| `serviceResultLog`                  | string  | Campo descriptivo del resultado de la ejecución del servicio. Incluye detalles cuando hay un error o excepción.                              |
| `serviceTransactionId`              | string  | Identificador de transacción asociado a la solicitud procesada por la API.                                                                   |
| `civilDataValidation`               | array   | Array que representa las validaciones OCR contra los datos obtenidos del Registro Civil. Su presencia depende del Registro Civil consultado. |
| `civilDataValidation[].field`       | string  | Nombre del campo validado (ej. `firstName`, `lastName`, `dateOfBirth`).                                                                      |
| `civilDataValidation[].code`        | string  | Código de resultado de la validación. `"0"`: Validado correctamente. `"-99"`: Posiblemente adulterado.                                       |
| `civilDataValidation[].message`     | string  | Mensaje descriptivo del resultado de la validación.                                                                                          |
| `serviceFacialAuthenticationResult` | integer | Código que indica el resultado de la coincidencia facial. Ver [Service Facial Authentication Result](#service-facial-authentication-result). |
| `serviceFacialSimilarityResult`     | number  | Valor que indica la similitud facial entre el rostro en la foto del documento y el selfie del usuario. **1.0 = 100%**.                       |
| `serviceFacialAuthenticationHash`   | string  | Hash de integridad de la plantilla biométrica utilizada en una autenticación facial positiva o incierta.                                     |
| `serviceDocument`                   | string  | Cadena JSON que representa el documento capturado. Sus propiedades son todos los campos extraídos por el proceso OCR.                        |
| `civilServiceData`                  | string  | Cadena JSON con los datos personales obtenidos del Registro Civil (solo se retorna si `returnPII` fue enviado como `true` en la solicitud).  |

#### Ejemplo de respuesta

```json
{
  "serviceResultCode": 0,
  "serviceTime": "1799",
  "serviceResultLog": "Positive | Service executed ok",
  "serviceTransactionId": "f0392b79-664c-476f-8fad-d30009b68d60",
  "civilDataValidation": [
    {
      "field": "firstName",
      "code": "-99",
      "message": "Possibly adulterated"
    },
    {
      "field": "lastName",
      "code": "0",
      "message": "Validated ok"
    },
    {
      "field": "dateOfBirth",
      "code": "0",
      "message": "Validated ok"
    }
  ],
  "serviceFacialAuthenticationResult": 3,
  "serviceFacialSimilarityResult": 0.9946,
  "serviceFacialAuthenticationHash": "NA",
  "serviceDocument": "{\"Back/INPUT/Issuer\":\"HND\",\"Back/ML/DateOfBirth\":\"13/04/1964\",\"Back/ML/DateOfExpiry\":\"16/04/2023\",\"Back/ML/DocumentNumber\":\"1 0627 0723\",\"Back/ML/ElectoralAddress\":\"\",\"Back/ML/FatherName\":\"LUOOT NOT. HOSPITAL CENTRAL SAN JOSE\",\"Back/ML/Gender\":\"\",\"Back/ML/MotherName\":\"XO F\",\"Back/ML/PlaceOfBirth\":\"Domicilio Ectoral SAN BOSCO CENTRAL SAN JOSE\",\"DateOfBirth\":\"13/04/1964\",\"DateOfExpiry\":\"16/04/2023\",\"DocumentCaptured\":\"CR/All\",\"DocumentNumber\":\"1 0627 0723\",\"FirstName\":\"\",\"Front/INPUT/Issuer\":\"HND\",\"Front/ML/CC\":\".:\")}",
  "civilServiceData": "{\"nombres\":\"APUY STIER\",\"fechaNacimiento\":\"13/04/1964\",\"fechaVencimiento\":\"16/04/2023\",\"lugarNacimiento\":\"SAN BOSCO CENTRAL SAN JOSE\"}"
}
```

## Full Validation Web

Realiza la validación de datos y coincidencia facial contra el Registro Civil de Honduras utilizando plataforma web.

### Cuerpo de la solicitud

**Content-Type:** `application/json`

#### Parámetros

| Parámetro              | Tipo    | Requerido | Descripción                                                                                                       |
| ---------------------- | ------- | --------- | ----------------------------------------------------------------------------------------------------------------- |
| `operation`            | string  | **Sí**    | Operación de validación a realizar. Valor: `"FULL"`.                                                              |
| `platform`             | string  | **Sí**    | Plataforma desde la que se realiza la solicitud. Valor: `"WEB"`.                                                  |
| `imageFrontDocument`   | string  | **Sí**    | Captura frontal del documento, imagen en Base64 sin el encabezado de tipo MIME. Requerido para plataforma WEB.    |
| `imageBackDocument`    | string  | **Sí**    | Captura trasera del documento, imagen en Base64 sin el encabezado de tipo MIME. Requerido para plataforma WEB.    |
| `templateRaw`          | string  | **Sí**    | Plantilla biométrica generada por el widget Selphi. Requerida para operaciones FACIAL o FULL.                     |
| `countryCode`          | string  | **Sí**    | Código de país en formato ISO 3166-1 alfa-3. Valor: `"HND"`.                                                      |
| `returnPII`            | boolean | No        | Indica si se desean recibir los datos personales generados por el servicio OCR y la respuesta del Registro Civil. |
| `documentValidation`   | boolean | No        | Indica si se desea iniciar la validación del documento, retornando `scanReference` y `type`.                      |
| `tracking`             | object  | No        | Objeto que representa la información de seguimiento necesaria.                                                    |
| `tracking.extraData`   | string  | No        | Token generado por el SDK Mobile/Web. Contiene información de seguimiento tokenizada con la Plataforma.           |
| `tracking.operationId` | string  | No        | Identificador de operación generado por el SDK Mobile/Web.                                                        |

#### Ejemplo de solicitud

```json
{
  "operation": "FULL",
  "platform": "WEB",
  "imageFrontDocument": "base64ImageFrontString",
  "imageBackDocument": "base64ImageBackString",
  "templateRaw": "base64TemplateRawString",
  "countryCode": "HND",
  "returnPII": false,
  "tracking": {
    "extraData": "BQABAQG2gBNjuHN...",
    "operationId": "xxxxx-xxxxx-xxxxx-xxxxx-xxxxx"
  }
}
```

### Respuestas

#### `200` Éxito

#### Parámetros de respuesta

| Parámetro                           | Tipo    | Descripción                                                                                                                                  |
| ----------------------------------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `serviceResultCode`                 | integer | Código que indica el resultado general de la ejecución del servicio. Ver [Service Result Code](#service-result-code).                        |
| `serviceTime`                       | string  | Tiempo total de procesamiento (milisegundos).                                                                                                |
| `serviceResultLog`                  | string  | Campo descriptivo del resultado de la ejecución del servicio. Incluye detalles cuando hay un error o excepción.                              |
| `serviceTransactionId`              | string  | Identificador de transacción asociado a la solicitud procesada por la API.                                                                   |
| `civilDataValidation`               | array   | Array que representa las validaciones OCR contra los datos obtenidos del Registro Civil. Su presencia depende del Registro Civil consultado. |
| `civilDataValidation[].field`       | string  | Nombre del campo validado (ej. `firstName`, `lastName`, `dateOfBirth`).                                                                      |
| `civilDataValidation[].code`        | string  | Código de resultado de la validación. `"0"`: Validado correctamente. `"-99"`: Posiblemente adulterado.                                       |
| `civilDataValidation[].message`     | string  | Mensaje descriptivo del resultado de la validación.                                                                                          |
| `serviceFacialAuthenticationResult` | integer | Código que indica el resultado de la coincidencia facial. Ver [Service Facial Authentication Result](#service-facial-authentication-result). |
| `serviceFacialSimilarityResult`     | number  | Valor que indica la similitud facial entre el rostro en la foto del documento y el selfie del usuario. **1.0 = 100%**.                       |
| `serviceFacialAuthenticationHash`   | string  | Hash de integridad de la plantilla biométrica utilizada en una autenticación facial positiva o incierta.                                     |
| `serviceDocument`                   | string  | Cadena JSON que representa el documento capturado. Sus propiedades son todos los campos extraídos por el proceso OCR.                        |
| `civilServiceData`                  | string  | Cadena JSON con los datos personales obtenidos del Registro Civil (solo se retorna si `returnPII` fue enviado como `true` en la solicitud).  |

#### Ejemplo de respuesta

```json
{
  "serviceResultCode": 0,
  "serviceTime": "4074",
  "serviceResultLog": "Negative | Service executed ok",
  "serviceTransactionId": "e1243a68-be8f-464c-94a7-e8a5562d71a0",
  "civilDataValidation": [
    {
      "field": "firstName",
      "code": "-99",
      "message": "Possibly adulterated"
    },
    {
      "field": "lastName",
      "code": "0",
      "message": "Validated ok"
    },
    {
      "field": "dateOfBirth",
      "code": "0",
      "message": "Validated ok"
    }
  ],
  "serviceFacialAuthenticationResult": 1,
  "serviceFacialSimilarityResult": 0,
  "serviceFacialAuthenticationHash": "NA",
  "serviceDocument": "{\"ASK4BACK\":\"NO\",\"BACKSIDE\":{\"FIELD_DATA\":{\"ADDRESS\":\"SAN RAFAEL POAS ALAJUELA\",\"BARCODES\":[{\"DATA\":\"\",\"TYPE\":\"\"}],\"BIRTH_DATE\":\" 19 10 1984\",\"BIRTH_PLACE\":\"CENTRO CENTRAL ALAJUELA\",\"EXPIRATION_DATE\":\" 07 02 2028\",\"FATHER_NAME\":\"LUIS RODRIGUEZ CASTRO\",\"IDENTITY_NUMBER\":\"205990558\",\"MOTHER_NAME\":\"FLORA ISABEL QUESADA CASTRO\",\"SEX\":\"\",\"VERTICAL_NUMBER\":\"000631975\"}},\"CHECKS\":{\"IDENTITY_NUMBER_SIDE_MATCH\":true},\"COUNTRY_CODE\":\"HND\",\"DOC_MODEL\":\"NEW\",\"FRONTSIDE\":{\"FIELD_DATA\":{\"FIRST_SURNAME\":\"RODRIGUEZ\",\"IDENTITY_NUMBER\":\"205990558\",\"NAME\":\"LUIS\",\"SECOND_SURNAME\":\"QUESADA\"}},\"SCORING\":{\"BACK_CONFIDENCE\":0.976855586876,\"BACK_SHA256\":\"4dfb73e9c8cbba6db42d1e4938ba1e62244bfe26efecd55579a4f65c9aed63ae\",\"FIELDS_RETURNED\":15,\"FIELDS_TOTAL\":15,\"FRONT_CONFIDENCE\":0.922833224138,\"FRONT_SHA256\":\"506b3192e0e80f851012f895300c63e8c85fea0ca78b9d99195e6256afadc5d4\",\"OVERALL_RATING\":100.0,\"OVERALL_SIDE_CORRESPONDENCE\":100.0}}",
  "civilServiceData": "{\"nombres\":\"LUIS RODRIGUEZ QUESADA\",\"fechaNacimiento\":\"19/10/1984\",\"lugarNacimiento\":\"CENTRO CENTRAL ALAJUELA\",\"direccion\":\"SAN RAFAEL POAS ALAJUELA\"}"
}
```

## Data Validation Mobile

Realiza la validación de datos contra el Registro Civil de Honduras utilizando plataforma móvil. No incluye coincidencia facial.

### Cuerpo de la solicitud

**Content-Type:** `application/json`

#### Parámetros

| Parámetro              | Tipo    | Requerido | Descripción                                                                                                                                                                       |
| ---------------------- | ------- | --------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `operation`            | string  | **Sí**    | Operación de validación a realizar. Valor: `"DATA"`.                                                                                                                              |
| `platform`             | string  | **Sí**    | Plataforma desde la que se realiza la solicitud. Valor: `"MOBILE"`.                                                                                                               |
| `tokenOcr`             | string  | **Sí**    | Token generado por el widget SelphID nativo o híbrido, cifrado en AES256 y tokenizado, enviado en formato Base64. Contiene el resultado OCR del documento de identidad capturado. |
| `countryCode`          | string  | **Sí**    | Código de país en formato ISO 3166-1 alfa-3. Valor: `"HND"`.                                                                                                                      |
| `returnPII`            | boolean | No        | Indica si se desean recibir los datos personales generados por el servicio OCR y la respuesta del Registro Civil.                                                                 |
| `documentValidation`   | boolean | No        | Indica si se desea iniciar la validación del documento, retornando `scanReference` y `type`.                                                                                      |
| `tracking`             | object  | No        | Objeto que representa la información de seguimiento necesaria.                                                                                                                    |
| `tracking.extraData`   | string  | No        | Token generado por el SDK Mobile/Web. Contiene información de seguimiento tokenizada con la Plataforma.                                                                           |
| `tracking.operationId` | string  | No        | Identificador de operación generado por el SDK Mobile/Web.                                                                                                                        |

#### Ejemplo de solicitud

```json
{
  "operation": "DATA",
  "platform": "MOBILE",
  "tokenOcr": "base64TokenOcrString",
  "countryCode": "HND",
  "returnPII": true,
  "tracking": {
    "extraData": "BQABAQG2gBNjuHN...",
    "operationId": "xxxxx-xxxxx-xxxxx-xxxxx-xxxxx"
  }
}
```

### Respuestas

#### `200` Éxito

#### Parámetros de respuesta

| Parámetro                       | Tipo    | Descripción                                                                                                                                  |
| ------------------------------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `serviceResultCode`             | integer | Código que indica el resultado general de la ejecución del servicio. Ver [Service Result Code](#service-result-code).                        |
| `serviceTime`                   | string  | Tiempo total de procesamiento (milisegundos).                                                                                                |
| `serviceResultLog`              | string  | Campo descriptivo del resultado de la ejecución del servicio. Incluye detalles cuando hay un error o excepción.                              |
| `serviceTransactionId`          | string  | Identificador de transacción asociado a la solicitud procesada por la API.                                                                   |
| `civilDataValidation`           | array   | Array que representa las validaciones OCR contra los datos obtenidos del Registro Civil. Su presencia depende del Registro Civil consultado. |
| `civilDataValidation[].field`   | string  | Nombre del campo validado (ej. `firstName`, `lastName`, `dateOfBirth`).                                                                      |
| `civilDataValidation[].code`    | string  | Código de resultado de la validación. `"0"`: Validado correctamente. `"-99"`: Posiblemente adulterado.                                       |
| `civilDataValidation[].message` | string  | Mensaje descriptivo del resultado de la validación.                                                                                          |
| `serviceDocument`               | string  | Cadena JSON que representa el documento capturado. Sus propiedades son todos los campos extraídos por el proceso OCR.                        |
| `civilServiceData`              | string  | Cadena JSON con los datos personales obtenidos del Registro Civil (solo se retorna si `returnPII` fue enviado como `true` en la solicitud).  |

#### Ejemplo de respuesta

```json
{
  "serviceResultCode": 0,
  "serviceTime": "1232",
  "serviceResultLog": "Service executed ok",
  "serviceTransactionId": "796a580b-67b5-4a6e-a19a-5b9145ad55cd",
  "civilDataValidation": [
    {
      "field": "firstName",
      "code": "-99",
      "message": "Possibly adulterated"
    },
    {
      "field": "lastName",
      "code": "0",
      "message": "Validated ok"
    },
    {
      "field": "dateOfBirth",
      "code": "0",
      "message": "Validated ok"
    }
  ],
  "serviceDocument": "{\"Back/INPUT/Issuer\":\"HND\",\"Back/ML/DateOfBirth\":\"13/04/1964\",\"Back/ML/DateOfExpiry\":\"16/04/2023\",\"Back/ML/DocumentNumber\":\"1 0627 0723\",\"Back/ML/ElectoralAddress\":\"\",\"Back/ML/FatherName\":\"LUOOT NOT. HOSPITAL CENTRAL SAN JOSE\",\"Back/ML/Gender\":\"\",\"Back/ML/MotherName\":\"XO F\",\"Back/ML/PlaceOfBirth\":\"Domicilio Ectoral SAN BOSCO CENTRAL SAN JOSE\",\"DateOfBirth\":\"13/04/1964\",\"DateOfExpiry\":\"16/04/2023\",\"DocumentCaptured\":\"CR/All\",\"DocumentNumber\":\"1 0627 0723\",\"FirstName\":\"\",\"Front/INPUT/Issuer\":\"HND\",\"Front/ML/CC\":\".:\")}",
  "civilServiceData": "{\"nombres\":\"APUY STIER\",\"fechaNacimiento\":\"13/04/1964\",\"lugarNacimiento\":\"HOSPITAL CENTRAL SAN JOSE\"}"
}
```

## Data Validation Web

Realiza la validación de datos contra el Registro Civil de Honduras utilizando plataforma web. No incluye coincidencia facial.

### Cuerpo de la solicitud

**Content-Type:** `application/json`

#### Parámetros

| Parámetro              | Tipo    | Requerido | Descripción                                                                                                       |
| ---------------------- | ------- | --------- | ----------------------------------------------------------------------------------------------------------------- |
| `operation`            | string  | **Sí**    | Operación de validación a realizar. Valor: `"DATA"`.                                                              |
| `platform`             | string  | **Sí**    | Plataforma desde la que se realiza la solicitud. Valor: `"WEB"`.                                                  |
| `imageFrontDocument`   | string  | **Sí**    | Captura frontal del documento, imagen en Base64 sin el encabezado de tipo MIME. Requerido para plataforma WEB.    |
| `imageBackDocument`    | string  | **Sí**    | Captura trasera del documento, imagen en Base64 sin el encabezado de tipo MIME. Requerido para plataforma WEB.    |
| `countryCode`          | string  | **Sí**    | Código de país en formato ISO 3166-1 alfa-3. Valor: `"HND"`.                                                      |
| `returnPII`            | boolean | No        | Indica si se desean recibir los datos personales generados por el servicio OCR y la respuesta del Registro Civil. |
| `documentValidation`   | boolean | No        | Indica si se desea iniciar la validación del documento, retornando `scanReference` y `type`.                      |
| `tracking`             | object  | No        | Objeto que representa la información de seguimiento necesaria.                                                    |
| `tracking.extraData`   | string  | No        | Token generado por el SDK Mobile/Web. Contiene información de seguimiento tokenizada con la Plataforma.           |
| `tracking.operationId` | string  | No        | Identificador de operación generado por el SDK Mobile/Web.                                                        |

#### Ejemplo de solicitud

```json
{
  "operation": "DATA",
  "platform": "WEB",
  "imageFrontDocument": "base64ImageFrontString",
  "imageBackDocument": "base64ImageBackString",
  "countryCode": "HND",
  "returnPII": false,
  "tracking": {
    "extraData": "BQABAQG2gBNjuHN...",
    "operationId": "xxxxx-xxxxx-xxxxx-xxxxx-xxxxx"
  }
}
```

### Respuestas

#### `200` Éxito

#### Parámetros de respuesta

| Parámetro                       | Tipo    | Descripción                                                                                                                                  |
| ------------------------------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `serviceResultCode`             | integer | Código que indica el resultado general de la ejecución del servicio. Ver [Service Result Code](#service-result-code).                        |
| `serviceTime`                   | string  | Tiempo total de procesamiento (milisegundos).                                                                                                |
| `serviceResultLog`              | string  | Campo descriptivo del resultado de la ejecución del servicio. Incluye detalles cuando hay un error o excepción.                              |
| `serviceTransactionId`          | string  | Identificador de transacción asociado a la solicitud procesada por la API.                                                                   |
| `civilDataValidation`           | array   | Array que representa las validaciones OCR contra los datos obtenidos del Registro Civil. Su presencia depende del Registro Civil consultado. |
| `civilDataValidation[].field`   | string  | Nombre del campo validado (ej. `firstName`, `lastName`, `dateOfBirth`).                                                                      |
| `civilDataValidation[].code`    | string  | Código de resultado de la validación. `"0"`: Validado correctamente. `"-99"`: Posiblemente adulterado.                                       |
| `civilDataValidation[].message` | string  | Mensaje descriptivo del resultado de la validación.                                                                                          |
| `serviceDocument`               | string  | Cadena JSON que representa el documento capturado. Sus propiedades son todos los campos extraídos por el proceso OCR.                        |
| `civilServiceData`              | string  | Cadena JSON con los datos personales obtenidos del Registro Civil (solo se retorna si `returnPII` fue enviado como `true` en la solicitud).  |

#### Ejemplo de respuesta

```json
{
  "serviceResultCode": 0,
  "serviceTime": "3651",
  "serviceResultLog": "Service executed ok",
  "serviceTransactionId": "3e915bc6-b6e6-4f77-bc26-2c59193078ee",
  "civilDataValidation": [
    {
      "field": "firstName",
      "code": "-99",
      "message": "Possibly adulterated"
    },
    {
      "field": "lastName",
      "code": "0",
      "message": "Validated ok"
    },
    {
      "field": "dateOfBirth",
      "code": "0",
      "message": "Validated ok"
    }
  ],
  "serviceDocument": "{\"ASK4BACK\":\"NO\",\"BACKSIDE\":{\"FIELD_DATA\":{\"ADDRESS\":\"SAN RAFAEL POAS ALAJUELA\",\"BARCODES\":[{\"DATA\":\"\",\"TYPE\":\"\"}],\"BIRTH_DATE\":\" 19 10 1984\",\"BIRTH_PLACE\":\"CENTRO CENTRAL ALAJUELA\",\"EXPIRATION_DATE\":\" 07 02 2028\",\"FATHER_NAME\":\"LUIS RODRIGUEZ CASTRO\",\"IDENTITY_NUMBER\":\"205990558\",\"MOTHER_NAME\":\"FLORA ISABEL QUESADA CASTRO\",\"SEX\":\"\",\"VERTICAL_NUMBER\":\"000631975\"}},\"CHECKS\":{\"IDENTITY_NUMBER_SIDE_MATCH\":true},\"COUNTRY_CODE\":\"HND\",\"DOC_MODEL\":\"NEW\",\"FRONTSIDE\":{\"FIELD_DATA\":{\"FIRST_SURNAME\":\"RODRIGUEZ\",\"IDENTITY_NUMBER\":\"205990558\",\"NAME\":\"LUIS\",\"SECOND_SURNAME\":\"QUESADA\"}},\"SCORING\":{\"BACK_CONFIDENCE\":0.976855586876,\"BACK_SHA256\":\"4dfb73e9c8cbba6db42d1e4938ba1e62244bfe26efecd55579a4f65c9aed63ae\",\"FIELDS_RETURNED\":15,\"FIELDS_TOTAL\":15,\"FRONT_CONFIDENCE\":0.922833224138,\"FRONT_SHA256\":\"506b3192e0e80f851012f895300c63e8c85fea0ca78b9d99195e6256afadc5d4\",\"OVERALL_RATING\":100.0,\"OVERALL_SIDE_CORRESPONDENCE\":100.0}}",
  "civilServiceData": "{\"nombres\":\"LUIS RODRIGUEZ QUESADA\",\"fechaNacimiento\":\"19/10/1984\",\"lugarNacimiento\":\"CENTRO CENTRAL ALAJUELA\"}"
}
```

## Facial Validation Mobile

Realiza la coincidencia facial contra las imágenes oficiales del Registro Civil de Honduras utilizando plataforma móvil. No incluye validación de datos.

### Cuerpo de la solicitud

**Content-Type:** `application/json`

#### Parámetros

| Parámetro              | Tipo   | Requerido | Descripción                                                                                             |
| ---------------------- | ------ | --------- | ------------------------------------------------------------------------------------------------------- |
| `operation`            | string | **Sí**    | Operación de validación a realizar. Valor: `"FACIAL"`.                                                  |
| `platform`             | string | **Sí**    | Plataforma desde la que se realiza la solicitud. Valor: `"MOBILE"`.                                     |
| `templateRaw`          | string | **Sí**    | Plantilla biométrica generada por el widget Selphi. Requerida para operaciones FACIAL o FULL.           |
| `documentNumber`       | string | No        | Número de documento del usuario. Requerido para operaciones FACIAL en Honduras.                         |
| `countryCode`          | string | **Sí**    | Código de país en formato ISO 3166-1 alfa-3. Valor: `"HND"`.                                            |
| `tracking`             | object | No        | Objeto que representa la información de seguimiento necesaria.                                          |
| `tracking.extraData`   | string | No        | Token generado por el SDK Mobile/Web. Contiene información de seguimiento tokenizada con la Plataforma. |
| `tracking.operationId` | string | No        | Identificador de operación generado por el SDK Mobile/Web.                                              |

#### Ejemplo de solicitud

```json
{
  "operation": "FACIAL",
  "platform": "MOBILE",
  "templateRaw": "base64TemplateRawString",
  "documentNumber": "1 0627 0723",
  "countryCode": "HND",
  "tracking": {
    "extraData": "BQABAQG2gBNjuHN...",
    "operationId": "xxxxx-xxxxx-xxxxx-xxxxx-xxxxx"
  }
}
```

### Respuestas

#### `200` Éxito

#### Parámetros de respuesta

| Parámetro                           | Tipo    | Descripción                                                                                                                                  |
| ----------------------------------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `serviceResultCode`                 | integer | Código que indica el resultado general de la ejecución del servicio. Ver [Service Result Code](#service-result-code).                        |
| `serviceTime`                       | string  | Tiempo total de procesamiento (milisegundos).                                                                                                |
| `serviceResultLog`                  | string  | Campo descriptivo del resultado de la ejecución del servicio. Incluye detalles cuando hay un error o excepción.                              |
| `serviceTransactionId`              | string  | Identificador de transacción asociado a la solicitud procesada por la API.                                                                   |
| `civilDataValidation`               | array   | Array que representa las validaciones OCR contra los datos obtenidos del Registro Civil. Su presencia depende del Registro Civil consultado. |
| `civilDataValidation[].field`       | string  | Nombre del campo validado (ej. `firstName`, `lastName`, `dateOfBirth`).                                                                      |
| `civilDataValidation[].code`        | string  | Código de resultado de la validación. `"0"`: Validado correctamente. `"-99"`: Posiblemente adulterado.                                       |
| `civilDataValidation[].message`     | string  | Mensaje descriptivo del resultado de la validación.                                                                                          |
| `serviceFacialAuthenticationResult` | integer | Código que indica el resultado de la coincidencia facial. Ver [Service Facial Authentication Result](#service-facial-authentication-result). |
| `serviceFacialSimilarityResult`     | number  | Valor que indica la similitud facial entre el rostro en la foto del documento y el selfie del usuario. **1.0 = 100%**.                       |
| `serviceFacialAuthenticationHash`   | string  | Hash de integridad de la plantilla biométrica utilizada en una autenticación facial positiva o incierta.                                     |

#### Ejemplo de respuesta

```json
{
  "serviceResultCode": 0,
  "serviceTime": "2800",
  "serviceResultLog": "Service executed ok",
  "serviceTransactionId": "24681357-2468-1357-9024-246813579024",
  "civilDataValidation": [
    {
      "field": "firstName",
      "code": "-99",
      "message": "Possibly adulterated"
    },
    {
      "field": "lastName",
      "code": "0",
      "message": "Validated ok"
    },
    {
      "field": "dateOfBirth",
      "code": "0",
      "message": "Validated ok"
    }
  ],
  "serviceFacialAuthenticationResult": 3,
  "serviceFacialSimilarityResult": 0.94,
  "serviceFacialAuthenticationHash": "NA"
}
```

## Facial Validation Web

Realiza la coincidencia facial contra las imágenes oficiales del Registro Civil de Honduras utilizando plataforma web. No incluye validación de datos.

### Cuerpo de la solicitud

**Content-Type:** `application/json`

#### Parámetros

| Parámetro              | Tipo   | Requerido | Descripción                                                                                             |
| ---------------------- | ------ | --------- | ------------------------------------------------------------------------------------------------------- |
| `operation`            | string | **Sí**    | Operación de validación a realizar. Valor: `"FACIAL"`.                                                  |
| `platform`             | string | **Sí**    | Plataforma desde la que se realiza la solicitud. Valor: `"WEB"`.                                        |
| `templateRaw`          | string | **Sí**    | Plantilla biométrica generada por el widget Selphi. Requerida para operaciones FACIAL o FULL.           |
| `documentNumber`       | string | No        | Número de documento del usuario. Requerido para operaciones FACIAL en Honduras.                         |
| `countryCode`          | string | **Sí**    | Código de país en formato ISO 3166-1 alfa-3. Valor: `"HND"`.                                            |
| `tracking`             | object | No        | Objeto que representa la información de seguimiento necesaria.                                          |
| `tracking.extraData`   | string | No        | Token generado por el SDK Mobile/Web. Contiene información de seguimiento tokenizada con la Plataforma. |
| `tracking.operationId` | string | No        | Identificador de operación generado por el SDK Mobile/Web.                                              |

#### Ejemplo de solicitud

```json
{
  "operation": "FACIAL",
  "platform": "WEB",
  "templateRaw": "base64TemplateRawString",
  "documentNumber": "205990558",
  "countryCode": "HND",
  "tracking": {
    "extraData": "BQABAQG2gBNjuHN...",
    "operationId": "xxxxx-xxxxx-xxxxx-xxxxx-xxxxx"
  }
}
```

### Respuestas

#### `200` Éxito

#### Parámetros de respuesta

| Parámetro                           | Tipo    | Descripción                                                                                                                                  |
| ----------------------------------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `serviceResultCode`                 | integer | Código que indica el resultado general de la ejecución del servicio. Ver [Service Result Code](#service-result-code).                        |
| `serviceTime`                       | string  | Tiempo total de procesamiento (milisegundos).                                                                                                |
| `serviceResultLog`                  | string  | Campo descriptivo del resultado de la ejecución del servicio. Incluye detalles cuando hay un error o excepción.                              |
| `serviceTransactionId`              | string  | Identificador de transacción asociado a la solicitud procesada por la API.                                                                   |
| `civilDataValidation`               | array   | Array que representa las validaciones OCR contra los datos obtenidos del Registro Civil. Su presencia depende del Registro Civil consultado. |
| `civilDataValidation[].field`       | string  | Nombre del campo validado (ej. `firstName`, `lastName`, `dateOfBirth`).                                                                      |
| `civilDataValidation[].code`        | string  | Código de resultado de la validación. `"0"`: Validado correctamente. `"-99"`: Posiblemente adulterado.                                       |
| `civilDataValidation[].message`     | string  | Mensaje descriptivo del resultado de la validación.                                                                                          |
| `serviceFacialAuthenticationResult` | integer | Código que indica el resultado de la coincidencia facial. Ver [Service Facial Authentication Result](#service-facial-authentication-result). |
| `serviceFacialSimilarityResult`     | number  | Valor que indica la similitud facial entre el rostro en la foto del documento y el selfie del usuario. **1.0 = 100%**.                       |
| `serviceFacialAuthenticationHash`   | string  | Hash de integridad de la plantilla biométrica utilizada en una autenticación facial positiva o incierta.                                     |

#### Ejemplo de respuesta

```json
{
  "serviceResultCode": 0,
  "serviceTime": "3200",
  "serviceResultLog": "Service executed ok",
  "serviceTransactionId": "87654321-4321-4321-4321-210987654321",
  "civilDataValidation": [
    {
      "field": "firstName",
      "code": "-99",
      "message": "Possibly adulterated"
    },
    {
      "field": "lastName",
      "code": "0",
      "message": "Validated ok"
    },
    {
      "field": "dateOfBirth",
      "code": "0",
      "message": "Validated ok"
    }
  ],
  "serviceFacialAuthenticationResult": 1,
  "serviceFacialSimilarityResult": 0.15,
  "serviceFacialAuthenticationHash": "NA"
}
```

## Tablas de referencia

#### Service Result Code

El `serviceResultCode` indica el resultado general de la ejecución del servicio:

| serviceResultCode | Descripción                                                                          | Código HTTP |
| ----------------- | ------------------------------------------------------------------------------------ | ----------- |
| 0                 | La ejecución del servicio fue exitosa, el módulo procesó la solicitud correctamente. | 200         |

#### Service Facial Authentication Result

El `serviceFacialAuthenticationResult` indica el resultado de las operaciones de coincidencia facial (solo para operaciones FULL y FACIAL):

| Código | Resultado                        | Descripción                                                                                                                                                                                           |
| ------ | -------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 0      | NONE                             | No se pudo realizar la verificación facial.                                                                                                                                                           |
| 1      | NEGATIVE                         | El proceso se ejecutó correctamente. La comparación del patrón facial de los rostros no coincide.                                                                                                     |
| 3      | POSITIVE                         | El proceso se ejecutó correctamente. La comparación del patrón facial de los rostros es positiva. El valor de `serviceFacialSimilarityResult` indica el % de similitud entre las imágenes comparadas. |
| 4      | NONE BECAUSE POSE EXCEED         | No se pudo realizar la verificación facial debido a la posición del rostro.                                                                                                                           |
| 5      | NONE BECAUSE INVALID EXTRACTIONS | No se pudo realizar la verificación facial debido a problemas en la extracción del patrón facial.                                                                                                     |

## Errores comunes

#### `400` Bad Request

```json
{
  "status": 400,
  "title": "Bad Request",
  "detail": "Invalid request.",
  "type": "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400",
  "errors": []
}
```

#### `401` Unauthorized

```json
{
  "message": "Unauthorized"
}
```

#### `403` Forbidden

```json
{
  "Message": "User is not authorized to access this resource with an explicit deny"
}
```

#### `502` Bad Gateway

```json
{
  "status": 502,
  "title": "Bad Gateway",
  "detail": "Server got an invalid response.",
  "type": "https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/502"
}
```

#### `504` Gateway Timeout

```json
{
  "message": "Endpoint request timed out"
}
```
