Javascript 如何进行授权+;使用Paypal为Google Pay捕获流量?
我正在将谷歌支付整合到一个简单的电子商务网站中。我们使用Adyen作为支付网关 一切都很好,如果我只是通过它的数额,点击“支付”和支付完成 现在问题来了:我们还需要用户的配送地址来计算配送成本。通过简单的“只需捕获”流程,我们当然可以获得这些数据,但在付款完成之后。此外,我们必须在获取付款之前提供摘要页面 因此: 我们需要一个授权+付款流程,在那里我们得到授权后的发货地址。然后,我们计算运输成本,并在稍后的捕获请求中调整实际金额 很公平。但是:我使用贝宝作为谷歌支付的支付方式。我的理解是,它生成了某种虚拟信用卡,因此可以作为一种信用卡使用。这是我唯一的选择,因为我没有真正的信用卡 现在,这对“just capture”流非常有效,但一旦我们引入授权步骤,看起来我就不得不登录到谷歌并输入一张真正的信用卡 谷歌提供,但当我打开它们时,我就不能再请求发货地址了(错误或-ACC-01) 所以我的问题是: 当连接到Google Pay的唯一付款方式是Paypal时,是否可以通过Google Pay实现授权+捕获结账流程? 这是一个带有授权步骤和所需电子邮件地址和发货地址的设置: 相关部分为:Javascript 如何进行授权+;使用Paypal为Google Pay捕获流量?,javascript,paypal,payment-gateway,google-pay,Javascript,Paypal,Payment Gateway,Google Pay,我正在将谷歌支付整合到一个简单的电子商务网站中。我们使用Adyen作为支付网关 一切都很好,如果我只是通过它的数额,点击“支付”和支付完成 现在问题来了:我们还需要用户的配送地址来计算配送成本。通过简单的“只需捕获”流程,我们当然可以获得这些数据,但在付款完成之后。此外,我们必须在获取付款之前提供摘要页面 因此: 我们需要一个授权+付款流程,在那里我们得到授权后的发货地址。然后,我们计算运输成本,并在稍后的捕获请求中调整实际金额 很公平。但是:我使用贝宝作为谷歌支付的支付方式。我的理解是,它生成
paymentDataRequest.callbackIntents = ["PAYMENT_AUTHORIZATION"];
paymentDataRequest.shippingAddressRequired = true;
paymentDataRequest.emailRequired = true;
我希望它能与我的GPay一起工作,但我不得不输入一张新的/真实的信用卡
编辑:
为了澄清问题,这里有一些截图
1.无授权
或装运方法
意图。
//paymentDataRequest.callbackIntents=[“付款授权”]代码>
在手机上:我获得默认的GPay付款单,可以完成付款。(很抱歉质量不好,由于屏幕受到保护,我不得不将其与我糟糕的网络摄像头一起使用):
在桌面上:
除非我输入信用卡,否则我无法完成付款。Paypal显示为“此处不可用”(信用卡输入表单已折叠,我已重新使用了具有授权意图的尝试的屏幕截图,因为相关部分完全相同)
2.具有授权
和发货方法
意图(当然也配置了回调)。
paymentDataRequest.callbackIntents=[“付款授权”、“发货方式”]代码>
我在手机和桌面上的屏幕与上面的屏幕基本相同,屏幕上显示Paypal不可用,并提示我申请信用卡。我正在努力确保我了解您试图实现的目标,以防以其他方式解决
您是否最终根据配送地址计算配送成本?您希望能够在执行捕获之前明确授权付款。或者您正在进行授权,以便您可以收到发货地址
我建议使用以下公式计算运费。有关部分包括:
callbackIntents=[“配送地址”、“配送选项”、…]代码>,以及
paymentDataCallbacks:{onPaymentDataChanged}
要处理授权,请同时使用支付授权
回调:
callbackIntents=[…,“付款授权”]代码>,以及
paymentDataCallbacks:{onPaymentAuthorized}
一旦我们引入了授权步骤,看起来我就不得不登录谷歌并输入一张真正的信用卡
我不确定这里有什么交易。您能提供一些屏幕截图或屏幕录制吗?非常感谢您抽出时间!我们确实需要能够手动触发捕获,因为我们必须让用户在进行实际支付之前查看他们的数据。因此,授权步骤不仅仅是为了发货地址。我确实看到了SHIPPING\u地址
和SHIPPING\u选项
的意图,但我不确定如何将Calculate运费传回谷歌?我的理解是,我可以在初始请求时传递一些装运选项,但我至少需要装运国知道哪些选项可用,以及它们的价格。您是否能够提供一些屏幕截图或屏幕录制?
不幸的是,我必须亲自告知。但实际上很简单:如果我试图直接捕获付款,我会看到标准付款单,在那里我可以点击Pay并完成付款。但如果我添加了授权意图,而不是付款单,我会被要求输入真实的信用卡。Paypal显示为灰色,提示此处不可用。我想这真的很难重现,因为大多数人可能会在谷歌支付中使用真正的信用卡。有一个关于如何计算运费的例子:。重载是通过onPaymentDataChanged方法完成的。Dude。。。我现在觉得自己很愚蠢!文档中的字面意思是,onPaymentDataChanged
必须返回一个承诺,然后GPay处理程序将再次获取该承诺。非常感谢,这个例子真的很适合我。贝宝的问题仍然存在,但我想这就是它的工作原理——你只能授权真正的信用卡。我将尝试获取更多关于这方面的信息。但多亏了你,一个恼人的问题现在解决了!很高兴我能帮忙。我不确定薪水有什么问题。我没有遇到与您提供的JSFIDLE相同的问题。编辑一些截图可能会帮助我更好地理解。顺便说一下,如果你愿意的话