INVENTORY

在庫出荷Webhookに在庫移転IDが追加

inventory_transfer_id フィールドの追加で、出荷と移転レコードの紐付けが自動化

inventory_shipments/create, /delete/add_items など全8種inventory_transfer移転レコード(在庫移動管理)inventory_transfer_id

このアップデートは Webhookを使って在庫出荷を管理するすべての開発者 に影響します。2026-10 APIバージョン へ移行すると、inventory_shipments 系8種類のWebhookペイロードに inventory_transfer_id フィールドが自動的に含まれるようになります。これにより、出荷レコードと在庫移転レコードを手動でマージする処理が不要になります。

1変更内容の図解:Before / After

BEFORE(〜2026-07)AFTER(2026-10〜)Webhook ペイロード{ shipment_id: "xxx", status: "in_transit", ... }※ transfer_id なし開発者側の処理別APIを叩いてデータを手動マージ→ 実装コスト・エラーリスク大Webhook ペイロード{ shipment_id: "xxx", status: "in_transit", inventory_transfer_id: "yyy", ... }開発者側の処理IDを直接参照するだけで紐付け完了→ 追加API呼び出し不要手動マージが必要ペイロードに直接含まれる

2対象Webhookトピック一覧

Webhookトピック 概要 変更
inventory_shipments/create 出荷作成時 追加
inventory_shipments/delete 出荷削除時 追加
inventory_shipments/add_items アイテム追加時 追加
inventory_shipments/remove_items アイテム除外時 追加
inventory_shipments/update_item_quantities 数量更新時 追加
inventory_shipments/mark_in_transit 輸送中マーク時 追加
inventory_shipments/receive_items アイテム受取時 追加
inventory_shipments/update_tracking 追跡情報更新時 追加

3業務に活かせる具体ユースケース

課題
複数倉庫間の在庫移転を管理するWMSを構築しており、出荷イベントが発生するたびにどの移転オーダーに紐付くかを別APIで問い合わせる処理が重くなっていた。
打ち手
2026-10へ更新後は inventory_shipments/create のペイロードに含まれる inventory_transfer_id を直接参照し、移転レコードとの紐付けをその場で行う。
効果
追加のGraphQL/REST呼び出しが不要になり、処理レイテンシとAPIコール数を削減できる。
技術メモ
inventory_transfer_id が null の場合は移転に紐付かない単独出荷として扱う実装が必要。
課題
3PLとの連携システムで、在庫が「輸送中」になったタイミングで移転IDをログに記録し監査証跡を残す必要があるが、現状はイベント後に別途データを取得していた。
打ち手
inventory_shipments/mark_in_transit のペイロードから直接 inventory_transfer_id を取得し、タイムスタンプとともに監査ログDBへ書き込む。
効果
イベント駆動でリアルタイムに正確な監査証跡を記録できる。後処理バッチが不要になる。
技術メモ
Webhookの配信保証(at-least-once)を考慮し、inventory_transfer_id + タイムスタンプで冪等性を担保すること。
課題
EC運営ダッシュボードで「移転ごとの受取進捗」を表示したいが、receive_items イベントと移転IDの紐付けが取れず、UI表示に遅延が生じていた。
打ち手
inventory_shipments/receive_items のペイロードに追加された inventory_transfer_id を使い、ダッシュボードのリアルタイム進捗ビューを即時更新する。
効果
在庫受取の完了状況を移転オーダー単位でリアルタイムに把握でき、オペレーション効率が向上する。
技術メモ
記載なし。公式ドキュメントで受取ペイロードの全フィールド構造を確認すること。

4技術者目線のポイント

対象APIバージョン

2026-10 以降のバージョンでのみ inventory_transfer_id が含まれる。それ以前のバージョンでは変更なし。

後方互換性

追加的な変更(additive change)のため、既存のWebhookハンドラは壊れない。新フィールドを無視するだけでよい。

null ハンドリング

出荷が在庫移転に紐付かない場合、inventory_transfer_id は null になる可能性がある。必ずnullチェックを実装すること。

移行手順

①アプリのAPIバージョンを 2026-10 に更新 → ②Webhookハンドラに inventory_transfer_id の読み取り処理を追加 → ③null時のフォールバック実装を確認。

影響範囲

8種すべての inventory_shipments 系トピックが対象。購読しているトピックを洗い出し、必要なハンドラを漏れなく更新すること。

注意点

元記事にGraphQL / REST APIの直接的な変更への言及はなし。Webhookペイロードの追加のみ。APIクエリ側の変更は公式ドキュメントで別途確認を推奨。

在庫移転IDがWebhookに直接含まれることで、WMSや3PL連携の実装コストを大幅に削減できます。2026-10への移行をご検討の際はぜひご相談ください。

Source: https://shopify.dev/changelog/inventory-shipment-webhooks-include-inventory-transfer-ids | 公開日: 2026年10月1日