About this plugin
BuddyPilot Order Webhook Guard fixes one specific WooCommerce side effect. 0, verifying a customer’s email address (a completed password reset, a set-password link for a new account, or a clicked verification link) reassigns every matching guest order to that account. updated webhook.
updated and acts on it, for example an invoicing service that issues an invoice per order update, a single password reset can produce a burst of unwanted webhooks and duplicate documents, one for each past guest order on that email address.
updated webhook only while that linking routine runs. The orders are still reassigned to the account, so the customer keeps their order history and download permissions; only the webhook delivery for those particular saves is skipped. updated event, such as a status change or a manual edit in the admin, is delivered as usual.
What it does
- Suppresses the order.updated webhook only during guest-order linking, and nothing else
- Keeps the account linking intact, so customers keep their past orders and download permissions
- Covers both linking paths: automatic (after email verification) and manual (the admin “link orders” action on the Customers report)
- Leaves every other webhook topic, and every other order.updated event, untouched
- Uses only public WooCommerce extension points and does not modify WooCommerce core
- Zero configuration: no settings page, no options, no database writes
How it works
WooCommerce links past guest orders through its wc_update_new_customer_past_orders() routine. updated topic. WooCommerce evaluates that decision synchronously as each order is saved, so no matching webhook is queued for delivery.
The flag is always cleared afterwards, even if an order save throws.