Google Pay

Overview

Google Pay™ is a payment method to pay on sites and in apps using payment cards. Google Pay service allows customers to pay without having to enter the card information because it is already saved in their Google accounts. Purchases including COF purchases through this method can be initiated by using Payment Page and Gate, refunds and card verifications—by using Gate.

General information

Payment method type Contactless payments
Countries and regions All countries
Payment currencies EUR, GBP, RUB, USD
Currency conversion On ECommPay side
Purchases +
Payouts
Stored credentials payments +
Full refunds +
Partial refunds
Card verification +
Chargebacks +
Special considerations
  • Visa and Mastercard cards are accepted.
  • To perform purchases by using Gate, the merchant is required to do the following:
    • perform the necessary setup required by Google
    • apply for the registration in Google service and receive the Google merchant ID
    • call the Google Pay API directly from the web-service
  • Purchases may be performed with the 3‑D Secure authentication if they are initiated from devices that do not support the Google Pay app
Obtaining access to the payment method and access fee Refer to your key account manager ECommPay

Interaction diagram

Payment processing by using the Google Pay payment method requires merchant's web service, one of ECommPay interfaces, and the ECommPay payment platform, as well as the Google Pay and the issuer bank services.



Operations support

  Interfaces Amounts Times**
Payment Page CMS Plugins Gate Dashboard (Old Dashboard) Minimum Maximum Basic Threshold
Purchases + + * * * *
Stored credentials payments + + * * * *
Full refunds + * * * *

* Amount limits and payment processing times depend on issuer banks.

** The basic and threshold times are defined as follows:
  • The basic time is the average estimated time between the moment a payment is initiated in the payment platform to the moment the payment result is sent to the initiator. The basic time evaluation is made on the assumption of normal operation of all technical facilities and communication channels and typical customer behaviour (if any input from customer is required). Use the basic time to estimate when to react to the absence of payment result notifications or when to check payment status.
  • The threshold time is the maximum possible time between the moment a payment is initiated in the payment platform to the moment the initiator receives the callback with the payment result. A payment is automatically declined, if its waiting time exceeds the threshold time. For individual setting of the threshold time limit, contact ECommPay technical support.

Processing scenarios

To be able to confirm payments using Google Pay method, a customer needs to register a payment card in Google Payapp at one of the supported devices first. Then to perform a purchase, it is required to request the tokenized card details from the Google Pay service by using Google Pay API. When processing a purchase by using Payment Page, ECommPay establish all interactions with the Google Pay service, when processing a purchase by using Gate, interaction with the Google Pay service is on the merchant web service side. To perform a refund, you need to receive a request from a customer and notify about payment result via the web service.

Figure: Purchase by using Payment Page procedure



Figure: Purchase by using Gate procedure without 3‑D Secure authentication



Figure: Purchase by using Gate procedure with 3‑D Secure authentication



Figure: Refund by using Gate procedure



The sections that follow provide detailed information about what you need to perform payments and how you can analyse the information on payments and operations.

Purchase by using Payment Page

General information

In the Google Pay method, to perform a purchase by using Payment Page, the merchant web service should send a request with all the required parameters and signature to the ECommPay URL and get the callback with the payment result from the payment platform. When opening Payment Page, you can have Payment Page opened with the Google Pay method selected. For more information about preselecting payment methods, see in Preselecting payment method.

The following diagram provides the detailed picture of the payment processing procedure.



Figure: Purchase sequence by using Payment Page

  1. Customer initiates purchase by using the web service.
  2. The merchant web service sends to the specified ECommPay URL the purchase request for Payment Page opening.
  3. The payment platform receives the request for processing the purchase by using Payment Page.
  4. The payment platform performs the initial request processing that involves validation of the required parameters and signature.
  5. Requested Payment Page is generated into the ECommPay payment platform as specified in the project settings and the request parameters.
  6. Payment Page is displayed to the customer.
  7. The customer selects the Bank card method and clicks the Google Pay button. If the Google Pay button is displaying among other payment methods on the first page, the customer just clicks the button.
  8. The payment platform receives the request for opening the Google Pay app or the Google Pay payment form.
  9. The payment platform sends the request for opening the payment form with the customer masked card details stored in the Google account to the Google Pay service.
  10. The Google Pay service processes the request and generates a payment form with the list of cards available for the customer.
  11. The Google Pay app or form is displayed to the customer with masked card details:
    • when processing a purchase on web sites by using mobile Google Chrome or in apps supporting payments with Google Pay, the Google Pay app opens
    • in other cases the Google Pay form is displayed in any mobile or desktop browser.
  12. The customer selects the specific card and confirms the purchase.
  13. The Google Pay service redirects the customer to Payment Page
  14. The customer data is processed on the Google Pay service side.
  15. The Google Pay service sends the token of the encrypted card details to the payment platform.
  16. The payment platform sends the payment request to the card organisation service.
  17. The payment is processed on the card organisation side.
  18. The card organisation service sends the payment result notification to the payment platform.
  19. The payment platform sends the callback to the web service.
  20. The payment platform sends payment results to Payment Page.
  21. A page with the payment result information is displayed to the customer.

The sections that follow discuss in more details the request format and the Payment Page parameters to use in the Google Pay payment method and provide the information on the format of callbacks with payment results. For the general information on how to use the API, see Payment Page API Description.

Request format

There are several things you need to consider when opening the payment form to perform a purchase by using the Google Pay method:

  1. You must provide values for the basic minimum of parameters. Listed below are the parameters that are mandatory for any payment method:
    • customer_id—the unique ID of the customer within your project
    • project_id—the project ID obtained from ECommPay
    • payment_id—payment ID unique within the project
    • payment_currency—payment currency in ISO-4217 alpha-3 format
    • payment_amount—payment amount in minor units
  2. You can choose the way of displaying the Google Pay button on Payment Page. There are several ways:
    • Displaying the Google Pay button on the page for entering card details. The customer must first select the Bank cards method on the page for selection a payment method among other payment methods. This option is set by default.
    • Displaying the Google Pay button on the page for selection a payment method among other payment methods. To set this option, contact ECommPay technical support.
    • Displaying the Google Pay button on the page for entering card details by passing the page for the payment method selection. The customer does not need to select the Bank cards method. To set this option, pass the code card in the force_payment_method parameter.
    • Displaying only the Google Pay button on Payment Page. To set this option, pass the code google_pay in the force_payment_method parameter.
  3. The currency of purchase can be EUR, GBP, RUB, USD.
  4. If required, you can also add any other additional parameters Payment Page supports. For information about all parameters available, see Payment Page invocation parameters.
  5. After you specify all the parameters you need, you must create the signature for the request. For instructions on how to sign a payment request, see Signature generation and verification.

