Skip to main content

Google Pay​

FeatureDescription
Payment Logo-Usage Guidelines
Integration Methods
  1. βœ… Hosted Checkout
  2. βœ… Embedded
  3. βœ… Server-to-Server
Recommended RegionsGlobal
Virtual Industry Supportβœ…
Subscription Supportβœ… Varies by industry
Supported SaaSAll integrated SaaS platforms
Supported Open-Source Platforms
  1. βœ… Magento
  2. βœ… WordPress/Woocommerce
  3. βœ… OpenCart
  4. βœ… PrestaShop
  5. βœ… ZenCart

Integration Method​

Oceanpayment supports the following Google Pay integration methods:

Integration MethodDescription
EmbeddedMerchants are not required to enroll in the Google Developer Program. Oceanpayment handles Merchant Validation and payment processing.
Server-to-ServerMerchants must enroll in the Google Developer Program, obtain the Google Pay Payment Token, and submit payment requests through Oceanpayment's server-side API.

Embedded​

1. Integration​

Google Pay will be displayed as a payment option on the checkout page when available.

Use the Embedded Integration solution to complete the payment processing.

Server to Server​

To use this integration mode, you need to become an official Google Pay developer.

Note

Google Pay developer registration supports business entities from multiple regions. However, availability of full merchant onboarding and live payment processing may vary depending on the registered country or region. For China (CN) entities, registration is supported, but certain payment capabilities (such as merchant onboarding and settlement) may be subject to Google Pay regional eligibility and approval requirements. It is recommended to use a supported region entity (e.g., HK/SG/EU/US) for production payment processing where applicable.

1. Google Pay Developer Account Registration and Configuration​

2. Create Merchant ID​

  • After registration, a Merchant ID will be generated, which can be viewed in Google Pay Console β†’ API access β†’ Merchant Info.

3. Configure Google Pay API Key​

  • Create a project in the Google Cloud Console.
  • Enable Google Pay API for Web/Android.
  • Get the API Key.

4. Configure Merchant Domain Verification​

  • Sign in to Google Developer β†’ Google Pay API β†’ Web integration.
  • Add the domain to the allowlist and submit screenshots of the payment flow.

5. Obtain the Payment Token​

After the customer completes the payment authorization, retrieve the Google Pay Payment Token. Please refer to the Google Pay complete example for details.

Info

The pay_accountNumber parameter is used to carry the Google Pay Payment Token obtained from paymentData.paymentMethodData.tokenizationData.token. When submitting a payment request to Oceanpayment, pass the JSON content of the token field from the Payment Token object below as the value of the pay_accountNumber parameter.

{
"apiVersion": 2,
"apiVersionMinor": 0,
"paymentMethodData": {
"type": "CARD",
"description": "Visa ‒‒‒‒ 1111",
"info": {
"cardNetwork": "VISA",
"cardDetails": "1111"
},
"tokenizationData": {
"type": "DIRECT",
"token": "{\"signature\":\"MEQCIB...\",\"protocolVersion\":\"ECv2\",\"signedMessage\":\"{\\\"encryptedMessage\\\":\\\"...\\\",\\\"ephemeralPublicKey\\\":\\\"...\\\",\\\"tag\\\":\\\"...\\\"}\"}"
}
}
}

6. card_type Mapping​

When submitting a payment request to Oceanpayment, the card_type parameter is used to identify the card network returned in paymentMethodData.info.cardNetwork. Merchants must map the value of paymentMethodData.info.cardNetwork to a supported Oceanpayment card_type enumeration before submitting the payment request.

paymentMethod.networkcard_type
VISAVISA
MASTERCARDMASTERCARD
MAESTROMAESTRO
JCBJCB
ELOELO
DISCOVERDISCOVER
CHINAUNIONPAYCHINAUNIONPAY
CARTESBANCAIRESCARTESBANCAIRES
AMEXAMEX
-d 'card_type=VISA' \

7. Integration​

Submit the Google Pay Payment Token to Oceanpayment via the pay_accountNumber parameter when calling the Server-to-Server Payment API.

INFO

The merchantInfo parameter can be configured with an Oceanpayment MID. If required, please contact Oceanpayment Technical Support to obtain the MID. In this case, the Merchant Domain whitelist mentioned in Step 4 will be configured by Oceanpayment developers.

const paymentsClient = new google.payments.api.PaymentsClient({ environment: 'TEST' });

const request = {
apiVersion: 2,
apiVersionMinor: 0,
allowedPaymentMethods: [{
type: 'CARD',
parameters: {
allowedAuthMethods: ['PAN_ONLY', 'CRYPTOGRAM_3DS'],
allowedCardNetworks: ['VISA', 'MASTERCARD'],
},
tokenizationSpecification: {
type: 'PAYMENT_GATEWAY',
parameters: {
'gateway': 'oceanpayment',
'gatewayMerchantId': 'oceanpayment',
},
},
}],
merchantInfo: {
merchantName: 'OceanPayment',
merchantId: 'BCR2DN4TWW...',
},
transactionInfo: {
totalPriceStatus: 'FINAL',
totalPrice: '10.00',
currencyCode: 'USD',
},
};

paymentsClient.loadPaymentData(request).then(paymentData => {
const token = paymentData.paymentMethodData.tokenizationData.token;
//Send token to the server for transaction processing.
});