javascript - 如何使用 Paypal 为 Google Pay 执行授权 + 捕获流程?

标签 javascript paypal payment-gateway google-pay

我正在将 Google Pay 集成到一个简单的电子商务网站中。我们使用 Adyen 作为支付网关。

如果我只需传递一定的金额,点击“付款”即可完成付款,一切正常。

现在的问题是:我们还需要用户的送货地址来计算运费。通过简单的“仅捕获”流程,我们肯定会获得该数据,但是在付款完成之后。此外,我们必须在捕获付款之前呈现一个摘要页面。

所以: 我们需要一个授权+付款流程,在授权后我们可以获取送货地址。然后我们计算运费并在稍后调整捕获请求中的实际金额。

很公平。但是:我使用 Paypal 作为 Google Pay 的付款方式。我的理解是,它会生成某种虚拟信用卡,因此可以用作信用卡。这是我唯一的选择,因为我没有真正的信用卡。

现在,这对于“仅捕获”流程非常有效,但一旦我们引入授权步骤,我就会被迫登录 Google 并输入真实的信用卡。

Google 提供 a way to test with fake Card numbers ,但是当我打开它们时,我无法再请求送货地址(错误 OR-ACC-01)。

这是我的问题: 当连接到 Google Pay 的唯一付款方式是 Paypal 时,是否可以通过 Google Pay 实现授权 + 捕获结帐流程?

以下是包含授权步骤以及所需电子邮件地址和送货地址的设置:

https://jsfiddle.net/0n8tbeu3/2/

相关部分是:

paymentDataRequest.callbackIntents = ["PAYMENT_AUTHORIZATION"];
paymentDataRequest.shippingAddressRequired = true;
paymentDataRequest.emailRequired = true;

我希望它能与我的 GPay 配合使用,但我却被迫输入一张新的/真实的信用卡。

编辑:

为了澄清问题,这里有一些屏幕截图。

1. 没有 AUTHORIZATIONSHIPPING_METHOD 意图。

//paymentDataRequest.callbackIntents = ["PAYMENT_AUTHORIZATION"];

在移动设备上:我收到默认的 GPay 付款表并可以完成付款。 (抱歉质量不好,不得不用我糟糕的网络摄像头拍摄,因为屏幕受到保护):enter image description here

在桌面上: 除非输入信用卡,否则无法完成付款。 Paypal 显示为“此处不可用”(信用卡输入表单已折叠,我重复使用了授权意图尝试的屏幕截图,因为相关部分完全相同)

enter image description here

2.WITH AUTHORIZATIONSHIPPING_METHOD 意图(回调当然也已配置)。

paymentDataRequest.callbackIntents = ["PAYMENT_AUTHORIZATION", "SHIPPING_METHOD"];

我在移动设备和桌面设备上看到的屏幕与上面基本相同,显示 Paypal 不可用并提示我输入信用卡。

最佳答案

我试图确保我理解您想要实现的目标,以防可以通过其他方式解决它。

您最终是根据送货地址来计算运费吗?并且您希望能够在执行捕获之前明确授权付款。或者您是否正在进行授权以便可以接收送货地址?

我建议使用 dynamic price update 计算运费。相关部分是:

  • callbackIntents = ["SHIPPING_ADDRESS", "SHIPPING_OPTION", ...];
  • paymentDataCallbacks:{ onPaymentDataChanged }

要处理授权,请同时使用 PAYMENT_AUTHORIZATION 回调:

  • callbackIntents = [..., "PAYMENT_AUTHORIZATION"];
  • paymentDataCallbacks:{ onPaymentAuthorized }

as soon as we introduce an Authorization step, it looks like I'm being forced to log into Google and to enter a real Credit Card.

我不确定这里有什么交易。您能提供一些屏幕截图或屏幕录制吗?

关于javascript - 如何使用 Paypal 为 Google Pay 执行授权 + 捕获流程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64863748/

相关文章:

javascript - Snowflake 中的 UDF JavaScript 实现

javascript - 有谁知道这是什么 javascript 图形库(或者可以推荐类似的东西)?

php - 如何使用 paypal webhooks 处理多个环境 : dev, 登台和生产?

payment-gateway - Braintree - 为什么通过 API 或通过沙箱创建的 braintree 交易在结算之前需要很长时间?

javascript - requestAnimationFrame 带有回调函数?

javascript - 使用 javascript 管理 MVC 复选框

paypal - 是否有任何 API 可以将跟踪号和订单状态从我的应用程序添加到 PayPal?

javascript - 我需要注册一家公司才能在生产中使用 Stripe 或 Paypal(我住在加拿大)吗?

c# - 使用C#验证paypal支付

php - 使用 ExpressCheckout 取消 paypal 定期付款