Stripe Terminal をテストする
Terminal の組み込みを効果的にテストする方法をご紹介します。
注
Stripe Terminal をテストするプロセスの大半は、Stripe のオンライン決済のテストと類似しています。また、テスト環境では Stripe Terminal でモバイルウォレット (Apple Pay や Google Pay など) を使用することはできません。詳細については、Stripe の一般テストガイドをご覧ください。
Terminal のデプロイを成功させる最善の方法は、システムの各部分をテストすることです。Stripe は各ステージ用のテストツールを用意しています。
- リーダーを注文する前に、リーダーシミュレーターで組み込みをテストします。
- 物理テストカードでハードウェアの組み込みをテストします。
シミュレーションされたリーダー
Stripe Terminal SDK およびサーバー主導型の連携にはシミュレーションされた内蔵カードリーダーが付属しているため、物理ハードウェアに接続することなくアプリを開発してテストすることができます。連携が完了している場合も、構築中であっても、シミュレーションされたリーダーを使用してアプリ内のすべての Terminal フローをエミュレートします。
シミュレーション済みのリーダーには UI が表示されません。アプリで接続した後、Stripe SDK または API への呼び出しが成功すると、これが機能していることを確認できます。
SDK のシミュレーションされたリーダーは、必要に応じて自動的にカード提示をシミュレーションします。サーバー主導型のシステムでは、構築済みのシステムを更新して、カード提示をシミュレーションします。
シミュレーションされたテストカード
シミュレーションされたリーダーは、シミュレーションされたテストカードを使用するよう設定できます。これにより、POS アプリケーション内のさまざまなフローをテストできるようになります。
支払い方法を収集する前に、以下のテストカード番号またはテスト支払い方法のいずれかを使用して特定のレスポンスを生成するよう、シミュレーションされたリーダーを設定します。
標準的なテストカード
テストカード番号 | テスト決済手段 | ブランド |
---|---|---|
visa | Visa | |
visa_ | Visa (デビット) | |
mastercard | Mastercard | |
mastercard_ | Mastercard (デビット) | |
mastercard_ | Mastercard (プリペイド) | |
amex | アメリカン・エキスプレス | |
amex2 | アメリカン・エキスプレス | |
discover | ディスカバー | |
discover2 | ディスカバー | |
diners | ダイナースクラブ | |
diners_ | ダイナースクラブ (14 桁のカード) | |
jcb | JCB | |
unionpay | 銀聯 | |
interac | Interac | |
eftpos_ | eftpos オーストラリア | |
eftpos_ | eftpos オーストラリア/Visa | |
eftpos_ | eftpos オーストラリア/Mastercard |
特定の成功のためのテストカード
テストカード番号 | テスト決済手段 | 結果 |
---|---|---|
offline_ | カード保有者がオフライン PIN の入力を求められるフローがシミュレーションされます。結果として得られる支払いでは、cardholder_verification_method が offline_ に設定されます。 | |
offline_ | SCA によってトリガーされる再試行フローがシミュレーションされます。カード保有者が最初の非接触型決済に失敗すると、リーダーがユーザーにカードを挿入してオンライン PIN を入力するように求めます。結果として得られる支払いでは、cardholder_verification_method が offline_ に設定されます。 | |
online_ | カード保有者にメッセージが表示され、カード保有者がオンライン PIN を入力する操作がシミュレーションされます。結果として得られる支払いでは、cardholder_verification_method が online_ に設定されます。 | |
online_ | SCA によってトリガーされる再試行フローがシミュレーションされます。このフローでは、カード保有者の初回の非接触型支払いが失敗し、リーダーから、ユーザーにオンライン PIN の入力が求められます。最終的な支払いで、cardholder_verification_method が online_ に設定されます。 |
特定のエラーのためのテストカード
注
請求せずに直接保存するために上記のカードを使用すると、SetupIntents で、setup_intent_authentication_failure レスポンスが返されます。
テストカード番号 | テスト決済手段 | 結果 |
---|---|---|
charge_ | 支払いは card_ コードで拒否されます。 | |
charge_ | 支払いは card_ コードで拒否されます。decline_code 属性は insufficient_ です。 | |
charge_ | 支払いは card_ コードで拒否されます。decline_code 属性は lost_ です。 | |
charge_ | 支払いは card_ コードで拒否されます。decline_code 属性は stolen_ です。 | |
charge_ | 支払いは expired_ コードで拒否されます。 | |
charge_ | 支払いは processing_ コードで拒否されます。 | |
refund_ | 支払いは成功しますが、非同期的に failure_ を expired_ として、キャプチャーされた支払いの返金が失敗します。返金の失敗は非同期のため、最初は返金が成功したように見えますが、その後のフェッチでは failed ステータスのみが返されます。また、refund. webhook イベントを使用して、返金失敗の通知も行われます。このシミュレーションされたエラーは、JavaScript SDK でのみサポートされています。 |
シミュレーションされたカード提示
サーバー主導型の実装を使用する場合、リーダーでのカード保有者のタップまたはリーダーへのカードの挿入をシミュレーションするには、present_payment_method エンドポイントを使用します。
{ "id": "tmr_xxx", "object": "terminal.reader", "action": { "failure_code": null, "failure_message": null, "process_payment_intent": { "payment_intent": "pi_xxx" }, "status": "succeeded", "type": "process_payment_intent" }, … }
パラメーターを指定しない場合、シミュレーションされた支払いは、PaymentIntent の支払い方法のタイプに基づき、デフォルトで有効なテストカードになります。以下は、Terminal 支払い方法タイプ用のデフォルトのテストカードです。
支払い方法のタイプ | テストカード番号 | テスト決済手段 |
---|---|---|
card_ | visa | |
card_ と interac_ | visa | |
interac_ | interac |
標準的なテストカードでは、テスト金額を使用して失敗シナリオをシミュレーションすることもできます
シミュレーションされたリーダーの更新
シミュレーションされた Bluetooth リーダーに接続している間に、シミュレーションされたリーダーの更新を設定できます。
テスト用の法人カード
テスト用の法人カードを使用し、Stripe Terminal リーダーで支払いをテストします。Stripe ダッシュボードの Terminal タブからリーダーおよびテスト用の法人カードを購入できます。
このテスト用の物理カードは、チップ型決済と非接触型決済の両方に対応しています。Stripe の認証済みリーダーで、サンドボックスの Stripe API に対してのみ機能します。テスト用の物理カードを本番環境で使用しようとすると、Stripe API はエラーを返します。特に記載がない限り、要求された場合は PIN 1234
を使用してください。
テスト用の法人カードを使用して支払いを作成する際は、末尾が以下の値になる金額を使用して特定のレスポンスを生成します。
小数 | 結果 |
---|---|
00 | 支払いは承認されます。 |
01 | 支払いは call_ コードで拒否されます。 |
02 | カード保有者向けの画面を備えたリーダーを使用する場合、テストカードを挿入 (または、サポートされている場合はタップ) します。カードに PIN が必要な場合、支払いは offline_ で拒否され、リーダーがチップ型に対応していれば PIN の入力が要求されます。1234 を入力してテスト支払いを完了します。 |
03 | カード保有者向けの画面を備えたリーダーを使用する場合、テストカードを挿入 (または、サポートされている場合はタップ) します。カードで PIN が求められる場合、支払いは online_ で拒否され、PIN の入力が要求されます。任意の 4 桁の PIN を入力してテスト支払いを完了します。 |
05 | 支払いは generic_ コードで拒否されます。 |
55 | 支払いは incorrect_ コードで拒否されます。 |
65 | 支払いは withdrawal_ コードで拒否されます。 |
75 | 支払いは pin_ コードで拒否されます。 |
たとえば、物理的なテストカードを使用して処理された「25.00 USD」の支払いは成功しますが、「10.05 USD」の支払いは拒否されます。
Interac テストカード カナダのみ
Interac の実装をテストするには、シミュレーションされた interac
テストカードまたは「Interac の物理的なテストカード」を使用できます。ダッシュボードの Terminal ハードウェアショップで注文できます。Stripe ブランドの物理的なテストカードを Interac カードとして使用することはできません。
Interac テストカードは、interac_
支払いと interac_
返金の両方で機能します。card_
支払いをテストする際に使用するのと同じテスト金額を使用できます。特に記載がない限り、要求された場合は PIN 1234
を使用してください。拒否された返金をテストするには、末尾が 01
、05
、55
、65
または 75
の金額で一部返金を作成します。
注
Interac テストカードは、非接触型決済に対応していません。
eftpos テストカード オーストラリアのみ
eftpos の実装をテストするには、シミュレーションされた eftpos
テストカードまたは「eftpos の物理的なテストカード」を使用できます。ダッシュボードの Terminal ハードウェアショップで注文できます。Stripe ブランドの物理的なテストカードを eftpos
カードとして使用することはできません。
card_
支払いをテストする際に使用するのと同じテスト金額を使用できます。特に記載がない限り、要求された場合は PIN 1234
を使用してください。