when a product’s price changes, the updatedAt on the product isn’t updated, at least when the price change is caused by exchange rate update.
Also, no webhooks are sent.
It’s impossible for me to detect price updates unless I get all products from the API (which for larges stores with many markets and currencies takes hours with BulkOperations).
I have a customer that’s getting frequent suspension warnings from Google Merchant Centre because of this.
Happy to look in to this with you. Can you share a bit more about your setup? Specifically, what type of integration are you building (third-party app, custom solution, etc.) and which webhooks are you currently subscribed to for tracking price changes?
The reason I ask is that this behavior is expected. The updatedAt field and product webhooks only fire when actual product data is modified in the admin, not automatically with currency fluctuations.
Off hand I would suggest looking over our documentation on contextual product feeds to see if it helps.
Currently using products/update and products/create webhooks as well as polling (if webooks aren’t fired for some reason).
I don’t see any webhooks that would fire when a product price is changed. Does markets/update trigger on currency fluctuation?
My app is a product feeds app - it creates product feeds for Facebook, Google Merchant Centre and so on, and so it needs access ASAP when a price change occurs - otherwise there’s problems with incorrect prices leading to account suspension warnings.
For contextual product feed - I see there’s an incremental sync event triggered when a “Product market price is updated.” - assuming this is also triggered on currency exchange rate update, is there a way to get this as a standalone webhook? like products/market_price_updated?
I cache all the product data (with prices, translations, etc) so anything that lets me get prices that have changed since <some date> would solve my problem.
Really appreciate your help and suggestions on this matter!
Thanks for sharing that @perice. Personally I’m not too familiar with Google Merchant Centre requirements, but I would assume that Google would be able to handle currency fluctuations as long as the account is configured for the appropriate currency.
Where I could see this being a problem is if the storefront is converting the currency (maybe through an app instead of using markets), while the underlying product data remains in the default store currency; leading to inaccurate product feed prices.
If you want specific currency adjustments, there is a rateUpdatedAt field you can use on a Shop query.