New Fulfillment Service app

Topic summary

A third-party fulfillment service is migrating from a custom app using the fulfillment orders workflow to a fulfillment service app with notification opt-in capabilities.

Core Challenge:
When creating a fulfillment service, Shopify generates a new location, but the service already has an existing location connected to client inventory.

Key Migration Concerns:

  1. Inventory Transfer Issue: Moving to the new location ID requires setting inventory levels, which can only be done if inventory items have no existing commitments. Their high order volume makes shutting down operations to clear orders impractical.

  2. Desired Solution: Update the existing location with fulfillment service capabilities and opt-in, rather than creating a new location. However, they lack a fulfillment service ID for the current location.

The post appears corrupted/reversed at the end, showing JSON structure for a location object with null fulfillmentService value and legacy resource ID “123”.

Status: Seeking guidance on best practices for this migration scenario.

Summarized with AI on November 20. AI used: claude-sonnet-4-5-20250929.

@Shopify_77 we are a third party fulfillment service. We have existing Shopify clients that we ship orders for. The current integration uses a custom app and fulfillment orders work flow. We want to migrate to fulfillment service app and opt-in to receive notifications for fulfillment requests.

The client’s store currently has location that our inventory is connected to. If we create a fulfillment service we see a new location for this fulfillment service.

Here’s our dilemma. Please advise on how best to migrate an existing custom app to fulfillment service app and the new fulfillment orders workflow.

  1. If we use the new location id and set inventory levels to new location ID, we can only do so if that inventory item id has no commitments. We do not want to shut down the site and stop taking orders and clean ship. Our order volume is too large.

2.Ideally we would like update the current fulfillment service for our existing location and opt-in, but we don’t have a fulfillment service ID we can use for this location.

{
“id”: “gid://shopify/Location/123”,
“name”: “Location name”,
“legacyResourceId”: “123”,
“fulfillmentService”: null
},

Thanks,

Rminocha