Thus, a correct payment request in the Google Pay method must include project, customer and payment IDs, the currency and the amount of a payment in the appropriate currency, as shown in the following example:

EPayWidget.run(
    { project_id: 208,
      customer_id: '123',
      payment_id: '486', 
      payment_amount: 10000, 
      payment_currency: 'USD',   
      signature: "kUi2x9dKHAVNU0FYldJrxh4yo+52Kt8KU+Y1Y4HA...=="
    }
)

Callback format

In the Google Pay method, the callbacks that deliver purchase results use the standard format described in Callbacks.

Note that unlike other payment methods, in the Google Pay method, the callbacks for purchase included 3D-Secure validation contain the ECI indicator code in the operation.eci parameter. For more detailed information about ECI indicator, see Electronic Commerce Indicator (ECI) codes.

The following is the example of a callback with an information about successful 1,000.00 USD purchase in the 688 project by using 489537******3478 payment card without 3D-Secure authentication.

Figure: Example of a successful purchase without 3D-Secure callback

 {
        "project_id": 688,
        "payment": {
            "id": "TEST_154356886034722221",
            "type": "purchase",
            "status": "success",
            "date": "2019-04-11T11:22:36+0000",
            "method": "google-pay",
            "sum": {
                "amount": 100000,
                "currency": "USD"
            },
            "description": "TEST_154356886034722221"
        },
        "account": {
            "number": "489537******3478"
        },
        "operation": {
            "id": 2000015,
            "type": "sale",
            "status": "success",
            "date": "2019-04-11T11:22:36+0000",
            "created_date": "2019-04-11T11:22:20+0000",
            "request_id": "2b36e68d4d9fc8839d5d65ee6273dfdebbd",
            "sum_initial": {
                "amount": 100000,
                "currency": "USD"
            },
            "sum_converted": {
                "amount": 100000,
                "currency": "USD"
            },
            "provider": {
                "id": 1381,
                "payment_id": "d1b9-3qfl-9rns-1ql9aokzi2v8",
                "date": "2019-04-11T11:22:34+0000",
                "auth_code": ""
            },
            "code": "0",
            "message": "Success"
        },
        "signature": "Xkf7nUDleg8wcLltroCvNOMq751VtZcgrz6Nax...=="
    }

The following is the example of a callback with an information about successful 1,000.00 USD purchase in the 688 project by using 489537******3478 payment card with 3D-Secure authentication.

Figure: Example of a successful purchase with 3D-Secure callback

 {
        "project_id": 688,
        "payment": {
            "id": "TEST_154356886034722221",
            "type": "purchase",
            "status": "success",
            "date": "2019-04-11T11:22:36+0000",
            "method": "google-pay",
            "sum": {
                "amount": 100000,
                "currency": "USD"
            },
            "description": "TEST_154356886034722221"
        },
        "account": {
            "number": "489537******3478"
        },
        "operation": {
            "id": 2000015,
            "type": "sale",
            "status": "success",
            "date": "2019-04-11T11:22:36+0000",
            "created_date": "2019-04-11T11:22:20+0000",
            "request_id": "2b36e68d4d9fc8839d5d65ee6273dfdebbd",
            "sum_initial": {
                "amount": 100000,
                "currency": "USD"
            },
            "sum_converted": {
                "amount": 100000,
                "currency": "USD"
            },
            "provider": {
                "id": 1381,
                "payment_id": "d1b9-3qfl-9rns-1ql9aokzi2v8",
                "date": "2019-04-11T11:22:34+0000",
                "auth_code": ""
            },
            "code": "0",
            "message": "Success",
            "eci": "02"
        },
        "signature": "Xkf7nUDleg8wcLltroCvNOMq751VtZcgrz6Nax...=="
    }

The following is the example of a callback for a declined purchase with 3D Secure authentication.

Figure: Example of a declined purchase callback

{
        "project_id": 688,
        "payment": {
            "id": "TEST_154356886034722222",
            "type": "purchase",
            "status": "decline",
            "date": "2019-04-11T11:24:51+0000",
            "method": "google-pay",
            "sum": {
                "amount": 100100,
                "currency": "RUB"
            },
            "description": "TEST_154356886034722222"
        },
        "account": {
            "number": "489537******3478"
        },
        "operation": {
            "id": 2000000383,
            "type": "sale",
            "status": "decline",
            "date": "2019-04-11T11:24:51+0000",
            "created_date": "2019-04-11T11:24:35+0000",
            "request_id": "0eef294c20a7d72abd0fb20f3753ee674b51fbe",
            "sum_initial": {
                "amount": 100100,
                "currency": "RUB"
            },
            "sum_converted": {
                "amount": 100100,
                "currency": "RUB"
            },
            "provider": {
                "id": 1381,
                "payment_id": "1rvp-fc2k-cnp9-h41ocauwn6fr",
                "date": "2019-04-11T11:24:50+0000",
                "auth_code": ""
            },
            "code": "20000",
            "message": "General decline",
            "eci": "00"
        },
        "signature": "cQbMiD0pON9eJc5ZugNK0iT5SwHc0feItZRcAB...=="
    }

Related topics

The following topics might be useful when implementing payments by using Payment Page:

Purchase by using Gate

General information

Before payment performing by using Gate, the merchant is required to do the following:
  • perform the necessary setup required by Google
  • apply for the registration in Google service and receive the Google merchant ID

Purchases using this method can be initiated by the customer from a device that supports or does not support the Google Pay app. In the first case, the payment is performed without 3‑D Secure authentication, in the second case—with the authentication.

When processing a purchase in the Google Pay method by using Gate without 3‑D Secure (on devices and browsers that support the Google Pay app), the merchant web service is required to do the following:

  1. Integrate the Google Pay button following the Google Pay brand guidelines and implement the receiving of the token of customer card from Google Pay.
  2. Send a request to Google Pay service for payment form or app opening with the list of saved cards that are available to a customer.
  3. Send a request to Google Pay service for receiving the token of the card selected by a customer.
  4. Send a request with all the required parameters and signature to the ECommPay URL.
  5. Get the callback with the payment result from the payment platform.

When processing a purchase in the Google Pay method by using Gate with 3‑D Secure (on devices that do not support the Google Pay app), the merchant web service is required to do the following:

  1. Integrate the Google Pay button following the Google Pay brand guidelines and implement the receiving of the token of customer card from Google Pay.
  2. Send a request to Google Pay service for payment form or app opening with the list of saved cards that are available to a customer.
  3. Send a request to Google Pay service for receiving the token of the card selected by a customer.
  4. Send a request with all the required parameters and signature to the ECommPay URL.
  5. Get the callback from the platform with data to redirect the customer to the authentication page.
  6. Redirect the customer to the authentication page to pass 3‑D Secure.
  7. Send the payment completion request with the result of authentication to the payment platform.
  8. Get the callback with the payment result from the payment platform.

