メインコンテンツへスキップ
すべての電子署名ステップは、署名者ごとに1つの結果を生成します。この結果は、次の場所でsignatures[]の項目として確認できます。
  • GET /v3/session/{sessionId}/decision/。ユーザー認証 (KYC) および法人確認 (KYB) のセッションが対象です。
  • V3のセッションWebhookのdecision。セッションがApproved、Declined、In Review、Abandonedのいずれかになったときに送信されます。
  • コンソールにあるセッションのSignatureタブ、およびPDFレポートの署名セクション。
signaturesは、ワークフローに電子署名ステップがある場合にのみ判定に含まれます。署名者がそのステップに到達するまでは空の配列です。KYCステップには項目が1つ、KYBステップには署名者ごとに1つの項目があります。

例

署名オブジェクト

statusがsignedになるまでは、署名者が署名したものとして扱わないでください。高度電子署名(AES)では、証明書、タイムスタンプ、またはsigned_fileがnullであれば、まだ署名されていないことを意味します。署名済みのシンプル署名にはsigned_fileがありますが、証明書とタイムスタンプは常にnullです。

署名者

書類

フィールド

documents[].fields[]の各要素は書類の1つのフィールドで、この署名者の書類における値を含みます。

署名済み書類のダウンロード

signed_fileとevidence_fileのパスをAPIキーとともに使用します。各ルートはPDFそのものを返します。
Diditは応答する前に、保存されたファイルを記録済みのSHA-256と照合します。一致しない場合、署名済みPDFと証跡のルートは409を、画像のルートは400を返し、いずれもsignature_document_changedを伴います。KYBステップに複数の署名者がいる場合は、証跡のルートに必ずsignature_idを渡してください。

署名済みPDF

署名済みPDFには、次の内容がこの順序で含まれます。
  1. 署名者に表示された書類のページ。すべてのフィールド値が、お客様が配置した位置に刻印されています。
  2. 証跡ページ。signature_evidence_pageをオフにした場合は含まれません。
  3. Advanced(AES)の場合のみ、PAdES署名。Diditが発行したRFC 3161タイムスタンプと、将来の検証に必要な失効情報を含みます。SimpleのPDFは証跡ページで終わり、デジタル署名、シール、タイムスタンプは含まれません。
Advanced(AES)のPDFでは、署名はそれより前のすべてのバイトを対象とし、フィールド値と証跡ページも含まれます。その後ファイル内の何かを変更すると署名は無効になり、PAdESに対応したバリデーターであればそのことが表示されます。署名の詳細には署名者の名前が記載され、署名の詳細には、署名者の本人確認セッションとコード確認への参照が含まれます。 フィールド値はフォームフィールドではなくページのコンテンツの一部になるため、後から編集することはできず、どのPDFビューアーでも表示されます。チェックされたチェックボックスにはチェックマークが表示され、チェックされていないものは書類に描かれたままになります。高さが24ポイントを超える署名ボックスには、署名の下に小さなキャプションも追加されます。キャプションにはSigned with Didit ·の後に署名のidの最初の8文字が表示されます。 Diditは、署名者に表示された書類のバイトの後ろにフィールド値、証跡ページ、署名を追加します。その書類は署名済みファイルの先頭部分と完全に一致するため、sha256_originalを署名済みPDFに対して引き続き検証できます。

証跡PDF

証跡PDFには、1人の署名者について次の内容が記録されます。
  • レベルと形式。
  • 署名者の名前、署名者としての立場、KYBの場合は企業。
  • 検証済みの本人確認セッション(Advanced(AES)のみ)。
  • 確認情報:チャネル、マスクされた送信先、日時(Advanced(AES)のみ)。
  • 署名者のIPアドレス。
  • 各書類:タイトル、ページ数、元の書類のSHA-256。Word文書の場合は、Wordファイルの名前とSHA-256、コンバーターのバージョン、PDFのSHA-256。
  • 採用した署名:入力(手書き風のスタイルを含む)か手描きか、採用された日時、署名とイニシャルの画像。
  • 書類ごとの各フィールド:ラベル、ページ、種類、値(署名またはイニシャルの場合は画像)、値の取得元(例:Typed by the signer、Verified ID、Your API)、入力された日時(UTC)、署名者が入力した値の場合はその時点の署名者のIPアドレス。
  • 最終同意:署名者が確認画面で同意したテキストとその日時。
  • すべての署名済みファイルのSHA-256。Advanced(AES)の場合は、証明書(発行先、発行者、シリアル番号、有効期間)とタイムスタンプ。
各署名済みPDFに付加されるページは、署名が適用される前に追加されるため、証明書のセクションを除いて同じ内容です。

署名を再検証する

POST /v3/session/{session_id}/signatures/{node_id}/validate/は、ステップのすべての署名済みPDFを読み込み直し、そのSHA-256を確認します。Advanced (AES)署名の場合は、PAdES署名、その証明書、失効情報、タイムスタンプも検証します。Simple署名にはデジタル署名がないため、確認するのはファイルの完全性のみです。結果はvalidationに保存され、更新されたsignatures[]が返されます。特定の署名者だけを確認するにはsignature_idを送信します。write:sessionsが必要で、コンソールではValidate againボタンがこれにあたります。保存されている署名済みPDFがsha256_signedと一致しなくなった場合は、signature_document_changedとともに400が返されます。 書類が署名されるまで、validationはnullです。Diditが署名の結果を確認できない場合、validationは{ "valid": null, "reason": "signature_provider_outcome_unknown", "checked_at" }となり、解決されるまでstatusはsigningのままです。この状態は未署名として扱ってください。

PDFレポートでの表示

PDFレポートには、署名者、確認内容、証明書、タイムスタンプ、ハッシュ付きの書類を含む署名セクションが出力されます。書類にフィールドがある場合は、続いてE-signature · fieldsページが出力され、書類ごとに1つの表に、各フィールドの値、署名とイニシャルの画像、日時、取得元が示されます。署名セクションは、KYCレポートでは銀行口座認証の後に、KYBレポートでは書類の後に配置されます。このセクションのみを出力するにはpages=signatureを指定します。

関連情報

最終更新日 2026年11月1日