payment gateway testing
ペイメントゲートウェイテストのテスターガイド:
支払い処理業者とは何ですか?
ウィキペディアによると、 「支払い処理業者は、マーチャントが銀行を買収するためのクレジットカードやデビットカードなどのさまざまなチャネルからのトランザクションを処理するためにマーチャントによって任命された会社(多くの場合、サードパーティ)です。支払い処理業者は、受け取った詳細をそれぞれのカードの発行銀行またはカード協会に転送して確認するとともに、取引に対する一連の不正防止対策を実行します。」
一般的な支払いゲートウェイには、Braintree、Authorize.net、PayPal、Bluepay、CitrusPaymentsなどがあります。
支払いゲートウェイと関連用語については、オンラインとオフラインで利用できる多くの文献があります。
このチュートリアルでは、その情報の一部を単純化して、自分の経験を追加しようとしました。
推奨読書=> 投資銀行アプリケーションのテスト
私の最初のプロジェクトの間、私は適切にテストする方法について無知でした 支払いゲートウェイ 。私は徐々に学び、PayPal、Braintree、Authorize.netとeコマースアプリケーションの統合をうまく展開することに取り組みました。
一般的な用語について説明し、エンドツーエンドのトランザクションフローと、役立つヒントとベストプラクティスを理解します。
学習内容:
- ペイメントゲートウェイの用語
- 支払いゲートウェイと支払い処理業者の違い
- トランザクションフロー
- なぜペイメントゲートウェイをテストする必要があるのですか?
- 必要なテストの種類
- 役立つヒント
- ペイメントゲートウェイのテストチェックリストとテストケース
- サンドボックスの設定:BraintreePaymentsの例
- 結論
- 推奨読書
ペイメントゲートウェイの用語
この記事で使用するいくつかの用語について説明しましょう。
1)商人 –マーチャントは、製品またはサービスを販売する個人または会社です。フリップカート、アマゾン、eBayはマーチャントのいくつかの例です。
2)クレジットカード –クレジットアカウントを通じて製品またはサービスを購入するために使用できるプラスチックカード。 16桁のカード番号、有効期限、ホログラム、磁気ストリップ、署名パネル、およびカード検証値(CVV)番号があります。
クレジットカードの前面:
クレジットカードの裏面:
(出典:about.com)
3)銀行の買収 – Acquiring Bankは、マーチャントの銀行口座を維持し、マーチャントがストアでデビットカードやクレジットカードのトランザクションを受け入れて処理できるようにする金融機関です。
4)発行銀行 –発行銀行は、顧客のデビットカードまたはクレジットカードを発行する金融機関です。顧客がクレジットカードまたはデビットカードを使用して購入する場合は常に、発行銀行はカード所有者のアカウントの状態に基づいて取引を承認または拒否し、その情報を取得銀行に渡します。
例えば、 カードの有効期限が正しくない場合、または購入金額がカードの与信限度額を超えている場合など、取引は拒否されます。
5)トランザクション –マーチャントが顧客との取引のための資金を受け取るエンドツーエンドのプロセス。
6)承認 –顧客が購入するときに承認が要求されます。この承認は、お客様の発行銀行によって提供され、カード所有者の有効性、支払い能力、十分な資金の存在などを確認します。これが完了すると、資金は保留され、残高はお客様の与信限度額から差し引かれますが、まだマーチャントアカウントに転送されます。
7)キャプチャ –このアクションでは、マーチャントは関連する顧客の支払い情報を収集し、決済/キャプチャ要求をプロセッサに送信します。処理者はこの情報を使用して、顧客のカード口座と販売者の銀行口座の間で送金を開始します。
また読む=> 銀行アプリケーションのテスト
支払いゲートウェイと支払い処理業者の違い
それについて、そして支払いゲートウェイと支払い処理業者が異なる機能を備えた別個のモジュールであるかどうかについて、オンラインで入手可能な多くの文献があります。
私のプロジェクトの過程で、支払い処理業者と支払いゲートウェイが実際の区別なしに交換可能に使用されていることに気づきました。マーチャントは通常、「ペイメントゲートウェイ」をすべての支払いを処理するため、支払い処理業者と呼びます。
「支払い処理業者」は、安全な支払いトランザクションを処理して完了する手段として機能するため、自分たちを支払いゲートウェイと見なします。
トランザクションフロー
次のフロー図は、顧客が注文した瞬間から注文が成功または拒否されるまでの完全なフローをまとめたものです。
顧客が注文のキャンセルを希望する場合のフローは次のとおりです。
ボイドとリターンの違いは、トランザクションがキャプチャされるかどうかによって異なります。
未決済の支払いは無効になる可能性があります。つまり、保留されている資金はカード所有者のアカウントに返金されます。取引がすでに決済または取得されている場合は、払い戻しが開始されます。つまり、資金は販売アカウントから取得され、カード所有者のアカウントに返金されます。
と呼ばれるコンピュータソフトウェアのエラーは何ですか
なぜペイメントゲートウェイをテストする必要があるのですか?
実際の実店舗で買い物をする場合は、チェックアウト時に現金を支払うか、カード(クレジットカードまたはデビットカード)をマシンにスワイプしてトランザクションを完了します。
クレジットカードまたはデビットカードを使用している場合、POS( POSテスト )マシンは、支払い処理が承認されるか拒否されるかを示します。
同様に、オンライントランザクションでは、トランザクションを即座に承認または不承認にする同等のシステムを導入する必要があります。
顧客の観点からは、eコマースWebサイトでのオンライン支払い処理はシームレスである必要があります。お客様が(今すぐ支払う)ボタンをクリックすると、数秒以内に支払いが成功または拒否されたというメッセージが表示されます。
eコマースストアの観点から、マーチャントは、完全な支払いサイクル(オンラインストアからのトランザクションの取得、キャプチャと承認、返金、無効化)が正常に機能していることを確認する必要があります。これらのサブコンポーネントのいずれかが期待どおりに機能しない場合は、マーチャントにとって問題になる可能性があります。
マーチャントの観点からは、テストフェーズでは、選択した支払い処理業者のフローに慣れ、選択したオプションが実際にアプリケーションやビジネスに最適かどうかを評価できます。
必要なテストの種類
支払い処理業者の選択と製品/アプリケーションの要件によっては、次の種類のテストを実行する必要がある場合があります
- 機能テスト– アプリケーションが正常に動作することを確認するために、新しい、確立されていない支払いゲートウェイには機能テストが必要です。つまり、注文、計算、税金などを想定どおりに処理します。より確立された支払い処理業者の場合、この種のテストは必要ない場合があります。
- 統合テスト– 支払いゲートウェイと統合する場合、統合テストは重要です。テスターとして、Webサイト/オンラインストア/アプリケーションの統合が、選択した支払いゲートウェイで正常に機能していることを確認する必要があります。テスターとして、トランザクションフロー全体を検証する必要があります。
- 注文する
- マーチャントアカウントで資金が受け取られているかどうかを確認します
- 取引が正常に返金または無効にできるかどうかを確認します
- 性能試験 - ウェブサイト/オンラインストア/アプリケーションのパフォーマンスをテストすることが不可欠です。複数のユーザーが同時にトランザクションを完了しようとしている場合でも、支払い処理業者は失敗しないはずです。
- セキュリティテスト– トランザクション中に、顧客はクレジットカード番号、CVV番号などの機密情報を提供します。すべての機密情報が暗号化後に送信され、チャネルが安全であることを確認することが非常に重要です。
役立つヒント
私の個人的な経験に基づいて、以下はテスターに役立つヒントです。
#1) テストまたは実装が必要なペイメントゲートウェイで、無料のサンドボックス環境(試行および探索目的)が利用可能かどうかを調査します。サンドボックスを利用できることは間違いなく役立ち、ツールをカスタマイズして必要に応じて詳細にテストするための追加の柔軟性をチームに提供します。
#二) トランザクションがエンドツーエンドでテストされていることを確認してください。私たちのプロジェクトでは、アプリケーションからペイメントゲートウェイへのデータキャプチャとデータフローに関連する多数のバグをテストして報告しました。特定のバグのいくつかは次のとおりです。
- 顧客(バイヤー)の名前情報が正しく取得されていませんでした
- 顧客のクレジットカードの有効期限は、誤った機能が原因で誤って取得されていました。これにより、クレジットカード情報が正しくないために、発行銀行によってトランザクションが拒否されました。
- 支払い処理業者に表示される重複したトランザクション
#3) 支払いゲートウェイサンドボックスの制限を調査します。
例えば、 Authorize.netサンドボックスはサンドボックスごとに1つの通貨をサポートしているため、複数の通貨をテストする必要がある場合は、異なるサンドボックスを構成する必要があります。また、これを使用すると、LiveAuthorize.netアカウントが複数通貨のトランザクションを処理するときにシステムがどのように動作するかを「真に」テストすることはできません。
#4) 何らかの理由で取引中に支払いが失敗した場合は、適切なメッセージを顧客に表示する必要があります。 「オブジェクトがインスタンスに設定されていません」や「404エラー」などの技術的すぎるエラーメッセージは、顧客を混乱させ、ユーザーエクスペリエンスに影響を与える可能性があります。
また、「取引の処理に問題があるようです。1-800-800-8000までご連絡ください」などの一般的なメッセージを表示することをお勧めします。
#5) ポストプロダクションリリースの検証のために、クライアント(アプリケーションビジネスオーナー)は、ライブの支払い処理業者アカウントを作成し、マーチャントIDを設定する必要があります。
選択した支払い処理業者によっては、アカウントの設定に2日から数週間かかる場合があります。これは、アプリケーションと支払い処理業者の統合が開始される前に、ライブアカウントを設定するのに十分な時間とともに、プロジェクトマネージャーによって事前にクライアントに通知される必要があります。
ペイメントゲートウェイのテストチェックリストとテストケース
他のアプリケーションと同様に、支払い処理業者のテストには適切なテスト計画が含まれます。
次のチェックリストは、テスターに役立つ可能性があり、参照として使用できます。
1) 支払い処理業者のサンドボックスを設定します。
2) さまざまなクレジットカードのテストに使用されるテストクレジットカード番号を収集します。例として、Braintree支払い処理業者に関するそのような情報は、Braintree支払いで見つけることができます。
3) トランザクションが成功したときのアプリケーションの動作を確認します。
4) トランザクションが成功した後、支払いゲートウェイがアプリケーションに戻って、何らかの成功したトランザクション/確認メッセージを表示するかどうかを確認します。
5) トランザクションが成功した場合、顧客が注文確認メールなどの何らかのトランザクション確認通知を受け取ることを確認します。
6) 支払いが失敗した場合、または支払い処理業者が応答を停止した場合はどうなるかを確認してください-エラーメッセージはありますか?
7) ブラウザのポップアップブロッカーをオンまたはオフにして、アプリケーションの動作を確認します。これは、ポップアップに確認メッセージが表示されている場合に役立つことがあります。
8) さまざまな不正防止/セキュリティ設定を確認します。
たとえば、顧客の請求情報が発行銀行に提供された住所と一致しない場合、不一致があると取引が拒否されます。
9) テスターがアプリケーションデータベースにアクセスできる場合は、データベースのトランザクションエントリを確認します。
10) カスタマーセッションの有効期限が切れるとどうなるかを確認します。
十一) トランザクション全体でコンソールを確認し、観察されたコンソールエラーを報告します。
12) トランザクションが安全なチャネルで行われていることを確認します。
たとえば、チェックアウトページはHTTPSであるのに対し、残りのWebサイトはHTTPページである可能性があります。
13) 支払い処理業者の通貨が正しく設定されていることを確認します。
たとえば、アプリケーション/ウェブサイトがカナダの会社/小売業者である場合、支払い処理業者はCAD通貨を受け入れるように設定する必要があります。
14) アプリケーションにクレジットカードやPayPalなどの複数の支払いオプションが一緒にある場合は、両方の支払いオプションをエンドツーエンドで個別にテストする必要があります。
15) (支払い処理業者の管理ポータルからの)返金または無効の金額が取引金額と同じであることを確認します。いかなる場合でも、返金/無効金額は取引金額を超えてはなりません。
また読む=> リテールバンキングシステムのテスト
サンドボックスの設定:BraintreePaymentsの例
1) 案内する BraintreeのWebサイト 。
2) (サンドボックスを試す)ボタンをクリックします。
((注意:画像をクリックすると拡大表示されます)
Chromeでswfファイルを開く方法
3) BraintreeサンドボックスのWebサイトにリダイレクトされます。必要な情報をすべて入力し、サンドボックスにサインアップします
4) アカウント作成の確認に関して、サインアップ時に指定されたメールアドレスにメール通知が届きます
5) パスワードを選択する必要がある場所をさらに処理するには、ユーザー情報フォームに入力する必要があります。 (同意してアカウントを作成する)ボタンをクリックします
6) ログインして、BraintreeAdminポータルにリダイレクトされます
7) サンドボックスキーに注意し、アプリケーションでそれらを使用して、このBraintreeサンドボックスと統合します。
8) 統合が完了すると、サンドボックスを使用できるようになります。サンドボックス設定を更新する必要がある場合は、設定メニューを使用して更新できます。
一般的に使用される設定メニューオプション:
結論
支払い処理業者は、顧客からの支払いを受け入れるように設計されたeコマースアプリケーションにとって非常に重要なコンポーネントです。したがって、このコンポーネントを徹底的にテストすることが不可欠です。シナリオを見逃すと、売り手の販売/取引に影響を与え、顧客または買い手のユーザーエクスペリエンスに悪影響を与える可能性があります。
テスターは、テスト環境(サンドボックス、ダミーのクレジットカード情報の収集、応答コードなど)を準備またはセットアップし、テスト環境とライブ/ポストプロダクションリリーステストの両方のテスト戦略を策定する必要があります。
関して 著者: この便利な記事はNehaによって書かれています。彼女は現在、品質保証マネージャーとして働いており、社内およびオフショアのQAチームの指導と管理を専門としています。
質問があるか、Payment Gateway Testingに関する経験を共有したいですか?以下のコメントでお知らせください。