Panoramica
Document AI accetta fino a 3 documenti per passaggio (PDF o immagine — PDF, JPG, JPEG, PNG, TIFF, WebP). Ogni documento viene classificato in base al relativodocument_key configurato, letto da un modello di visione e linguaggio utilizzando uno schema ricavato dalle tue definizioni dei campi e sottoposto ad analisi forense PDF/EXIF. Per ogni documento vengono memorizzati:
- I campi estratti — una mappa indicizzata dalla
keydel campo che hai configurato, con valori tipizzati secondo la tua dichiarazione (text→ string,number→ number,date→YYYY-MM-DD). I campi che non è stato possibile leggere sononull. - Codici QR e codici a barre rilevati - payload decodificati e coordinate in pixel per ogni pagina renderizzata. Un codice QR individuabile ma non decodificabile viene comunque restituito con
parsed_payload: null. - Lo stato del documento —
Approved,In Review,DeclinedoNot Finished. - Metadati del documento — analisi forense del file, compresa qualsiasi evidenza di sovrapposizione o manipolazione.
- Risultati del controllo incrociato — l’esito della corrispondenza del nome con l’identità verificata e di eventuali riferimenti incrociati tra campi personalizzati.
Caricamento dei documenti
I documenti vengono caricati uno alla volta sull’endpoint di Document AI. In una sessione ospitata o in un flusso SDK questa operazione è gestita automaticamente; il contratto è:
La risposta fa avanzare il flusso:
next_step supera DOCUMENT_AI) una volta che ogni voce presente in required_document_keys compare in uploaded_document_keys e nessun documento rimane incompleto.
Dove compare nelle risposte API
GET /v3/session/{sessionId}/decision/ mostra Document AI in due punti, sia per le sessioni di Verifica degli utenti (KYC) sia per quelle di Verifica aziendale (KYB) — l’array document_ai_documents[] e il report PDF sono identici a prescindere dal valore di session_kind:
-
features[]— una voce di riepilogo per ciascun nodo Document AI, utilizzata per elencare quali funzionalità sono state eseguite: -
document_ai_documents[]— il risultato completo, un gruppo per ciascun nodo Document AI. Ogni gruppo contiene lostatuscombinato del nodo, l’elenco degliitemscaricati e gli eventualiwarnings. Ogni documento caricato è un elemento con i campi configurati (sottoextracted_data), i codici rilevati (sottodetected_codes), il propriostatus, le definizioni dei campi, i metadati forensidocument_metadatae ilcross_check_result.
Esempio di decisione
Per un documento di Prova dei fondi configurato conaccount_holder (text), balance (number), currency (text) e statement_date (date):
page_number inizia da 1. position contiene il poligono rilevato, mentre x, y, width e height forniscono il relativo riquadro di delimitazione. Tutte le coordinate utilizzano lo spazio in pixel della pagina renderizzata, le cui dimensioni sono page_width e page_height. detected_codes è un array vuoto quando non viene trovato alcun codice supportato. Considera un elemento con parsed_payload: null solo come presenza e posizione, non come valore decodificato.
Dato che ogni campo è indirizzabile come document_ai.<field_key>, puoi gestire la diramazione e le regole di stato personalizzate direttamente dai valori di extracted_data — inclusi i riferimenti incrociati con altri passaggi come kyc.full_name o le risposte ai questionari.