首页 > 解决方案 > 如何使用 REST API v2 取消整个 Paypal 订单

问题描述

Paypal Order REST API (V2) 文档定义order.status == "VOIDED"为“订单中的所有购买单位都作废”的状态

很明显,我可以从 Docs 1order_status中看到,一个整体有可能orderVOIDED. 那么究竟如何使用 REST api 来取消不完整的订单,即主动将order.statusfrom(比方说) 更改为APPROVEDto VOIDED

注意:我已经完全意识到我可以取消订单的个人授权并在捕获时进行退款。我只是不知道如何取消整个订单(似乎是可能的)。我错过了什么?

标签: paypalpaypal-rest-sdk

解决方案


要使订单无效,您首先必须保存它,并且必须在创建订单时将其intent设置为AUTHORIZEprocessing_instruction设置为ORDER_SAVED_EXPLICITLY

{
  "intent": "AUTHORIZE",
  "processing_instruction": "ORDER_SAVED_EXPLICITLY",
  "purchase_units": [
    {
      "amount": {
        "currency_code": "USD",
        "value": "5.00"
      }
    }
  ]
}

客户批准订单后,您可以保存订单并在需要时取消订单。

如何保存订单?

发送 POST 请求到https://api.paypal.com/v2/checkout/orders/{id}/save

如何取消订单?

发送 POST 请求到https://api.paypal.com/v2/checkout/orders/{id}/void.


推荐阅读