組み込みが正しく機能することを確認するには、テスト環境 で専用の値を使用して、資金を移動せずに取引をシミュレーションします。
テストカードを使用して、いくつかのシナリオのシミュレーションができます。
カード以外の支払いのテストも同様に機能します。それぞれの決済手段 に独自の専用値があります。
テストカードの使用方法 テストカードを使用するときは必ず、すべての API コールでテスト用の API キー を使用します。これは、対話式でテストできる決済フォームを提供する場合にも、テストコードを作成する場合にも当てはまります。
実際のカード詳細は使用しないでください。実際の決済手段の詳細を使用して本番環境でテストすることは、Stripe 利用規約 で禁止されています。テスト API キーと以下のカード番号を使用します。
対話式でテストする 対話式でテストする場合は、4242 4242 4242 4242 などのカード番号を使用します。ダッシュボードまたは決済フォームにカード番号を入力します。
有効な将来の日付を使用します (12/34 など)。 任意の 3 桁 (American Express カードの場合は 4 桁) のセキュリティーコードを使用します。 その他のフォームフィールドには任意の値を使用します。 テストコード テストコードを作成する場合、カード番号の使用はお勧めしません。代わりに、pm_card_visa など、対応する PaymentMethod
を使用してください。
curl https://api.stripe.com/v1/payment_intents \
-u sk_test_4eC39HqLyjWDarjtT1zdp7dc
: \
-d amount =500 \
-d currency =gbp \
-d payment_method =pm_card_visa
テスト環境であっても、API コールまたはサーバー側のコードで直接、カード番号を使用することはお勧めしません。使用すると、本番環境に移行するときにコードの PCI への準拠が損なわれる可能性があります。
実装の大半では Tokens が使用されなくなっていますが、必要に応じて tok_visa などのテスト用トークンを使用できます。
組み込みを本番に移行する準備ができたら、テストの公開可能キーとシークレット API キー を本番用のものに置き換えます。組み込みでテスト用 API キーが使用されていると、本番の支払いは処理されません。
ブランド別のカード 支払いの成功をシミュレーションするには、以下のリストのテストカードを使用します。各テストカードの請求国はアメリカに設定されています。その他の請求国のカードを使用したテストカード支払いを作成する必要がある場合は、国際テストカード を使用します。
ブランド 番号 セキュリティコード 日付 Visa 4242 4242 4242 4242 任意の 3 桁の数字 任意の将来の日付 Visa (デビット) 4000 0566 5566 5556 任意の 3 桁の数字 任意の将来の日付 Mastercard 5555 5555 5555 4444 任意の 3 桁の数字 任意の将来の日付 Mastercard (2 シリーズ) 2223 0031 2200 3222 任意の 3 桁の数字 任意の将来の日付 Mastercard (デビット) 5200 8282 8282 8210 任意の 3 桁の数字 任意の将来の日付 Mastercard (プリペイド) 5105 1051 0510 5100 任意の 3 桁の数字 任意の将来の日付 アメリカン・エキスプレス 3782 822463 10005 任意の 4 桁の数字 任意の将来の日付 アメリカン・エキスプレス 3714 496353 98431 任意の 4 桁の数字 任意の将来の日付 ディスカバー 6011 1111 1111 1117 任意の 3 桁の数字 任意の将来の日付 ディスカバー 6011 0009 9013 9424 任意の 3 桁の数字 任意の将来の日付 ディスカバー (デビット) 6011 9811 1111 1113 任意の 3 桁の数字 任意の将来の日付 ダイナースクラブ 3056 9300 0902 0004 任意の 3 桁の数字 任意の将来の日付 ダイナースクラブ (14 桁のカード) 3622 720627 1667 任意の 3 桁の数字 任意の将来の日付 JCB 3566 0020 2036 0505 任意の 3 桁の数字 任意の将来の日付 銀聯 6200 0000 0000 0005 任意の 3 桁の数字 任意の将来の日付
大半の Cartes Bancaires カードは Visa または Mastercard とブランド提携しています。次の表のテストカードは、提携ブランドのカードによる支払いの成功をシミュレーションします。
ブランド/提携ブランド 番号 セキュリティコード 日付 Cartes Bancaires/Visa 4000 0025 0000 1001 任意の 3 桁の数字 任意の将来の日付 Cartes Bancaires/Mastercard 5555 5525 0000 1001 任意の 3 桁の数字 任意の将来の日付
国別のカード 支払いの成功を国別にシミュレーションするには、以降のセクションに記載されているテストカードを使用します。
アメリカ大陸 北米と南米における支払いの成功をシミュレーションするには、以下のテストカードを使用します。
国 番号 ブランド アメリカ (US) 4242 4242 4242 4242 Visa ブラジル (BR) 4000 0007 6000 0002 Visa カナダ (CA) 4000 0012 4000 0000 Visa メキシコ (MX) 4000 0048 4000 8001 Visa
ヨーロッパと中東 ヨーロッパと中東における支払いの成功をシミュレーションするには、以下のテストカードを使用します。
国 番号 ブランド アラブ首長国連邦 (AE) 4000 0078 4000 0001 Visa アラブ首長国連邦 (AE) 5200 0078 4000 0022 Mastercard オーストリア (AT) 4000 0004 0000 0008 Visa ベルギー (BE) 4000 0005 6000 0004 Visa ブルガリア (BG) 4000 0010 0000 0000 Visa ベラルーシ (BY) 4000 0011 2000 0005 Visa クロアチア (HR) 4000 0019 1000 0009 Visa キプロス (CY) 4000 0019 6000 0008 Visa チェコ共和国 (CZ) 4000 0020 3000 0002 Visa デンマーク (DK) 4000 0020 8000 0001 Visa エストニア (EE) 4000 0023 3000 0009 Visa フィンランド (FI) 4000 0024 6000 0001 Visa フランス (FR) 4000 0025 0000 0003 Visa ドイツ (DE) 4000 0027 6000 0016 Visa ジブラルタル (GI) 4000 0029 2000 0005 Visa ギリシャ (GR) 4000 0030 0000 0030 Visa ハンガリー (HU) 4000 0034 8000 0005 Visa アイルランド (IE) 4000 0037 2000 0005 Visa イタリア (IT) 4000 0038 0000 0008 Visa ラトビア (LV) 4000 0042 8000 0005 Visa リヒテンシュタイン (LI) 4000 0043 8000 0004 Visa リトアニア (LT) 4000 0044 0000 0000 Visa ルクセンブルク (LU) 4000 0044 2000 0006 Visa マルタ (MT) 4000 0047 0000 0007 Visa オランダ (NL) 4000 0052 8000 0002 Visa ノルウェー (NO) 4000 0057 8000 0007 Visa ポーランド (PL) 4000 0061 6000 0005 Visa ポルトガル (PT) 4000 0062 0000 0007 Visa ルーマニア (RO) 4000 0064 2000 0001 Visa Saudi Arabia (SA) 4000 0068 2000 0007 Visa スロベニア (SI) 4000 0070 5000 0006 Visa スロバキア (SK) 4000 0070 3000 0001 Visa スペイン (ES) 4000 0072 4000 0007 Visa スウェーデン (SE) 4000 0075 2000 0008 Visa スイス (CH) 4000 0075 6000 0009 Visa イギリス (GB) 4000 0082 6000 0000 Visa イギリス (GB) 4000 0582 6000 0005 Visa (デビット) イギリス (GB) 5555 5582 6555 4449 Mastercard
アジア太平洋 アジア太平洋地域における支払いの成功をシミュレーションするには、以下のテストカードを使用します。
国 番号 ブランド オーストラリア (AU) 4000 0003 6000 0006 Visa 中国 (CN) 4000 0015 6000 0002 Visa 香港 (HK) 4000 0034 4000 0004 Visa インド (IN) 4000 0035 6000 0008 Visa 日本 (JP) 4000 0039 2000 0003 Visa 日本 (JP) 3530 1113 3330 0000 JCB マレーシア (my) 4000 0045 8000 0002 Visa ニュージーランド (NZ) 4000 0055 4000 0008 Visa シンガポール (SG) 4000 0070 2000 0003 Visa タイ (TH) 4000 0076 4000 0003 Visa (クレジット) タイ (TH) 4000 0576 4000 0008 Visa (デビット)
拒否された支払い カード発行会社はさまざまな理由で支払いを拒否することがあります。このセクションに記載されているテストカードを使用して、エラー処理ロジックをテストしたり、支払い拒否のシュミレーションを行うことができます。これらのカードのいずれかを使用すると、カードのエラー が発生して、特定のエラーコード と拒否コード が示されます。
セキュリティーコードの誤りによる支払い拒否をシミュレーションするには、セキュリティーコードを指定する必要があります。任意の 3 桁の数字を指定できます。セキュリティーコードを指定しない場合、Stripe はセキュリティーコードの確認を実行しないため、確認が失敗することはありません。
上記の表のカードを Customer オブジェクトに関連付けることはできません。正常に関連付けられたカードを使用した支払いの拒否をシミュレーションするには、下記のカードを使用します。
説明 番号 詳細 関連付けた後の支払い拒否 4000 0000 0000 0341 このカードを Customer (顧客) オブジェクトに関連付けることができますが、顧客への請求は失敗します。
不正防止 Stripe の不正防止システムである Radar により、リスクレベルが高い場合や検証チェックに失敗した場合に支払いがブロックされることがあります。このセクションに記載されているカードを使用して、Radar の設定をテストできます。また、ブロックされた支払いに組み込みがどのように対応するかをテストする場合にも使用できます。
各カードは特定のリスク要因をシミュレーションします。 ご使用の Radar の設定により、支払いをブロックする原因となるリスク要因が決定されます。ブロックされた支払いは、不正使用のエラーコードでカードエラー になります。
セキュリティーコードの確認の失敗をシミュレーションするには、セキュリティーコードを指定する必要があります。任意の 3 桁の数字を指定できます。郵便番号チェックの失敗をシミュレーションするには、郵便番号を指定する必要があります。任意の有効な郵便番号を指定できます。これらの値を指定しない場合、Radar は、対応するチェックを実行しないため、チェックが失敗することはありません。
説明 番号 詳細 常にブロック
4100 0000 0000 0019 支払いのリスクレベルは「非常に高い」 です
Radar によって常にブロックされます。
非常に高いリスク
4000 0000 0000 4954 支払いのリスクレベルは「非常に高い」 です
設定によっては 、Radar によってブロックされる場合があります。
比較的高いリスク
4000 0000 0000 9235 支払いのリスクレベルは「比較的高い」 です
Radar for Teams を使用する場合、Radar でレビューリストに追加 されることがあります。
セキュリティーコードの確認の失敗
4000 0000 0000 0101 セキュリティーコードを指定した場合に、セキュリティーコードの確認が失敗します。
設定によっては 、Radar でブロックされる場合があります。
郵便番号チェックの失敗
4000 0000 0000 0036 郵便番号を指定した場合に、郵便番号チェックが失敗します。
設定によっては 、Radar でブロックされる場合があります。
住所 (1 行目) のチェックの失敗
4000 0000 0000 0028 住所 (1 行目) のチェックが失敗します。
支払いは、カスタムの Radar ルールによってブロック しない限り、成功します。
住所チェックの失敗
4000 0000 0000 0010 住所の郵便番号チェックと住所 (1 行目) のチェックのどちらも失敗します。
設定によっては 、Radar でブロックされる場合があります。
住所を使用できない
4000 0000 0000 0044 住所の郵便番号チェックと住所 (1 行目) のチェックのどちらも使用できません。
支払いは、カスタムの Radar ルールによってブロック しない限り、成功します。
無効なデータ 無効なデータが原因のエラーをテストするには、無効な詳細を指定します。これに専用のテストカードは必要ありません。どの無効な値でも機能します。以下に例を示します。
不審請求の申請 不審請求が申請された取引 をシミュレーションするには、このセクションに記載されているテストカードを使用します。また、不審請求の申請に対する主張が認められる場合または認められない場合をシミュレーションするには、主張が認められる反証資料または認められない反証資料 を提出します。
説明 番号 詳細 不正使用 4000 0000 0000 0259 デフォルトのアカウント設定では、支払いが成功しますが、不正使用 として不審請求が申請されることになります。このタイプの不審請求の申請は、3D セキュア認証の後には保護されます 。 未着 4000 0000 0000 2685 デフォルトのアカウント設定では、支払いが成功しますが、商品未着 として不審請求が申請されることになります。このタイプの不審請求の申請は、3D セキュア認証の後でも保護されません 。 照会 4000 0000 0000 1976 デフォルトのアカウント設定では、支払いが成功し、照会 としてのみ不審請求が申請されます。 警告 4000 0000 0000 5423 デフォルトのアカウント設定では、支払いが成功し、不正使用の早期警告 のみが返されます。
反証資料 不審請求の申請に対する主張が認められる場合と認められない場合をシミュレーションするには、次の表のいずれかの反証資料の値で応答します。
反証資料 説明 winning_evidence
不審請求の申請がクローズされ、主張が認められたとマークされます。アカウントには支払い金額と関連手数料が入金されます。 losing_evidence
不審請求の申請が終結し、主張が認められなかったとマークされます。アカウントへの入金は行われません。
返金 本番環境では、返金は非同期で行われます。返金は、成功したように表示されてから失敗したり、最初は pending
として表示され、後で成功したりする場合があります。このような動作の返金をシミュレーションするには、このセクションに記載されているテストカードを使用します。(その他のテストカードはすべて、返金が即時に成功して、その後はステータスが変わりません。)
説明 番号 詳細 非同期の成功 4000 0000 0000 7726 支払いは成功します。返金を開始する場合、ステータスは pending
で始まります。しばらくすると、ステータスは succeeded
に移行し、charge.refund.updated
Webhook イベントが送信されます。 非同期の失敗 4000 0000 0000 5126 支払いは成功します。返金を開始する場合、ステータスは succeeded
で始まります。しばらくすると、ステータスは failed
に移行し、charge.refund.updated
Webhook イベントが送信されます。
利用可能な残高 テスト取引から利用可能残高に直接、資金を送金するには、このセクションに記載されているテストカードを使用します。他のテストカードでは、成功した支払いから保留中の残高に資金が送金されます。
説明 番号 詳細 保留中の残高のバイパス 4000 0000 0000 0077 アメリカでの支払いは成功します。売上は利用可能残高に直接追加され、保留中の残高をバイパスします。 保留中の残高のバイパス 4000 0037 2000 0278 国際決済は成功します。売上は利用可能残高に直接追加され、保留中の残高をバイパスします。
3D セキュア認証 3D セキュアでは、クレジットカード取引に追加の認証レイヤーが必要になります。このセクションに記載されているテストカードを使用して、認証を行う決済フローをシミュレーションします。その他のテストカードは、3D セキュアに登録されていないため、認証を行うことはできません。
Stripe ダッシュボードで直接作成された支払いでは 3D セキュアのリダイレクトは行われません。代わりに、組み込みの独自のフロントエンドまたは API コールを使用してください。
認証と設定 認証を含む決済フローをシミュレーションするには、このセクションに記載されているテストカードを使用します。一部のカードは、将来の支払いに備えた設定 が可能であるか、すでに設定されていることもあります。
説明 番号 詳細 設定がない場合に認証する 4000 0025 0000 3155 このカードでは、将来の支払いに備えた設定 がない限り、オフセッションの支払いで認証が必要です。設定した後は、オフセッションの支払いで認証は不要になります。 常に認証 4000 0027 6000 3184 このカードは、カードの設定にかかわらず、すべての取引で認証が必要です。 すでに設定 4000 0038 0000 0446 このカードはあらかじめオフセッションで使用するように設定されています。1 回限り の支払いと、その他のオンセッション 支払いの場合は、認証が必要です。ただし、オフセッション支払い はすべて、カードが事前に設定 されている場合と同様に成功します。 残高不足 4000 0082 6000 3178 このカードは 1 回限りの支払い の場合、認証が必要です。認証に成功しても、または以前に設定 してあっても、すべての支払いが insufficient_funds
失敗コードで拒否されます。
サポートおよび対応状況 規制により義務付けられている場合や、Radar ルールまたはカスタムコードによってトリガーされた場合に、Stripe は認証をリクエストします。認証がリクエストされた場合でも、必ず実行できるとは限りません。たとえば、顧客のカードが登録されていない場合や、エラーが発生する場合があります。このセクションに記載されているテストカードを使用して、このような要因のさまざまな組み合わせをシミュレーションしてください。
3D セキュアの使用 結果 番号 詳細 3DS2 が必須 OK 4000 0000 0000 3220 この支払いを正常に完了させるには、3D セキュア 2 認証を実行する必要があります。デフォルトの場合、Radar ルールによってこのカードの 3D セキュア認証がリクエストされます。 3DS が必須 OK 4000 0000 0000 3063 この支払いを正常に完了させるには、3D セキュア認証を実行する必要があります。デフォルトの場合、Radar ルールによってこのカードの 3D セキュア認証がリクエストされます。 3DS が必須 拒否 4000 0084 0000 1629 3D セキュア認証が必要ですが、認証後に支払いが card_declined
エラーコードで拒否されます。デフォルトの場合、Radar ルールによってこのカードの 3D セキュア認証がリクエストされます。 3DS が必須 エラー 4000 0084 0000 1280 3D セキュア認証が必要ですが、3D セキュア検索リクエストが処理エラーで失敗します。支払いは、card_declined
失敗コードで拒否されます。デフォルトの場合、Radar ルールでこのカードの 3D セキュア認証がリクエストされます。 3DS に対応 OK 4000 0000 0000 3055 3D セキュア認証を実行できますが、必須ではありません。デフォルトの場合、Radar ルールでこのカードの 3D セキュア認証はリクエストされません。 3DS に対応 エラー 4000 0000 0000 3097 3D セキュア認証を実行できますが、必須ではありません。ただし、3D セキュアを実行しようとすると、処理エラーが発生します。デフォルトの場合、Radar ルールでこのカードの 3D セキュア認証はリクエストされません。 3DS に対応 未登録 4242 4242 4242 4242 このカードでは 3D セキュアがサポートされていますが、このカードは 3D セキュアに登録されていません。このため、Radar ルールによって 3D セキュアがリクエストされても、顧客は追加の認証を行いません。デフォルトの場合、Radar ルールではこのカードの 3D セキュア認証がリクエストされません。 3DS に未対応 3782 822463 10005 このカードでは 3D セキュアがサポートされていないため、呼び出すことができません。PaymentIntent は、認証を行わずに続行されます。
3D セキュアのモバイルでのチャレンジフロー モバイル決済の場合、顧客が UI プロンプトに対応するチャレンジフローをいくつか提供できます。テスト目的で特定のチャレンジフローを起動するには、このセクションに記載されているテストカードを使用します。このカードは、ブラウザーベースの決済フォームまたは API コールでの使用には適しません。こうした環境では、機能はするものの、特定の動作を起動することはありません。API コールには適さないため、テスト用の PaymentMethod
と Token
の値は提供していません。
チャレンジフロー 番号 詳細 Stripe 以外 4000 0000 0000 3220 すべての取引で 3D セキュア 2 認証を実行する必要があります。外部 UI を使用してチャレンジフローを起動します。 1 回限りのパスコード 4000 0000 0000 3238 すべての取引で 3D セキュア 2 認証を実行する必要があります。1 回限りのパスコード UI を使用してチャレンジフローを起動します。 単一選択 4000 0000 0000 3246 すべての取引で 3D セキュア 2 認証を実行する必要があります。単一選択の UI を使用してチャレンジフローを起動します。 複数選択 4000 0000 0000 3253 すべての取引で 3D セキュア 2 認証を実行する必要があります。複数選択の UI を使用してチャレンジフローを起動します。 WebView 4000 0000 0000 3063 この支払いを正常に完了させるには、3D セキュア認証を実行する必要があります。 WebView を使用してチャレンジフローを起動します。return_url
によってモーダルが閉じられることを確認できます。
PIN を使用した支払い PIN が使用される対面支払いの成功をシミュレーションするには、このセクションに記載されているテストカードを使用します。
説明 番号 詳細 オフライン PIN 4001 0070 2000 0002 このカードは、カード保有者にプロンプトが表示され、保有者がオフライン PIN を入力する支払いをシミュレーションします。生成される支払いでは、cardholder_verification_method が offline_pin
に設定されます。 オフライン PIN の再試行 4000 0082 6000 0075 SCA がトリガーされる再試行フローがシミュレーションされます。このフローでは、カード保有者の初回の非接触型支払いが失敗し、リーダーから、ユーザーにカードを挿入し、オフライン PIN を入力するように求めるプロンプトが表示されます。生成される支払いでは、cardholder_verification_method が offline_pin
に設定されます。 オンライン PIN 4001 0003 6000 0005 このカードは、カード保有者にプロンプトが表示され、保有者がオンライン PIN を入力する支払いをシミュレーションします。生成される支払いでは、cardholder_verification_method が online_pin
に設定されます。 オンライン PIN の再試行 4000 0027 6000 0008 SCA がトリガーされる再試行フローがシミュレーションされます。このフローでは、カード保有者の初回の非接触型支払いが失敗し、リーダーから、ユーザーにカードを挿入し、オンライン PIN を入力するように求めるプロンプトが表示されます。生成される支払いでは、cardholder_verification_method が online_pin
に設定されます。
Webhook Webhook をテストするには、2 つのオプションがあります。
テスト環境でエンドポイントに正規のイベントを送信するアクションを実行します。たとえば、charge.succeeded イベントをトリガーするには、支払いを成功させるテストカード を使用できます。 Stripe CLI を使用してイベントをトリガー するか、Stripe for Visual Studio Code を使用 します。レート制限 テスト環境のリクエストで 429
HTTP エラーが発生するようになったら、頻度を低くします。これらのエラーが返されるのは、テスト環境のレート制限機能 が本番環境より厳しいためです。
テスト環境で Stripe API を使用して組み込みの負荷テストを行うことはお勧めしません。テスト環境の負荷制限機能は厳しいため、本番環境では表示されないエラーが表示される可能性があります。代替方法については、負荷テスト に関するドキュメントをご覧ください。
カード以外の支払い テスト用のカード以外の決済手段使用するときは必ず、すべての API コールでテスト用の API キー を使用します。これは、対話式でテストできる決済フォームを提供する場合にも、テストコードを作成する場合にも当てはまります。
テスト手順は決済手段ごとに異なります。
即時確認を行うシナリオをテストするために、テストを実行するユースケースに合わせてテスト用の銀行口座 を選択して、ACH 支払いのさまざまなシナリオをシミュレーションします。
テスト環境で取引に関するメールを送信する 銀行口座の詳細を収集し、同意書を受け付けたら、テスト環境で同意書の確認メールと少額入金の確認メールを送信します。これを実行するには、決済手段の詳細 を収集するときに、payment_method_data.billing_details[email]
フィールドに {any-prefix}+test_email@{any_domain}
の形式でメールアドレスを指定します。
Test account numbers Stripe では、手動入力の銀行口座の組み込みが本番環境に移行する準備が整ったかどうかを確認するため、テスト用の口座番号と対応するトークンをいくつか用意しています。
Account number トークン Routing number 動作 000123456789
pm_usBankAccount_success
110000000
支払いは成功します。 000111111113
pm_usBankAccount_accountClosed
110000000
口座が解約済みであるため、支払いは失敗します。 000111111116
pm_usBankAccount_noAccount
110000000
口座が見つからないため、支払いは失敗します。 000222222227
pm_usBankAccount_insufficientFunds
110000000
残高不足のため、支払いは失敗します。 000333333335
pm_usBankAccount_debitNotAuthorized
110000000
引き落としがオーソリされていないため、支払いは失敗します。 000444444440
pm_usBankAccount_invalidCurrency
110000000
通貨が無効であるため、支払いは失敗します。 000666666661
pm_usBankAccount_failMicrodeposits
110000000
支払いで少額入金の送金が失敗します。
テスト取引を完了する前に、自動的に支払いに成功または失敗するテスト用のすべての口座を確認する必要があります。確認するには、下記の少額入金のテスト用の金額または明細書表記コードを使用します。
少額入金の金額と明細書表記コードをテストする さまざまなシナリオを再現するために、これらの少額入金の金額「または」明細書表記コードの値 0.01 を使用します。
少額入金の金額 明細書表記コードの値 0.01 シナリオ 32
and 45
SM11AA アカウントの確認をシミュレーションします。 10
および 11
SM33CC 許容された確認の試行回数の超過をシミュレーションします。 40
および 41
SM44DD 少額入金のタイムアウトをシミュレーションします。