Перейти к основному содержимому

Интеграция Web-приложения

Markdown

На этой странице описывается, как работают путешествия (journeys) Unico и какие модели интеграции доступны для их встраивания в приложение.

Путешествие (journey) — это набор шагов, которые пользователь проходит для завершения верификации личности. Например: фотографирование документа и выполнение захвата лица (liveness).

Unico управляет всем опытом. Усилия по интеграции минимальны: путешествие создается через CreateProcess, пользователь направляется к нему, и результат получается в конце. Всё промежуточное — экраны, инструкции, валидации — уже создано и поддерживается Unico.

Две модели интеграции​

У каждого клиента разные потребности. Unico предлагает две модели для направления пользователя к путешествию.

МодельЛучше всего подходит для
Прямой доступМобильные приложения, уже использующие WebView, или веб-потоки, где путешествие может происходить за пределами основной страницы
Journeys SDKВеб-приложения, которым нужен интегрированный бесшовный опыт, удерживающий пользователя в той же среде

Пользователь перенаправляется на ссылку, размещённую Unico, где проходит путешествие. По завершении он возвращается на URL, определённый при создании процесса (параметр callbackUri).

Это самый простой подход: он не требует установки библиотеки и хорошо работает, когда путешествие не нужно проводить внутри собственной страницы приложения. С другой стороны, перевод пользователя за пределы среды клиента, как правило, создаёт больше трения и, соответственно, более высокий процент отказов.

После создания процесса ответ API включает URL путешествия, размещённого Unico. Есть два распространённых способа направить пользователя:

  • Стандартный редирект. Пользователь перенаправляется непосредственно на URL путешествия. По завершении Unico перенаправляет его обратно на callbackUri, определённый при создании процесса.
  • Новая вкладка с window.open(). Путешествие открывается в новой вкладке браузера, удерживая пользователя в отдельном контексте. В этом случае рекомендуется отслеживать изменение URL на callbackUri и закрывать вкладку после завершения процесса. Подробности об API см. в документации MDN.

В мобильных приложениях обычно используется WebView для прямого открытия путешествия без дополнительного перенаправления. В этом случае callbackUri также принимает deeplink, позволяя завершению путешествия запустить открытие конкретного экрана в нативном приложении. Просто настройте deeplink как место назначения для возврата, и операционная система обеспечит маршрутизацию пользователя в нужное место.

Не держите DevTools открытыми во время тестов захвата​

Приложение Unico использует Capture SDK (unico-webframe) для захвата лица, который обнаруживает открытые DevTools как потенциальный сигнал мошенничества и блокирует отправку. Закройте DevTools перед выполнением сквозных тестов захвата.

Неподдерживаемые интеграции

Модели, описанные в этой документации — прямой доступ и Journeys SDK — являются единственными подходами интеграции, официально поддерживаемыми Unico. Интеграции, отклоняющиеся от этих стандартов, могут вызвать неожиданное поведение, сбои потоков безопасности и прерывания путешествий, и не будут покрыты поддержкой Unico.

Примеры неподдерживаемых подходов:

  • Встраивание SDK в WebView в мобильных приложениях. В этих случаях правильный подход — использовать модель прямого доступа, открывая ссылку путешествия непосредственно в WebView без привлечения Journeys SDK.
  • Загрузка iFrame напрямую через HTML-тег <iframe>, минуя Journeys SDK. iFrame является внутренней деталью реализации SDK и не должен создаваться вручную. Правильный подход — использовать Journeys SDK, который управляет жизненным циклом iFrame безопасно и в рамках ожидаемых стандартов.

Если есть какие-либо сомнения относительно того, соответствует ли подход поддерживаемому стандарту, обратитесь к документации или свяжитесь со службой поддержки перед продолжением реализации.