メインコンテンツへスキップ

Webアプリ統合

このページでは、Unicoのジャーニーがどのように機能するか、そしてそれをアプリケーションに組み込むために利用できる統合モデルについて説明します。

ジャーニーとは、本人確認を完了するためにユーザーが通過する一連のステップです。たとえば、書類の写真を撮影する、顔のキャプチャ(ライブネス)を行う、といったものです。

Unicoが体験全体を管理します。統合の手間は最小限です。ジャーニーはCreateProcessを介して作成され、ユーザーはそこへ誘導され、最後に結果を受け取ります。その間に起こること(画面、指示、検証)はすでに構築されており、Unicoが保守しています。

統合アプローチの選択
  • Web SDKunico-webframeパッケージ): バックエンドがすでに本人確認フローを制御しており、クライアントサイドのキャプチャコンポーネントのみが必要な場合に使用します。base64 + 暗号化されたJWTをコールバックに直接返します。API呼び出しはご自身で管理します。
  • Web App Integrationidpay-b2b-sdkパッケージ): Unicoにジャーニー全体(マルチステップフロー、書類キャプチャ + ライブネス)をオーケストレーションしてほしい場合に使用します。idpay-b2b-sdkパッケージは埋め込み型のJourneys SDK(iFrame)モデルを実現します。直接アクセス(リダイレクト)モデルにライブラリは不要です。

2つの統合モデル

クライアントによってニーズは異なります。Unicoは、ユーザーをジャーニーへ誘導するための2つのモデルを提供します。

モデル最適なケース
直接アクセスすでにWebViewを使用しているモバイルアプリ、またはジャーニーをメインページの外で実行できるWebフロー
Journeys SDK統合されたシームレスな体験を必要とし、ユーザーを同じ環境内にとどめたいWebアプリ

ユーザーはUnicoがホストするリンクへリダイレクトされ、そこでジャーニーが実行されます。完了すると、プロセス作成時に定義したURL(callbackUriパラメータ)へ戻されます。

これは最も導入が簡単なアプローチです。ライブラリのインストールが不要で、ジャーニーをアプリケーション自身のページ内で実行する必要がない場合に適しています。一方で、ユーザーをクライアントの環境の外へ連れ出すため、摩擦が増え、結果として離脱率が高くなる傾向があります。

プロセスを作成すると、APIレスポンスにUnicoがホストするジャーニーのURLが含まれます。ユーザーをそこへ誘導する一般的な方法は2つあります。

  • 標準リダイレクト。 ユーザーはジャーニーのURLへ直接リダイレクトされます。完了すると、Unicoはプロセス作成時に定義したcallbackUriへユーザーを戻します。
  • window.open()による新しいタブ。 ジャーニーは新しいブラウザタブで開かれ、ユーザーは別のコンテキストにとどまります。この場合、callbackUriへのURL変更を監視し、プロセスが完了したらタブを閉じることが推奨されます。APIの詳細についてはMDNのドキュメントを参照してください。

直接アクセスの統合フロー

モバイルアプリでは、追加のリダイレクトなしにジャーニーを直接開くためにWebViewを使用するのが一般的です。この場合、callbackUriディープリンクも受け付けます。これにより、ジャーニーの完了をきっかけにネイティブアプリ内の特定の画面を開くことができます。ディープリンクを戻り先として設定するだけで、オペレーティングシステムがユーザーを適切な場所へルーティングします。

WebViewによる統合フロー

キャプチャテスト中はDevToolsを開いたままにしないでください

Unicoのアプリケーションは顔のキャプチャにCapture SDK(unico-webframe)を使用しており、開いているDevToolsを不正の兆候として検知し、送信をブロックします。エンドツーエンドのキャプチャテストを実行する前にDevToolsを閉じてください。

サポート対象外の統合

このドキュメントで説明されているモデル(直接アクセスとJourneys SDK)は、Unicoが公式にサポートする唯一の統合アプローチです。これらの標準から外れた統合は、予期しない動作、セキュリティフローの不具合、ジャーニーの中断を引き起こす可能性があり、Unicoのサポート対象外となります。

サポート対象外のアプローチの例:

  • モバイルアプリでSDKをWebView内に埋め込むこと。これらの場合の正しいアプローチは、直接アクセスモデルを使用し、Journeys SDKを介さずにジャーニーのリンクをWebViewで直接開くことです。
  • Journeys SDKを介さずに、HTMLの<iframe>タグでiFrameを直接読み込むこと。iFrameはSDKの内部実装の詳細であり、手動でインスタンス化してはなりません。正しいアプローチは、iFrameのライフサイクルを安全に、期待される標準の範囲内で管理するJourneys SDKを使用することです。

あるアプローチがサポート対象の標準の範囲内かどうか疑問がある場合は、実装を進める前にドキュメントを参照するか、サポートにお問い合わせください。