bank_attempts_exhausted_actionに従います。デフォルトは却下です。ただし、氏名の不一致など、それ以前の試行ですでに判定が出ている場合は、その判定が維持されます。
このページでは、各国で利用できるその他の認証方法、ユーザーにContinue without your bankが表示されるタイミング、各ケースの判定方法、そして結果での確認方法について説明します。
認証方法
ユーザーは、その国に設定した順序に従って、銀行ログインまたは口座照会から開始します。詳しくは国ごとの方法を選択するを参照してください。取引明細書のアップロードと少額入金は、この2つの後のフォールバックです。Continue without your bankは最後に表示されます。
その国で使えない方法が、その国のユーザーに提示されることはありません。コンソールのCountries and methodsでは、その国に対してNot availableと表示されます。
銀行ルートが対応していない国
銀行ログインと口座照会のどちらにもルートがない国も、ステップに残ります。その国のユーザーは、ステップで提供されている場合は取引明細書をアップロードするか、銀行を使わずに続行します。 保存時にmethodsを省略するかnullに設定すると、そのような国は保持されます。その国ではどの方法にも対応するルートがないため、methodsに方法を指定することはできません。指定すると保存時に拒否されます。たとえばAccount check is not available in VNM.のように表示されます。有効なすべての国と同様に、空のリストもChoose a method: bank sign-in, account check, or both.として拒否されます。契約で独自の料金を設定していて、その料金に取引明細書のアップロードが含まれていない場合、銀行での試行を挟まずに取引明細書のアップロードを提供する設定を保存すると、そのような国も拒否されます。
methodsを設定していないため保存時に保持され、その国のユーザーには取引明細書のアップロードとContinue without your bankが表示されます。
取引明細書のアップロード
取引明細書のアップロードでは、ユーザーの氏名、銀行名、口座番号が記載された直近3か月以内の取引明細書を求めます。Diditはそれを読み取り、改ざんの有無を確認し、銀行から得た名義と同じ方法で口座名義を照合します。bank_statement_enabledを有効にすると、ステップは次の2つの場合にこれを提供します。
- 課金対象の試行の後: 同じセッション内で銀行ログインまたは口座照会が課金されると、取引明細書のアップロードがフォールバックとして追加料金なしで提供されます。
- 銀行での試行を挟まない場合: 銀行ルートが対応していない国を含む、すべての国で提供されます。これには
bank_statement_standalone_enabledが必要で、デフォルトで有効になっています。課金対象の試行の後にのみ取引明細書のアップロードを提供する場合は、これを無効にしてください。
bank_max_attemptsを1回消費します。これは銀行ログインが使うものと同じ試行回数です。ユーザーがすべての試行を使い切ると、課金対象の試行の後であっても、どちらも提供されなくなります。口座照会には独自のbank_account_check_max_attemptsがあるため、口座照会が唯一の方法である場合、口座照会の試行回数をすべて使い切ったユーザーでも、ステップで提供されていれば取引明細書をアップロードできます。失敗した試行によって、取引明細書のアップロードを含め、まだ提示されているすべての方法の最後の試行を使い切った場合、ステップは自動で終了します。ユーザーに続行を求めることはなく、結果には続行が記録されません。セッションはbank_attempts_exhausted_actionに従います。ただし、氏名の不一致など、それ以前の試行ですでに判定が出ている場合は、その判定が維持されます。銀行ログインが失敗した後にフォールバックの余地を残すには、bank_max_attemptsを2以上に設定してください。
「銀行なしで続行」が表示されるタイミング
bank_continue_without_bankで、ステップに銀行なしで続行を表示するタイミングを設定します。
どちらの値でもこのオプションは無効になりません。本人はいつでも続行できます。コンソールでは、Bank Verificationステップの本人が確認できない場合にある「銀行なしで続行」を表示で、ほかに方法がない場合または最初からを選んで設定します。
本人に表示される内容
- 本人の国で利用できる経路がない場合: たとえば「ベトナムの銀行にはまだ接続できません」と表示され、その他の確認方法に明細書のアップロードと、銀行なしで続行が表示されます。
- ここでは利用できない銀行の場合: 「この銀行はここではご利用いただけません」と表示されます。本人は、その国で口座確認を利用できれば口座情報を入力するか、明細書をアップロードするか、別の銀行を選ぶか、銀行なしで続行できます。
- オンラインバンキングを利用していない場合、または銀行が一覧にない場合: 「別の方法で口座を確認してください」と表示され、本人の国で利用できる方法と銀行なしで続行が表示されます。
- 現在接続できない銀行の場合: 本人は再試行できます。もう一方の方法である銀行サインインまたは口座確認で解決できない場合、つまり本人の国がその方法に対応していない、試行回数が残っていない、または最後の試行でも銀行に接続できなかった場合は、画面に銀行なしで続行も表示されます。
- 続行した後: 「ありがとうございます。先に進めます」と表示されます。本人に失敗と表示されることはなく、ワークフローの次のステップに進みます。
結果を選ぶ
本人が銀行なしで続行した場合、Diditはステップ内で起きたことから理由を判断します。本人のデバイスから理由を受け取ることはありません。各理由はcontinuation.reasonとして記録され、それぞれの結果設定に従います。
no_route: 本人の国に対応する銀行サインインまたは口座確認の経路がありません。bank_unsupported_actionで判定され、デフォルトはREVIEW、理由コードはNOT_COVEREDです。institution_unsupported: 本人が選んだ銀行はこのステップで利用できません。bank_unsupported_actionで判定され、デフォルトはREVIEW、理由コードはNOT_COVEREDです。attempts_exhausted: 本人が続行した時点で、すべての試行を使い切っており、進行中の試行もありませんでした。bank_attempts_exhausted_actionで判定され、デフォルトはDECLINEです。person_choice: 確認する方法があったにもかかわらず、本人が続行を選びました。現在接続できない銀行の場合もこれに含まれます。その銀行は対象内のため、本人自身の選択が理由となります。bank_skipped_actionで判定され、デフォルトはREVIEW、理由コードはSKIPPEDです。
bank_skipped_actionとbank_attempts_exhausted_actionにはREVIEWまたはDECLINEを指定できます。bank_unsupported_actionではNO_ACTIONも指定でき、この場合はステップを承認したうえでNOT_COVEREDも記録します。
コンソールでは、これらはステップのOutcomesタブにあるBank or country not covered、Continued without a bank、Attempts exhaustedの各行です。
続行しても、試行ですでに出た判定が置き換わることはありません。試行がすでに評価されていた場合、たとえば銀行または明細書から一致しない名義人が返され、本人に試行回数が残っていた場合や、本人が確認しなかった近似一致があった場合は、ステップはその判定と理由コードを保持します。その場合、上記のどの結果設定も適用されず、
NOT_COVEREDやSKIPPEDも追加されません。本人が続行したことは結果に引き続き記録されます。結果で確認するを参照してください。結果で確認する
判定とWebhook
セッションの判定およびstatus.updated Webhookのdecisionオブジェクトでは、bank_verifications[]内のこのステップの項目に、ユーザーが銀行を使わずに続行したことが示されます。
continued_without_bankはtrueです。ユーザーがContinue without your bankでステップを離れたことを示します。- 続行する前に評価された試行がない場合、
methodはnoneです。口座名義人が一致しないなど、評価済みの試行があった後は、methodはその試行の方法のままとなり、その判定がそのまま有効です。 continuationは、ユーザーがどのように続行したかを示します。reason:no_route、institution_unsupported、attempts_exhausted、person_choiceのいずれかです。country: ユーザーが確認を行っていた国(ISO 3166-1 alpha-3)です。国を選ぶ前に続行した場合はnullです。offered: その国で提示されたほかの確認方法で、提示された順にstatement、microdepositsとなります。何も提示されなかった場合は空です。institution_idとinstitution_name:institution_unsupportedの場合に、ユーザーが利用できなかった銀行を示します。ユーザーが選んだ銀行、または最後の試行が終了した銀行です。Diditはどちらの値もユーザーのデバイスからではなく、自社の銀行リストから取得します。そのため、リストにない銀行の場合は両方ともnullになります。ほかの理由の場合は、両方とも常にnullです。continued_at: ユーザーが続行した日時です。
- 続行によってステップの判定が決まった場合、
reason_codesには結果を選択するのとおりNOT_COVEREDまたはSKIPPEDが入ります。評価済みの試行があった後は、その試行の理由コードが保持されます。 no_routeとinstitution_unsupportedの場合、not_coveredはtrueです。
BankVerificationResultスキーマに記載されています。
ワークフローで返すデータを絞り込んでいる場合でも、continued_without_bankとcontinuation.reasonは返されます。そのため、同じNOT_COVEREDを持つno_routeとinstitution_unsupportedを引き続き区別できます。この場合、continuationのほかのキー(国、銀行、提示された方法、日時)はすべてnullになります。ユーザーが続行しなかった場合は、continuation自体がnullです。この場合はmethodも返されないため、ユーザーが続行したかどうかはmethodではなくcontinued_without_bankで確認してください。
ワークフローのルール
分岐とカスタムステータスルールでは、次の値を参照できます。bank.continued_without_bank:trueまたはfalse。bank.continue_reason:no_route、institution_unsupported、attempts_exhausted、person_choiceのいずれか。bank.method: いずれの試行も評価される前にユーザーが銀行を使わずに続行した場合はnone。評価済みの試行があった後は、その試行の方法。
セッションレポート
いずれの試行も評価される前にユーザーが銀行を使わずに続行した場合、セッションのPDFレポートの確認方法の行には銀行なしで続行と表示されます。評価済みの試行があった後は、その試行の方法が表示されます。料金
- Continue without your bankが課金されることはありません。ユーザーが続行する前に行った試行は通常どおり課金されます。
- 事前に課金対象の銀行認証の試行がない取引明細書のアップロードは、Diditが読み取って評価する明細書1件あたり$0.20です。利用明細の専用項目Bank verification - statement upload(
bank_statement_upload)で請求され、ほかのアドオンと同様に契約料金や特別料金が適用されます。契約で独自の料金が設定されていて、この項目が含まれていない場合、ステップではこの方法は提示されません。 - 同じセッション内で課金対象の銀行ログインまたは口座チェックの後に行う取引明細書のアップロードまたは少額入金は、追加料金なしで含まれます。
Continue without your bank 導入前に保存されたノード
bank_allow_skipは廃止されました。この値で保存されたノードは、現在はその値が意味していた設定で動作します。
以前は、スキップを許可していないノードでは、どの方法も使えなかったユーザーが先に進めなくなっていました。現在はそのような場合にContinue without your bankが表示され、
bank_unsupported_action、bank_attempts_exhausted_action、またはbank_skipped_actionによってセッションの判定が決まります。
1リリースの間は、bank_allow_skipを送信しbank_continue_without_bankを送信しない保存でも、引き続きその値からモードが設定されます。すべての保存でbank_allow_skipも書き戻されます。from_startの場合はtrue、when_neededの場合はfalseです。新しい連携ではbank_continue_without_bankを使用してください。
サンドボックスでテストする
サンドボックスのアプリケーションでは何も課金されず、取引明細書のアップロードと少額入金の前に銀行への接続の試行も必要ありません。bank_continue_without_bankをfrom_startに設定すると最初の画面にContinue without your bankが表示され、これを選択してbank_skipped_actionをテストできます。サンドボックスのアプリケーションの仕組み全般については、サンドボックスでのテストを参照してください。
関連情報
- 銀行口座確認の方法: 国ごとの銀行へのログインと口座チェック。
- 口座チェック: 口座の形式、結果、サンドボックス用の値。
- 銀行口座確認の設定キー: このステップのすべてのキー。