Google Pay is a convenient payment system that allows customers to make payments in your app or website using any credit or debit card saved to their Google Account.Documentation Index
Fetch the complete documentation index at: https://waffo.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Since Google devices are widely used in the countries where Waffo operates, supporting Google Pay in your app can help simplify the checkout process and increase conversions, as payment details are recovered from the customers’ Google Accounts whenever they have previously saved or used their credit or debit cards with Google Pay.To view the list of countries where Google Pay is supported, please see Countries or regions where you can make payments with Google.
Payment flow

- The customer clicks on the Google Pay button in the merchant’s client, whether it is an online store or app. The merchant initiates the Google Pay request using the Google Pay Web API or Android SDK.
- After the customer selects his payment method or provides his payment details, Google replies with a token.
- The merchant’s client submits this information to the merchant’s backend.
- In the payment request to Waffo, the merchant includes the token received in step 2.
- Waffo processes the payment using the Google Pay token and returns the payment confirmation to the merchant.
- The merchant then notifies the customer that the payment has been successful.
Integration
Google Integration Frontend
- For web integration, please see the Google Pay / Web documentation, along with the Web integration checklist and Web brand guidelines.
- For Android / SDK integration, please see the Google Pay / Android documentation, along with the Android integration checklist and Android brand guidelines.
Required informationWhen performing this step use the following parameters:
- gatewayMerchantId — You can obtain this value from your TAM * gateway - use waffo as the parameter value
Waffo Integration
You will need to submit a request via the https://api.waffo.com/api/v1/order/create endpoint using the following parameter values:Example request bodyFor billing address parameters, please see the BillingAddress.
- paymentInfo.payMethodType should be CARD.
- card.gpay_token should be the JSON obtained in the Google Integration step. It is important to send a JSON object and not a string in this parameter.
Getting ready to go live
After you have completed all the necessary steps of the integration process in the testing environment, please make sure you have requested Google Production Access, as detailed in the Google Web and Android documentation, and have updated your Google integration configuration for Production environment access. Finally, ensure you have contacted your Technical Account Manager so that we can help check everything has been correctly configured and confirm you are ready to go live.For more information, please see Acceptable Use Policy and Google Pay API Terms of Service.
Waffo Payment Page Integration
Integrate Google Pay on your Waffo Payment Page by contacting our Support Team and specify the following:- The website domain from which you wish to process Google Pay payments.
- The Merchant IDs to be enabled for processing Google Pay Payments.
Google Pay transactions that are working in real PAN mode must comply with the 3D-Secure SCA mandate. If 3D-Secure applies to your market region, contact Waffo to enable 3D-Secure on your merchant account.

Google Pay (Web SDK)
This guide provides steps to integrate Google Pay as a Waffo alternative payment method (APM) into your payment flow using the Waffo Web SDK platform. Prerequisites and Notes- This guide assumes you have completed all account setup prerequisites, and are ready to integrate Google Pay into your payment flow.
-
Use these gateway credentials in requests:
- For the test (sandbox) environment:
gatewayMerchantId: “googletest” - For the production environment:
gatewayMerchantId: You can obtain this value from your TAM
- For the test (sandbox) environment:
-
The Google Pay Web environment must be set up according to the Google Pay guidelines:
- Google Pay Web Developer Documentation
- Google Pay Brand Promoting Guidelines For your domain to be verified with Google, the merchant must send Waffo’s Integration Team screenshots (like the one shown below) of your payment flow along with your domain URL:

Only some information in the pages listed are relevant to Waffo integration. Other information is relevant only for merchants performing a direct Google Pay integration, without Waffo.
-
The Google account used for testing should be linked to a relevant test card:
- Google Pay provides test cards, see Google Pay Test Card Suite for details.
-
Google Pay supports recurring payments only if you (the merchant) conforms to the following policies:
- The merchant must comply with the network rules, especially the merchant-initiated transactions (MIT) rules.
- The merchant must disclose the “Terms of payment” within the Merchant’s “buyflow”, and the customer must accept the “Terms of payment”.
- Before using Web SDK for non-3D payments, contact Waffo Support and have them configure your account for the non-3D payment flow.
An example of the full Google Pay Web SDK integration can be viewed, run and customize in the JSFiddle demonstration environment.
Authentication
Follow the instructions in these steps:
- Initiate a Session This authenticates and sets up an order in the Waffo system, by sending an /openOrder request, and returns a sessionToken.
- Initialize the Web SDK This instantiates the Web SDK with the sessionToken received from the server call to /openOrder.
- Get APM Details (optional) Perform this is an optional step if you want to retrieve a list of APMs for the customer to choose a payment method. (If you already have the relevant APM details then there is no need to perform this step.)
Google Pay UI Button
- Create the Google Pay UI button according to the instructions in the Google Pay for Web Payments Brand Guidelines Guide.
- On your payment page, define the tokenizationSpecification constant as shown below. (When the customer presses the Google Pay button, this parameter identifies your gateway and your site’s gateway merchant identifier.)
In some mobile browsers, Google Pay is not “transparent”. The IFrame containing Google Pay must have an extra attribute with “feature policy allow”=“payment”, such as: .
Collect the Card Details
Pressing the Google Pay button collects your customer’s card details and returns them to you as an encrypted Google Pay token.
- The customer triggers the Google Pay payment flow by pressing the Google Pay button.
At this point, your customer may be asked to log in to their Google Pay account.
- Google Pay displays all the cards associated with the customer’s Google account, or asks the customer to “Add new credit or debit card” details.
- The customer selects a payment method and Google Pay returns the encrypted Google Pay token (containing the paymentMethod class in JSON format).
Press here to see more information regarding payment data cryptography.
Payment
The Web SDK createPayment() method manages end-to-end card payment processing, including any 3D-Secure or PCI requirements.Send a createPayment() request with the paymentOption.card.externalToken parameters:
- externalTokenProvider: “GooglePay”
- mobileToken: ""
Control 3D Flow
The merchant can control 3D flow via Web SDK by adding googlePay3Dflow to the paymentOption class in createPayment(). When sending googlePay3Dflow=enable (default), Web SDK processes the card transaction with 3D-Secure verification; when sending googlePay3Dflow=disable, Web SDK processes the card transaction as a non-3D Google Pay transaction.googlePay3Dflow overrides force3D only for Google Pay.Example createPayment() request with googlePay3Dflow