Перейти к основному содержанию
Иногда OCR ошибочно распознаёт данные в удостоверении личности, коммунальном счёте или записи реестра. Didit предоставляет три PATCH endpoint’а, с помощью которых можно исправить извлечённые данные без повторного запуска всей верификации. Все четыре endpoint’а принимают ваш клиентский API-ключ или заголовок авторизации пользователя, и при успешном обновлении все четыре отправляют webhook data.updated, чтобы ваша система и аналитика оставались синхронизированными.

Общие требования

  • Авторизация: клиентский API-ключ (стандартный x-api-key или Authorization с bearer-токеном) или токен авторизации пользователя.
  • Привилегия:
    • KYC и POA: write:sessions
    • KYB (компания) и участник «ключевые лица»: write:businesses
  • Статус сессии (только для KYC и POA): должен быть одним из APPROVED, DECLINED, IN_REVIEW или KYC_EXPIRED. Сессии, которые ещё не достигли состояния, допускающего проверку, изменить нельзя. Обновления компании KYB не ограничены статусом.
  • Запись о функции должна существовать: поля KYC можно изменить, только если сессия содержит KYC, поля POA, только если сессия содержит POA, а поля компании KYB, только если в сессии есть проверка по реестру.
  • Частичные обновления: изменяются только переданные поля. Чтобы оставить поле без изменений, не включайте его. Отправьте null, чтобы очистить ключ extra_fields.
  • Вебхуки: успешное обновление отправляет data.updated с session_kind: "user" или "business", а журнал аудита сессии фиксирует, какие конкретные поля были изменены и кем.

Обновление данных идентификации KYC

PATCH /v3/session/{sessionId}/update-data/ Исправьте любое поле, извлечённое из документа, удостоверяющего личность. Поддерживаются многоэкземплярные сценарии на основе графа: передайте необязательный параметр запроса node_id или поле тела запроса, чтобы указать конкретную запись KYC, если в одной сессии несколько шагов KYC.

Изменяемые поля

parsed_address принимает только следующие вложенные ключи: address_type, city, region, street_1, street_2, postal_code, country (код ISO 3166-1 alpha-2).

Пример

Для многоэкземплярного сценария на основе графа добавьте ?node_id=feature_ocr_2 к URL (или передайте "node_id": "feature_ocr_2" в теле запроса), чтобы обратиться к конкретной записи KYC.

Обновление данных подтверждения адреса (POA)

PATCH /v3/session/{sessionId}/update-poa-data/ Исправьте поля, извлечённые из документа, подтверждающего адрес. Действуют те же ограничения по статусу и та же привилегия, что и для обновлений KYC. Также поддерживается node_id для многоэкземплярных сценариев.

Изменяемые поля

Пример

Обновление данных компании KYB

PATCH /v3/session/{sessionId}/kyb/{companyUuid}/update-data/ Исправление полей компании KYB, извлечённых из реестра. Endpoint изменяет и основные колонки компании, и registry_data, поэтому представление “Extracted from Registry” в консоли отражает ваши исправления. user_provided_data (то, что конечный пользователь подтвердил на размещённой странице) не изменяется. last_console_edit_at проставляется, а webhook data.updated срабатывает с trigger: "console_registry_edit".

Требования

  • Привилегия: write:businesses (отличается от привилегии для KYC и POA).
  • companyUuid в URL должен принадлежать указанной sessionId, иначе вернётся 404.
  • Ограничения по статусу сессии нет: данные компании KYB можно исправить в любое время.

Изменяемые поля

Поле, которое вы не передали, остаётся без изменений. Каждое переданное поле записывается в основную колонку (если она есть) и объединяется с registry_data. Даты при объединении с registry_data сериализуются как строки ISO 8601.

Пример

Ответ: полный объект компании KYB той же структуры, что registry_checks[].company в решении по сессии.

Пропуск стороны Key People

PATCH /v3/session/{sessionId}/kyb/parties/{partyUuid}/ Исключение стороны Key People из верификации: способ обойти проверку для стороны, которая не может завершить собственную проверку. Обычно причина заключается в удалении дочерней сессии. После удаления индивидуальной KYC-сессии, назначенной UBO или директору, её статус фиксируется и уже не изменится, поэтому KYB не может вывести сторону из статуса Awaiting User. Пропуск стороны исключает её из агрегации Key People, проверка пересчитывается немедленно, и сессия может завершиться одобрением или отклонением.

Требования

  • Привилегия: write:businesses.
  • partyUuid в URL должен принадлежать указанной sessionId, иначе вернётся 404.
  • Не ограничивается allow_skip. Эта настройка роли ограничивает, какие элементы заявитель может пропустить при заполнении размещённого экрана Key People. Данный endpoint является переопределением для оператора, поэтому он работает даже для ролей, в которых заявитель не мог бы пропустить сторону.

Тело запроса

Поле requires_verification намеренно не изменяется, поэтому у переопределённой стороны будет requires_verification: true и is_skipped: true. Запись по-прежнему показывает, что правила требовали проверки.

Пример

Ответ: обновлённая сторона той же структуры, что элемент key_people_checks[].submitted.parties[] в решении по сессии. Срабатывает webhook data.updated с trigger: "console_key_people_skip".
Сторона, дочерняя сессия которой была удалена, помечается в payload решения полем kyc_session_deleted: true (или kyb_sub_session_deleted: true для корпоративных сторон), а её kyc_session_url / kyb_sub_session_url возвращается как null, поскольку ссылка больше не открывается. Удаление дочерней сессии никогда само по себе не одобряет сторону: проверка Key People переходит в In Review, чтобы решение принял человек.

Что происходит после обновления

  • Вебхук: data.updated срабатывает для сессии, а в payload передаётся session_kind сессии ("user" или "business"). Подпишитесь один раз на уровне адреса назначения webhook и выполняйте маршрутизацию по session_kind.
  • Журнал аудита: сессия фиксирует, какие поля изменились, их предыдущие и новые значения, а также (для вызовов с аутентификацией пользователя) адрес e-mail исполнителя. Просмотреть это можно на вкладке Events в консоли.
  • Повторное геокодирование адреса: для обновлений KYC и POA, которые меняют address / poa_address, Didit повторно запускает геокодирование в фоновом режиме. Ошибки подавляются, поэтому обновление никогда не завершается ошибкой из-за проблемы геокодирования.
  • Повторная оценка AML: обновления KYC, которые меняют имя, дату рождения или гражданство, могут повторно запустить AML-скрининг, если AML для сессии ещё не завершился. Результаты появляются в решении по сессии.

Когда эти endpoint не подходят

  • Повторный запуск всей верификации: если клиенту нужно заново снять фото документа или загрузить документ, используйте update-status, чтобы перевести сессию в Resubmitted.
  • Изменение полей профиля у сущности User или Business: используйте PATCH /v3/users/{vendor_data}/ или PATCH /v3/businesses/{vendor_data}/. Эти endpoint работают с данными уровня сущности, а не сессии.
  • Редактирование данных Key People: публичного API для изменения имени, ролей или структуры владения стороны нет. Эти данные передаются через размещённую страницу верификации. Единственное изменяемое поле: is_skipped (см. Пропуск стороны Key People).

Ошибки

Дальнейшие шаги

Получение сессии

Получите полное решение, чтобы увидеть обновлённые поля.

Обновление статуса

Одобрите, отклоните или снова откройте сессию после исправления данных.

Webhooks

Подпишитесь на события data.updated.
Последнее изменение 7 ноября 2026 г.