News |
shopify

Inventory transfer webhooks include origin and destination location IDs, and mutation documentation clarified

Source: Shopify Dev Changelog

Shopify Adds Location IDs to Inventory Transfer Webhooks

Shopify has updated six inventory transfer webhook topics to include origin and destination location identifiers in their payloads. The change affects inventory_transfers/add_items, inventory_transfers/update_item_quantities, inventory_transfers/remove_items, inventory_transfers/ready_to_ship, inventory_transfers/cancel, and inventory_transfers/complete.

Each webhook payload now contains two new fields: origin.id and destination.id. These fields return Location Global IDs in the format gid://shopify/Location/123, providing direct references to the source and destination locations for each inventory transfer.

Impact on App Development

Apps that track inventory movements across multiple locations can now access location data directly from webhook payloads without making additional API calls. Previously, developers needed to query the API separately to determine which locations were involved in a transfer.

The update also includes clarified documentation for inventory transfer mutations, though Shopify has not specified which mutations received documentation updates.

Implementation Considerations

Developers using these webhooks should update their webhook handlers to capture the new location ID fields. Apps that currently make follow-up API requests to retrieve location information can eliminate those calls, reducing API usage and improving response times.

The Location Global IDs follow Shopify’s standard GraphQL ID format, making them compatible with existing GraphQL queries that accept location identifiers. Apps built before this update will continue to function, as the new fields represent additions rather than breaking changes to the webhook structure.

Read the full announcement →

Stay in the loop

Get Shopify ecosystem news and positioning insights for app founders.