Use the following checklist to ensure you've completed all of the required steps in your Android integration.
About the test environment
Our test environment doesn't return live chargeable tokens in the PaymentData
response, but the test environment allows us to test elements of your purchase:
- Confirmation pages
- Receipts
- Billing address (optional)
- Billing phone number (optional)
- Shipping address (optional)
- Email address (optional)
An Unrecognized App
error appears on the Google Pay payment sheet until your app has
production access.
The value of the environment parameter from WalletOptions indicates whether the server runs in a production or in a test environment. The environment value can be one of the following:
WalletConstants.ENVIRONMENT_PRODUCTION
WalletConstants.ENVIRONMENT_TEST
For testing and development, use WalletConstants.ENVIRONMENT_TEST
.
Test your integration
Before you submit your integration to Google for validation in ENVIRONMENT_TEST
,
ensure that you've fulfilled the exit criteria for each of the following functional and brand
checks.
1. Basics |
|
---|---|
Ensure that your current risk checks and controls for card or PAN transactions are also applied to the Google Pay transactions. Google Pay validation and fraud checks aren't intended to replace your risk management processes. | |
If you selectively trigger 3D Secure (step-up authentication) for normal card transactions
based on risk criteria, be sure to use the same risk criteria to trigger 3D Secure for Google
Pay PAN PAN_ONLY transactions. |
|
Ensure that you've read and are ready to accept our Terms of Service. Registration with the Google Pay API requires that you have access to the account owner email address of your Android application. | |
Use the data received from the Google Pay API to process transactions only. All other use cases require separate, express consent from the user. | |
Confirm the payment card authentication and card networks are accepted by the payment processor in your country. | |
If you complete a
DIRECT
tokenizationSpecification type integration, you must annually
rotate your public encryption key and provide PCI Attestation to Google via the
Google Pay & Wallet Console. PCI Attestation can be submitted by
a third-party or Qualified Security Assessor certified by the
PCI Security Standards Council, and
approved by an
Approved Vendor or
Qualified Assessor.
|
|
2. Branding tests |
|
Create the Google Pay payment button using the PayButton API to adhere to all elements of our Branding guidelines. | |
Ensure the Google Pay payment button only appears after your app has confirmed the user's
ability to pay through the
isReadyToPay() function. |
|
Confirm that the displayed Google Pay payment button dimensions match similar buttons and elements on the page. | |
Choose an appropriate button based on the background color of the area where it's intended to appear. | |
3. Functional tests |
|
When you request a
|
|
When you request a
If you've confirmed that your processor supports |
|
If you require a shipping address, test processing of the shipping address in varied states of completion. Try the following methods:
|
|
If you require a telephone number, test the parse and storage of the telephone number to the data standards of your app for different formats such as +14155551212, 14155551212, (415) 555-1212. | |
Ensure that Google Pay is displayed on parity with other third party payment methods. | |
For users who don't have any payment information stored on their account within your app, Google Pay should be defaulted or shown prominently as the payment method. | |
For users who previously selected Google Pay at checkout and indicated Google Pay as their preference for payment within your app, Google Pay should be the default payment method for their subsequent purchase. | |
A final price must be displayed to the user before the transaction is processed. If the amount to be charged has varied based on data received from the Google Pay API you're expected to show a confirmation page with a final price. |