在庫移動にメタフィールドを
定義・設定できるようになった
GraphQL Admin API 2026-07〜 | 在庫管理 × カスタムデータの新結合
01何が変わったか
GraphQL Admin API バージョン 2026-07 より、在庫転送(Inventory Transfer)にメタフィールドを定義・設定できるようになりました。転送の作成・編集ミューテーション内に metafields 入力を渡すだけで済み、従来必要だった metafieldsSet の追加呼び出しが不要になります。ERP連携やハンドリング指示など転送固有のカスタムデータを、よりシンプルなフローで扱えます。
02対応ミューテーションと新しい仕組み
| ミューテーション | metafields入力 | 備考 |
|---|---|---|
inventoryTransferCreate |
対応 | 作成時にメタフィールドを同時設定 |
inventoryTransferCreateAsReadyToShip |
対応 | 出荷準備済み状態での作成時に設定 |
inventoryTransferEdit |
対応 | 編集時にメタフィールドを更新可能 |
inventoryTransferDuplicate |
自動複製 | 複製時に元の転送のメタフィールドも引き継がれる |
| MetafieldOwnerType | TRANSFER | 定義ミューテーションで使うオーナータイプ |
定義の作成には metafieldDefinitionCreate 等の定義ミューテーションで MetafieldOwnerType.TRANSFER を使用します。定義を設けることでバリデーション(型チェック等)も適用可能です。
03業務に活かせる具体ユースケース
- 課題
- ERPシステムと在庫転送を連携させる際、転送IDとERPの参照番号のひも付けを別テーブルや別API呼び出しで管理しており、データ整合性の維持が煩雑だった。
- 打ち手
-
inventoryTransferCreate実行時にmetafields入力でerp_reference_idなどのカスタムフィールドを同時に書き込む。 - 効果
- 転送レコード自体にERPの参照IDが紐づくため、転送データを取得するだけで連携に必要な情報が揃い、外部ストレージとの同期コストが削減できる。
- 技術メモ
- メタフィールド定義に
single_line_text_field型を指定することでERPのIDフォーマットをバリデーションできる。
- 課題
- 特殊品や危険物を含む在庫転送に対してピッキングスタッフへの取扱い指示をメモ欄や外部ドキュメントで運用しており、転送データと分離して管理されていた。
- 打ち手
-
MetafieldOwnerType.TRANSFERでhandling_instructionsメタフィールド定義を作成し、転送作成・編集時に取扱い指示テキストをメタフィールドとして設定する。 - 効果
- 転送APIのレスポンスから直接取扱い指示を参照できるため、ピッキングシステムや倉庫管理UIと連携しやすくなり、情報の見落としリスクを低減できる。
- 技術メモ
- 定義に
multi_line_text_field型を使うことで複数行の詳細な指示文も格納可能。
- 課題
- 承認フローを持つ組織では、転送ごとにどのチームや担当者がレビュー済みかを別システムで管理しており、転送データ単体では承認状況を確認できなかった。
- 打ち手
- 承認チーム名や承認日時を
inventoryTransferEditのmetafields入力で更新し、転送レコードに承認情報を直接付与する。 - 効果
- 転送データを取得するだけで承認状況が把握でき、監査ログとしても活用可能。転送を複製した際 (
inventoryTransferDuplicate) にメタフィールドも自動引き継がれるため、定型転送のテンプレート運用にも活用できる。 - 技術メモ
- 複製時のメタフィールド引き継ぎは自動で行われるため、承認済みテンプレートを複製して一部を修正するワークフローにも自然に対応する。ただし承認日時など複製後に上書きが必要な値は編集で更新すること。
04技術者目線のポイント
APIバージョン
対応開始は GraphQL Admin API 2026-07 以降。それ以前のバージョンでは MetafieldOwnerType.TRANSFER および各ミューテーションへの metafields 入力は利用不可。
定義の作成
metafieldDefinitionCreate などの定義ミューテーションで MetafieldOwnerType.TRANSFER を指定することで転送専用のメタフィールド定義を作成。型バリデーションや名前空間の管理が可能になる。
一括設定のシンプル化
従来は転送作成後に別途 metafieldsSet を呼ぶ2ステップが必要だったが、今後は各 Create / Edit ミューテーションの metafields 入力に含めるだけで1ステップで完結する。
複製時の自動引き継ぎ
inventoryTransferDuplicate を実行すると、元の転送に設定されていたメタフィールドも自動で複製される。テンプレート的な転送パターンを複製して使い回す運用に適している。
既存アプリの移行
既存アプリが metafieldsSet を後続ステップで呼んでいた場合、2026-07以降は metafields 入力に統合できる。ただし移行は任意であり、metafieldsSet は引き続き使用可能と思われる(公式ドキュメントで要確認)。
注意点
定義なしでも値の書き込みは可能だが、型バリデーションや管理UI上での表示を得るには MetafieldOwnerType.TRANSFER を使った定義の作成を推奨。詳細は公式ドキュメントを参照のこと。
在庫転送にERP連携情報や取扱い指示などのカスタムデータを1ミューテーションで付与できるようになったことで、バックエンド連携フローの実装コストを大幅に削減できます。
Source: https://shopify.dev/changelog/define-and-set-metafields-on-inventory-transfers-in-the-admin-graphql-api | 公開日: 2026年6月17日






Share:
配送プロファイルが全商品を一括カバー — GraphQL新フィールド解説
アプリ割引の購入タイプ別フィルタリングが有効化