アーキテクチャ
認証
すべてのリクエストには、アプリケーションのAPIキーを指定したx-api-keyヘッダーが必要です。キーのローテーション、環境の分離、スコープについてはAPI認証を参照してください。
セッションの作成
エンドポイントはPOST /v3/session/のみです。セッションがKYCかKYBかはワークフローの種類で決まるため、「企業」を示すフラグを明示的に指定する必要はありません。
作成時に推奨されるフィールド:
完全なスキーマ: セッションの作成。
ホスト型リンクの配信
レスポンスのurlはホスト型の認証リンクです。配信方法には次の選択肢があります。
- 自社のプラットフォームからメールで送信する。
- オンボーディングUIにリンクとして埋め込む。
- アプリ内のWebView(iOS / Android / React Native)で開く。
ポーリングとWebhookの比較
推奨されるのはWebhookです。Diditは処理が完了するとすぐに、登録済みのエンドポイントへ完了イベントをPOSTします。 開発時や、Webhookエンドポイントに到達できない場合は、ポーリングも利用できます。GET /v3/session/{id}/decision/を指数バックオフでポーリングします(最初は10秒ごと、最大60秒間隔まで)。statusが"Approved"、"Declined"、"In Review"のいずれかになったらポーリングを停止します。
Webhookの処理
必要なイベントを購読してください。KYCとKYBのどちらにも同じイベントが使われ、ペイロード内のsession_kind: "business"で企業セッションのイベントを識別します。
status.updated: セッションのステータスが変更されました。KYBセッションはsession_kind === "business"でフィルターしてください。data.updated: レビュアーがコンソールで登記データや主要人物を編集したか、法人登記から変更が報告されました。申請者が書類をアップロードしたり主要人物を送信したりした場合には送信されないため、その場合はstatus.updatedを確認してください。同じsession_kindフィルターが適用されます。business.status.updated/business.data.updated: 紐付けられた企業エンティティが変更されました。
判定の処理
再提出フロー
法人確認 (KYB)セッションがResubmittedに遷移した場合(または機能が再提出対象としてマークされた場合)、企業は修正済みのデータまたは追加データをアップロードする必要があります。
次の対応が可能です。
- 同じ
urlを再配信する: ホスト型フローは再提出が必要な箇所から再開されます。 - 無効になった主要人物のリンクを再発行する: 子KYCセッションが削除された、または本人が開始する前に期限切れになった関係者には、主要人物のKYCセッションの再生成で新しいセッションを発行します。
- Business Consoleでケースを作成する: 社内でのやり取りを追跡できます。
自社のフロントエンドからステップを実行する
書類と主要人物のステップは、APIキーを使って自社のサーバーから操作することもできます。ユーザーインターフェースは自社で保持し、認証と判定はDiditが担います。 すべての呼び出しはKYBセッション単位で行われ、write:businesses権限が必要です(抽出された関係者の読み取りにはread:businessesまたはread:sessionsも使用できます)。ホスト型ページと同じチェック、請求、ステップの進行が適用されます。
- セッションがKYB書類ステップにある間に、法人書類をアップロードします。
- 株主や所有比率を含め、書類に記載された関係者を読み取り、申請者に表示します。
- 作成を編集、削除、関係者の下書きします。下書きは申告扱いにならず、料金も発生しません。
- 下書きを送信します。Diditは認証が必要な関係者を判断し、それぞれにKYCセッションを作成して、送信または埋め込み用の
kyc_session_urlを返します。 - ホスト型フローと同様に、セッションから統合された判定を読み取ります。
409 kyb_step_mismatchが返されます。完了したセッションに対しては409 kyb_session_not_writableが返されます。
企業プロファイルの集約
セッション作成時にvendor_dataを指定すると、Diditはその企業のすべてのセッションを1つの企業エンティティに集約します。エンティティのfeaturesマップを使えば、セッションを順に確認しなくても「この企業は現時点で完全に認証済みか」を判断できます。
メリット:
- 定期的な再KYBフローが同じプロファイルに追加されます。
- 同じ
vendor_dataに対して監視される取引に、企業のリスクコンテキストが引き継がれます。 - ユーザーエンティティに紐付けられたUBOや役員によって、エンティティ間の関係が構築されます。
ベストプラクティス
エラー処理
レート制限の完全なリファレンスもご覧ください。
次のステップ
Webhook
すべてのKYBイベントとペイロード。
ステータス
状態遷移のリファレンス。
レスポンススキーマ
KYB判定の読み解き方。