当前位置: 首页 > 知识库问答 >
问题:

PayPalRestAPI快速结账工作流

聂奇
2023-03-14

我试图集成PayPal快速退房在我们的网站上使用REST API与以下工作流程步骤。

  1. 客户添加项目到购物车,我们有项目列表信息(项目价格,数量,小计,但没有税,没有运输)
  2. 客户点击快速结账按钮,我们将估计的小计传递给PayPal
  3. 客户创建/选择送货地址
  4. 客户点击提交
  5. 客户返回我们的网站,并提供送货地址
  6. 根据发货地址计算客户的运费和税费
  7. 我们显示订单预览,其中包含总计=运费小计。
  8. 我们做另一个api调用贝宝执行支付

为了配合上述步骤,以下是我基于api的理解https://developer.paypal.com/docs/api/

  1. 例如我们有项目abc 10美元QtY=1小计=10美元
  2. 打电话给付款api并设置意图授权,发送金额总计:10美元
  3. 步骤#3以上的贝宝网站
  4. 步骤#4以上贝宝网站
  5. Paypal返回一个授权对象,包含授权标识和HATEOAS链接,用于捕获付款在响应对象中,我们还可以获得付款人对象来计算运费和税费
  6. 现在我们总共=10美元(小计)2美元(运费)1.5美元(税)=13.5美元
  7. 显示订单预览,项目小计,运费,税金总计
  8. 当客户确认订单时,我们https://developer.paypal.com/docs/api/#authorizations8.1我们使用在步骤#5获得的授权ID呼叫授权8.2我们使用授权ID和新金额13.5美元(高于步骤#2)呼叫捕获8.3贝宝确认is_final_capture=true

我的问题是:

>

  • 这是快速结账的正确工作流程吗?这比定期付款要复杂一点,因为我们必须计算运费/税。

    paypal会通过上述api调用向我们传递账单地址吗?我在响应对象中未看到帐单地址。如果不是,我们如何得到它?

    请注意,这些问题与REST api相关,而不是经典的快速结账。提前感谢。

  • 共有1个答案

    辛龙野
    2023-03-14

    稍加整改,重新总结流程:

    1. 例如项目abc$10数量=1小计=10美元
    2. 调用支付api并将意图设置为“授权””,发送总额:$10(在付款人对象中标识“支付方法”:“paypal”)
    3. 支付api响应返回HATEOAS链接approval\uURL,并使用该链接将客户重定向到PayPal结账页面
    4. 贝宝网站上的第3步
    5. 在paypal网站上执行上述第4步,客户将返回到您的网站
    6. 从步骤2调用executeapi和HATEOAS链接(execute link),并从返回url获取“payer_id”,PayPal将使用一组新的HATEOAS链接进行响应,包括用于捕获付款的捕获链接。此外,您还可以从Json响应的付款人信息对象中获取发货地址
    7. 现在计算运费

    is_final_capture=true是一个api请求参数,不是来自PayPal的确认,它表明这是一个完整捕获而不是部分捕获。PayPal将确认的是json响应中的“状态”:“已完成”

    您将无法获得买家的账单地址,必须对该功能进行审查,并在您的帐户上授予特殊访问权限,您可以转到PayPal服务以了解更多详细信息

     类似资料:
    • 我想将PayPalExpress Checkout与OmniPay集成,但留档完全未完成。我如何运行方法,如setExpressCheckout,doExpressCheckout和getExpressCheckout?此外,如何将所有PayPal呼叫重定向到IPN监听器?OmniPay提供所有这些方法还是只是其中的一部分?有人有机会使用这个库与快速结账? 问候!

    • PayPal。NET SDK 1.7.2(https://www.nuget.org/packages/PayPal/)支持快速结帐?我似乎在示例代码中找不到它。 如果没有,它是否提供了另一种在电子商务网站上进行支付的机制? 或者我应该使用PayPalMerchant SDK。NET 2.16.117(https://www.nuget.org/packages/PayPalMerchantSDK

    • 我正在尝试在我的快速结账集成中允许客人付款选项。 我导出呼叫中设置了和,但它不起作用。我仍然得到创建一个PayPal帐户的事情。 我听说我还需要在我的PayPal帐户中设置PayPal帐户可选为开。奇怪的是,我在我的商业帐户中找不到这个选项!知道吗?

    • 我已经设置了PayPal快速API按钮,但似乎当我付款时,一切都成功完成了,但是,从卖方方面,我没有收到任何电子邮件告诉我我已经收到了付款等。我查看了开发人员网站上的电子邮件通知,没有任何内容被发送出去。 是我操作不正确还是快递结账没有发送电子邮件? 我的集成类似于这个https://developer . paypal . com/docs/check out/integration-featu