Saltar al contenido principal

Descripción general

Document AI acepta hasta 3 documentos por paso (PDF o imagen: PDF, JPG, JPEG, PNG, TIFF, WebP). Cada documento se clasifica según su document_key configurado, lo lee un modelo de visión y lenguaje con un esquema construido a partir de tus definiciones de campos y se somete a un análisis forense de PDF/EXIF. Para cada documento se almacena:
  • Los campos extraídos: un mapa cuyas claves son los key de campo que configuraste, con valores tipados según los declaraste (text → string, number → number, date → YYYY-MM-DD). Los campos que no se pudieron leer son null.
  • Códigos QR y códigos de barras detectados: payloads decodificados y coordenadas en píxeles para cada página renderizada. Un código QR que se puede localizar pero no decodificar se devuelve igualmente con parsed_payload: null.
  • El estado del documento: Approved, In Review, Declined o Not Finished.
  • Metadatos del documento: análisis forense del archivo, incluida cualquier evidencia de superposición o manipulación.
  • Resultados de la verificación cruzada: el resultado de la comparación del nombre con la identidad verificada y de cualquier referencia cruzada de campos personalizados.

Subida de documentos

Los documentos se suben de uno en uno al endpoint de Document AI. En una sesión alojada o en un flujo con SDK, esto se gestiona automáticamente; el contrato es:
La respuesta hace avanzar el flujo:
El paso se completa (next_step pasa más allá de DOCUMENT_AI) cuando todas las entradas de required_document_keys aparecen en uploaded_document_keys y no queda ningún documento sin terminar.

Dónde aparece en las respuestas de la API

GET /v3/session/{sessionId}/decision/ muestra Document AI en dos lugares, tanto en sesiones de Verificación de usuarios (KYC) como de Verificación de empresas (KYB). El array document_ai_documents[] y el informe en PDF son idénticos independientemente de session_kind:
  • features[]: una entrada de resumen por cada nodo de Document AI, que se usa para enumerar qué funciones se ejecutaron:
  • document_ai_documents[]: el resultado completo, con un grupo por cada nodo de Document AI. Cada grupo incluye el status combinado del nodo, la lista de items subidos y cualquier warnings. Cada documento subido es un elemento con los campos que configuraste (en extracted_data), los códigos detectados (en detected_codes), su propio status, las definiciones de campos, los document_metadata forenses y cross_check_result.
Los estados de cada documento de un nodo se combinan en el estado del nodo según la precedencia Declined > In Review > Approved.

Ejemplo de decisión

Para un documento de Prueba de fondos configurado con account_holder (texto), balance (número), currency (texto) y statement_date (fecha):
page_number empieza en 1. position contiene el polígono detectado, mientras que x, y, width y height indican su rectángulo delimitador. Todas las coordenadas usan el espacio de píxeles de la página renderizada, cuyas dimensiones son page_width y page_height. detected_codes es un array vacío cuando no se encuentra ningún código compatible. Trata un elemento con parsed_payload: null solo como indicación de presencia y ubicación, no como un valor decodificado. Como se puede hacer referencia a cada campo mediante document_ai.<field_key>, puedes controlar las bifurcaciones y las reglas de estado personalizadas directamente a partir de los valores de extracted_data, incluidas las referencias cruzadas con otros pasos, como kyc.full_name o las respuestas de cuestionarios.
Última modificación el 1 de noviembre de 2026