Product updated webhook not sent after collection change

Hi there,

when updating the collections of a product (adding a new one, deleting an existing one…) from the Shopify Admin, no “products/update” webhook is sent, which does not meet the documentation at Webhooks :

After editing the product collections, the merchant needs to click on the “save” button of that product page, so we can consider they are indeed editing the product but no webhook is sent.

Please could you take a look?

Kind regards

1 Like

Hey @sinuhe, I ran a similar test on my end.

After adding a product to a collection and saving, the updated_at timestamp updated and the products/update webhook fired successfully. Your assumption is correct that the webhook should fire when collections are modified, so it’s unexpected that you’re not receiving it.

To help narrow this down, can you share a bit more context about your webhook setup? Specifically, how you’ve subscribed to the webhook (via API, store admin, or app configuration) and whether this is happening consistently across multiple shops or if it’s isolated to a single store.

Hi @KyleG-Shopify , thanks for the response.

The webhooks have been created via GraphQL API.

I have been testing in several development stores and the behavior is strange. It seems webhooks work after editing collections the first time in a product (I am testing by adding/removing collections from the product edition page in the Shopify Admin zone), but when doing it again, the webhook is not fired. I have tried several times in several products.

When editing any other field (description, title, tags… whatever), the webhook is always received as expected, no matter how many times I do it. But when editing collections, it is not.

Anyway, even in case it worked, there is a more important problem: the webhook payload does not contain the collections, which is strange and does not meet the documentation at Webhooks, where the link to the product resource does contain collections.

Please, could you take a look again to the webhooks firing and also include collections in the webhook payload?

Kind regards