A Payment Gateway is a service provided by an e-commerce application for online purchase payment. It accepts credit/debit card information to complete the transaction. Payment Gateway securely encrypt sensitive information like card numbers, account holder name, cvv number, password and so on. These information is sent with highest safety from customer to merchant.
There are mainly two types of Payment Gateways:
1) Self Hosted Payment Gateway
Hosted Payment Gateway redirects customer away from e-commerce website’s checkout page. Once user clicks Pay Now button, application redirects user to payment service provider page. On this page he can fill all required details and once the payment is done, it will bring him back to the website page. for this type of payment a merchant id is not required. Some examples are: PayPal Standard, 2Checkout, Payza, Setcom.
2) Shared / Non Hosted Payment Gateway
For these type of Gateways, customer is redirected to payment page configured within the e-commerce website. This option is easy to customize as you can control your checkout from start to finish. Only challenge by going with this option is, merchant must follow all security measures to maintain the confidentiality and protect customer’s data.
Now we will look at list of Test Scenarios for Payment Gateway Integration. You can use these scenarios for preparing the Test Cases.
Functional Test Scenarios for Payment Gateway:
1) User Data transmitted to the gateway must be set over a secured(HTTPS or other) channel.
2) Some application ask User to store Card information. In that case, system should store Card information in encrypted format.
3) Check for all mandatory fields validation. System should not go ahead with payment process if any data for any field is missing.
4) Test with Valid Card Number + Valid Expiry Date + Invalid CVV Number.
5) Test with Valid Card Number + Invalid Expiry Date + Valid CVV Number.
6) Test with Invalid Card Number + Valid Expiry Date + Valid CVV Number.
7) Test all Payment Options. Each payment option should trigger respective payment flow.
8) Test with multiple currency formats(if available).
9) Test with a Blocked Card Information.
10) Try to submit the Payment information after Session Timeout.
11) From Payment Gateway Confirmation page try to click on Back button of browser to check Session is still active or not.
12) Change Payment Language during Payment process.
13) Check the behavior when payment gateway stops responding to the request. Stop the process and verify if payment is debited or not.
14) Try to disconnect the internet connection while payment process is in progress.
15) Check after successful payment all necessary data retrieved at application or not.
16) Verify that End user gets a notification email upon successful payment.
17) Verify that End user gets a notification email with proper reason upon payment failure.
18) Some application provides confirmation through pop-up dialogues. Test this feature by keeping web browser pop-up on.
19) Test authorization receipt after successful payment. Verify all fields carefully.
20) Check if double payment is happening for any case.
21) Try to test with real time transactions by providing actual payment information. If not feasible, gather dummy debit/credit card information for the testing purpose.
Before You Start Testing Payment Gateway:
– Gather required test data for dummy debit/credit information.
– Gather Payment Gateway type and all related information.
– Finalize Performance Testing parameters for testing Payment Gateway flow.
– Collect Payment Gateway error codes. It is useful when any error occurs during testing to make sure whether it is our Application’s fault or payment gateway related error.
Hope these scenarios will be helpful to you. Please help us making this list more rich. If you have tried any scenario which is not listed here, please put a comment below. You can also share your experience with Payment Gateway.