UAT Sandbox

What is UAT Sandbox?
The UAT Sandbox is used to simulate the end-to-end payment flows for online merchants. A template is a mapping of APIs and their mock responses using which merchants can simulate scenarios like Success, Failure, and Pending.

Benefits of using the UAT Sandbox

  • Even when the PhonePe UAT server is down, the UAT Sandbox gives you a seamless user experience through which you will be able to test the end-to-end payment flow without any interruptions.

Steps for Custom Checkout Page

Follow the below steps to verify different payment methods on the Custom Checkout page.

Web-Based Flows

  • Update the Host URL of Sandbox for PG PAY and PG Check Status API:

Host: https://api-preprod.phonepe.com/apis/pg-sandbox

Android/iOS Test App

 Download and install the PhonePe Test app to verify the flows in UAT.

  • Android – Download from here [Package Name: com.phonepe.simulator]
  • iOS –  Share the Email ID with the PhonePe Integration Team on the integration thread to send the invite via Firebase.
  • For Android & iOS, in the SDK, set the environment value as SANDBOX to test payments.
  • If merchants use PhonePe iOS SDK, then use the environment
    PPPayment(environment: .sandbox, enableLogging: true).startPG(transactionRequest: request, on: self, animated: true)
    Note: The new SANDBOX environment is supported from iOS SDK Version: 2.7.0 and above.

Untrusted Enterprise Developer in iOS

Since the release of iOS 9, testers will be required to “trust” your organization’s Apple Enterprise developer certificate, one-time, before running Beta distributions.

Testers will see the message “Untrusted Enterprise Developer” when running an app from an untrusted certificate and can trust it by following the steps outlined below on their device.

 

  • Navigate to Settings > General > VPN & Device Management.
  • Select the developer under the “Developer App” section.
  • Press “Trust [Developer]”.
  • Select “Trust“.

Test App Setup

  • Click on “Settings” and configure the “VPA for Collect” like @ybl that can be used for testing the UPI Collect Flow.
    Once the collect request is raised, then click on “Fetch Collect” to see the collect request in the PhonePe Test app and click “Pay” to complete the transaction.
  • Click on “Test Case Templates” to configure the Success, Failure, or Pending templates to receive the response accordingly.
    By default, the Success template will be set and you will always get the Success Response.

Configure Template

Download the Demo Video – Here

To configure the required template,

  • Open the PhonePe Test App- Select the “Test Case Templates” button.
  • Enter the “Merchant ID” and click “GET CONFIGURED TEMPLATES”
  • Enter the “Merchant ID” and click “GET CONFIGURED TEMPLATES” to fetch the current templates if already set. Else, you will get “No Template Configured”
    • For PG Integration – use the “Flow: Custom Checkout” to configure the required template for Success, Failure, or Pending scenarios

Steps to Configure Template

Make sure to set the right templates for the Custom Checkout integration.

The templates of Custom Checkout integration starts with the KeyWord: “Custom

Templates for each type of Payment Method

For Success - "Custom UPI Intent Success for Android"
For Success (Unmasked) - "Custom UPI Intent Unmasked Success for Android"
For Failure - "Custom UPI Intent Failure for Android"
For Pending - "Custom UPI Intent Pending for Android"
For Success - "Custom UPI Intent Success For IOS"
For Success (Unmasked) - "Custom UPI Intent Unmasked Success for IOS"
For Failure - "Custom UPI Intent Failure For IOS"
For Pending - "Custom UPI Intent Pending For IOS"
For Success - "Custom UPI Collect Success"
For Success (Unmasked) - "Custom UPI Collect Unmasked Success"
For Failure - "Custom UPI Collect Failure"
For Pending - "Custom UPI Collect Pending"

//VPA Validation
For Success - "Custom UPI Collect Success"
For Failure - "Custom UPI Collect Vpa failure"

For Success - "Custom Netbanking Success"
For Success (Unmasked) - "Custom Netbanking Success with account Constraints"
For Failure - "Custom Netbanking Failure"
For Pending - "Custom Netbanking Pending"
For Success - "Custom Card Success"
For Failure - "Custom Card Failure"
For Pending - "Custom Card Pending"
For Success - "Custom QR Success for Android"
For Success (Unmasked) - "Custom QR Unmasked Success for Android"
For Failure - "Custom QR Failure for Android"
For Pending - "Custom QR Pending for Android"
For Success - "Custom QR Success For IOS"
For Success (Unmasked) - "Custom QR Unmasked Success for IOS"
For Failure - "Custom QR Failure For IOS"
For Pending - "Custom QR Pending For IOS"
 

For any queries reach out to the PhonePe Integration team.

Test Card Details

Credit Card

“card_number”: “4208585190116667”,
“card_type”: “CREDIT_CARD”,
“card_issuer”: “VISA”,
“expiry_month”: 06,
“expiry_year”: 2027,
“cvv”: “508”

Debit Card

“card_number”: “4242424242424242”,
“card_type”: “DEBIT_CARD”,
“card_issuer”: “VISA”,
“expiry_month”: 12,
“expiry_year”: 2023,
“cvv”: “936”

Note: The OTP to be used on the Bank Page: 123456

Test Net Banking Details

  • Always use “bankId”: “SBIN” for testing purposes in the request payload of PAY API.
  • Username: test
    Password: test
    and click “Submit” on the next screen.

Note: For testing transactions, the lower amount limit is defined as Rs.1/- and the upper amount limit is defined as Rs.1000/-. Please make sure your transaction requests are within these limits.

Test Bank Details (TPV Flow)

To test a Successful NetBanking transaction with TPV, kindly use the below details in the Pay API request.

  • “bankId”:”HDFC”
  • “accountNumber”:”420200001892″,
  • “ifsc”:”HDFC0000041″