3D セキュアの結果のインポート
3D セキュアが Stripe 以外で実行されている場合に支払いを処理します。
Importing 3DS results is an advanced payment flow that allows you to incorporate your external 3DS authentication into your Stripe payment by importing the authentication result. You need to import 3DS results if you:
- 旅行業界のお客様で、Expedia や Sabre のような旅行情報サイトからカード番号や暗号化された情報を受け取る場合
- Use a third-party provider to perform 3DS
In these situations, you can pass the card details and cryptogram directly to the Payment Intents API instead of using Stripe Elements to collect payment details and run 3DS.
3DS は以下の国で利用可能です。
ベータ Stripe がカード支払いに対応しているその他すべての国。
3DS は、以下の国ではご利用いただけません。
カード詳細を使用して支払い処理する
サーバーでカード詳細を処理する場合、以下のようにします。
- Create and confirm a PaymentIntent with the card details and 3DS details in one API call.
- PaymentIntent を作成する際、confirm を
true
に設定します。 - 再試行可能な支払い拒否の処理中に Stripe が 3DS リクエストを実行できないようにするため、PaymentIntent を確定するときに error_on_requires_action を
true
に設定します。
PaymentMethod を使用して支払いを処理する
Payment Methods API を使用してカード詳細をトークン化する場合、以下のようにします。
- Create and confirm a PaymentIntent with the PaymentMethod ID and 3DS details in one API call.
- PaymentIntent を作成する際、confirm を
true
に設定します。 - 再試行可能な支払い拒否の処理中に Stripe が 3DS リクエストを実行できないようにするため、PaymentIntent を確定するときに error_on_requires_action を
true
に設定します。
注意
カード詳細をトークン化した直後に PaymentMethod で支払いを処理する場合は、代わりに未加工のカードデータを使用してください。
将来の支払いを設定する
3DS プロトコルは次の 2 つのメッセージカテゴリーをサポートします。
- 支払いの認証: 取引時のカード保有者の認証に使用されます。
- 支払いの認証以外: 本人確認およびアカウントの確認に使用されます。
将来の支払いのために顧客のアカウント登録が必要な場合は、 SetupIntent の作成と確定時に、支払いの認証以外の暗号と、カード情報または PaymentMethod ID を含めます。
3DS が免除された結果をインポートする
If you obtain a 3DS result outside of Stripe that contains a ‘low-risk’ SCA exemption, you can flag the exemption-based nature of the 3DS result to Stripe by using the exemption_indicator parameter.
Stripe のリアルタイム取引リスク分析によって適切であると判断された場合、Stripe は、低リスクによる免除をカード発行会社に要求して、オーソリリクエストのレスポンスで exemption_indicator_applied を返すことにより、このアクションをお客様に通知します。
Stripe が低リスクによる免除をリクエストしたかどうかを確認するには、latest_
を拡張し、three_d_secure 属性を調べます。
{ "id": "pi_3aTnU0Aif3fLhNTb0le1BSXI", "object": "payment_intent", // ... "latest_charge": { "id": "ch_3aTnU1AifffLhNTb0tUoEZcd", "object": "charge", // ... "payment_method_details": { "card": {
Cartes Bancaires の結果をインポートする
Cartes Bancaires ネットワーク上で処理される取引に 3D セキュアのインポートを利用するには、ネットワークパラメーターを使用して、リクエストで認証済みネットワークを明示的に渡す必要があります。
Cartes Bancaires の暗号をインポートする場合は、外部の 3D セキュアサーバーから追加のデータも取得する必要があります。以下の表は、こうした追加の必須フィールドと推奨フィールドの詳細を示しています。これらの推奨フィールドは、PaymentIntent と SetupIntent の両方を使用して 3DS の結果をインポートする場合に適用されます。
フィールド | 説明 | 選択肢 |
---|---|---|
electronic_commerce_indicator | The Electronic Commerce Indicator (ECI) is returned by your 3DS provider and indicates what degree of authentication was performed. | オプション。利用可能な場合に含まれる。 |
カード発行会社の ACS が認証暗号を計算する際に使用する暗号計算アルゴリズム。cavv アルゴリズムとも呼ばれる。 ARes/RReq messageExtension: | 必須。 | |
ARes で Cartes Bancaires から返される免除インジケーター。Base64 でエンコードされた 3 バイトのビットマップ (最下位バイト優先、最上位ビット優先)。文字列 (4 文字)。 ARes message extension: | オプション。利用可能な場合に含まれる。 | |
ARes で Cartes Bancaires から返されるリスクスコア。数値は 0 から 99。 ARes/RReq message extension: | オプション。利用可能な場合に含まれる。 | |
AResで、カード発行会社の ACS から返される | オプション。利用可能な場合に含まれる。 | |
requestor_challenge_indicator | カード発行会社の ACS に送信される AReq でリクエストされたチャレンジインジケーター (threeDSRequestorChallengeInd )。01 から 99 までの 2 桁の数字からなる文字列。 | オプション。利用可能な場合に含まれる。 |
オーソリの成功機会を増やすために、こうした追加のフィールドをできるだけ多く指定してください。
Cartes Bancaires
お客様が 3D セキュアに対してSCA 免除を許可されている場合、cb_
パラメーターか exemption_
のいずれか、または両方を送信する必要があります。これらのパラメーターのいずれかが、アクワイアラーの取引リスク分析に基づいて免除が低リスクであることを示している場合、3D セキュア免除された結果をインポートするで説明されているように、Stripe は取引の再評価を行います。
cb_
にアクセスできる場合、その値を渡して、exemption exemption_
を設定しないでください。Stripe はindicator cb_
に基づいて適切な免除インジケーターを推測します。exemption cb_
パラメーターとexemption exemption_
パラメーターの両方を渡す場合は、両方が免除されたステータスを正しく示していることを確認してください。indicator - 免除インジケーターが
exemption_
で、一方indicator=none cb_
のビットマップは適用される免除が低リスク免除であることを示している場合、Stripe はリクエストを拒否します。exemption
テスト
認証を必要とするテストカード (4000 0027 6000 3184
または pm_
) を使用して、テスト環境でシステムを検証できます。
The simulation accepts any correctly-formatted 3DS result. For example:
- バージョン:
2.
1. 0 - E コマースインジケータ:
02
- 暗号:
M6+990I6FLD8Y6rZz9d5QbfrMNY=
- 取引 ID:
5f5d08f2-8c36-4f72-99d1-57b4fb70b7d5
または:
- バージョン:
2.
2. 0 - 電子コマースインジケータ:
05
- 暗号:
4BQwsg4yuKt0S1LI1nDZTcO9vUM=
- 取引 ID:
f879ea1c-aa2c-4441-806d-e30406466d79
3DS による免除の適用
テスト環境では、exemption_
を含むすべてのカードが exemption_
の値として true を返します。内部の TRA チェックに合格せずに false を返す PaymentIntent の作成をテストするには、カード番号 4000 0000 0001 6123
を使用し、exemption_
を設定してください。
Cartes Bancaires
以下の共同ブランドカードを使用して、Cartes Bancaires の結果のインポートをテストできます。
以下のように、有効な cb_
値はすべてテストに使うことができます。
AAAA
: 免除は一切許可されないBAAA
: 低リスク免除は許可される
標準的な免除フローのように、cb_
が低リスクに相当する場合、テストカード 4000 0000 0001 6123
は、exemption_indicator_applied に false を返します。
未加工の PAN 使用
Stripe では、未加工カードデータ API へのアクセスを付与する前に、カード保有者のデータが Payment Card Industry Data Security Standard (PCI DSS) に準拠した方法で安全に処理されていることを検証するようにユーザーに義務付けています。
For businesses that require this functionality, Stripe imposes strict requirements, including:
- PCI DSS 準拠の検証
- Submission to the Stripe review process
- Stripe のデフォルトのセキュリティ設定に加えて適用される制御の維持への同意
イネーブルメントの詳細については、未加工のカードデータ API へのアクセスを有効にするのサポート記事をご覧ください。
注
For accounts with custom pricing, if you specify Stripe as your acquirer in the 3D Secure request, Stripe passes network costs applicable to 3DS through, per your agreement with Stripe.