> ## 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: estrazione dati da documenti personalizzati

> Estrai dati da un massimo di 3 documenti con l'AI di Didit e confronta i campi definiti con altri passaggi e regole personalizzate.

Document AI ti consente di raccogliere documenti che non seguono un modello fisso — prova dei fondi, buste paga, lettere sull'origine del patrimonio, dichiarazioni dei redditi e qualsiasi altro documento — ed estrarre esattamente i campi che **tu** definisci. Configuri il titolo e la descrizione su schermo di ciascun documento (tradotti automaticamente in ogni lingua di verifica) e l'elenco degli elementi dei dati da leggere. L'IA di Didit estrae tali campi, li confronta facoltativamente con altri passaggi di verifica e applica le tue regole per generare uno stato.

Prompt di integrazione di Document AI
        Copia il prompt negli appunti



      
      

\<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>



      
      

Incolla in

> [!NOTE]
>
> Hai già il documento sul tuo server? Chiama direttamente l'[API di Document AI](https://docs.didit.me/it/standalone-apis/document-ai.md): invia il file insieme alle definizioni dei tuoi campi in una singola richiesta `POST /v3/document-ai/` e ricevi i campi estratti, la corrispondenza del nome e lo stato in modo sincrono, senza alcun flusso ospitato. \$0.20 per documento.## Come funziona**1. Configura documenti e campi**Nel generatore di workflow puoi definire fino a **3 documenti**. Per ciascun documento imposti:| Impostazione | Descrizione |
| - | - |
| **Titolo e descrizione** | Mostrati all'utente nella schermata di caricamento. Inseriti una sola volta e **tradotti automaticamente** in ogni lingua di verifica. |
| **Campi da estrarre** | Un elenco di campi tipizzati — ciascuno con un nome, un'istruzione di estrazione per l'IA, un tipo (`text`, `number`, `date`), un flag di obbligatorietà e un marcatore opzionale per il **nome completo**. |
| **Campo del nome** | Facoltativamente, contrassegna un campo di testo per documento come nome da verificare. In un workflow per persone fisiche (KYC) è il **nome completo**, confrontato con l'identità verificata; in un workflow aziendale (KYB) è la **ragione sociale**, confrontata con l'azienda verificata. `document_ai_name_mismatch_action` stabilisce cosa accade in caso di mancata corrispondenza. Opzionale — lascia il campo non impostato per saltare il controllo del nome per quel documento. |Inizia da un [modello](#modelli-di-partenza) o creane uno da zero.**2. L'utente carica i documenti**L'utente carica un file per ciascun documento configurato (PDF o immagine). Ogni caricamento viene elaborato in modo indipendente; il passaggio si completa una volta forniti tutti i documenti richiesti.**3. Estrazione tramite IA**Didit visualizza ciascun documento ed esegue un modello di visione e linguaggio con uno schema basato sulle definizioni dei tuoi campi. I valori estratti vengono restituiti tipizzati (i numeri come numeri, le date come `YYYY-MM-DD`) e memorizzati per documento. Viene eseguita un'analisi forense PDF/EXIF per rilevare eventuali manipolazioni.**4. Riferimenti incrociati e regole**I campi estratti possono essere confrontati con altri passaggi — ad esempio, il nome del titolare del documento con l'ID verificato, o qualsiasi campo con le risposte ai questionari — e con le tue **regole di base** e **regole di stato personalizzate**. Gli stati risultanti per ciascun documento si combinano nello stato della funzionalità.## Modelli di partenzaQuando aggiungi un nodo Document AI puoi iniziare da un modello pronto all'uso che precompila titolo, descrizione e campi tipizzati. Puoi personalizzare qualsiasi elemento successivamente.| Modello | Campi tipici |
| - | - |
| **Prova dei fondi** | Intestatario del conto, saldo, valuta, data dell'estratto conto |
| **Prova del reddito (busta paga)** | Datore di lavoro, nome del dipendente, stipendio lordo/netto, periodo di paga |
| **Origine del patrimonio** | Tipo di fonte, importo, data, istituto |
| **Documento fiscale** | Nome del contribuente, anno fiscale, reddito dichiarato, identificativo fiscale |## Riferimenti incrociati con altri passaggiI campi di Document AI sono accessibili come `document_ai.<field_key>` e possono essere confrontati con i campi di altri passaggi completati utilizzando una regola di stato personalizzata con `value_type: "field"`. Ad esempio:- `document_ai.account_holder` **uguale a** `kyc.full_name` — l'intestatario del documento corrisponde all'identità verificata.
- `document_ai.balance` **greater\_than** `50000` — segnala i saldi elevati per la revisione.Le regole di corrispondenza confluiscono nella decisione in base alla precedenza della piattaforma **Rifiutata > In revisione > Approvata**, pertanto una regola può aumentare la gravità ma non può mai sovrascrivere uno stato più restrittivo basato sul rischio. Consulta [Regole e avvisi](https://docs.didit.me/it/core-technology/document-ai/warnings-document-ai.md).## Requisiti dei documenti| Requisito | Dettaglio |
| - | - |
| **Documenti per passaggio** | Fino a 3, ciascuno configurato indipendentemente |
| **Formati supportati** | PDF, JPG, JPEG, PNG, TIFF, WebP |
| **Pagine** | PDF multipagina supportati |
| **Qualità** | Documento originale o scansione di alta qualità; nessuna modifica o manipolazione digitale |> [!NOTE]
>
> Document AI esegue la lettura di testo non strutturato, introducendo alcuni secondi di latenza per documento. I webhook vengono attivati solo al completamento dell'intero passaggio del workflow — non interrogare l'endpoint di decisione più frequentemente di ogni 5 s durante questo intervallo.


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