About Google Pay

What is Google Pay


Logo
Info

Google Pay is the fast, simple way to pay on sites, in apps and in stores using the cards saved to your Google Account. It protects your payment info with multiple layers of security and makes it easy to send money, store tickets or cash in on rewards – all from one convenient place.

 

Notice: Regarding the liability shift in case of the card processing, please contact your Acquirer directly. Because  is not a direct contract partner, your Acquirer should specify the liability shift rules for each card brand.

On this page

How it works

When a user taps the Google Pay payment button, they see a payment sheet. It displays the payment methods they've saved to their Google Account and optional fields such as a shipping address. Users can then select a payment method quickly and provide a shipping address if required, or they can add new information.

In-app payment

The Google Pay API enables fast, simple checkout within your app, giving you convenient access to hundreds of millions of cards saved to Google Accounts worldwide.

These above screens represent a recommended Google Pay buy flow for a shopping cart experience.

These guidelines will help you implement Google Pay within your apps: https://developers.google.com/pay/api/android/guides/brand-guidelines.


Web payment

The Google Pay API enables fast, simple checkout on your website. This provides convenient access to hundreds of millions of cards that are saved to Google Accounts worldwide.

The above screens represent a recommended Google Pay buy flow for a shopping cart experience.

These guidelines will help you reference the Google Pay brand within your websites: https://developers.google.com/pay/api/web/guides/brand-guidelines.

Step by Step Set-Up Guide

Once you have decided to support Google Pay, there is a set of steps that need to be done. This guide is applicable for both, in-app and also web payments.

1. Verify if your Acquirer supports Google Pay, for the card networks supported and support for Android device tokens.

This information will be provided by  support team: .


2. If you already do not have one, request creation of  Merchant ID, unique identifier that represents a merchant in  platform. You need to use  Merchant ID also in Google Pay API.

Please contact  support team: .


3. Integrate Google Pay API: https://developers.google.com/pay/api/.

Apps: https://developers.google.com/pay/api/android/overview 

Web: https://developers.google.com/pay/api/web/overview


a. For payment tokenization method, choose “GATEWAY”, with following values:


