我正在使用woocommerce rest api v3开发一个应用程序。现在我试图将我的woocommerce网站上的优惠券整合到我的应用程序中。我正在创建订单并应用此优惠券
"coupon_lines":[{
'code'=>'coupon1',
'amount'=>'1.00'
}]
我已经在woocommerce网站上设置了每位用户的使用限制。
当我直接从网站订购时,正确使用了使用限制。即,当达到限制时,用户无法使用优惠券。 但是当我通过REST api下订单时,不会应用限制。
此外,我收到另一个论坛的回复,说明优惠券申请功能尚未通过rest api提供。但是,在查看create_order
api端点的代码时,我发现应用优惠券的webhook在那里被调用。
do_action( 'woocommerce_order_add_coupon', $this->id, $item_id, $code, $discount_amount, $discount_amount_tax );
add_coupon()
中的。但我没有找到add_action('woocommerce_order_add_coupon',...)
。任何人都可以告诉我应该在哪里编写此操作定义,以便在更新woocommerce时不会被覆盖。
答案 0 :(得分:1)
您需要按照此处所述,在订单对象中添加“ coupon_lines” 每个订单都应具有“ coupon_lines”数组,其中包含您想要的优惠券的“ id”,“ code”,“ amount”。
https://woocommerce.github.io/woocommerce-rest-api-docs/v3.html#view-customer-orders
'coupon_lines' => [
[
'id' => 55,
'code' => free50,
'amount' => '10.75',
]
]
答案 1 :(得分:0)
您能否在支票后添加优惠券ID?
"coupon_lines":[{
'id' => '',
'code'=>'coupon1',
'amount'=>'1.00'
}]