> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Document AI : extraction de données personnalisée

> Didit collecte jusqu'à 3 documents sur mesure, extrait les champs par IA et les recoupe avec vos règles et autres étapes.

Document AI vous permet de collecter des documents qui ne correspondent pas à un modèle fixe — justificatifs de fonds, fiches de paie, lettres justifiant l'origine du patrimoine, déclarations fiscales, etc. — et d'extraire exactement les champs que **vous** définissez. Vous configurez le titre et la description à l'écran de chaque document (automatiquement traduits dans chaque langue de vérification) ainsi que la liste des points de données à lire. L'IA de Didit extrait ces champs, les recoupe éventuellement avec d'autres étapes de vérification, et applique vos règles pour générer un statut.

Prompt d'intégration Document AI
        Copier le prompt dans le presse-papiers



      
      

\<pre>

\`# Goal
Integrate Didit Document AI (configurable multi-document upload + AI field extraction + cross-checks) into your app.

\# Setup (Business Console or POST /v3/workflows/)
Add the DOCUMENT_AI feature to your workflow and configure:
\- document_ai_documents: up to 3 documents. Each has { document_key, title, description, fields[] }.
Each field is { key, name, instruction, type: "text" | "number" | "date", required, is_full_name }.
title and description are auto-translated into every verification language on save.
\- is_full_name: optional boolean on a field. Marks the field whose value is compared automatically against the
verified subject: on a person (KYC) workflow the document holder's full name (the ID-verification name, or the
session's expected details), and on a business (KYB) workflow the verified company name (the registry-matched
company, or the session's expected company name). A low match below document_ai_name_match_score_threshold
triggers document_ai_name_mismatch_action. At most one field per document may set it, and it is optional — a
document may mark none (no name check runs).
\- Basic rules (per-risk action DECLINE | REVIEW | NO_ACTION): document_ai_unreadable_document_action,
document_ai_missing_required_fields_action, document_ai_document_tampering_action,
document_ai_name_mismatch_action, document_ai_unsupported_file_action, document_ai_max_attempts_exceeded_action.
\- document_ai_name_match_score_threshold (0-100), document_ai_max_retry_attempts (2-5).
\- status_rules[]: custom rules on any extracted field. Reference an extracted field as document_ai.<field_key>
and cross-reference other steps with value_type:"field" (e.g. document_ai.account_holder equals kyc.full_name).

\# Flow
1\. Create a session — POST /v3/session/ with { workflow_id, vendor_data, callback }. See /sessions-api/create-session.
2\. Open session.url for the user (or mount the Web/Mobile SDK). The user uploads each configured document.
3\. The user uploads documents to POST /v3/document-ai/documents/ (handled by the hosted flow/SDK):
multipart/form-data with { document_key, document, locale? }, Session-Token auth.
Response: { valid?, next_step, document_ai_status, uploaded_document_keys[], required_document_keys[] }.
The step completes once every configured document_key is uploaded.
4\. Fetch the decision — GET /v3/session/{sessionId}/decision/ or subscribe to session.status.updated.

\# Decision surface
DOCUMENT_AI appears in the decision features[] array as { feature: "DOCUMENT_AI", node_id }.
Per-document statuses combine via precedence Declined > In Review > Approved.

\# See also
\- Report: /core-technology/document-ai/report-document-ai
\- Rules & warnings: /core-technology/document-ai/warnings-document-ai
\- Configure in the console: /console/workflows
\- Standalone API (server-to-server, no hosted UI): POST /v3/document-ai/ — /standalone-apis/document-ai`

\</pre>



      
      

Coller dans

