Paypal Braintree谷歌支付沙盒打开live域名

Paypal Braintree谷歌支付沙盒打开live域名,paypal,sandbox,braintree,google-pay,Paypal,Sandbox,Braintree,Google Pay,我正在尝试在我的页面上集成Google Pay,正如预期的那样,首先在Sandbox环境中集成Google Pay,但我面临一个问题,当我单击Google Pay按钮时,它会打开live域并要求我输入一张真实的卡,尽管我设置了所有与Sandbox环境相关的卡 下面是代码 以下是我得到的截图: 知道为什么会发生这种情况吗?在测试环境中使用Google Pay将返回一个测试支付凭证,该凭证实际上不会对您提供的支付方式收费。你不想使用真实的付款细节是可以理解的 如果您希望能够从预定义测试卡列表中进行选

我正在尝试在我的页面上集成Google Pay,正如预期的那样,首先在Sandbox环境中集成Google Pay,但我面临一个问题,当我单击Google Pay按钮时,它会打开live域并要求我输入一张真实的卡,尽管我设置了所有与Sandbox环境相关的卡

下面是代码

以下是我得到的截图:


知道为什么会发生这种情况吗?

在测试环境中使用Google Pay将返回一个测试支付凭证,该凭证实际上不会对您提供的支付方式收费。你不想使用真实的付款细节是可以理解的

如果您希望能够从预定义测试卡列表中进行选择,请按照以下说明操作:


简言之,您将需要加入,当与该用户一起访问Google Pay支付表时,它将显示一个测试帐户列表。

在测试环境中使用Google Pay将返回一个测试支付凭证,该凭证实际上不会对您提供的支付方式收费。你不想使用真实的付款细节是可以理解的

如果您希望能够从预定义测试卡列表中进行选择,请按照以下说明操作:

简言之,您需要加入,当与该用户一起访问Google Pay payment sheet时,它将显示一个测试帐户列表

  var createGooglePaymentComponent = function(clientInstance){
    var button = document.querySelector('#google-pay-button');
    var paymentsClient = new google.payments.api.PaymentsClient({
      environment: 'TEST' // Or 'PRODUCTION'
    });

    braintree.googlePayment.create({
      client: clientInstance,
      googlePayVersion: 2,
    }, function (googlePaymentErr, googlePaymentInstance) {
      paymentsClient.isReadyToPay({
        apiVersion: 2,
        apiVersionMinor: 0,
        allowedPaymentMethods: googlePaymentInstance.createPaymentDataRequest().allowedPaymentMethods,
      }).then(function(response) {
        if (response.result) {
          button.addEventListener('click', function (event) {
            event.preventDefault();

            var paymentDataRequest = googlePaymentInstance.createPaymentDataRequest({
              transactionInfo: {
                currencyCode: 'USD',
                totalPriceStatus: 'FINAL',
                totalPrice: '100.00',
              }
            });
            var cardPaymentMethod = paymentDataRequest.allowedPaymentMethods[0];
            cardPaymentMethod.parameters.billingAddressRequired = true;

            paymentsClient.loadPaymentData(paymentDataRequest).then(function(paymentData) {
              googlePaymentInstance.parseResponse(paymentData, function (err, result) {
                if (err) {
                  // Handle parsing error
                }
                // Send result.nonce to your server
              });
            }).catch(function (err) {
            });
          });
        }
      }).catch(function (err) {
      });
    });
  };