PayPal API v2 取消订单

Posted

技术标签:

【中文标题】PayPal API v2 取消订单【英文标题】:PayPal API v2 cancelled order 【发布时间】:2021-09-18 23:45:03 【问题描述】:

我正在用 C# 实现 PayPal API v2,但遇到了一个问题:如何识别已取消的订单?

当用户想要支付某些东西时,它会被定向到这个熟悉的页面:

页面底部有一个小选项,上面写着“取消付款并返回XX公司”。我希望能够识别用户是否按下了此按钮。

为此,我向 api.paypal.com/v2/checkout/orders/ 发送请求并检查响应的状态,但似乎无法识别这个小按钮。甚至有一个状态吗?状态枚举似乎不是这个选项的一部分?检查documentation。当我发送请求时,即使我取消了付款,我仍然会收到“已创建”状态。

【问题讨论】:

您是否尝试过请求贝宝支持以获得贝宝 API 的支持?如果有人应该知道答案,那就是他们。 这确实是个好主意 :) 刚刚创建了一个支持票 【参考方案1】:

没有订单被取消的状态。如果您要重定向到 PayPal 并指定 cancel_url,则用户将在选择取消时返回该状态。订单的状态将保持CREATED,并且在到期之前仍然可以使用。

要不再将其用于任何事情,请将其从您的系统中忘记,并在获得批准后拒绝捕获它。

【讨论】:

我们确实在使用cancel_url。但是由于我们有一个原生的 Unity3D 应用程序,它会在付款完成或取消之前显示加载屏幕,因此 URL 不如适当的状态实用...... 这就是您在屏幕截图中突出显示的所有链接 - 一个返回您的网站或应用程序的 URL。不确定 Unity3D 与任何东西有什么关系。

以上是关于PayPal API v2 取消订单的主要内容,如果未能解决你的问题,请参考以下文章

通过 API 取消 PayPal 订单

Magento 中的 PayPal 订单自动取消

PayPal Checkout:取消已批准订单的正确方法

Paypal 返回网址不适用于沙盒帐户

react native - 使用 PayPal v2/订单付款

Paypal 授权和捕获部分退款并避免