Vue d’ensemble
Document AI accepte jusqu’à 3 documents par étape (PDF ou image — PDF, JPG, JPEG, PNG, TIFF, WebP). Chaque document est classé selon sondocument_key configuré, lu par un modèle vision-langage à l’aide d’un schéma élaboré à partir de vos définitions de champs, et soumis à une analyse forensique PDF/EXIF. Pour chaque document, il conserve :
- Les champs extraits — une structure indexée par votre
keyde champ configurée, avec des valeurs typées selon votre déclaration (text→ chaîne,number→ nombre,date→YYYY-MM-DD). Les champs qui n’ont pas pu être lus ont pour valeurnull. - Les codes QR et codes-barres détectés - les payloads décodés et les coordonnées en pixels pour chaque page rendue. Un code QR qui peut être localisé mais pas décodé est tout de même renvoyé avec
parsed_payload: null. - Le statut du document —
Approved,In Review,DeclinedouNot Finished. - Les métadonnées du document — les éléments forensiques du fichier, y compris toute preuve d’incrustation ou de manipulation.
- Les résultats des vérifications croisées — le résultat de la correspondance du nom avec l’identité vérifiée ainsi que de tout recoupement de champs personnalisés.
Téléversement de documents
Les documents sont téléversés un par un vers l’endpoint Document AI. Dans une session hébergée ou un flux SDK, cela est géré pour vous ; le contrat est :
La réponse fait progresser le flux :
next_step passe après DOCUMENT_AI) dès que chaque entrée de required_document_keys apparaît dans uploaded_document_keys et qu’aucun document n’est laissé inachevé.
Où cela apparaît dans les réponses de l’API
GET /v3/session/{sessionId}/decision/ fait apparaître Document AI à deux endroits, aussi bien pour les sessions de Vérification des utilisateurs (KYC) que de Vérification d’entreprise (KYB) — le tableau document_ai_documents[] et le rapport PDF sont identiques quel que soit session_kind :
-
features[]— une entrée récapitulative par nœud Document AI, utilisée pour énumérer les fonctionnalités exécutées : -
document_ai_documents[]— le résultat complet, un groupe par nœud Document AI. Chaque groupe contient lestatuscombiné du nœud, la liste desitemstéléversés et les éventuelswarnings. Chaque document téléversé est un élément comprenant les champs que vous avez configurés (sousextracted_data), les codes détectés (sousdetected_codes), son proprestatus, les définitions des champs, les éléments forensiquesdocument_metadataetcross_check_result.
Exemple de décision
Pour un document de type Justificatif de fonds configuré avecaccount_holder (text), balance (number), currency (text) et statement_date (date) :
page_number commence à 1. position contient le polygone détecté, tandis que x, y, width et height fournissent sa boîte englobante. Toutes les coordonnées utilisent l’espace en pixels de la page rendue, dont les dimensions sont page_width et page_height. detected_codes est un tableau vide si aucun code pris en charge n’est trouvé. Considérez un élément avec parsed_payload: null comme une simple présence et localisation, et non comme une valeur décodée.
Comme chaque champ est accessible sous la forme document_ai.<field_key>, vous pouvez piloter les branchements et les règles de statut personnalisées directement à partir des valeurs de extracted_data — y compris des recoupements avec d’autres étapes comme kyc.full_name ou des réponses à des questionnaires.