在 Shopify 管理区域中,每个订单上都有一个“接受付款”按钮。是否有可以通过 API 执行的等效操作?
问问题
1740 次
2 回答
3
是的。您可以创建交易并获取先前授权的金额。
ShopifyAPI::Transaction.create({:order_id => order.id, :kind => 'capture'})
于 2012-08-22T17:00:24.887 回答
1
是的,请确保原始订单是通过 API 创建的,并且状态为“待处理”,交易类型为“授权”,交易状态为“成功”。然后,当您捕获付款时,它只会改变财务状况。您不能只更改订单上的财务状态值而不捕获交易。
所以这是使用 API 创建订单的原始请求:
发布 /admin/orders.json
{
"financial_status": "pending",
"fulfillment_status": "fulfilled",
"transactions": [{
"amount": "21",
"kind": "authorization",
"gateway": "Gateway",
"status": "success",
"source_name": "My API"
}]
}
然后要捕获交易,请执行以下操作:
发布 /admin/orders/{order_id}/transactions.json
{
"transaction": {
"kind": "capture"
}
}
确保您为 API 上的订单启用了写入权限: https ://redeeem.myshopify.com/admin/apps/private
于 2018-04-26T03:16:22.023 回答