使用 Shopify REST 对已取消的订单进行退款 API
Issue refunding a cancelled order using Shopify REST API
我正在尝试使用此端点取消和退款订单:
https://help.shopify.com/en/api/reference/orders/order#cancel
具有以下负载:
{"refund": {
"shipping": {"full_refund": true},
"refund_line_items": [{
"quantity": 1,
"line_item_id": 2032498606169,
"price": "39.90",
"subtotal": "39.90",
"total_tax": "6.37",
"discounted_total_price": "39.90",
"total_cart_discount_amount": "0.00",
"location_id": null,
"restock_type": "no_restock",
"discounted_price": "39.90"
}],
"transactions": [{
"amount": "39.90",
"maximum_refundable": "39.90",
"kind": "refund",
"parent_id": 1147873263705,
"currency": "EUR",
"order_id": 922997620825,
"gateway": "amazon_payments"
}],
"notify": true
}}
订单只有这一篇,所以我基本上是全额退款
然而,这个RESTAPI调用returns成功了,但是当我去查看订单页面时,我确实看到订单被取消了,但毕竟没有退款。
且订单状态显示"Canceled"、"Paid"、"Unfulfilled"。所以我最终不得不手动退款。
为什么我的 REST 调用只是取消了这个订单,而不是进行退款?
谢谢!
您引用错误。根据您的参考,取消 post 应该是:
POST /admin/api/2019-04/orders/#{order_id}/cancel.json {} // post an empty object -- not null
https://help.shopify.com/en/api/reference/orders/refund#create 处的退款 api 显示 POST 正文与您提供的略有不同。您不需要 refund_line_item 中的任何价格信息。
您是否已验证退款中的 parent_id 是 sale
或 capture
交易并且网关类型匹配。
我正在尝试使用此端点取消和退款订单:
https://help.shopify.com/en/api/reference/orders/order#cancel
具有以下负载:
{"refund": {
"shipping": {"full_refund": true},
"refund_line_items": [{
"quantity": 1,
"line_item_id": 2032498606169,
"price": "39.90",
"subtotal": "39.90",
"total_tax": "6.37",
"discounted_total_price": "39.90",
"total_cart_discount_amount": "0.00",
"location_id": null,
"restock_type": "no_restock",
"discounted_price": "39.90"
}],
"transactions": [{
"amount": "39.90",
"maximum_refundable": "39.90",
"kind": "refund",
"parent_id": 1147873263705,
"currency": "EUR",
"order_id": 922997620825,
"gateway": "amazon_payments"
}],
"notify": true
}}
订单只有这一篇,所以我基本上是全额退款
然而,这个RESTAPI调用returns成功了,但是当我去查看订单页面时,我确实看到订单被取消了,但毕竟没有退款。
且订单状态显示"Canceled"、"Paid"、"Unfulfilled"。所以我最终不得不手动退款。
为什么我的 REST 调用只是取消了这个订单,而不是进行退款?
谢谢!
您引用错误。根据您的参考,取消 post 应该是:
POST /admin/api/2019-04/orders/#{order_id}/cancel.json {} // post an empty object -- not null
https://help.shopify.com/en/api/reference/orders/refund#create 处的退款 api 显示 POST 正文与您提供的略有不同。您不需要 refund_line_item 中的任何价格信息。
您是否已验证退款中的 parent_id 是 sale
或 capture
交易并且网关类型匹配。