Перейти к основному содержанию
Встройте поток верификации Didit непосредственно в ваше приложение с помощью iframe. Это обеспечивает бесшовный пользовательский опыт без перенаправления пользователей с вашего сайта.

Обзор


Самый быстрый способ начать работу: просто скопируйте и вставьте ваш URL UniLink.

Что понадобится

  1. Сценарий Didit (создается в Консоли Didit)
  2. Ваш URL UniLink (нажмите Copy Link в вашем сценарии)

Реализация

⚠️ Обязательно: атрибут allow обязателен для доступа к камере во время проверки живости.

Ключевые преимущества

  • Настройка менее чем за 1 минуту: без бэкенда и без API-ключей
  • Нулевая конфигурация: URL обратного вызова задается в настройках сценария
  • Идеально для MVP: начните работу немедленно

Iframe API-сессии (с бэкендом)

Для продвинутых интеграций, которым нужна настройка на уровне каждой сессии.

Когда использовать

  • Передавать пользовательские vendor_data или metadata для каждой сессии
  • Задавать разные URL обратного вызова для каждой сессии
  • Отслеживать сессии на стороне сервера до начала верификации
  • Связывать сессии с вашими идентификаторами пользователей

Реализация

Шаг 1: создайте сессию (бэкенд) В ответе на создание сессии есть поле url: используйте его как src для iframe.
Шаг 2: встройте в iframe (фронтенд)

Прослушивание событий (postMessage)

Страница верификации отправляет события родительскому окну. Каждое сообщение имеет такую оболочку:
Payload вложен: читайте event.data.data.sessionId, а не event.data.sessionId:
Основные события: didit:ready ({ sessionId }), didit:started, didit:step_started / didit:step_completed / didit:step_changed ({ step, ... }), didit:status_updated ({ status }), didit:completed ({ sessionId, status }), didit:cancelled, didit:error ({ error, step? }), didit:close_request и didit:layout ({ contentHeight, colorScheme, dir }, см. ниже). В справочнике событий JavaScript SDK перечислены события верификации, доступные как типизированные callback-функции. Начиная с версии 0.5.0, SDK самостоятельно обрабатывает сообщения о макете и не передает их в onEvent.

Задайте размер iframe по didit:layout

Страница верификации сообщает, сколько места ей нужно, с помощью сообщения didit:layout. Она отправляет его при загрузке и каждый раз, когда меняются высота содержимого, тема или направление текста:
Чтобы получать didit:layout в вашем iframe, добавьте sdk_presentation=embedded к URL верификации. Начиная с версии 0.5.0, JavaScript SDK устанавливает этот параметр за вас. Без параметра presentation страница использует автономный макет и не отправляет сообщения о макете.
Этот хост следует рекомендуемым размерам: фиксированная карточка при ширине окна от 1024 px, полноэкранный режим при 540px и меньше, а между ними iframe шириной 500px, высота которого соответствует высоте, которую сообщает страница:
Для диапазона от 541px до 1023px этот пример использует начальную высоту 700px до получения сообщения о макете, но не более 90% высоты видимой области окна. Размеры для компьютера и телефона применяются сразу. На телефонах iframe занимает всё окно, поэтому предусмотрите в вашем приложении способ выйти из верификации. Используйте colorScheme и dir, чтобы согласовать элементы управления вокруг iframe с темой и направлением текста страницы. Если соединение пользователя пропадает, страница показывает экран «Нет подключения к интернету», который закрывается сам, как только соединение восстанавливается. Если пользователь выбирает Exit Verification на этом экране, страница отправляет didit:error с error: "network_error", а затем didit:cancelled: закрывайте iframe по событию didit:cancelled.

Реализация модального окна

Для аккуратного модального окна поверх вашей страницы:

HTML/CSS/JS


Компонент React

Многоразовый React-компонент для верификации в модальном окне:

Использование


Компонент Vue


Настройка

Обязательные разрешения

Используйте полный список разрешений для захвата, геолокации, копирования и совместимости медиа:
Атрибут allow делегирует разрешения фрейму, но не отменяет выбор пользователя и более строгий заголовок Permissions-Policy на вашей странице.

Размер iframe

Поток верификации сам раскладывает содержимое по размеру своего iframe. Задавайте размер iframe по окну, в котором он отображается: Для среднего диапазона начинайте с 500px на 700px, пока не придет первое сообщение didit:layout, с тем же ограничением по высоте. В примере didit:layout применены все три размера, включая размеры для компьютера и телефона до получения каких-либо сообщений.

Политика безопасности контента (CSP)

Если вы используете CSP, добавьте Didit в директиву frame-src:

Верификация на другом устройстве

InContext iframe автоматически поддерживает верификацию на другом устройстве:
  1. Пользователь начинает верификацию на компьютере
  2. Если камера недоступна, показывается QR-код
  3. Пользователь сканирует QR-код на телефоне
  4. Пользователь завершает верификацию на телефоне
  5. Iframe на компьютере автоматически обновляется и отображает результат
Это происходит автоматически, дополнительная настройка не нужна.

Устранение неполадок

Камера не работает

  1. Убедитесь, что iframe включает полный список разрешений
  2. Проверьте, что ваш сайт работает по HTTPS
  3. Убедитесь, что пользователь предоставил вашему домену доступ к камере
  4. Попробуйте метод Redirect, если доступ к камере в iframe не работает

Iframe не загружается

  1. Проверьте наличие проблем с Content Security Policy (CSP)
  2. Добавьте https://verify.didit.me в директиву frame-src
  3. Проверьте консоль браузера на наличие ошибок

postMessage не получен

  1. Убедитесь, что вы слушаете правильный origin (https://verify.didit.me или ваш домен White label)
  2. Проверьте, что обработчик событий добавлен до открытия iframe
  3. Проверьте имя и структуру события: типы имеют префикс (didit:completed, а не verification_complete), а payload вложен в event.data.data

Пример репозитория

Репозиторий GitHub

Смотрите исходный код и примеры на GitHub

Последнее изменение 7 ноября 2026 г.