The following diagrams provide the detailed picture of the payment processing procedures.


Purchase workflow in Gate

Figure: Purchase sequence when using Gate

  1. Customer initiates purchase by using the web service and clicks the Google Pay button.
  2. The request for opening the Google Pay app or the Google Pay payment form that display masked card details stored in the customer Google account is sent to the Google Pay service.
  3. The Google Pay service processes the request and generates a payment form with the list of cards available for the customer.
  4. When processing a purchase on web sites by using mobile Google Chrome or in apps supporting payments with Google Pay, the Google Pay app opens with masked card details is displayed to the customer.
  5. The customer selects the specific card and confirms the purchase.
  6. The Google Pay service redirects the customer to the result waiting page in the merchant web service.
  7. The customer data is processed on the Google Pay service side.
  8. The Google Pay service sends the token that represents encrypted card details.
  9. The web service sends the request for processing the purchase through Gate by using the card token received from Google Pay to the specified ECommPay URL.
  10. The payment platform receives the request for processing the purchase by using Gate.
  11. The payment platform performs the initial request processing that includes validation of the required parameters and signature.
  12. The payment platform sends to the web service response with request receipt confirmation and correctness check result. For more information about the response, see Response format.
  13. The payment platform performs the internal payment request processing and sends it to the card organisation service.
  14. The payment is processed on the card organisation side.
  15. The card organisation service sends the payment result notification to the payment platform.
  16. The payment platform sends the callback to the web service.
  17. The customer receives the payment result from the web service.

Purchase workflow in Gate

Figure: Purchase sequence when using Gate

  1. Customer initiates purchase by using the web service and clicks the Google Pay button.
  2. The request for opening the Google Pay app or the Google Pay payment form that display masked card details stored in the customer Google account is sent to the Google Pay service.
  3. The Google Pay service processes the request and generates a payment form with the list of cards available for the customer.
  4. When processing a purchase using devises that do not support payments with Google Pay the payment form of Google Pay is displayed to the customer in any mobile or desktop browser with masked card details.
  5. The customer selects the specific card and confirms the purchase.
  6. The Google Pay service redirects the customer to the result waiting page in the merchant web service.
  7. The customer data is processed on the Google Pay service side.
  8. The Google Pay service sends the token that represents encrypted card details.
  9. The web service sends the request for processing the purchase through Gate by using the card token received from Google Pay to the specified ECommPay URL.
  10. The payment platform receives the request for processing the purchase by using Gate.
  11. The payment platform performs the initial request processing that includes validation of the required parameters and signature. If the purchase is performed from the web browser and not from the Google Pay app, the 3‑D Secure authentication is also performed.
  12. The payment platform sends to the web service response with request receipt confirmation and correctness check result. For more information about the response, see Response format.
  13. The payment platform performs the internal payment request processing and sends it to the card organisation service.
  14. The request is processed and the necessity of 3‑D Secure authentication is checked on the card organisation side.
  15. The data for redirection of the customer to the authentication page is sent to the payment platform from card organisation.
  16. The payment platform sends a callback with customer redirection data as described in more details in Callbacks section. Further information on the formats for callbacks with the data for redirection of the customer to the authentication page is provided in the corresponding sections 3-D Secure 1 and 3-D Secure 2.
  17. Merchant web service redirects the customer to the authentication page.
  18. Customer is redirected to the authentication page and passes the 3‑D Secure authentication.
  19. Card organisation performs customer authentication.
  20. Customer is redirected to the web service waiting page.
  21. The web service sends the payment completion request through Gate to the specified ECommPay URL.
  22. The payment platform receives the payment completion by using Gate.
  23. The payment platform performs the request processing that includes validation of the required parameters and signature.
  24. The payment platform sends to the web service response with request receipt confirmation and correctness check result.
  25. The payment platform performs the internal payment request processing and sends it to the card organisation service.
  26. The payment is processed on the card organisation side.
  27. The card organisation service sends the payment result notification to the payment platform.
  28. The payment platform sends the callback to the web service.
  29. The customer receives the payment result from the web service.

The sections that follow discuss in more details the request format and the Gate parameters to use in the Google Pay payment method and the information about the format of callbacks with payment results. For the general information about working with API, see the API Description section.

Request format

There are several things you must consider when using purchase requests in the Google Pay method:
  1. You perform purchase by sending the request by using POST (HTTP) method to the URL:
  2. The following objects and parameters must be specified in any request:
    • Object general—general purchase information:
      • project_id—the project ID obtained from ECommPay
      • payment_id—payment ID unique within the project
      • signature—signature created after you specify all the required parameters. For more information about signature generation, see Signature generation and verification.
    • Object customer—customer information:
      • id—the unique ID of the customer within your project
      • ip_address—customer IP address
    • Object payment—purchase information:
      • amount—purchase amount in minor units
      • currency—purchase currency in ISO-4217 alpha-3 format
    • Object etoken — information about token that represents card details received from the Google Pay service:
      • token—token with card encrypted details
  3. Other mandatory parameters may be required. It depends on the tokenization type that is used in a request to the Google Pay service. For information about what type of tokenization you need to perform purchase in a project, contact ECommPay technical support.

    To use PAYMENT_GATEWAY tokenization type, customer email is required to specify in the email parameter of the customer object.

    To use DIRECT tokenization type, the following parameters must be specified in the etoken object:

    • google_merchant_id—merchant ID in the Google Pay service
    • google_tokenization_type—the DIRECT tokenization type
  4. The currency of purchase can be EUR, GBP, RUB, USD.
  5. If required, you can also add any other additional parameters Gate supports.

Thus, a correct payment request in the Google Pay method by using the PAYMENT_GATEWAY tokenization type must include project, customer and payment IDs, signature, IP address and email of customer, currency and amount of the purchase, and token, as shown in the following example:

{
  "general": {      
    "project_id": 626,
    "payment_id": "ORDER_ID_gev_S01_0.20111200_1554473913",
    "signature": "xWOlMksKctAKeYADt8W6F98D/ZFgyNqOYw...=="    
  },
  "customer": {
    "id": "123",
    "email": "googlepay@google.com",
    "ip_address": "1.2.3.4"
  },
  "payment": {
    "amount": 10000,    
    "currency": "USD"
  },
  "etoken": {
    "token":  "..." // as it is received from Google Pay
  }
}