> [!NOTE]
>
> Vous avez déjà le document sur votre serveur ? Appelez directement l'[API Document AI](https://docs.didit.me/fr/standalone-apis/document-ai.md) : envoyez le fichier ainsi que vos définitions de champs dans une seule requête `POST /v3/document-ai/` et récupérez de manière synchrone les champs extraits, la correspondance du nom et le statut, sans flux hébergé. \$0.20 par document.## Comment cela fonctionne**1. Configurer les documents et les champs**Dans le configurateur de workflow, vous définissez jusqu'à **3 documents**. Pour chaque document, vous configurez :| Paramètre | Description |
| - | - |
| **Titre et description** | Affichés à l'utilisateur sur l'écran de téléversement. Saisis une seule fois et **traduits automatiquement** dans chaque langue de vérification. |
| **Champs à extraire** | Une liste de champs typés — chacun avec un nom, une instruction d'extraction pour l'IA, un type (`text`, `number`, `date`), un indicateur obligatoire et un marqueur optionnel **nom complet**. |
| **Champ de nom** | Marquez facultativement un champ texte par document comme étant le nom à faire correspondre. Sur un workflow de personne physique (KYC), il s'agit du **nom complet**, comparé à l'identité vérifiée ; sur un workflow d'entreprise (KYB), il s'agit de la **raison sociale**, comparée à l'entreprise vérifiée. `document_ai_name_mismatch_action` détermine ce qui se passe en cas de non-concordance. Facultatif — laissez-le non défini pour ignorer la vérification du nom pour ce document. |Démarrez à partir d'un [modèle](#modèles-de-démarrage) ou créez-en un de toutes pièces.**2. L'utilisateur téléverse les documents**L'utilisateur téléverse un fichier par document configuré (PDF ou image). Chaque téléversement est traité indépendamment ; l'étape se termine dès que chaque document requis a été fourni.**3. Extraction par l'IA**Didit effectue le rendu de chaque document et exécute un modèle vision-langage avec un schéma construit à partir de vos définitions de champs. Les valeurs extraites sont renvoyées typées (les nombres sous forme de nombres, les dates sous la forme `YYYY-MM-DD`) et stockées par document. Des analyses forensiques des PDF et des données EXIF sont effectuées pour détecter toute manipulation.**4. Recoupement et règles**Les champs extraits peuvent être recoupés avec d'autres étapes — par exemple, le nom du titulaire du document avec la pièce d'identité vérifiée, ou tout champ avec les réponses aux questionnaires — ainsi qu'avec vos **règles de base** et vos **règles de statut personnalisées**. Les statuts résultants par document sont combinés dans le statut de la fonctionnalité.## Modèles de démarrageLorsque vous ajoutez un nœud Document AI, vous pouvez partir d'un modèle prêt à l'emploi qui préremplit le titre, la description et les champs typés. Personnalisez ensuite ce que vous souhaitez.| Modèle | Champs courants |
| - | - |
| **Justificatif de fonds** | Titulaire du compte, solde, devise, date du relevé |
| **Justificatif de revenus (fiche de paie)** | Employeur, nom de l'employé, salaire brut/net, période de paie |
| **Origine du patrimoine** | Type de source, montant, date, établissement |
| **Document fiscal** | Nom du contribuable, année fiscale, revenus déclarés, identifiant fiscal |## Recoupement avec d'autres étapesLes champs de Document AI sont accessibles sous la forme `document_ai.<field_key>` et peuvent être comparés aux champs d'autres étapes terminées à l'aide d'une règle de statut personnalisée avec `value_type: "field"`. Par exemple :- `document_ai.account_holder` **égal à** `kyc.full_name` — le titulaire du document correspond à l'identité vérifiée.
- `document_ai.balance` **greater\_than** `50000` — signaler les soldes élevés pour examen.Les règles de correspondance s'intègrent dans la décision selon l'ordre de priorité de la plateforme **Refusé > En cours d'examen > Approuvé**, de sorte qu'une règle peut augmenter la sévérité mais ne peut jamais remplacer un statut plus strict lié au risque. Voir [Règles et avertissements](https://docs.didit.me/fr/core-technology/document-ai/warnings-document-ai.md).## Exigences relatives aux documents| Exigence | Détail |
| - | - |
| **Documents par étape** | Jusqu'à 3, chacun configuré indépendamment |
| **Formats pris en charge** | PDF, JPG, JPEG, PNG, TIFF, WebP |
| **Pages** | PDF multipages pris en charge |
| **Qualité** | Document original ou numérisation de haute qualité ; aucune retouche ni manipulation numérique |> [!NOTE]
>
> Document AI effectue une lecture de texte non structuré, ce qui introduit quelques secondes de latence par document. Les webhooks ne se déclenchent que lorsque l'étape complète du workflow est terminée — n'interrogez pas l'endpoint de décision plus souvent que toutes les 5 s pendant cette fenêtre.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.