Skip to content

Google Pay

Last updated: 14th July 2022

By integrating Google Pay into your website or Android application, your customers can securely make one-touch payments using any credit or debit card connected to their Google account.

To enable Google Pay in the UAE or Saudi Arabia, please request activation from your Customer Success Manager.


Overview

To start processing Google Pay payments, you must first integrate directly with Google. Once integration is complete, you can add the Google Pay button to your checkout page and start requesting your customers' encrypted payment information.

Google Pay integration and payments can be simplified into a three-step method:

CRYPTOGRAM_3DS credentials receive liability shift by default. Applying 3DS for Google Pay enables liability shift for PAN_ONLY transactions.


Step 1: Integrate with Google Pay

Before going live, you are required to register with Google Pay and select Checkout.com as your payment processor. You will also need to whitelist your domain here. Note that you must be signed in as a Google Developer to do this. If not, you will be redirected to Google Pay's support page.

For information on integrating with Google Pay, first, refer to the Google Pay API guide.

When you submit a payment data request to the Google API, be sure to include the following parameters:

  • 'gateway': 'checkoutltd'
  • 'gatewayMerchantId': '<your public key>'

Examples

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    {
    'type': 'CARD',
    'parameters': {
    'allowedAuthMethods': ['PAN_ONLY', 'CRYPTOGRAM_3DS'],
    'allowedCardNetworks': ['AMEX', 'DISCOVER', 'JCB', 'MASTERCARD', 'VISA']
    },
    'tokenizationSpecification': {
    'type': 'PAYMENT_GATEWAY',
    'parameters': {
    'gateway': 'checkoutltd',
    'gatewayMerchantId': '<YOUR_PUBLIC_KEY>'
    }
    }
    }

    You will need to specify which card types and card schemes to support in your payment data request.


    Step 2: Tokenize the Google Pay payment data

    Once you have received the payment data from Google, you then need to call Checkout.com’s endpoint for tokenizing the encrypted payment data; you can find this payment data in the paymentMethodToken property of the Google Pay payment data request's response.

    To find out more about Google Pay payment requests, read the Google Pay object reference.

    Use the details below to set up your request. To get a detailed view of all required and optional fields, see our API reference.

    Endpoints

      post

      https://api.checkout.com/tokens

      Request example

      1
      2
      3
      4
      5
      6
      7
      8
      {
      "type": "googlepay",
      "token_data": {
      "protocolVersion": "ECv1",
      "signature": "TJVA95OrM7E2cBab30RMHrHDcEfxjoYZgeFONFh7HgQ",
      "signedMessage": "{\"encryptedMessage\": \"ZW5jcnlwdGVkTWVzc2FnZQ==\", \"ephemeralPublicKey\": \"ZXBoZW1lcmFsUHVibGljS2V5\", \"tag\": \"c2lnbmF0dXJl\"}"
      }
      }

      Response example

      1
      2
      3
      4
      5
      {
      "type": "googlepay",
      "token": "tok_ubfj2q76miwundwlk72vxt2i7q",
      "expires_on": "2018-10-22T15:44:03Z"
      }

      Step 3: Request a payment using Google Pay

      Now you have the token, it's time to authorize the payment. Take the token, and use it in the body of a card token payment request from your application or website's backend server.


      Test Google Pay

      To start testing you need to create a test account.

      Google Pay does not allow the configuration of test cards within its online wallet. However, when using Google's test environment, if a real card is selected when making the online purchase, Google Pay provides a test card in the encrypted payment data; ensuring that no actual transaction takes place.

      Find out more about testing and simulating payments.