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

# Biometría con foto - Flows

> Verifica identidad en WhatsApp Flows

Este agente te permite ejecutar una verificación de identidad completa dentro de **WhatsApp Flows**, combinando prueba de vida por foto, validación de documento y comparación facial.

<Tip>
  Este agente bloquea el uso de documentos desde galería o documentos, evitando fraudes.
</Tip>

## Requisitos previos

### ✅ Checklist para iniciar sin bloqueos

* Debes contar con **cuenta verificada en WhatsApp**.
* Debes contar con el **PDF de Términos y Condiciones** (URL pública) para configurarlo en el agente. **Esto es obligatorio**.
* El usuario debe poder **tomar foto** desde el chat (los permisos de cámara deben de estar habilitados en el dispositivo).

## ¿Cómo funciona?

En menos de 1 minuto, el usuario completa los siguientes pasos:

<Steps>
  <Step title="Tomar una foto de su rostro">
    Utilizando la cámara frontal, el usuario toma una foto de su rostro. Se bloquea el acceso a la galería de fotos o documentos.
  </Step>

  <Step title="Capturar fotos de su documento de identidad">
    Se solicitan fotos **frontal y reverso** del documento de identidad, para validar *vigencia y autenticidad*. Se bloquea el acceso a la galería de fotos o documentos.
  </Step>

  <Step title="Comparación facial automática">
    El sistema aplica la técnica 1:1, comparando la foto con la imagen del documento (o con la fuente gubernamental oficial si está habilitada).
  </Step>
</Steps>

<Tip>
  Si necesitas implementar solo una parte del proceso (por ejemplo, solo documento), revisa la configuración en **[Agentes por etapa](/guides/integraciones/identidad/agentes-por-etapa)**.
</Tip>

## ¿Cómo conectar la integración?

<Frame caption="Cómo conectar la integración de Biometría">
  <iframe width="100%" height="400" src="https://www.youtube.com/embed/b_hlkjk0pQs" title="Conectar Biometría" frameBorder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />
</Frame>

<Info>
  La opción **Flows** está disponible solo para planes **Business** y **Enterprise**.
</Info>

<Steps>
  <Step title="Ingresa a la plataforma">
    Utiliza el Agente para crear un flujo de biometría, o selecciona el template **Validación de identidad**.
    Si quieres iniciar un flujo desde cero, haz clic en Brain Studio en el sidebar.
  </Step>

  <Step title="Selecciona Biometría">
    En la barra de herramientas verás la opción **Biometría**. Haz clic en **Conectar**.
  </Step>

  <Step title="Conecta la integración">
    Al conectarla verás el nodo **Biometría**. En el panel lateral, selecciona **Biometría con foto — Flows WhatsApp** en el dropdown **Selecciona el tipo de biometría**.
  </Step>

  <Step title="Configurar outputs">
    Este agente cuenta con **1 output de éxito y 3 de error**. Cada uno puedes dirigirlo a:

    * Input de texto con mensaje personalizado.
    * Connect, solo si cuentas con este módulo.
  </Step>

  <Step title="Probar">
    Con la configuración que acabas de realizar, puedes proceder a realizar las pruebas con el botón Probar.
  </Step>
</Steps>

<Info>
  <span style={{ fontWeight: 600 }}>Importante</span>:
  El campo **“PDF Términos y Condiciones” es obligatorio**.
  El documento debe incluir de forma explícita el uso, almacenamiento y tratamiento de datos personales y biométricos.
  Debe presentarse y aceptarse **antes de iniciar el proceso de verificación**.
</Info>

## Configuración

### Éxito

<AccordionGroup>
  <Accordion title="Biometría Aprobada" icon="circle-check">
    Confirma que la verificación biométrica fue exitosa.

    **Variable:** `biometricVerificationSuccess`

    **Estructura de respuesta (JSON):**

    ```json theme={null}
    {
      "response_document_check_success": {
        "document_check": {
          "verified_fields": { "...": "Datos principales del documento" },
          "secondary_fields": { "...": "Datos secundarios del documento" },
          "details": { "...": "Detalles del tipo de documento" },
          "image_quality_details": { "...": "Detalles de la calidad de la imagen" },
          "images_extracted": { "...": "Imágenes extraídas del documento" },
          "gov_entity_fields": { "document_number": "Número del documento de identidad" }
        },
        "gov_entity_data": { "...": "Datos de la entidad gubernamental del país" },
        "document_image_front_url": "URL de la imagen frontal del documento",
        "document_image_back_url": "URL de la imagen posterior del documento",
        "document_face_image_url": "URL del rostro del documento"
      },
      "response_liveness_success": {
        "result": "true/false",
        "url_selfie_image": "URL de la foto obtenida para validar vivacidad"
      },
      "result_facematch": {
        "facematch_result": "approved / decline",
        "facematch_confidence": "Porcentaje de coincidencia (0-100)"
      },
      "reporte_de_biometria": {
        "report": "URL del reporte de biometría (web)",
        "report_pdf": "URL del reporte de biometría (PDF)"
      }
    }
    ```

    **Campos importantes:**

    * `response_document_check_success`: Información del documento de identidad
    * `response_liveness_success`: Foto enviada para validar la prueba de vida
    * `result_facematch`: Resultado de la comparación facial
    * `reporte_de_biometria`: URLs del reporte en formato web y PDF
  </Accordion>