const tokenizationSpecification = {

  type: “PAYMENT GATEWAY”,

  parameters: {

    'gateway': 'computop',

    'gatewayMerchantId': 'yourComputopMerchantID'

  }


b. For supported payment card networks, choose the ones your acquirer is supporting:

const allowedCardNetworks = ["AMEX", "MASTERCARD", "VISA"];


c. The Google Pay API may return cards on file on Google.com (PAN_ONLY) and/or a device token on an Android device authenticated with a 3-D Secure cryptogram (CRYPTOGRAM_3DS).

Axepta Online only supports CRYPTOGRAM_3DS.

const allowedCardAuthMethods = ["CRYPTOGRAM_3DS"];

If you are operating in EEA region, please define CRYPTOGRAM_3DS only, as these payments are already Strong Customer Authenticated in Google Pay wallet and therefore compliant with PSD2 SCA regulation.

Note: If you receive Soft Decline in Response, you need to restart the payment with 3-D Secure authentication.


d. In response from Google Pay API, you should receive Token similar to this:

{
 "signature": "MEQCIC4z/QHSrzekRkkuk3vGYxBTBdNgEQl5XFHx0Wk5fFLIUAiB3+q227havAJdagfGZaMXbefhatdJE7Df2qrIoKDv1Og==",
 "protocolVersion": "ECv1",
 "signedMessage": "{\"encryptedMessage\":\"bOYRmExGeCsBrFqESt7kd9O1FN+vQZf2KG0UNYC8jNA+VVf9nQeK7lDvU8k37cH+LOziJQkHNL2OxDHIk6GoRV1BrXprwBnAJR0O2VnCUH8lsqq0ELwemeqW364Ir8cU/hDFzWNp+38H25JVDAMExZBKodMMTzUXXgyO+s5jOyAl8jUhnAw3fTRPkefuYsE8NFK5tvcs4L29h87Zo7ot0/8XrUhXt9b/Fld1LEthkuPSN+K1eEFP7bseB6jjRdHnwYAdqiE3iOmh71pcDmNIyrlWRj74UJaszeerZW7DoZNx11oN7fouq/8fe1vklsr/e+y/RSG2nQMWg5yR/fMTfqCyabTDhJMvMM1Zhe91+dQ0/xi/zKRgsIhiongJUjYtoSNIjUHnMLRuVTKdjX50CCI1QOiBtr9h0bOLePhxw9cLYeU1KwCfYJyt28DBKCvaWFSbCl+dzNcZ9B83kv\",\"ephemeralPublicKey\":\"BFUju73/IT/KqnB/nc0W3BaL3BXFybrbYaPiMCKXIcg78PbslwV7MRUq3SpWEDEJT6pakLCvf34412HbDGCpsa4\\u003d\",\"tag\":\"xIuCUWB2U6yWEfidsJpQaa+leU/kqS522JLOnrnk42g\\u003d\"}"
}

You need to Base64 encode the whole token string and include it in  parameter TokenExt.

Process flow chart

Google Pay process flow



interface


Calling the interface

Two transactions are created when making a credit card payment via Google Pay. In the Google Pay transaction the required credit card data are determined first and the actual credit card transaction is then carried out automatically. This takes place via a server-to-server connection and supports all usual credit card transaction options. The difference here, however, is that you don't transmit the credit card information, which you don't know. Instead, you transmit the Token generated by Google Pay, which contains the required credit card data in encrypted form.

In order to make a credit card payment with Google Pay, please use the following URL:

googlepay.aspx

 

In addition you can submit any parameters that are applicable or required for a credit card payment (without credit card data). More information about this you can find within Card processing.

Oops, it seems that you need to place a table or a macro generating a table within the Table Filter macro.

The table is being loaded. Please wait for a bit ...

KeyFormatCNDDescription

MerchantID

ans..30

M

MerchantID, assigned by . Additionally this parameter has to be passed in plain language too.

KeyFormatCNDDescription
TransID

ans..64

MTransactionID provided by you which should be unique for each payment

KeyFormatCNDDescription
Amount

n..10

M

Amount in the smallest currency unit (e.g. EUR Cent). Please contact the , if you want to capture amounts <100 (smallest currency unit).

KeyFormatCNDDescription
Currency

a3

M

Currency, three digits DIN / ISO 4217, e.g. EUR, USD, GBP. Please find an overview here: Currency table

KeyFormatCNDDescription
UserData

ans..1024

O

If specified at request,  forwards the parameter with the payment result to the shop.

Key

Format

CND

Description

RefNr

an..12

M

recommended

Merchant’s unique reference number, which serves as payout reference in the acquirer EPA file. Please note, without the own shop reference delivery you cannot read out the EPA transaction and regarding the additional settlement file (CTSF) we cannot add the additional payment data.


Merchant’s unique reference number, which serves as payout reference in the acquirer EPA file. Please note, without the own shop reference delivery you cannot read out the EPA transaction and regarding the additional settlement file we cannot add the additional payment data.

Notes:

  • Fixed length of 12 characters (only characters (A..Z, a..z) and digits (0..9) are allowed, no special characters like whitespace, underscore...)

  • If the number of characters entered is lower than 12, BNP will complete, starting from the left side, with "0" (Example : 000018279568)


The format depends on the available paymethods for your MerchantId and this parameter is used for card payments reconciliation.

Please choose your format in that way that all paymethods are covered.

We recommend to use the most restrictive format for this parameter (AN12 - M) and create unique RefNr.

More details : Data reconciliation : Key Data


MAC

an64

M

Hash Message Authentication Code (HMAC) with SHA-256 algorithm

HMAC Authentication (Request)

HMAC Authentication (Notify)

KeyFormatCNDDescription
Capture

an..6

O

Determines the type and time of capture.

Capture ModeDescription
AUTOCapturing immediately after authorisation (default value).
MANUALCapturing made by the merchant. Capture is normally initiated at time of delivery.
<Number>Delay in hours until the capture (whole number; 1 to 696).

Key

Format

CND

Description

Beschreibung

OrderDesc

ans..64

M

Description of purchased goods, unit prices etc.

Beschreibung der gekauften Waren, Einzelpreise etc.

KeyFormatCNDDescription
URLNotify

ans..256

M

Complete URL which  calls up in order to notify the shop about the payment result. The URL may be called up only via port 443. It may not contain parameters: Use the UserData parameter instead.

(info) Common notes:

  • We recommend to use parameter "response=encrypted" to get an encrypted response by
  • However, fraudster may just copy the encrypted DATA-element which are sent to URLFailure and send the DATA to URLSuccess/URLNotify. Therefore ensure to check the "code"-value which indicates success/failure of the action. Only a result of "code=00000000" should be considered successful.

Key

Format

CND

Description

Beschreibung

TokenExt

ans..1024

M

Google Pay Token as JSON string in the Base64 format

Example for TokenExt
{
 "signature": "MEQCIC4z/QHSrzekRkkuk3vGYxBTBdNgEQl5XFHx0Wk5fFLIUAiB3+q227havAJdagfGZaMXbefhatdJE7Df2qrIoKDv1Og==",
 "protocolVersion": "ECv1",
 "signedMessage": "{\"encryptedMessage\":\"bOYRmExGeCsBrFqESt7kd9O1FN+vQZf2KG0UNYC8jNA+VVf9nQeK7lDvU8k37cH+LOziJQkHNL2OxDHIk6GoRV1BrXprwBnAJR0O2VnCUH8lsqq0ELwemeqW364Ir8cU/hDFzWNp+38H25JVDAMExZBKodMMTzUXXgyO+s5jOyAl8jUhnAw3fTRPkefuYsE8NFK5tvcs4L29h87Zo7ot0/8XrUhXt9b/Fld1LEthkuPSN+K1eEFP7bseB6jjRdHnwYAdqiE3iOmh71pcDmNIyrlWRj74UJaszeerZW7DoZNx11oN7fouq/8fe1vklsr/e+y/RSG2nQMWg5yR/fMTfqCyabTDhJMvMM1Zhe91+dQ0/xi/zKRgsIhiongJUjYtoSNIjUHnMLRuVTKdjX50CCI1QOiBtr9h0bOLePhxw9cLYeU1KwCfYJyt28DBKCvaWFSbCl+dzNcZ9B83kv\",\"ephemeralPublicKey\":\"BFUju73/IT/KqnB/nc0W3BaL3BXFybrbYaPiMCKXIcg78PbslwV7MRUq3SpWEDEJT6pakLCvf34412HbDGCpsa4\\u003d\",\"tag\":\"xIuCUWB2U6yWEfidsJpQaa+leU/kqS522JLOnrnk42g\\u003d\"}"
}

Google Pay Token als JSON-String im Base64-Format

Beispiel für TokenExt
{
 "signature": "MEQCIC4z/QHSrzekRkkuk3vGYxBTBdNgEQl5XFHx0Wk5fFLIUAiB3+q227havAJdagfGZaMXbefhatdJE7Df2qrIoKDv1Og==",
 "protocolVersion": "ECv1",
 "signedMessage": "{\"encryptedMessage\":\"bOYRmExGeCsBrFqESt7kd9O1FN+vQZf2KG0UNYC8jNA+VVf9nQeK7lDvU8k37cH+LOziJQkHNL2OxDHIk6GoRV1BrXprwBnAJR0O2VnCUH8lsqq0ELwemeqW364Ir8cU/hDFzWNp+38H25JVDAMExZBKodMMTzUXXgyO+s5jOyAl8jUhnAw3fTRPkefuYsE8NFK5tvcs4L29h87Zo7ot0/8XrUhXt9b/Fld1LEthkuPSN+K1eEFP7bseB6jjRdHnwYAdqiE3iOmh71pcDmNIyrlWRj74UJaszeerZW7DoZNx11oN7fouq/8fe1vklsr/e+y/RSG2nQMWg5yR/fMTfqCyabTDhJMvMM1Zhe91+dQ0/xi/zKRgsIhiongJUjYtoSNIjUHnMLRuVTKdjX50CCI1QOiBtr9h0bOLePhxw9cLYeU1KwCfYJyt28DBKCvaWFSbCl+dzNcZ9B83kv\",\"ephemeralPublicKey\":\"BFUju73/IT/KqnB/nc0W3BaL3BXFybrbYaPiMCKXIcg78PbslwV7MRUq3SpWEDEJT6pakLCvf34412HbDGCpsa4\\u003d\",\"tag\":\"xIuCUWB2U6yWEfidsJpQaa+leU/kqS522JLOnrnk42g\\u003d\"}"
}

Channel

a..10

O

Channel over which the order is processed. Allowed values are WEBSITE and MOBILE_APP.

Kanal, über den die Bestellung abgewickelt wird. Erlaubt sind die Werte WEBSITE und MOBILE_APP.

Parameters for Google Pay


Oops, it seems that you need to place a table or a macro generating a table within the Table Filter macro.

The table is being loaded. Please wait for a bit ...

KeyFormatCNDDescription

MID

ans..30

M

MerchantID, assigned by

Key

Format

CND

Description

Beschreibung

PayID

an32

M

ID assigned by  for the payment, e.g. for referencing in batch files

This ID refers to the credit card transaction unless an error occurs already at the Google Pay transaction.

Vom The page DE:Wording was not found  -- Please check/update the page name used in the MultiExcerpt-Include macro vergebene ID für die Zahlung, z.B. zur Referenzierung in Batch-Dateien.

Diese ID bezieht sich auf die Kreditkarten-Transaktion, es sei denn, es kommt bereits bei der Google-Pay-Transaktion zu einem Fehler.

KeyFormatCNDDescription
XID

an32

M

ID for all single transactions (authorisation, capture, credit note) for one payment assigned by

KeyFormatCNDDescription
TransID

ans..64

MTransactionID provided by you which should be unique for each payment

KeyFormatCNDDescription
refnr

ans..30

O

Merchant’s unique reference number


The format depends on the available paymethods for your MerchantId. Please choose your format in that way that all paymethods are covered.

We recommend to use the most restrictive format for this parameter (AN12 - M) and create unique RefNr.



Additional information : Data reconciliation : Key Data

KeyFormatCNDDescription
UserData

ans..1024

O

If specified at request,  forwards the parameter with the payment result to the shop.

KeyFormatCNDDescription
Status

a..50

M

OK (URLSuccess) or FAILED (URLFailure)

KeyFormatCNDDescription
Description

ans..1024

M
Further details in the event that payment is rejected. Please do not use the Description but the Code parameter for the transaction status analysis!

KeyFormatCNDDescription
Code

n8

M

Error code according to  Response Codes (A4 Response codes)

Key

Format

CND

Description

Beschreibung
schemeReferenceIDans..64CCard scheme specific transaction ID required for subsequent credential-on-file payments, delayed authorizations and resubmssions.Kartensystemspezifische Transaktions-ID, die für nachfolgende Zahlungen mit hinterlegten Daten, verzögerte Autorisierungen und Wiedereinreichungen erforderlich ist.

Result parameters for Google Pay


Capture / Credit / Reversal

Captures, credits and reversals do not refer to the Google Pay transaction but directly to the credit card transaction. More information about this you can find within Card processing.

Batch processing via the interface

Captures, credits and reversals via batch do not refer to the Google Pay transaction but directly to the credit card transaction. More information about this you can find within the document Card processing.