在Woocommerce API中,哪个钩挂了Webhook的特定订单状态?

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

我需要订阅一个Webhook,该Webhook将在订单完成(已完全付款)后触发。哪个webhook会这样做?

我已经看到有一个woocommerce_payment_complete动作,但是我想如果在一个订单上有多个付款,这会触发每次付款吗?例如客户可以使用信用卡1进行部分付款,也可以使用信用卡2进行部分付款。当然,每一项都会导致woocommerce_payment_complete事件触发吗?还是我在文档中缺少某些内容?

我希望有一个order.complete这样的网络挂钩,当订单现在在仓库中时会触发。付款已收到,可以开始履行。但是我在文档中没有看到这样的网络挂钩。


编辑:

因此,我找到了this链接,该链接解释了Woocommerce订单的生命周期,告诉我Processing是我感兴趣的状态/事件。

但是,我没有在official Webhook reference中看到此事件

当订单进入此processing状态时,将触发什么webhook?


编辑2: (在@LoicTheAztec的回答之后)当我尝试使用具有以下负载的WooCommerce API(https://mysite/wp-json/wc/v3/webhooks)创建Webhook时:

{
  "name": "Order Processed",
  "topic": "woocommerce_order_status_processing",
  "delivery_url": "https://mycallbackapp.herokuapp.com/yo8i78yo"
}

我得到以下400 Bad Request响应:

{
    "code": "woocommerce_rest_shop_webhook_invalid_topic",
    "message": "Webhook topic is required and must be valid.",
    "data": {
        "status": 400
    }
}

编辑3:

最后主题必须为topic.woocommerce_order_status_processing

woocommerce webhooks hook-woocommerce orders
1个回答
0
投票

您找不到它,因为有一些WooCommerce composite hooks,在您的情况下使用的正确的是:woocommerce_order_status_$STATUS_TRANSITION[to\]其中woocommerce_order_status_$STATUS_TRANSITION[to\]是您想要的((transition)]]订单状态。

因此对于“ processing”

的订单状态,挂钩将是:$STATUS_TRANSITION或对于“已完成”订单状态,您的挂钩将为woocommerce_order_status_processing
© www.soinside.com 2019 - 2024. All rights reserved.