portrait_image que proporcionaste o el rostro almacenado del usuario, localizado mediante vendor_data). Ambas comprobaciones aparecen como elementos estándar de las funciones en la respuesta de decisión de sesión V3.

Visión general
La Autenticación biométrica es un tipo de flujo (workflow_type: "biometric_authentication"), no un objeto de respuesta independiente. Cuando el flujo se ejecuta, emite:
- Una prueba de vida que captura una selfie en vivo y la evalúa para detectar suplantación.
- Una coincidencia facial que compara el rostro capturado con el rostro de referencia determinado al crear la sesión (solo cuando la Coincidencia facial está habilitada en el flujo).
portrait_image (imagen codificada en base64, máximo 2MB) u omítela, y Didit reutilizará el rostro ya almacenado para el usuario de vendor_data: primero un rostro de una prueba de vida aprobada, después la foto del chip del pasaporte electrónico, después el retrato del documento de identidad y, por último, un rostro de perfil registrado manualmente. Si no hay ni portrait_image ni un rostro almacenado disponible, la creación de la sesión devuelve 400 con {"portrait_image": "No stored face image was found for this user. Send a portrait_image, or complete an approved verification with face liveness or an ID document for this vendor_data first."}. En ambos casos, la referencia determinada se registra en la nueva sesión, por lo que el source_image_session_id del elemento de coincidencia facial se establece en el propio session_id de esa sesión (esto indica que la referencia procede del retrato almacenado de la sesión y no de un retrato de documento capturado en la misma sesión, que dejaría el campo en null).
Dónde aparece
Ambos arrays los devuelve
GET /v3/session/{sessionId}/decision/ para las sesiones cuyo tipo de flujo es biometric_authentication. Siempre son arrays, nunca objetos individuales, y cada elemento es null hasta que su paso ha generado datos. Cada elemento incluye un node_id para que los flujos con varias instancias puedan distinguir los pasos.
Referencia del esquema
La lista completa de campos se define una sola vez en la página de modelos de datos, para que todos los informes que muestran estas funciones compartan una única fuente de verdad:- Esquema del elemento de prueba de vida:
status,method,score,reference_image,video_url,age_estimation,matches[],face_quality,face_luminance,warnings[],node_id. - Esquema del elemento de coincidencia facial:
status,score,source_image_session_id,source_image,target_image,warnings[],node_id. - Estructura de una entrada de advertencia:
feature,risk,additional_data,log_type,short_description,long_description,node_id.
Valores de estado
Tantoliveness_checks[].status como face_matches[].status usan el ciclo de vida compartido de las funciones (estados a nivel de función):
El
status general de la sesión agrega ambos elementos: cualquier función en Declined rechaza la sesión, cualquiera en In Review pone la sesión en In Review y, en caso contrario, queda en Approved (cuando todas las funciones han terminado).
Para el comportamiento de los umbrales y la lista completa de códigos de advertencia, consulta Advertencias de Autenticación biométrica.
Ejemplo — prueba de vida + coincidencia facial (aprobado)
Los ejemplos están abreviados: la estructura completa de la decisión también incluyesession_url, metadata, callback, reviews, contact_details, expected_details, environment, created_at y expires_at.
Ejemplo — solo prueba de vida (Coincidencia facial deshabilitada en el flujo)
face_matches permanece en null. Cuando la Coincidencia facial está habilitada, omitir portrait_image no activa el modo de solo prueba de vida: Didit reutiliza el rostro almacenado para el usuario de vendor_data y, si no existe ningún rostro almacenado, la creación de la sesión falla con 400.
Ejemplo — coincidencia facial rechazada por baja similitud
Nota de seguridad
reference_image, video_url, source_image y target_image son URL firmadas que caducan tras un periodo de validez limitado (4 horas de forma predeterminada). Apuntan a datos biométricos: no las almacenes en caché ni las expongas públicamente. Guarda el resultado de la verificación (estado, puntuación, source_image_session_id) en tu sistema; vuelve a consultar el endpoint de decisión si necesitas URL nuevas.
Relacionado
Advertencias de autenticación biométrica
Códigos de advertencia, umbrales y condiciones de rechazo automático.
Informe de prueba de vida
Referencia completa de los campos de los elementos de
liveness_checks[].Informe de coincidencia facial
Referencia completa de los campos de los elementos de
face_matches[].