Woocommerce Webhook - 订单付费操作包含空负载

问题描述 投票:0回答:1

我目前在 Woocommerce 上设置了一个 Webhook,以通过第三方 API 传递有关订单的大量信息。我正在使用“订单已更新”主题,效果很好。唯一的问题是发送退款时,由于订单更新,API 被调用。

理想情况下,我只希望 API 调用在付款成功时发生。我使用“woocommerce_ payment_complete”设置了一个操作。这有效并且仅在付款完成时触发,但现在有效负载为空!我只得到这个返回而不是订单 JSON:

webhook_id=5

这不好,我需要所有包含订单信息的 JSON。您知道是否有办法实现这一目标?不知道为什么 Woocommerce 没有将此作为内置选项。

php woocommerce hook-woocommerce woocommerce-rest-api
1个回答
0
投票

当 WooCommerce 将订单移至任何状态时,都会调用相应的挂钩。

woocommerce_order_status_$STATUS_TRANSITION[to]

当 WooCommerce 将订单移至“处理”时,将执行挂钩到“woocommerce_order_status_processing”的代码。

(我假设一旦成功处理付款,您的订单就会转入处理状态。)

add_action('woocommerce_order_status_processing', 'this_is_your_function');
function this_is_your_function ($order_id) {
    // do stuff here
}

此挂钩仅应在订单从另一个状态进入“处理”状态时执行

https://woocommerce.github.io/code-reference/hooks/hooks.html

© www.soinside.com 2019 - 2024. All rights reserved.