A correct payment request in the Google Pay method by using the DIRECT tokenization type must include project, customer and payment IDs, signature, customer IP address, currency and amount of the purchase, token, merchant ID in the Google Pay service, and tokenization type, as shown in the following example:

{
  "general": {
    "project_id": 688,
    "payment_id": "ORDER_89218100_1554981739",
    "signature": "aRZiZZc0w5RVnuCxC7KSm50Pfwsj/8fqy2XlAJ...=="
  },
  "customer": {
    "id": "123",
    "ip_address": "1.2.3.4"
  },
  "payment": {
    "amount": 10000,
    "currency": "USD"
  },
  "etoken": {
    "token": "...", // as it is received from Google Pay
    "google_merchant_id": "12345678901234567890",
    "google_tokenization_type": "DIRECT"
  }
}

Payment completion request format

There are several things you must consider when using payment completion requests in the Google Pay method:
  1. You send the requests by using HTTP method POST to /v2/payment/card/3ds_result.
  2. The following objects and parameters must be specified in any request:
    • general—general purchase information:
      • project_id—project identifier
      • payment_id—purchase identifier to be confirmed
      • signature—signature created after you specify all the required parameters. For more information about signature generation, see Signature generation and verification
    • pares—a PARes message with the customer authentication by using 3-D Secure result

Thus, a correct payment completion request in the Google Pay method must include project and payment IDs, a PARes message, and the signature, as shown in the following example:

Figure: Example of a payment completion request

{
  "general": {
    "project_id": 580,
    "payment_id": "TEST_15427033321774",
    "signature": "96c+hWk1zweuGKwDRrl+Se5mDLXHChlDZrjJXZw7ew6ow3RpGYv4U...=="
  },
  "pares": "eJzVWdfvq8iy/iujOY/WDBnbI+9ldZMMJpho4I1...Dfn76en3N+f/A1fJrSU="
  }

Two-step purchase capture request format

There are several things you must consider when using capture requests in the Google Pay method:
  1. You send purchase requests by using HTTP method POST to /v2/payment/googlepay/capture.
  2. The following objects and parameters must be specified in any request:
    • general—general purchase information:
      • project_id—project identifier
      • payment_id—purchase identifier to be confirmed
      • signature—signature created after you specify all the required parameters. For more information about signature generation, see Signature generation and verification
    • payment—purchase information:
      • amount—purchase amount in the minor currency units
      • currency—purchase currency in the ISO-4217 alpha-3 format
  3. The amount and currency must match the values in the auth request.
  4. If required, you can also add any other additional parameters Gate supports.

Thus, a correct payment request in the Google Pay method must include project and payment IDs, currency and amount of the purchase, and the signature, as shown in the following example:

Figure: Example of a purchase capture request

