Google Pay API

当你想在你自己的网站上通过使用Google Pay™时,你可以参阅本文档的内容以便集成Google支付。

1.流程概览

调用支付接口进行支付,需要重点解决3ds场景

customermerchantUseePay ServerIssuer点击支付pay requestpay request返回支付结果resultCode=succeed/failed 同步通知到redirectUrl地址展示支付结果异步通知notifyUrl支付结果customermerchantUseePay ServerIssuer

如果返回的参数中的ResultCode = challenge 或者 ResultCode = gather,则代表当前交易触发了3DS挑战,关于3DS挑战的后续处理,请参考:UseePay 3DS流程

2.详细流程

1.生成生成Useepay 交易信息

交易信息参数详见交易参数说明

注:paymentMethod应设置为”googlepay“

2.生成Google Pay PaymentData信息

关于网站集成Google Pay的更多信息,请参考:

Google Pay 网站开发者文档

Google Pay 网站集成核对清单

Google Pay 网站品牌推广指南

重点

下面是关于支付相关的重点配置信息,请在开发时做好相应的适配:

1.由于Useepay支付系统支持3DS,因此在设置allowedCardAuthMethods参数时,请设置为:

this.allowedCardAuthMethods = ["PAN_ONLY", "CRYPTOGRAM_3DS"];

并参考UseePay 3DS流程做好3DS后续流程。

2.在设置交易卡组时,请事先联系Useepay客服,根据相应地区咨询可以使用的卡组,并设置相应的参数,如:

this.allowedCardNetworks = ["AMEX", "DISCOVER", "JCB", "MASTERCARD", "VISA"];

3.交易的指定付款服务机构需设置为Useepay,并设置相应的参数:

const tokenizationSpecification = {
  type: 'PAYMENT_GATEWAY',
  parameters: {
    'gateway': 'useepay',
    'gatewayMerchantId': 'useepayGatewayMerchantId'
  }
};

4.如果测试环境,请根据官方文档使用Google Pay Test Merchant ID,在切换生产环境时,请将merchantInfo更换为联系Useepay工作人员确定后的merchantId值,并将参数设置为:

paymentDataRequest.merchantInfo = {
  merchantName: '指定的merchantName'
  merchantId: '指定的merchantId'
};

3.组装参数并加签

生成交易参数和Google Pay paymentData后,你应该得到如下的一个对象:

tradeRequest = {
    merchantNo : 'XXXX',
    transactionId : 'XXXX',
    transactionType : 'XXXX',
    ...
    payload : paymentData.paymentMethodData.tokenizationData.token
}

对上述参数按照Useepay签名进行加签

4.调用支付接口

接口地址:

prod:https://pay-gateway.useepay.com/googlepay/api

test:https://pay-gateway1.uat.useepay.com/googlepay/api

使用post方法将加签后的tradeRequest对象请求到对应环境的接口地址中,并进行相应的异常处理及回调处理,如果触发3DS,请进行相应的的3DS处理

Last updated