テスト環境環境とユースケース
テスト環境と Stripe のユースケースを使用して実装内容をテストします。
Stripe のテスト環境では、実際の請求や決済を行うことなく、実装をテストできます。テスト環境は、実際のオブジェクトの作成をシミュレーションするためのテスト用の環境であり、実際の取引に影響を与えたり、実際の資金を移動したりするリスクはありません。品質保証 (QA) テストのユースケースを使用して、Postman コレクションをインポートし、テストプロセスに役立てることをお勧めします。
テスト環境
テスト環境では、テスト用のクレジットカードに請求するほか、テスト用の商品と価格を作成することができます。また、テスト環境を使用して取引をシミュレーションし、実装が正常に機能することを確認できます。この機能により、本番環境に移行して実際の支払いを処理する前に、Stripe 実装のバグやエラーを確認することができます。
Stripe アカウントを作成すると、Stripe ダッシュボードに一連のテスト API キーが表示されます。これらの API キーを使用して、Stripe API に対するリクエストを行うことで、シミュレーションデータを作成して取得できます。実際の決済の受け付けを開始するには、本番環境利用を申請し、テスト環境をオフにして、実装で本番 API キーを使用する必要があります。Stripe は、システムをテストするためのリソースを多数提供しています。
本番環境に対する影響
ダッシュボードでは、テスト環境で設定を変更すると、本番環境でも設定が変更される場合があります。ダッシュボードのページの多くに白色の通知ボックスがあり、テスト環境では本番環境の設定は無効になっています。この場合、有効になっている設定は安全に使用できます。白色のコールアウトがない場合は、オレンジ色のテストデータバナーが表示されていない限り、テスト環境で変更を行うと、本番環境の設定に変更が反映されるものとご理解ください。
テスト環境と本番環境
Stripe API リクエストはすべて、テスト環境か、本番環境のいずれかで発生します。一方の環境の API オブジェクトには、もう一方の環境からアクセスできません。たとえば、テスト環境の Product (商品) オブジェクトを本番環境の支払いの一部にすることはできません。
タイプ | 使用するタイミング | オブジェクト | 使用方法 | 考慮事項 |
---|---|---|---|---|
テスト環境 | 実装を構築する際には、テスト環境と関連するテスト API キーを使用します。テスト環境では、カードネットワークとペイメントプロバイダーは決済を処理しません。 | API コールは、シミュレーションされたオブジェクトを返します。たとえば、テストの account 、payment 、customer 、charge 、refund 、transfer 、balance 、subscription オブジェクトを取得して使用することができます。 | テスト用のクレジットカードとアカウントを使用します。実際の支払い方法を受け付けることも、実際のアカウントを処理することもできません。 | Identity による検証チェックは行われません。また、Connect account (アカウント) オブジェクトは機密フィールドを返しません。 |
本番環境 | 実装を立ち上げて実際の支払いを受け付ける準備ができたら、本番環境と関連する本番 API キーを使用します。本番環境では、カードネットワークとペイメントプロバイダーは決済を処理します。 | API コールは、実際のオブジェクトを返します。たとえば、実際の account 、payment 、customer 、charge 、refund 、transfer 、balance 、subscription オブジェクトを取得して使用することができます。 | 実際のクレジットカードを受け付けて、顧客のアカウントを処理します。クレジットカードとアカウントの実際の支払いのオーソリ、支払い、キャプチャーを受け付けることができます。 | 不審請求の申請のフローはより細かく、テストプロセスはよりシンプルです。また、一部の支払い方法ではフローがさらに細かく、ステップ数が多くなります。 |
ダッシュボードのテスト環境トグルが、実装環境のコードに影響を与えることはありません。コードの動作に影響を与えるのは、テスト環境と本番環境の API キーです。
テストカード番号
Stripe は、さまざまな決済シナリオのシミュレーションに使用できる一連のテストカード番号を提供しています。これらのテストカード番号を使用すると、実際の決済や請求を処理することなく、シミュレーション用の決済をテスト環境で作成できます。
テストカード番号を使用すると、任意の将来の有効期限と 3 桁のセキュリティコードを入力して、決済の成功をシミュレーションできます。決済の失敗をシミュレーションする場合は、Stripe が提供する特定のテストカード番号とセキュリティコードを使用できます。
テストカード番号はテスト環境でのみ有効です。実際の支払いには使用しないでください。
テストデータを削除する
すべてのテストデータを Stripe アカウントから削除するには、次の手順を実行してください。
- 既存の Stripe アカウントを使用してダッシュボードにログインします。
- テスト環境で、開発者 > 概要 をクリックします。
- テストデータで、テストデータをレビューをクリックします。ここのダイアログに、既存のすべてのテストデータオブジェクトのリストが表示されます。
- テストデータを削除をクリックして、削除プロセスを開始します。テストデータの削除を取り消すことはできません。
削除プロセスを実行中、テスト環境は一時的に利用できなくなります。
注
Meters (従量課金) オブジェクトは、自動化されたテストデータの削除プロセスでサポートされていないため、手動で削除する必要があります。
テストメール
デフォルトでは、 Stripe はテスト環境で顧客にメールを送信しません。たとえば、テスト環境で請求書への支払いを行うと、顧客に領収書のメールは送信されません。また、テスト環境で API を使用して確定された請求書についても、顧客に領収書メールは送信されません。
テスト環境で Stripe から顧客にメールを送信したい場合は、ダッシュボードで以下を実行できます。
- 請求書を作成して特定の顧客に手動で送信します。
- 支払い済みの請求書の領収書を手動で送信します。
メールで請求書や領収書を確認する場合は、Customer
オブジェクトにチームのメールアドレスを設定するか、PaymentIntent に receipt_
属性を設定してください。
ユースケースをテストする
次の表には、品質保証 (QA) テストのユースケースが含まれています。
ユースケース | アクション |
---|---|
支払いの成功 (ただちにキャプチャーする場合) |
|
PaymentIntent オーソリ成功 (売上を後でキャプチャーする) |
|
PaymentIntent キャプチャー成功 (売上をただちにキャプチャーする場合、または後で売上をキャプチャーする場合) |
|
支払いの失敗 | この支払いは、ダッシュボードの支払いに失敗として表示されます。
|
Radar によるブロック | 使用する Radar のバージョンに関係なく、リスクが高いため、またはルールにより、支払いがブロックされる場合があります。レスポンスは、支払いの失敗の場合と同じです。 |
不審請求が申請された支払い |
|
未解決の支払い照会 | 照会は不審請求の申請と似ていますが、主な相違点は、照会が不審請求の申請に発展しない限り、売上が引き落とされないこと、不審請求が申請されるまで返金可能なままであること、およびステータスが異なることです。この場合、 Stripeは、
|
不審請求の申請に対する主張が認められた |
|
不審請求の申請に対する主張が認められなかった | 顧客が不審請求の申請で主張が認められなかった場合、Stripe は、既存の
|
照会に対する主張が認められた | 照会の主張が認められた場合、照会を最初に開始した際に売上が削除されなかったため、残高は変わりません。Stripe は、既存の
|
照会に対する主張が認められなかった |
|
返金済みの支払い | この支払いは、ダッシュボードの支払いに返金済みとして表示されます。
|
一部返金済みの支払い |
|
アカウント残高がマイナスになる | 必ず Stripe でマイナス残高をテストして、銀行口座が Stripe からの引き落としを受け付けられることを確認してください。 |
成功した入金 | 成功した入金 (推奨) に対して Webhook を有効にしている場合は、イベントの処理をテストします。 |
失敗した入金 | 失敗した入金 (推奨) に対して Webhook を有効にしている場合は、イベントの処理をテストします。 |
Stripe の Postman コレクション
Postman は、広く利用されている API 開発ツールです。Stripe の導入をよりシンプルにするために、構築済みシステムのサーバー側コンポーネントをテストする際に必要なツールとともに支払い専用の Postman コレクションをご用意しております。
コレクションをインポートする
まず、Postman アプリにアクセスする必要があります。ブラウザーバージョンまたはデスクトップバージョンを使用できます。アプリを起動したら、コレクションをインポートします。
ウェブでこのプロセスを開始するには、左上隅にあるインポートボタンをクリックしてから、Link オプションをクリックします。Payments コレクションのリンクを貼り付けます。Postman のデスクトップアプリを使用している場合は、File (ファイル) > Import (インポート) をクリックします。正常にインポートされると、Collections (コレクション) の下にコレクションが表示されます。
インポートダイアログ
コレクションを使用する
コレクションを使用するには、先ほどインポートしたコレクションに移動して、Variables (変数) をクリックします。テスト環境の Stripe シークレットキーを Stripe ダッシュボードからコピーして、Initial Value (初期値) フィールドに貼り付けます。この手順が完了すると、リクエストの実行準備が整います。
他の変数は、コレクションの実行時にスクリプトによって入力されます。たとえば、customer、price、charge、PaymentIntent を作成する場合は、システムは、コレクションのスクリプトを使用してその ID を保存し、返金などの後続のリクエストで使用できるようにします。
Postman コレクションにシークレットキーを追加する