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

# Configuration

> Review Facial Biometrics outputs, responses, and failure reasons.

## Outputs

### Success

> [accordion] Facial Biometrics approved
>
> Confirms a successful facial verification.
>
> **Variable:** `approved`
>
> **Response structure:**
>
> ```json theme={null}
> {
>   "document_response": { "document_check": { "skipped": true, "reason": "not_in_biometric_flow" } },
>   "liveness_response": { "result": "APROBADO", "url_selfie_image": "Approved selfie URL" },
>   "facematch_response": { "facematch_result": "approved", "facematch_confidence": 97.4, "threshold": 80 },
>   "gov_response": { "gov_entity_data": "Civil Registry data or skipped reference" },
>   "reporte_de_biometria": { "report": "Web report URL", "report_pdf": "PDF report URL" }
> }
> ```
>
> **Response by experience:**
>
> > [tab] Civil Registry photo
> >
> > ```json theme={null}
> > {
> >   "verification_success": "true",
> >   "facematch_response": { "facematch_result": "approved", "facematch_confidence": 97.4, "threshold": 80 },
> >   "gov_response": { "gov_entity_data": { "gov_result": "APROBADO" } },
> >   "document_response": { "document_check": { "skipped": true, "reason": "not_in_biometric_flow" } }
> > }
> > ```
> >
> > The reference image comes from Ecuador's Civil Registry after validating the ID and fingerprint code.
>
> > [tab] Photo from the node or Memory
> >
> > ```json theme={null}
> > {
> >   "verification_success": "true",
> >   "facematch_response": { "facematch_result": "approved", "facematch_confidence": 97.4, "threshold": 80 },
> >   "gov_response": { "gov_entity_data": { "skipped": true, "reason": "face_reference_client" } },
> >   "document_response": { "document_check": { "skipped": true, "reason": "not_in_biometric_flow" } }
> > }
> > ```
> >
> > The reference image is `referenceImageUrl`, supplied by the Biometrics node or retrieved from **Memory**. The user only completes liveness.
>
> Important fields are `liveness_response`, `facematch_response`, `gov_response`, `reporte_de_biometria`, and the device audit fields.

### Errors

> [accordion] Process abandoned
>
> The user left before completing the process. **Variable:**`incomplete`.

> [accordion] Facial Biometrics rejected
>
> Liveness or facial comparison failed. **Variable:**`reject`.

> [accordion] Process error
>
> An error occurred while running the experience. **Variable:**`error`.

### Failure reasons

| Situation | `failure_step` | `failure_reason` |
| - | - | - |
| ID attempts exhausted | `document_government` | `gov_identity_max_attempts` |
| Civil Registry limit | `document_government` | `gov_identity_rate_limited` |
| Faces do not match | `facematch` | `facematch_failed` |
| Reference unavailable | `facematch` | `reference_image_unavailable` |
| Session expired | `session` | `session_expired` |

## Resuming and expiration

If the user closes and reopens the link while the session is valid, they continue where they left off and keep used attempts. When it expires, **This link is no longer available** appears and the webhook includes `failure_step: "session"` and `failure_reason: "session_expired"`. A new link is required.


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