Как применить купон с помощью Woocommerce REST API при создании нового заказа из приложения для Android?

Я использую woocommerce REST API для приложения для электронной коммерции для Android, и все работает хорошо, кроме купона при создании нового заказа из приложения.

Использование этого API для создания заказа

https://my-domain.com/wp-json/wc/v2/orders

и передавая некоторые данные json, включая

"coupon_lines" => [
     "id" => 111,
     "code" => "coupon code",
     "discount" => "10.0", 
     "discount_tax" => "0"
]

Таким образом, купон будет применен к заказу, но сумма не будет уменьшена из общей суммы. Кто-нибудь может мне помочь, пожалуйста! Я новичок в вукоммерции.

Я искал это и получил, что REST API woocommerce не предоставляет функции для расчета скидки по купону, поэтому мне приходится делать это вручную, но я не знаю, как это сделать? и с чего начать?

Даже у меня есть одно решение, позволяющее рассчитать скидку по купону на стороне клиента, и я сделал это, но это сложно, так как существует множество вариантов купона, поэтому мой код сломался для некоторых купонов. Полностью застрял в этом с последних двух дней, пожалуйста, помогите мне.


person DD77    schedule 03.05.2017    source источник
comment
Удачи с решением?   -  person Aroniez    schedule 29.08.2017
comment
Извини! К сожалению, я также не получил никакого решения. Вы должны сделать это по-своему, так как woocommerce API не обеспечивает автоматический расчет купонов.   -  person DD77    schedule 31.08.2017


Ответы (1)


Вы можете начать со следующего способа кода. вам нужно настроить ответ API остатка заказа, где вы можете сделать свой собственный код для расчета суммы купона, чтобы передать свой собственный ответ API.

add_filter( 'woocommerce_rest_prepare_shop_order_object', 'custom_change_shop_order_response', 10, 3 );
function custom_change_shop_order_response( $response, $object, $request ) {
  //here you can get the three parameters.
 // In the $response you can get the default response of the orders.
 // In the $request you can get the request.here you can get a coupon code 
// do your magic code here
}
person Mr. Ajay    schedule 01.11.2017