メインコンテンツへスキップ
このガイドはクイックスタートを補完するものです。アーキテクチャ、連携に関するあらゆる判断、本番環境でKYBを安定して運用するための運用パターンを解説します。

アーキテクチャ

認証

すべてのリクエストには、アプリケーションの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を優先してください。

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 Webhook。署名検証と再試行の仕組み: Webhookリファレンス。

判定の処理

状態遷移の全体はKYBステータスを、判定の理由を示すタグはKYBの警告を参照してください。

再提出フロー

法人確認 (KYB)セッションがResubmittedに遷移した場合(または機能が再提出対象としてマークされた場合)、企業は修正済みのデータまたは追加データをアップロードする必要があります。 次の対応が可能です。
  • 同じurlを再配信する: ホスト型フローは再提出が必要な箇所から再開されます。
  • 無効になった主要人物のリンクを再発行する: 子KYCセッションが削除された、または本人が開始する前に期限切れになった関係者には、主要人物のKYCセッションの再生成で新しいセッションを発行します。
  • Business Consoleでケースを作成する: 社内でのやり取りを追跡できます。

自社のフロントエンドからステップを実行する

書類と主要人物のステップは、APIキーを使って自社のサーバーから操作することもできます。ユーザーインターフェースは自社で保持し、認証と判定はDiditが担います。 すべての呼び出しはKYBセッション単位で行われ、write:businesses権限が必要です(抽出された関係者の読み取りにはread:businessesまたはread:sessionsも使用できます)。ホスト型ページと同じチェック、請求、ステップの進行が適用されます。
  1. セッションがKYB書類ステップにある間に、法人書類をアップロードします。
  2. 株主や所有比率を含め、書類に記載された関係者を読み取り、申請者に表示します。
  3. 作成を編集、削除、関係者の下書きします。下書きは申告扱いにならず、料金も発生しません。
  4. 下書きを送信します。Diditは認証が必要な関係者を判断し、それぞれにKYCセッションを作成して、送信または埋め込み用のkyc_session_urlを返します。
  5. ホスト型フローと同様に、セッションから統合された判定を読み取ります。
セッションが別のステップにあるときに呼び出すと、現在のステップとともに409 kyb_step_mismatchが返されます。完了したセッションに対しては409 kyb_session_not_writableが返されます。

企業プロファイルの集約

セッション作成時にvendor_dataを指定すると、Diditはその企業のすべてのセッションを1つの企業エンティティに集約します。エンティティのfeaturesマップを使えば、セッションを順に確認しなくても「この企業は現時点で完全に認証済みか」を判断できます。 メリット:
  • 定期的な再KYBフローが同じプロファイルに追加されます。
  • 同じvendor_dataに対して監視される取引に、企業のリスクコンテキストが引き継がれます。
  • ユーザーエンティティに紐付けられたUBOや役員によって、エンティティ間の関係が構築されます。

ベストプラクティス

エラー処理

レート制限の完全なリファレンスもご覧ください。

次のステップ

Webhook

すべてのKYBイベントとペイロード。

ステータス

状態遷移のリファレンス。

レスポンススキーマ

KYB判定の読み解き方。
最終更新日 2026年11月1日