> ## 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: извлечение данных из любых документов

> Didit собирает до 3 документов и извлекает заданные поля с помощью AI для перекрёстной проверки с другими шагами и правилами.

Document AI позволяет собирать документы, не соответствующие фиксированным шаблонам (подтверждение наличия средств, расчётные листки, письма об источнике благосостояния, налоговые выписки и любые другие), и извлекать именно те поля, которые определили **вы**. Вы задаёте заголовок и описание документа на экране (они автоматически переводятся на все языки верификации), а также список считываемых данных. AI от Didit извлекает эти поля, при необходимости сопоставляет их с данными других шагов верификации и применяет ваши правила для формирования статуса.

Промпт для интеграции Document AI
        Скопировать промпт в буфер обмена



      
      

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



      
      

Вставьте в

> [!NOTE]
>
> Документ уже находится на вашем сервере? Вызывайте [Document AI API](https://docs.didit.me/ru/standalone-apis/document-ai.md) напрямую: отправьте файл и определения полей в одном запросе `POST /v3/document-ai/` и синхронно получите извлечённые поля, совпадение имени и статус без использования размещённого процесса верификации. \$0.20 за документ.## Как это работает**1. Настройте документы и поля**В конструкторе сценариев вы определяете до **3 документов**. Для каждого документа настраиваются:| Параметр | Описание |
| - | - |
| **Название и описание** | Отображаются пользователю на экране загрузки. Вводятся один раз и **автоматически переводятся** на все языки верификации. |
| **Поля для извлечения** | Список типизированных полей, каждое из которых содержит название, инструкцию по извлечению для AI, тип (`text`, `number`, `date`), признак обязательности и опциональный маркер **полного имени**. |
| **Поле имени** | Опционально отметьте одно текстовое поле для каждого документа как имя для сопоставления. В сценарии верификации физических лиц (KYC) это **полное имя**, сравниваемое с подтверждённой личностью; в сценарии верификации бизнеса (KYB) это **название компании**, сравниваемое с проверенной компанией. Параметр `document_ai_name_mismatch_action` определяет действие при несовпадении. Опционально: оставьте поле незаполненным, чтобы пропустить проверку имени для этого документа. |Начните с [шаблона](#стартовые-шаблоны) или настройте всё с нуля.**2. Пользователь загружает документы**Пользователь загружает по одному файлу на каждый настроенный документ (PDF или изображение). Каждая загрузка обрабатывается независимо; шаг завершается, как только предоставлены все обязательные документы.**3. Извлечение данных с помощью AI**Didit выполняет рендеринг каждого документа и запускает визуально-языковую модель со схемой, сформированной на основе заданных вами определений полей. Извлечённые значения возвращаются типизированными (числа как числа, даты в формате `YYYY-MM-DD`) и сохраняются для каждого документа отдельно. Для выявления следов манипуляций проводится криминалистический анализ PDF/EXIF.**4. Перекрёстная проверка и правила**Извлечённые поля можно сопоставлять с данными других шагов — например, имя владельца документа с верифицированной личностью или любое поле с ответами на анкеты — а также проверять по вашим **базовым правилам** и **пользовательским правилам статуса**. Итоговые статусы по каждому документу объединяются в общий статус функции.## Стартовые шаблоныПри добавлении узла Document AI вы можете начать с готового шаблона, в котором предварительно заполнены название, описание и типизированные поля. Любые параметры можно изменить впоследствии.| Шаблон | Типичные поля |
| - | - |
| **Подтверждение наличия средств** | Владелец счёта, баланс, валюта, дата выписки |
| **Подтверждение дохода (расчётный листок)** | Работодатель, имя сотрудника, оклад до/после вычетов, расчётный период |
| **Источник благосостояния** | Тип источника, сумма, дата, организация |
| **Налоговый документ** | Имя налогоплательщика, налоговый год, декларированный доход, налоговый номер |## Перекрёстная проверка с другими шагамиК полям Document AI можно обращаться через `document_ai.<field_key>` и сравнивать их с полями из других завершённых шагов с помощью пользовательского правила статуса с параметром `value_type: "field"`. Например:- `document_ai.account_holder` **equals** `kyc.full_name` — имя владельца документа совпадает с верифицированной личностью.
- `document_ai.balance` **greater\_than** `50000` — помечать крупные балансы для ручной проверки.Сработавшие правила объединяются в итоговое решение в соответствии с приоритетом платформы: **Отклонена > На проверке > Одобрена**, поэтому правило может повысить критичность, но никогда не отменит более строгий статус, обусловленный рисками. См. [Правила и предупреждения](https://docs.didit.me/ru/core-technology/document-ai/warnings-document-ai.md).## Требования к документам| Требование | Детали |
| - | - |
| **Документов на шаг** | До 3, каждый настраивается независимо |
| **Поддерживаемые форматы** | PDF, JPG, JPEG, PNG, TIFF, WebP |
| **Страницы** | Поддерживаются многостраничные PDF |
| **Качество** | Оригинал документа или скан высокого качества; без цифрового редактирования или манипуляций |> [!NOTE]
>
> Document AI считывает неструктурированный текст, что добавляет несколько секунд задержки на каждый документ. События webhook отправляются только после завершения всего шага сценария — в этот период не опрашивайте endpoint решения чаще одного раза в 5 с.


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