for the last hours I’ve been trying to add a webhook to my Shopify app using the official shopify_app gem.
So I ran rails g shopify_app:add_webhook -t products/update -a https://example.com/webhooks/products_update
and saw every file getting generated as expected and checking the logs after installing my app in a Test Store also showed me that the webhook was initiated successfully.
However, after actually updating a product in the shop, I get an error saying:
ShopifyApp::MissingWebhookJobError (ShopifyApp::MissingWebhookJobError):
shopify_app (7.2.9) app/controllers/shopify_app/webhooks_controller.rb:21:in `webhook_job_klass'
shopify_app (7.2.9) app/controllers/shopify_app/webhooks_controller.rb:10:in `receive'
actionpack (5.0.3) lib/action_controller/metal/basic_implicit_render.rb:4:in `send_action'
…going on for about 40 lines more and repeating itself after about 10-30 seconds, however, showing me the params before throwing it. I haven’t changed the products_job.rb
, so it’s still looking like this: (although I’ve tried to change it many times)
class ProductsJob < ActiveJob::Base
def perform(shop_domain:, webhook:)
shop = Shop.find_by(shopify_domain: shop_domain)
shop.with_shopify_session do
end
end
end
I’d be really happy to get any input on this, as I’m new to Shopify Apps and to Rails too (as you can probably tell ^^)
Thanks, Georg
2
Answers
Have you restarted your rails server after installing the webhook.
Do restart your rails server also uninstall and reinstall your app in the shopify store and before clicking install button check your corresponding webhook is available there or not in the installation page.
Your products update job file name should be like products_update_job.rb not products_job.rb also the contents should be as below:
Try this changes you will get it.