Topics covering webhook creation & management, event handling, Pub/Sub, and Eventbridge, in Shopify apps.
I'm using the Fulfillment Webhook & a created fulfillment_service, to handle orders that need to be fulfilled.
I have setup the "Fulfillment creation" Event to notify me if a fulfilment request is made.
First i setup the fulfillment_service i created with "fulfillment_orders_opt_in = false".
But this way it looks like im unable to mark the fulfillment as done and add a tracking url.
This only works with the old depreciated function "admin/api/2022-01/orders/order_id/fulfillments/fulfilment_id/complete.json", but i can't use this in the future.
I searched in the forum for this and the solution mentioned is to set "fulfillment_orders_opt_in = true".
If i do so, i'm able to call the "/admin/api/2022-10/fulfillment_orders/fulfillment_order_id/fulfillment_request/accept.json" and after this to update the Tracking url.
But this way, the "Fulfillment creation" Webhook is not working. I tested the "Order fulfillment" & "Fulfillment update" Webhooks too, but none of them works.
Is there a way to set this up to :
1) Receive a Webhook Call, when the Fulfilment is requested.
2) To Update the order with the Tracking Information with an API Call
PS This is how i setup the Service :
{
"fulfillment_service": {
"id": 632310658,
"name": "api_test",
"email": null,
"service_name": "api_test",
"handle": "api_test",
"fulfillment_orders_opt_in": true,
"include_pending_stock": false,
"provider_id": null,
"location_id": 702608204,
"callback_url": "https:\/\/www.myurl.de\/index.php?route=api\/shopify_custom_hook",
"tracking_support": true,
"inventory_management": true,
"admin_graphql_api_id": "gid:\/\/shopify\/ApiFulfillmentService\/632310658",
"permits_sku_sharing": false
}
}
And the URL https://www.myurl.de/index.php?route=api/shopify_custom_hook/fulfillment_order_notification is accessible
Thanks and Regards
Hi @Tobias_HK 👋
There appears to be some confusion around fulfillment service workflow. Fulfillment apps need to set up an endpoint on a callback URL where Shopify will send the notifications for fulfillment requests. This is a different notification from the `fulfillments/create` webhook topic and requires different access scopes.
Once your endpoint receives the fulfillment request, you can retrieve assigned fulfillment order requests using the `assigned_fulfillment_orders` endpoint and accept the requests using the `fulfillment_request/accept` endpoint.
Then you can create the fulfillment and update the tracking info using `fulfillments` endpoint.
I'd recommend reviewing this guide that outlines the entire workflow for fulfillment service apps.
Hope that helps!
Developer Support @ Shopify
- Was this reply helpful? Click Like to let us know!
- Was your question answered? Mark it as an Accepted Solution
- To learn more visit Shopify.dev or the Shopify Web Design and Development Blog