</AccordionGroup>

### Errores

<AccordionGroup>
  <Accordion title="Biometría Rechazada" icon="ban">
    La verificación biométrica no pudo completarse.

    **Variables:** `documentCheckError` · `livenessError`

    **Descripción:** No se logró validar el documento del usuario, o no se logró detectar la vivacidad del usuario.
  </Accordion>

  <Accordion title="Proceso abandonado" icon="door-open">
    El usuario abandonó el proceso antes de completarlo.

    **Variable:** `userExitProcess`
  </Accordion>

  <Accordion title="Error en el proceso" icon="triangle-exclamation">
    Ha ocurrido un problema con el servicio.

    **Variable:** `serviceError`
  </Accordion>
</AccordionGroup>

## Reporte

Por defecto se crea una base de datos llamada **"Reporte Agente de Biometría"** con los siguientes campos:

| **Campo**                   | **Descripción**                    |
| --------------------------- | ---------------------------------- |
| Código de Biometría         | Identificador único del proceso    |
| Fecha y Hora                | Timestamp de la verificación       |
| Resultado Biometría         | Estado final del proceso           |
| Número de Identificación    | Documento del usuario              |
| Tipo de Identificación      | Tipo de documento                  |
| Nombres                     | Nombres del usuario                |
| Apellidos                   | Apellidos del usuario              |
| Fecha de Nacimiento         | Fecha de nacimiento                |
| Celular                     | Teléfono del usuario               |
| Email                       | Correo electrónico                 |
| Resultado Prueba de Vida    | Estado de la prueba de vida        |
| Foto Selfie                 | URL de la foto extraída            |
| Resultado Document Check    | Estado de validación del documento |
| Foto de Documento Delantera | URL de la imagen frontal           |
| Foto de Documento Posterior | URL de la imagen posterior         |
| Foto Rostro en Documento    | URL de la foto del documento       |
| Entidad Gubernamental       | Entidad consultada                 |
| Resultado Facematch         | Porcentaje de coincidencia facial  |
| Reporte de Biometría        | URL del reporte web                |
| Descripción de Fallo        | Detalles del error (si aplica)     |
| Observaciones               | Notas adicionales                  |

<Info>
  El reporte biométrico se encuentra disponible para descargarlo en formato **PDF**, este contiene toda la información detallada en la tabla.
</Info>

## ¿Cómo personalizar la experiencia?

Al hacer clic en el nodo **Biometría** en el canvas, se abre un panel lateral con las siguientes pestañas de configuración.

<Tabs>
  <Tab title="General">
    Configura la cantidad de reintentos y las opciones de validación de la experiencia completa.

    * **Máximo intentos en biometría** — define cuántas veces el usuario puede reintentar el proceso completo (1, 2 o 3 intentos).
    * **Verificación de fecha de caducidad** — activa la validación de vigencia del documento de identidad.
    * **Términos y condiciones** — habilita la pantalla de aceptación de términos antes de iniciar el proceso.
  </Tab>

  <Tab title="Validaciones">
    Define los niveles mínimos de validación que debe superar el usuario para que el proceso se considere exitoso.

    | Parámetro                    | Descripción                                                                                    |
    | ---------------------------- | ---------------------------------------------------------------------------------------------- |
    | **Comparación facial**       | Porcentaje mínimo de similitud aceptado entre la selfie y la foto del documento.               |
    | **Validación gubernamental** | Habilita la consulta de la identidad contra la entidad gubernamental del país.                 |
    | **Human in the loop**        | Activa la revisión manual por un agente humano en casos de baja confianza o resultado ambiguo. |
  </Tab>
</Tabs>

## Preguntas frecuentes

<AccordionGroup>
  <Accordion title="¿El agente responde si no ingreso datos en ningún campo?">
    Sí, el agente puede responder porque todos los campos tienen valores por defecto. Sin embargo, es **obligatorio seleccionar la versión del agente**; te recomendamos siempre seleccionar la última versión pública disponible.
  </Accordion>

  <Accordion title="¿Qué documentos se necesitan durante el proceso biométrico?">
    Se requieren fotos del **documento de identidad por ambos lados**: frontal y reverso
  </Accordion>

  <Accordion title="¿Es posible omitir algún paso en este agente?">
    No. Este agente está diseñado como un flujo completo: **foto + documento + facematch**. Si necesitas solo una parte (por ejemplo, solo documento), debes instalar los agentes por etapa.
  </Accordion>

  <Accordion title="¿Puedo personalizar los textos de este agente?">
    No, no puedes modificar los textos de interacción. Puedes agregar mensajes, condicionales y otras personalizaciones en tu flujo en canva.
  </Accordion>

  <Accordion title="¿Qué medidas de seguridad aplica este agente?">
    * **Cifrado en tránsito y en reposo**.
    * **Registro de evidencias** con hashes para asegurar integridad.
    * **Control de acceso** con roles (RBAC) y **MFA**.
  </Accordion>

  <Accordion title="¿Cuántos intentos tiene el usuario antes de ser bloqueado?">
    Depende de tu configuración:

    * **Cantidad máxima intentos Biometría** (`maxBiometricAttempts`): controla intentos de biometría.
  </Accordion>
</AccordionGroup>
