Google Pay™
Learn how to accept Goorgle Pay payments.
Google Pay™ allows customers to make payments on the merchant website using any credit or debit card saved to 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.
Using Google Pay™ with payabl. Hosted Solution is pretty easy as decryption would be handled by payabl.
All merchants must adhere to the Google Pay APIs Acceptable Use Policy and accept the terms defined in Google Pay API Terms of Service.
Card Networks supported by payabl. are Mastercard and Visa.
Google Pay™ is the trademark of Google LLC.
Payment type | Wallet |
Market | Global |
Customer currencies | Multiple |
Processing currencies | Multiple |
Refunds | Yes |
Fraud | Yes |
Chargeback | Yes |
Payouts | Yes |
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 a googlepay_init
payment 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:
Parameter | Format | Description |
---|---|---|
merchantid | 40 characters | Merchant identification number assigned during account creation |
orderid | max. 40 characters | The field orderid is optional and exclusively for the merchants' convenience |
amount | digits 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 |
currency | 3 characters. ISO 4217 | The currency field contains the alpha-3 currency code for the transaction. Links to ISO |
payment_method | 121 | payabl. Payment methods IDs |
signature | 40 characters | Signature Calculation |
email | max. 50 characters | Customer email. An RFC 822 compliant email address |
firstname | max. 50 characters | First name of the customer |
lastname | max. 50 characters | Last name of the customer |
url_return | max. 255 characters starting with http or https | URL for customer redirection |
You can see a full list of parameters in Authorization.
Request example:
merchantid=gateway_test&orderid=Payabl-Test&amount=9.99¤cy=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, Order ID with sensitive information, real customer details and credit card data 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:
Parameter | Description |
---|---|
transactionid | payabl. internal transaction id. Please use this transaction id when referring to the transaction in communications with the payabl. team |
errorcode | Transaction error code |
errorcodes | Technical field |
errormessage | Brief explanation of transaction decline reason (empty on success) |
sessionid | Technical field |
redirect_url | URL for customer redirection to finalize the payment (URL encoded) |
The customer will be redirected immediately to the payabl. Google Pay™ page to complete the transaction.
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.
Depending on the type, if the card was saved as PAN_ONLY then depending on the region additional SCA could be required where the end customer would be redirected to their bank page to complete the payment. Redirection would be handled by payabl. itself.
In case if cards were saved as 3D on Google Pay wallet, then the request would be directly sent to the processor to process the amount.
If the transaction was processed successfully, the end-customer will see the notification about the successful result and will be redirected to the merchant’s website via the URL url_return
.
In parallel, a notification would be received on the notification_url
provided in the initial request by the merchant
While in Google Pay hosted payment page for any reason if the back to the shop is clicked then the customer will be redirected back to the merchant’s website via the url_return
URL.
To repeat/retry the payment, the order must be submitted by the merchant again.
Hosted payment page
For iframe the initial request is the same as per our iframe section.
On payabl. iframe an additional Google Pay™ option would appear, by clicking on it the end customer would be redirected to payabl. Google Pay™ hosted payment page.
Refunds
Google Pay™ supports refunds which can be initiated only on a successful captured transaction.
The request will send a credit note to the authorization system after the customer has already been charged. The refund amount will be credited to the customer and the merchant’s account will be charged.
The refund can be done in two ways:
- Through API integration
- Through payabl. dashboard
If you have API integration, you can check more in our documentation Refund.
Payouts
Google Pay™ supports Payouts which can be performed via 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.
Our Technical Support team is there to help you:
Email: [email protected]
Available Monday – Friday between 09:00 and 17:00 CET/CEST
Updated about 1 month ago