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

In Woocommerce API, which hook for a specific order status for a webhook?

我需要订阅一个 webhook,它会在订单完成(已完全付款)时触发。哪个 webhook 会执行此操作?

我看到有一个 woocommerce_payment_complete 操作,但我想如果一个订单有多次付款,每次付款都会触发这个操作?例如客户可能在信用卡 1 上进行了部分付款,在信用卡 2 上进行了部分付款。肯定会导致 woocommerce_payment_complete 事件触发吗?还是我在文档中遗漏了什么?

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


编辑:

所以我发现 this link 解释了 Woocommerce 订单生命周期,它告诉我 Processing 是我感兴趣的 status/event。

但是,我没有在 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 复合挂钩 并且适合您的情况是:woocommerce_order_status_$STATUS_TRANSITION[to\] 其中 $STATUS_TRANSITION 是您想要的 (transition) 订单状态。

因此对于 "processing" 订单状态挂钩将是:woocommerce_order_status_processing
或对于 "completed" 订单状态,您的挂钩将是 woocommerce_order_status_completed