【问题标题】:How to receive encrypted payment token data of Google Pay如何接收 Google Pay 的加密支付令牌数据
【发布时间】:2020-06-10 19:14:33
【问题描述】:

我正在尝试在我的网站上使用 Google Pay。一旦我确认付款,谷歌就会返回这个数据结构:

但我需要这样的东西:

{
   "signature":"MEYCIQDTe92wpG6OUgxJ/8Qnr36XzSgjGGCM7R3LwxjgwPYMTAIhAJDrjHG9wEm1BxVM6MMMB+jGTGpi3VScEMVbHIUsObFi",
   "protocolVersion":"ECv2",
   "signedMessage":"{\"encryptedMessage\":\"FY8w/U3IbdsZQovX8ufNGFDOePgc/genRiMjHyvuIBqLY4a6uPz7wI0ra31K6YbFJlAnCjFhTwSvDxAYXw6hlmI8sESO5eM1eZlzfP3+NoKV80OXKvOM/xI/qOQEqpEQEVXx6Bw2EpMMFW8yBaA8XPUNee3EJlUk+/f8lRdRcNmI65QKPLAzUnySo75HzBkSc5It/8/oXdYwR93/K6HRKGZuD+bIaxy3SUvC9ehQqhBoP+A34yQX1knfJ1qjBMhhVVcPZHi+Bg6LXA4ms/lfDdim6D1Epr6XQhc2h4RZ/dT+6Enn81s/8ym+jMMs8kqsW9ib8vkdTARv9AbUu7zeGPrKTCAxwc1n6joRR72dSnNCI9j9sxd9tkuC9wuRyDmjbWT+hRZgLc1v/xzzNImo3NxdKdaPzKBE3t9XQZY5fp3lZELaoXAuxAZYtZ7bX64Mz9c28wD8EM+krvfbmGMiBjIt8EfeH48/SjeaUKfDu+yQnjPJAKbDZPhKJ1jqlY/ChP0Om7spQacT86QUVK/DwfzukwvwwRJkWydNEac5fgfS2T6ToZ+PW4VHbxkDnY/h+B0uwdlNQIL2a3Ar5Q\\u003d\\u003d\",\"ephemeralPublicKey\":\"BGkK4bSvob+e7ZgaNV/4vSJYYa10OJzd3aUk9yPEP6iNBRcfHiD/NTvhKjN4P24l0tEzH3L8TrySl6AczPJpCkw\\u003d\",\"tag\":\"xGEhEfJESIyBSfq2fExWiZxNWelnm3m4i8P7cgsarqg\\u003d\"}"
}

您能否告诉我我应该怎么做才能获得第二个数据结构。谢谢!

【问题讨论】:

    标签: google-pay


    【解决方案1】:

    paymentMethodData.tokenizationData.token 下可以找到您所寻求的响应。但是,此字段的内容由您传递给loadPaymentData 的请求参数决定。您能否包含用于生成上述响应的请求?

    仅供参考,以下JSFiddle 将产生类似于您所追求的结果:

    const tokenizationSpecification = {
      type: 'DIRECT',
      parameters: {
        'protocolVersion': 'ECv2',
        'publicKey': 'BMzk6xvwPgU8vjB...7KRu4tuRmhm6nv8=',
      }
    };
    
    /*
    {
      "signature":"MEUCI...TougPg",
      "protocolVersion":"ECv2",
      "signedMessage": "{\"encryptedMessage\":\"VhQuaN...5o0Ny6Y\\u003d\"}"
    }
    */
    

    我通过使用DIRECT 标记化规范实现了这一点,即discouraged

    关键点:直接集成允许商家在其服务器上解密 Google Pay 响应。要获得资格,您必须符合支付卡行业 (PCI) 数据安全标准 (DSS) 1 级标准。您的服务器还需要具备安全处理用户支付凭证所需的基础架构。

    代表实际商家提供网关或处理服务的第三方没有资格使用直接集成。有关您作为支付服务提供商的集成问题,请联系我们。

    如果您不满足必要的先决条件,我们建议您使用受支持的网关来接收支付令牌。

    【讨论】:

      【解决方案2】:

      不确定这是否仍然是一个悬而未决的问题。但这是我的 2 美分,可能是您解决方案的答案。

      请注意:如果您仅使用 WorldPay/Vantiv,这是一个答案。

      从您上面对令牌的第一个响应中,我相信您将网关用作“vantiv

        "gateway": "vantiv"
        "vantiv:merchantPayPageId": "YOUR_PAY_PAGE_ID"
        "vantiv:merchantOrderId": "YOUR_ORDER_ID"
        "vantiv:merchantTransactionId": "YOUR_TRANSACTION_ID"
        "vantiv:merchantReportGroup": "*web"
      

      如果您想获得第二个带有签名和签名消息的响应,那么您只需将网关更改为“worldpay”,您应该会得到相同的响应:

        "gateway": "worldpay"
        "gatewayMerchantId": "YOUR_WORLDPAY_MERCHANT_ID"
      

      您可以找到请求here

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-09-27
        • 1970-01-01
        • 2020-08-18
        • 2023-04-03
        • 1970-01-01
        • 2021-09-24
        • 2019-08-19
        相关资源
        最近更新 更多