Visão geral
O Document AI aceita até 3 documentos por passo (PDF ou imagem — PDF, JPG, JPEG, PNG, TIFF, WebP). Cada documento é classificado de acordo com adocument_key configurada, lido por um modelo de visão e linguagem com recurso a um esquema construído a partir das suas definições de campos, e submetido a uma análise forense de PDF/EXIF. Para cada documento, armazena:
- Os campos extraídos — um mapa indexado pela
keyde campo configurada, com valores tipificados conforme os declarou (text→ string,number→ number,date→YYYY-MM-DD). Os campos que não puderam ser lidos sãonull. - Códigos QR e códigos de barras detetados - payloads descodificados e coordenadas em píxeis para cada página renderizada. Um código QR que possa ser localizado mas não descodificado continua a ser retornado com
parsed_payload: null. - O estado do documento —
Approved,In Review,DeclinedouNot Finished. - Metadados do documento — análise forense do ficheiro, incluindo eventuais indícios de sobreposição/manipulação.
- Resultados da verificação cruzada — o resultado da correspondência de nomes com a identidade verificada e de quaisquer referências cruzadas de campos personalizados.
Envio de documentos
Os documentos são enviados um de cada vez para o endpoint do Document AI. Numa sessão alojada ou num fluxo de SDK, isto é tratado por si; o contrato é:
A resposta avança o fluxo:
next_step avança para além de DOCUMENT_AI) assim que todas as entradas em required_document_keys figurarem em uploaded_document_keys e nenhum documento ficar por concluir.
Onde aparece nas respostas da API
OGET /v3/session/{sessionId}/decision/ apresenta o Document AI em dois locais, tanto para sessões de Verificação de utilizadores (KYC) como de Verificação de empresas (KYB) — o array document_ai_documents[] e o relatório em PDF são idênticos independentemente de session_kind:
-
features[]— uma entrada de resumo por nó do Document AI, utilizada para enumerar quais as funcionalidades executadas: -
document_ai_documents[]— o resultado completo, um grupo por nó do Document AI. Cada grupo contém ostatuscombinado do nó, a lista deitemsenviados e quaisquerwarnings. Cada documento enviado é um item com os campos que configurou (sobextracted_data), códigos detetados (sobdetected_codes), o seu própriostatus, as definições de campos, os metadados forenses emdocument_metadatae ocross_check_result.
Exemplo de decisão
Para um documento de Comprovativo de fundos configurado comaccount_holder (texto), balance (número), currency (texto) e statement_date (data):
page_number começa em 1. A position contém o polígono detetado, enquanto x, y, width e height fornecem a sua caixa delimitadora. Todas as coordenadas utilizam o espaço de píxeis da página renderizada, cujas dimensões são page_width e page_height. detected_codes é um array vazio quando não é encontrado nenhum código suportado. Trate um item com parsed_payload: null apenas como presença e localização, não como um valor descodificado.
Uma vez que cada campo é endereçável como document_ai.<field_key>, pode orientar ramificações e regras de estado personalizadas diretamente a partir dos valores de extracted_data — incluindo referências cruzadas com outros passos, como kyc.full_name ou respostas a questionários.