実装方法
各運用ごとの実装イメージ
カード情報の入力(トランザクショントークンの作成)は当社決済フォームを利用し、課金はAPIで実行している加盟店さま
リカーリングトークンを作成し、後ほど(もしくは次の画面などで)課金を実行している場合
- カード情報入力時にカード登録の3-Dセキュア認証が実行されるため、基本的に課金のAPI処理時には3-Dセキュア認証は求められません
- 認証されていないリカーリングトークンへAPIで課金を実行しようとすると3-Dセキュア認証が求められます。
消費者へカードの再登録を求めるか、認証をスキップさせるような構築をしてください
ワンタイム・定期課金トークンを作成し、後ほど(もしくは次の画面などで)課金を実行している場合
- トークン作成時には3-Dセキュア認証求めれず、その後の課金のAPI処理時に3-Dセキュア認証が求められます
- レスポンスに含まれる3-Dセキュア認証URLを消費者に実行させ、完了後任意のURLへ遷移させるような構築をしてください
- または、トークンタイプをリカーリングに変更することで、3-Dセキュア認証は当サービス側で実行させるようにしてください(課金の3-Dセキュア認証ではないことはご了承ください)
トランザクショントークンの作成をAPIで実行している(PCI DSSに準拠している)加盟店さま
- 当社の決済フォームを利用せずにトランザクショントークンを作成している場合、3-Dセキュア認証に関わる全ての処理を加盟店さま側で実行する必要があります
- 別ページの、3-Dセキュア認証の処理の流れを確認しながら実装してください。
課金時に認証をスキップさせたい場合の対応
APIでトランザクショントークンに対する課金処理を加盟店さま側で実行する構築をしている場合は、消費者がその場(Webサイト上など)にいないと3-Dセキュア認証を実行できません。
しかし、加盟店さまが3-Dセキュア対応後、未認証のリカーリングトークンに対してAPIで課金を実行すると課金の3-Dセキュア認証を求められます。
これを回避するためにskip
パラメータを準備しています。
このパラメータを利用するには弊社での設定が必要です。
※2025年4月以降の新規でカード情報を入力いただく際は3-Dセキュア認証の実行が義務化されます。既に登録済のリカーリングトークンに対してはカード情報の入力が伴わないため、課金時の認証をスキップできるようにパラメータを準備していますが、セキュリティ上消費者へカードの再登録を促すことを推奨します。
スキップするためのリクエスト
課金リクエストのthree_ds.mode
にskip
を指定
※トランザクショントークンのdata.three_ds.status
が
の場合、successful
three_ds.mode
が未指定(nomal
)でも3-Dセキュア認証は実行されません
課金時に認証を強制的に実行させたい場合の対応
デフォルトの3-Dセキュア認証ルールにおいて、リカーリングトークンに対する課金処理を行うとき、カード登録の3-Dセキュア認証が完了している場合、課金の3-Dセキュア認証は実行されません。
チャージバック発生時に補償を受けるためには課金の3-Dセキュア認証を実行している必要があります。
トークンがカード登録の3-Dセキュア認証が行われたかどうかに関わらず、課金の3-Dセキュア認証を強制的に実行するためにはパラメータに特定の値を付与する必要があります。
強制的に実行するためのリクエスト
課金リクエストのthree_ds.mode
にrequire
もしくはforce
を指定
require
の場合、3D-セキュアのリスクベース認証によっては本人認証が要求されず課金の3-Dセキュア認証が成功になる可能性がありますforce
の場合、チャレンジ認証が強制的に行われ、本人認証が必要になります