Google Pay

Learn how to accept Google Pay payments.

Google Pay™ allows customers to make payments on a merchant’s website using any credit or debit card stored in their Google Account.  When a customer pays with Google Pay in apps and on websites, Google Pay shows a payment sheet where they select their preferred card payment method and confirm their purchase. 

Use the Google Pay API to request any credit or debit card stored in your customer’s Google account.

You can use Google Pay either via Hosted Payment Page (handled by payabl.) or via Direct API integration.

All merchants must adhere to the Google Pay APIs Acceptable Use Policy and accept the terms defined in Google Pay API Terms of Service. Google Pay is the trademark of Google LLC.

If you want to use ready Google Pay tokens instead of payabl.'s tokenization feature, please find more info here External Tokens.

Payment typeWallet
MarketGlobal
Customer currenciesMultiple
Processing currenciesMultiple
RefundsYes
FraudYes
ChargebackYes
PayoutsYes

📘

Recurring

To make a subscription for this method use Credentials on File (tokenization).
The initial request is sent to /googlepay_init link and follow-up transactions need to be sent to the authorization /payment_authorize link.

Direct Integration

General Flow

POST Request -> to /googlepay_init
<- Response (direct, synchronous) with status=0 and redirect_url
Customer is redirected to redirect_url for googlepay
<- HTML response with status=0 (or decline) to return_url
<- Callback (asynchronous) with errorcode= 0 to notification_url

Detailed Flow

Send agooglepay_initpayment request from your server.

POST https://sandbox.payabl.com/pay/payment/googlepay_init

Include all required and optional parameters in your request for processing of the payment:

ParameterFormatDescription
merchantid40 charactersMerchant identification number assigned during account creation
orderidmax. 40 charactersThe field orderid is optional and exclusively for the merchants' convenience
amountdigits only, either no decimals or two decimal places (e.g. 8 or 8.50)Transaction’s total amount that will be deducted from the customer
currency3 characters. ISO 4217The currency field contains the alpha-3 currency code for the transaction. Links to ISO
payment_method121payabl. Payment methods IDs
signature40 charactersSignature Calculation
emailmax. 50 charactersCustomer email. An RFC 822 compliant email address
firstnamemax. 50 charactersFirst name of the customer
lastnamemax. 50 charactersLast name of the customer
url_returnmax. 255 characters starting with http or httpsURL for customer redirection

You can see a full list of parameters in Authorization.

Request example:

merchantid=gateway_test&orderid=Payabl-Test&amount=9.99&currency=EUR&[email protected]&language=en&firstname=John&
lastname=Doe&payment_method=121&zip=3035&street=Olympion&house=23&city=Limassol&country=CYP&url_return=https://yourshop.example/thank_you&
notification_url=https://yourshop.example/notification&customerip=2.22.75.244&signature=0831c9eea7a5c3cab91eb4bf5d0d9a6471f37cfd

🚧

Public Sandbox information

Do not use your personal email address, real customer details, credit card data, or any Order IDs containing sensitive information in the public Sandbox. For email field you may use [email protected].

The payment gateway sends to you the response that includes the initiation URL (redirect_url parameter) for redirecting the customer only if your server received a successful response from the payment gateway after googlepay_init payment request.

Response example:

errorcode=0&errorcodes=&errormessage=&sessionid=3be4a233f89a778a8c6ee52db18a086e25f90937&transactionid=105103069&
redirect_url=https%3A%2F%2Fsandbox.payabl.com%2Fiframes%2F3be4a233f89a778a8c6ee52db18a086e25f90937%2Fgoogle_pay

Response fields reference:

ParameterDescription
transactionidpayabl. internal transaction id. Please use this transaction id when referring to the transaction in communications with the payabl. team
errorcodeTransaction error code
errorcodesTechnical field
errormessageBrief explanation of transaction decline reason (empty on success)
sessionidTechnical field
redirect_urlURL for customer redirection to finalize the payment (URL encoded)

The customer is immediately redirected to the payabl. Google Pay page to complete the transaction. The Google Pay button, including the Google Pay logo and colors (see Google Pay web brand guidelines), is displayed here.

After clicking the Google Pay button - a payment sheet will appear (see below).

Once the transaction is authorized via fingerprint or face recognition or with a passcode - payment would start processing.

If the card was saved as PAN_ONLY, additional SCA may be required depending on the region. In such cases, the customer is redirected to their bank’s page to complete the payment. The redirection is handled automatically by payabl.

If the card is saved as 3DS in the Google Pay Wallet, the request is sent directly to the processor to complete the payment.

If the transaction is processed successfully, the customer will see a success notification and will be redirected to the merchant’s website via the url_return parameter.

In parallel, a notification is sent to the notification_url provided by the merchant in the initial request.

If the customer clicks Back to Shop on the Google Pay hosted payment page for any reason, they will be redirected to the merchant’s website via the url_return URL.

To repeat or retry the payment, the merchant must submit the order again.

Hosted Payment Page

For the iframe integration, the initial request follows the same structure described in the iframe section.

On the payabl. iframe, an additional Google Pay option appears. When the customer clicks this option, they are redirected to the payabl. Google Pay hosted payment page to complete the transaction.

Refunds

Google Pay supports refunds that can be initiated only for successfully captured transactions.

When a refund request is made, a credit note is sent to the authorization system after the customer has been charged. The refunded amount is then credited to the customer, and the corresponding amount is deducted from the merchant’s account.

The refund can be processed in two ways:

  • Through the API integration
  • Through the payabl. dashboard

If you are using API integration, refer to the Refund documentation for more details.

Payouts

Google Pay supports Payouts which can be performed via the payabl. Dashboard interface (allowed only based on the original transaction ID) or via our API.

The payout request can be done in two ways:

  • with existing transaction-id received during original payment
  • with credit card info

For Payouts use payment_method=1

You can check more in our documentation CFT.

Card Networks

We support Google Pay for Visa, Mastercard and Amex credit cards.

Authorization

Google Pay offers two different authorization methods and we support both of them:

  • PAN_ONLY: 3DS is required, our standard 3DS flow applies.
  • CRYPTOGRAM_3DS: 3DS is not required, authentication is performed by Google Pay.

3D Secure

We offer 3D Secure (3DS) for Google Pay PAN_ONLY transactions. The payabl. technical support team is happy to help you enable 3D Secure.

Google Pay Documentation

Official Google Pay documentation can be found at https://developers.google.com/pay/api/web/.


Our Technical Support team is there to help you:
Email: [email protected]
Available Monday – Friday between 09:00 and 17:00 CET/CEST