{
  "general": {
    "project_id": 580,
    "payment_id": "TEST_15427033321774",
    "signature": "96c+hWk1zweuGKwDRrl+Se5mDLXHChlDZrjJXZw7ew6ow3RpGYv4U...=="
  },
  "payment": {
    "amount": 1000,
    "currency": "RUB"
  }

Two-step purchase cancellation request format

There are several things you must consider when using cancel requests in the Google Pay method:
  1. You send purchase requests by using HTTP method POST to /v2/payment/googlepay/cancel.
  2. The following objects and parameters must be specified in any request:
    • general—general purchase information:
      • project_id—project identifier
      • payment_id—purchase identifier to be cancelled
      • signature—signature created after you specify all the required parameters. For more information about signature generation, see Signature generation and verification
  3. If required, you can also add any other additional parameters Gate supports.

Thus, a correct payment request in the Google Pay method must include project and payment IDs, and the signature:

Figure: Example of a purchase cancellation request

{
  "general": {
    "project_id": 580,
    "payment_id": "TEST_15427033321774",
    "signature": "96c+hWk1zweuGKwDRrl+Se5mDLXHChlDZrjJXZw7ew6ow3RpGYv4U...=="
  }

Callback format

In the Google Pay method, the callbacks that deliver purchase results use the standard format described in Callbacks.

Note that unlike other payment methods, in the Google Pay method, the callbacks for purchase included 3D-Secure authentication contain the ECI indicator code in the operation.eci parameter. For more detailed information about ECI indicator, see Electronic Commerce Indicator (ECI) codes.

The following is the example of a callback with an information about successful 1,000.00 USD purchase in the 688 project by using 489537******3478 payment card without 3D-Secure authentication.

Figure: Example of a successful purchase without 3D-Secure callback

 {
        "project_id": 688,
        "payment": {
            "id": "EPb940-4dab6",
            "type": "purchase",
            "status": "success",
            "date": "2019-04-11T11:22:36+0000",
            "method": "google-pay",
            "sum": {
                "amount": 100000,
                "currency": "USD"
            },
            "description": "Successful purchase with 3DS"
        },
        "account": {
            "number": "489537******3478"
        },
        "operation": {
            "id": 2000015,
            "type": "sale",
            "status": "success",
            "date": "2019-04-11T11:22:36+0000",
            "created_date": "2019-04-11T11:22:20+0000",
            "request_id": "2b36e68d4d9fc8839d5d65ee6273dfdb089
                                619bf-ea20fea0361aacb3e1c8fbbcd701b22c5957ebbd",
            "sum_initial": {
                "amount": 100000,
                "currency": "USD"
            },
            "sum_converted": {
                "amount": 100000,
                "currency": "USD"
            },
            "provider": {
                "id": 1381,
                "payment_id": "gmftho8c-d1b9-3qfl-9rns-1ql9aokzi2v8",
                "date": "2019-04-11T11:22:34+0000",
                "auth_code": "HOSTOK"
            },
            "code": "0",
            "message": "Success"
        },
        "signature": "Xkf7nUDleg8wcLltroCvNOMq751VtZcgrz6Naxq
                               s838RjKwkkhwc5InQKdYrgbAaRCI3MHuwdefE+JBsJEy2SQ=="
    }

The following is the example of a callback with an information about successful 1,000.00 USD purchase in the 688 project by using 489537******3478 payment card with 3D-Secure authentication.

Figure: Example of a successful purchase with 3D-Secure callback

 {
        "project_id": 688,
        "payment": {
            "id": "EPb940-4dab6",
            "type": "purchase",
            "status": "success",
            "date": "2019-04-11T11:22:36+0000",
            "method": "google-pay",
            "sum": {
                "amount": 100000,
                "currency": "USD"
            },
            "description": "Successful purchase with 3DS"
        },
        "account": {
            "number": "489537******3478"
        },
        "operation": {
            "id": 2000015,
            "type": "sale",
            "status": "success",
            "date": "2019-04-11T11:22:36+0000",
            "created_date": "2019-04-11T11:22:20+0000",
            "request_id": "2b36e68d4d9fc8839d5d65ee6273dfdb089
                                619bf-ea20fea0361aacb3e1c8fbbcd701b22c5957ebbd",
            "sum_initial": {
                "amount": 100000,
                "currency": "USD"
            },
            "sum_converted": {
                "amount": 100000,
                "currency": "USD"
            },
            "provider": {
                "id": 1381,
                "payment_id": "gmftho8c-d1b9-3qfl-9rns-1ql9aokzi2v8",
                "date": "2019-04-11T11:22:34+0000",
                "auth_code": "HOSTOK"
            },
            "code": "0",
            "message": "Success",
            "eci": "02"
        },
        "signature": "Xkf7nUDleg8wcLltroCvNOMq751VtZcgrz6Naxq
                               s838RjKwkkhwc5InQKdYrgbAaRCI3MHuwdefE+JBsJEy2SQ=="
    }

The following is the example of a callback for a declined purchase with 3‑D Secure authentication.

Figure: Example of a declined purchase callback

{
        "project_id": 688,
        "payment": {
            "id": "TEST_154356886034722222",
            "type": "purchase",
            "status": "decline",
            "date": "2019-04-11T11:24:51+0000",
            "method": "google-pay",
            "sum": {
                "amount": 100100,
                "currency": "USD"
            },
            "description": "TEST_154356886034722222"
        },
        "account": {
            "number": "489537******3478"
        },
        "operation": {
            "id": 2000000383,
            "type": "sale",
            "status": "decline",
            "date": "2019-04-11T11:24:51+0000",
            "created_date": "2019-04-11T11:24:35+0000",
            "request_id": "0eef294c20a7d72abd0fb20f3753ee674b51fbe",
            "sum_initial": {
                "amount": 100100,
                "currency": "USD"
            },
            "sum_converted": {
                "amount": 100100,
                "currency": "USD"
            },
            "provider": {
                "id": 1381,
                "payment_id": "1rvp-fc2k-cnp9-h41ocauwn6fr",
                "date": "2019-04-11T11:24:50+0000",
                "auth_code": ""
            },
            "code": "20000",
            "message": "General decline",
            "eci": "00"
        },
        "signature": "cQbMiD0pON9eJc5ZugNK0iT5SwHc0feItZRcAB...=="
    }

Related topics

The following topics might be useful when implementing payments by using Gate:

COF purchases by using Payment Page

General information

The Google Pay payment method provides the ability to perform COF purchases—regular on-demand payments. For more information about COF purchases, see On-demand COF purchase.

Registration of a COF purchases is also available by using Payment Page. For registration the web service must send a request containing the required parameters and signature, as well as data for registering a COF purchase in the recurring object, to the ECommPay URL and accept a callback with the result. In the callback about registering a COF purchase, you will get its ID, which you need to use to make or cancel regular payments via Gate. For more information, see the section COF purchases by using Gate.

The sections that follow discuss in more details the request format and the Payment Page parameters to use in the Google Pay payment method and provide the information on the format of callbacks with payment results. For the general information on how to use the API, see Payment Page API Description.

Request format

There are several things you need to consider when creating requests to open a payment form for registering COF purchases by using the Google Pay method:

  1. You must provide values for the basic minimum of parameters. Listed below are the parameters that are mandatory for any payment method:
    • customer_id—the unique ID of the customer within your project
    • project_id—the project ID obtained from ECommPay
    • payment_id—payment ID unique within the project
    • payment_currency—payment currency in ISO-4217 alpha-3 format
    • payment_amount—payment amount in minor units
  2. To register a COF purchase, you must pass a recurring object containing the registration attribute and the necessary information. To register regular payments, the request must contain information about the frequency, amount, and beginning and end time of regular payments. The full list of parameters that can be passed in the recurring object is shown in the COF purchase registration section.
  3. The currency of purchase can be EUR, GBP, RUB, USD.
  4. If you need to have payment form displayed with the Google Pay method selected, set the force_payment_method parameter to:
    • google_pay—to open Payment Page with pre-selected payment method Google Pay
    • card—for the ability of payment by using either a payment card or Google Pay. In this case customer can chose the payment method on Payment Page
  5. If required, you can also add any other additional parameters Payment Page supports. For information about all parameters available, see Payment Page invocation parameters.
  6. After you specify all the parameters you need, you must create the signature for the request. For instructions on how to sign a payment request, see Signature generation and verification.

Thus, a correct payment request in the Google Pay method must include project, customer and payment IDs, the currency and the amount of a payment in the appropriate currency, as shown in the following example:

EPayWidget.run(
    { payment_id: 'X03936', 
      payment_amount: 100000, 
      payment_currency: 'RUB', 
      customer_id: '123',
      project_id: 208, 
      force_payment_method: 'google_pay',
      recurring={"register":true,"type":"R","expiry_year":2025,"expiry_month":"01","period":"D","time":"10:00:00","start_date":"15-11-2020","scheduled_payment_id":"A2323"},
      signature: "mcsgn6KHAVNU0FYldJrxh4yo+52Kt8KU+Y1Y4HASCQ9vySO...=="
    }
)

Callback format

The Google Pay method uses the standard format for callbacks to deliver COF purchase registration results. For more information, see Callbacks.

The following is the example of a callback with an information about successful COF purchase registration made by a customer in the 208 project.

Figure: Example of a successful COF purchase registration callback

 {
        "project_id": 208,
        "payment": {
            "id": "payment",
            "type": "purchase",
            "status": "success",
            "date": "2018-11-20T08:44:46+0000",
            "method": "google pay",
            "sum": {
                "amount": 300,
                "currency": "USD"
            },
            "description": "payment"
        },
        "account": {
            "number": "489537******3478"
        },
        "recurring": {
            "id": 1000030038,
            "currency": "USD",
            "valid_thru": "-0001-11-30T00:00:00+0000"
        },
        "operation": {
            "id": 1000034,
            "type": "recurring",
            "status": "success",
            "date": "2018-11-20T08:44:46+0000",
            "created_date": "2018-11-20T08:44:41+0000",
            "request_id": "07fd7ade7cf010",
            "sum_initial": {
                "amount": 300,
                "currency": "USD"
            },
            "sum_converted": {
                "amount": 300,
                "currency": "USD"
            },
            "provider": {
                "id": 1381,
                "payment_id": "2548950091",
                "date": "2020-11-20T08:44:45+0000",
                "auth_code": ""
            },
            "code": "0",
            "message": "Success"
        },
        "signature": "x2tsnvLCRXZMX8Kwyr9a8+I3RipuPWUod5c89cDSQ6cRq...=="
    }

Related topics

The following topics might be useful when implementing payments by using Payment Page:

COF purchases by using Gate

General information

The Google Pay payment method provides the ability to perform COF purchases—regular on-demand payments. For more information about COF purchases, see On-demand COF purchase.

The sections that follow discuss in more details the requests formats and parameters to use in the Google Pay payment method and the information about the format of callbacks with payment results. The general information about working with API see in the API Description section.

COF purchase registration

To register a COF purchase by using Gate, the merchant is required to send a request for purchase with all the required parameters, signature, and the COF purchase registration parameter recurring.register: true to the ECommPay URL and get the callback with the payment result from the payment platform. To register a regular payment the request should also contain information about the frequency, amount, start and end dates of the regular payments.

For more information about purchase processing by using Gate, see Purchase by using Gate.

In the COF purchase registration callback you receive its identifier, which you can use to perform or cancel regular payments.

Requests format

There are several things you must consider when performing COF purchases registration in the Google Pay method:

  1. You can perform COF purchases by sending the request by using POST (HTTP) method to the one of the URL: /v2/payment/googlepay/sale or /v2/payment/googlepay/auth
  2. The following objects and parameters must be specified in the request:
    • Object general—general information:
      • project_id—project identifier
      • payment_id—unique payout identifier
      • signature—signature created after you specify all the required parameters. For more information about signature generation, see Signature generation and verification
    • Object customer—customer information:
      • id—the unique ID of the customer within your project
      • ip_address—customer IP address
    • Object payment—payment information:
      • amount—payment amount in the minor currency units
      • currency—payment currency in the ISO-4217 alpha-3 format
    • Object recurring—COF purchase information:
      • register—payment registration as a COF purchase
      • type—type of the COF purchase: R (for Regular payment), C (for OneClick payment), or U (for Autopayment), for more information, refer to Overview
      • scheduled_payment_id—identifier of the next COF purchase
      • start_date—the start date of regular payments, in the DD-MM-YYYY format (must be at least one day later than the date of registration)
      • amount—amount of debiting
      • period—regular payment performing period
      • interval— regular payment performing interval
      • time—regular payment performing time in the hh:mm:ss (UTC0) format
  3. The currency of the payment can be EUR, GBP, RUB, USD.
  4. If required, you can also add any other additional parameters Gate supports.

A correct COF purchase registration request through the Google Pay method must include project, customer and payment IDs, customer IP-address, signature, currency and amount of the purchase, as well as the registration parameter and the conditions for regular payments, as shown in the following example:

Figure: COF purchase registration request example

 {
  "general": {
    "project_id": 208,
    "payment_id": "TEST_15427007172789",
    "signature": "DH0v2pZnkK9hwytQ6/ZtDSQh+wwx/OqrWdbltzO5GMSkzd0Iq6lM2...==",
  },
  "customer": {
    "id": "123",
    "ip_address": "1.1.1.1"
  },
  "payment": {
    "amount": 1000,
    "currency": "RUB"
  },
  "recurring": {
    "register": true,
    "type": "R",
    "amount": 1000,
    "interval": 1,
    "cycle": "week",
    "start_date": "21-11-2018"
  }
}

COF purchase performing

After the payment is registered, the funds are debited according to the specified regular payment conditions. You initiate COF purchase by sending a recurring request to the payment platform.

Request format

There are several things you must consider when performing COF purchases performing in the Google Pay method:

  1. You can perform COF purchases by sending the request by using POST (HTTP) method to the /v2/payment/googlepay/recurring.
  2. The following objects and parameters must be specified in the request:
    • Object general—general purchase information:
      • project_id—project identifier
      • payment_id—unique payout identifier
      • signature—signature created after you specify all the required parameters. For more information about signature generation, see Signature generation and verification
    • Object customer—customer information:
      • id—the unique ID of the customer within your project
      • ip_address—customer IP address
    • Object payment—payment information:
      • amount—payment amount in the minor currency units
      • currency—payment currency in the ISO-4217 alpha-3 format
    • Object recurring—COF purchase information:
      • id—registered COF purchase identifier
  3. If required, you can also add any other additional parameters Gate supports.

So that a correct COF purchase request through the Google Pay method must include project, customer and payment IDs, customer IP-address, signature, currency and amount of the payment, as shown in the following example:

Figure: COF purchase performing request example

 {
  "general": {
    "project_id": 238,
    "payment_id": "TEST_15427007172789",
    "signature": "DH0v2pZnkK9hwytQ6/ZtDSQh+wwx/OqrWdbltzO5GMSkzd0Iq6lM2v8rmWQV4sbP+4A==",
  },
  "customer": {
    "id": "123",
    "ip_address": "87.245.207.226"
  },
  "payment": {
    "amount": 1000,
    "currency": "USD"
  },
  "recurring": {
    "id": 1234567890
  }
}

Cancellation of the COF purchases performing

Until the expiration date of COF purchases performing, you can cancel it. Also, to change the conditions of COF purchases, you must cancel it and send a request to register a new one.

Request format

There are several things you must consider when performing COF purchases cancellation in the Google Pay method:

  1. You can perform COF purchases by sending the request by using POST (HTTP) method to the /v2/payment/googlepay/recurring/cancel.
  2. The following objects and parameters must be specified in the request:
    • Object general—general purchase information:
      • project_id—project identifier
      • payment_id—unique payout identifier
      • signature—signature created after you specify all the required parameters. For more information about signature generation, see Signature generation and verification
    • Object recurring—COF purchase information:
      • id—registered COF purchase identifier
  3. If required, you can also add any other additional parameters Gate supports.
A correct COF purchase cancellation request through the Google Pay method must include project and payment IDs, customer IP-address, signature, currency and amount of the purchase, as well as the COF purchase identifier, as shown in the following example:

Figure: Regular payment cancellation request example

 {
  "general": {
    "project_id": 208,
    "payment_id": "TEST_15427007172789",
    "signature": "DH0v2pZnkK9hwytQ6/ZtDSQh+wwx/OqrWdbltzO5GMSkzd0Iq6lM2v8rmWQV4sbP+4A==",
  },
  "recurring": {
    "id": 1234567890
  }
}

Callback format

The standard format for callbacks is used to deliver the results of actions with COF purchases. For more information, see Callbacks.

The following is the example of a callback with an information about COF purchase registration for a customer in the 208 project.

Figure: Example of succeed COF purchase registration

 {
        "project_id": 208,
        "payment": {
            "id": "payment",
            "type": "recurring",
            "status": "success",
            "date": "2018-11-20T08:44:46+0000",
            "method": "google-pay",
            "sum": {
                "amount": 300,
                "currency": "USD"
            },
            "description": "payment"
        },
        "account": {
            "number": "489537******3478"
        },
        "recurring": {
            "id": 1000030038,
            "currency": "USD",
            "valid_thru": "-0001-11-30T00:00:00+0000"
        },
        "operation": {
            "id": 1000034,
            "type": "recurring",
            "status": "success",
            "date": "2018-11-20T08:44:46+0000",
            "created_date": "2018-11-20T08:44:41+0000",
            "request_id": "07fd7ade7cf010",
            "sum_initial": {
                "amount": 300,
                "currency": "USD"
            },
            "sum_converted": {
                "amount": 300,
                "currency": "USD"
            },
            "provider": {
                "id": 1381,
                "payment_id": "2548950091",
                "date": "2020-11-20T08:44:45+0000",
                "auth_code": ""
            },
            "code": "0",
            "message": "Success"
        },
        "signature": "x2tsnvLCRXZMX8Kwyr9a8+I3RipuPWUod5c89cDSQ6cRq...=="
    }

The following is the example of a callback after regular payment cancellation.

Figure: Example of regular payment cancellation callback

 {
        "project_id": 208,
        "payment": {
            "id": "payment",
            "type": "recurring",
            "status": "success",
            "date": "2018-11-20T08:44:46+0000",
            "method": "google-pay",
            "sum": {
                "amount": 300,
                "currency": "USD"
            },
            "description": "payment"
        },
        "account": {
            "number": "489537******3478"
        },
        "recurring": {
            "id": 1000030038,
            "currency": "USD",
            "valid_thru": "-0001-11-30T00:00:00+0000"
        },
        "operation": {
            "id": 1000034,
            "type": "recurring_cancel",
            "status": "success",
            "date": "2018-11-20T08:44:46+0000",
            "created_date": "2018-11-20T08:44:41+0000",
            "request_id": "07fd7ade7cf010",
            "sum_initial": {
                "amount": 300,
                "currency": "USD"
            },
            "sum_converted": {
                "amount": 300,
                "currency": "USD"
            },
            "provider": {
                "id": 1381,
                "payment_id": "2548950091",
                "date": "2020-11-20T08:44:45+0000",
                "auth_code": ""
            },
            "code": "0",
            "message": "Success"
        },
        "signature": "x2tsnvLCRXZMX8Kwyr9a8+I3RipuPWUod5c89cDSQ6cRq...=="
    }

The following is the example of a callback with an information about declined COF purchase.

Figure: Example of declined COF purchase registration

 {
        "project_id": 208,
        "payment": {
            "id": "payment",
            "type": "recurring",
            "status": "success",
            "date": "2018-11-20T08:44:46+0000",
            "method": "google-pay",
            "sum": {
                "amount": 300,
                "currency": "USD"
            },
            "description": "payment"
        },
        "errors": [
            {
                "code": "2701",
                "message": "Rules Failed Code",
                "description": "fatal: RULES_FAILED_CODE"
            }
        ],
        "recurring": {
            "id": 1000700,
            "currency": "USD",
            "valid_thru": "-0001-11-30T00:00:00+0000"
        },
        "operation": {
            "id": 1000034,
            "type": "recurring",
            "status": "decline",
            "date": "2018-11-20T08:44:46+0000",
            "created_date": "2018-11-20T08:44:41+0000",
            "request_id": "07fd7ade7cf010",
            "sum_initial": {
                "amount": 300,
                "currency": "USD"
            },
            "sum_converted": {
                "amount": 300,
                "currency": "USD"
            },
            "provider": {
                "id": 1381,
                "payment_id": "2548950091",
                "date": "2020-11-20T08:44:45+0000",
                "auth_code": ""
            },
            "code": "2701",
            "message": "Rules Failed Code"
        },
        "signature": "x2tsnvLCRXZMX8Kwyr9a8+I3RipuPWUod5c89cDSQ6cRq...=="
    }

Related topics

The following topics might be useful when implementing payments through Gate:

Refund by using Gate

General information

Google Pay supports full refunds processing. To perform a refund through the Google Pay method, merchant's web service sends a request with all the required parameters and signature to ECommPay URL, and receives a callback with the payment result. The full sequence of the refund process is provided below.



Figure: Refund sequence by using Gate

  1. A customer orders a refund on the merchant's web service side.
  2. Merchant's web service sends the request for the refund processing by using Gate to the appropriate ECommPay URL.
  3. Gate redirects the request to the ECommPay payment platform.
  4. The payment platform performs all the necessary checks and processes the request.
  5. The reply with the request processing results is sent to the merchant's web service. For more information, see Response format.
  6. The payment platform redirects the refund request to the card organisation service.
  7. The payment is processed on the card organisation side.
  8. The card organisation sends the result notification to the payment platform.
  9. The payment platform sends a callback with the payment result to the web service.
  10. The customer receives the refund result from the web service.

The sections that follow discuss in more details the request format and the Gate parameters to use in the Google Pay payment method and provide the information on the format of callbacks with refund results.

Request format

There are several things you must consider when using refund requests in the Google Pay method:
  1. You perform refund by sending the request to /v2/payment/googlepay/refund by using POST (HTTP) method.
  2. The following objects and parameters must be specified in any request:
    • Object general—general information:
      • project_id—project identifier
      • payment_id—unique payment identifier
      • signature—signature created after you specify all the required parameters. For more information about signature generation, see Signature generation and verification
    • Object customer—customer information:
      • ip_address—customer IP address
    • Object payment—refund information:
      • description—comment or description
  3. If required, you can also add any other additional parameters Gate supports.

Thus, a correct refund request in the Google Pay method must include project and payment IDs, customer IP address, and payment description, as shown in the following example:

Figure: Example of a refund request

{
   "general": {    
    "project_id": 239,    
    "payment_id": "refund_02",   
    "signature": "of8k9xerKSK4XL1QFaDH3p9Mh0CIcjmOwSwKJ7KLTZYO56lCv+f1M0Sf/7eg=="
  },  
   "customer": {    
     "ip_address": "1.2.3.4" 
  },  
   "payment": {    
     
     "description": "refund_02"
 }
}

Callback format

The Google Pay method uses the standard format for callbacks to deliver refund results. For more information, see Callbacks.

The following is the example of a callback with an information about successful 30,00 USD refund for the customer account 537018******8236 in the 208 project.

Figure: Example of a successful refund callback

{
        "project_id": 208,
        "payment": {
            "id": "TEST_123456",
            "type": "purchase",
            "status": "refunded",
            "date": "2020-03-30T08:54:23+0000",
            "method": "google-pay",
            "sum": {
                "amount": 0,
                "currency": "USD"
            },
            "description": "payment for 30.0 USD"
        },
        "account": {
            "number": "537018******8236",
            "type": "mastercard",
            "card_holder": "LEE OONG",
            "expiry_month": "09",
            "expiry_year": "2020"
        },
        "customer": {
            "id": "907680850"
        },
        "operation": {
            "id": 57299000036261,
            "type": "refund",
            "status": "success",
            "date": "2020-03-30T08:54:24+0000",
            "created_date": "2020-03-30T08:54:22+0000",
            "request_id": "122809a-c43c08a4b6ee7d73bfaaf7f",
            "sum_initial": {
                "amount": 3000,
                "currency": "USD"
            },
            "sum_converted": {
                "amount": 3000,
                "currency": "USD"
            },
            "code": "0",
            "message": "Success",
            "provider": {
                "id": 120,
                "payment_id": "353197036",
                "auth_code": "000000",
                "endpoint_id": 120,
                "date": "2020-03-30T08:54:23+0000"
            }
        },
        "signature": "8y41YTzCAy0N/mV+tkJmB6OsGYLUYAyAIp3U/3x7jymU...=="
    }

The following is the example of a callback for a refund declined due to the refund amount does not match the init amount.

Figure: Example of a declined refund callback

{
        "project_id": 208,
        "payment": {
            "id": "TEST_1234567",
            "type": "purchase",
            "status": "success",
            "date": "2020-03-27T17:41:04+0000",
            "method": "google-pay",
            "sum": {
                "amount": 2000,
                "currency": "EUR"
            },
            "description": "35121367"
        },
        "account": {
            "number": "532196******1368",
            "type": "mastercard",
            "card_holder": "LEE OONG",
            "expiry_month": "09",
            "expiry_year": "2028"
        },
        "customer": {
            "id": "LEE OONG"
        },
        "operation": {
            "id": 42809000016421,
            "type": "refund",
            "status": "decline",
            "date": "2020-03-27T17:41:04+0000",
            "created_date": "2020-03-27T17:41:03+0000",
            "request_id": "b869d91-ff913d9c5ae5ba1bb6c3457c30e91",
            "sum_initial": {
                "amount": 1400,
                "currency": "EUR"
            },
            "sum_converted": {
                "amount": 1400,
                "currency": "EUR"
            },
            "code": "10000",
            "message": "General decline"
        },
        "signature": "8ql4yC3p2RiYbNXN15+64vo2B1HhpQVr1RbsDkpyQmD6HSxMYBrBQJmcKmL...=="
    }

Related topics

The following topics might be useful when implementing payments through Gate:

Payment card verification

General information

To perform a payment card verification through the Google Pay method, merchant's web service sends a request with all the required parameters and signature to ECommPay URL, and receives a callback with the result. Payment card verification processing for this method is the same as standard processing sequence which is provided in the section Payment instrument verification.

Request format

There are several things you must consider when using payout requests in the method:

  1. You send payout requests by sending the request by using HTTP method POST to /v2/payment/googlepay/account_verification.
  2. The following objects and parameters must be specified in any request:
    • Object general—general payout information:
      • project_id—project identifier
      • payment_id—unique payout identifier
      • signature—signature created after you specify all the required parameters. For more information about signature generation, see Signature generation and verification
    • Object customer—customer information:
      • id—identifier in the project
      • ip_address—IP address
    • Object payment—payout information:
      • amount—payout amount in the minor currency units
      • currency—payout currency in the ISO-4217 alpha-3 format
    • etoken—token received from the Google Pay information:
      • token—token received from the Google Pay after customer identification
  3. The currency of purchase can be EUR, GBP, RUB, USD.
  4. The payment amount must be zero.
  5. If required, you can also add any other additional parameters Gate supports.

Thus, a correct card verification request in the Google Pay method must include project and payment IDs, payment and customer data, and token, as shown in the following example:

Figure: Example of card verification request

{
  "general": {
    "project_id": 238,
    "payment_id": "TEST_15427033321774",
    "signature": "96c+hWk1zweuGKwDRrl+Se5mDLXHChlDZrjJXZw7ew6ow3RpGYv4U...=="
  },
  "customer": {
    "ip_address": "1.1.1.1"
  },
  "payment": {
    "amount": 0,
    "currency": "RUB"
  },
  "etoken": { 
     "token": "k/cNkKsVhu5yGuRB4aFMNlwI9W36mgzBYgOeW61l/MkzFvx2P8RivIx7WWQtVWePx3Pjp3D4B5yn3SzDTxGyoo2GLojZ5Jh9wIycsuRbV00L55s9L7xDcs7ds30zUxDgo/XDGjckVmjfRuO6KlqYsDHaNd6LsAGXxWCNupL/2uwM8JolbW8AziV3l/MkgvaKldMwPu6MSq5k87lqKZPKiqf21NdO59n6PlS/Bqw6+GEJ5fcgkGZxrZzQLatk3IVlzwgVdsKBV4UH82Gx5uNW8OwsClJPZClTnCjkpVsxFxMrqOn1tZOohL5Bz7N18MGPIUAC01PgiauL+31ORBRrRxin8D7J1QLme0eTnlhbv+8IXdCyP1Ct/TwmbHaTFnCbFPy23mdTZ7NKZ95CPUIjiSP/PGnLxE6KqvGxu67g=="
  }
}

Callback format

The Google Pay method uses the standard format for callbacks to deliver results. For more information, see Payment instrument verification.

Related topics

The following topics might be useful when implementing payments through Gate:

Analysis of payment result

As with other payment methods ECommPay offers, when using the Google Pay method, you have several options to analyse the information about payments and operations performed by using the method—alone or in conjunction with other methods.

You can load and analyse all the necessary information in Dashboard, for instance you can use the analytic panels on the Analytics tab to this end.

Also, you can export the information for further analysis by using third party analytical tools. The following options are available:

  • Dashboard allows you to download reports in CSV and XLS formats—by using the tools on the Payments tab. You can perform export as a one-time download to your local computer or have payment data regularly exported and delivered to email addresses you specify.
  • Data API allows you to have payment information exported in JSON format and delivered to a URL you specify. The payment information is exported by using the /operations/get queries.

If you have any further questions regarding payment data analysis, contact ECommPay technical support.