【发布时间】:2016-01-06 20:54:14
【问题描述】:
我正在尝试使用 REST API 将我们网站上的 PayPal 快速结账与以下工作流程步骤集成。
- 客户将商品添加到购物车,我们有商品列表信息(商品价格、数量、小计但不含税且不含运费)
- 客户点击快速结账按钮,我们将估计的小计传递给 PayPal
- 客户创建/选择送货地址
- 客户点击提交
- 客户返回我们的网站并提供送货地址
- 我们根据收货地址计算客户的运费和税金
- 我们以总计 = 运费 + 税 + 小计显示订单预览。
- 我们再次调用 api 调用 paypal 以执行付款
为了配合上面的步骤,这里是我基于api的理解 https://developer.paypal.com/docs/api/
- 例如我们有项目 abc $10 QtY=1 Subtotal =$10
- 我们调用payment api并将intent设置为“授权”,发送总金额:$10
- 以上步骤 #3 在贝宝网站上
- 以上步骤 #4 在贝宝网站上
- Paypal 回复一个授权对象,其中包含授权 ID 和 HATEOAS 链接,用于捕获付款 在响应对象中,我们还可以获取 payer 对象来计算运费和税金
- 现在我们有总计 = 10 美元(小计)+ 2 美元(运费)+ 1.5 美元(税)= 13.5 美元
- 我们显示带有商品小计、运费、税收总计的订单预览
- 当客户确认订单时,我们会 https://developer.paypal.com/docs/api/#authorizations 8.1 我们使用在第 5 步获得的 auth id 调用 Authorization 8.2 我们使用 auth id 和新金额 $13.5(高于步骤 #2)调用 Capture 8.3 Paypal 确认 is_final_capture=true
我的问题是:
这是快速结账的正确工作流程吗?这比常规付款要复杂一些,因为我们必须自己计算运费/税费。
paypal 会通过上述 api 调用将帐单地址传递给我们吗?我没有在响应对象中看到帐单地址。如果不是,我们如何得到它?
请注意,这些问题与 REST api 而非经典快速结帐有关。提前致谢。
【问题讨论】:
标签: paypal paypal-sandbox paypal-rest-sdk