API CHANGE

orderCreateで複数の追跡番号を
一括登録する新フィールド

API 2026-10〜 | OrderCreateFulfillmentInput に trackingNumbers が追加

orderCreatemutationtrackingCompanytrackingNumbertrackingNumbers[ "1Z...84", "1Z...85" ]NEW in 2026-10FULFILLMENT📦 1Z999AA10123456784📦 1Z999AA10123456785複数パッケージ対応CARRIERUPStrackingCompany全番号に共通適用

EC事業者・開発者向けの重要アップデートです。Shopify GraphQL API バージョン 2026-10から、orderCreateミューテーションで注文をインポートする際に、trackingNumbersフィールドを使って複数の追跡番号を注文作成と同時に登録できるようになりました。これまで必要だった「作成後に追跡番号を追加するAPI呼び出し」が不要になり、複数パッケージ配送のインポートフローが大幅に簡素化されます。

WHAT CHANGED

01Before / After:何が変わったか

BEFORE vs AFTERBEFORE(〜2026-07)① orderCreatetrackingNumber (単数) のみ② fulfillmentUpdate (1回目)追跡番号2本目を追加③ fulfillmentUpdate (N回目)パッケージ数分だけ繰り返し2026-10〜AFTER(2026-10〜)① orderCreate のみで完結trackingNumbers: [ "1Z...784", "1Z...785"]APIコール数:N+1 → 1後続のfulfillmentUpdate 不要USE CASES

02業務で活かせる3つのユースケース

課題
他システム(WMS・ERPなど)からShopifyへ注文をインポートする際、1注文が複数の梱包単位で出荷されるケースでは、追跡番号の数だけAPIを追加呼び出しする必要があり、処理時間とエラーリスクが増加していた。
打ち手
orderCreate実行時にtrackingNumbersフィールドへ追跡番号の配列をすべて渡す。WMS側で取得した全追跡番号をまとめて一回のAPIリクエストに含める形にインポートロジックを修正する。
効果
API呼び出し回数をN+1回から1回に削減。インポートバッチの処理時間短縮とレートリミット消費量の低減が見込まれる。
技術メモ
API バージョン 2026-10 以降が必須。trackingCompanyは配列内のすべての追跡番号に共通適用される。
課題
DropshippingやフルフィルメントアプリからShopify注文をプログラム的に生成する際、複数サプライヤーが別々の運送会社番号を持つ場合の処理が複雑だった(実際には1フルフィルメントにつき運送会社は1社)。
打ち手
同一運送会社の複数追跡番号をtrackingNumbersでまとめて登録。運送会社が異なる場合は別フルフィルメントを作成する設計を維持し、OrderCreateFulfillmentInputを複数渡す構成にする。
効果
同一キャリアの分割パッケージをシンプルに1フルフィルメントにまとめられ、顧客への通知メールで全追跡番号が一括表示される。
技術メモ
trackingCompanyは配列全体に1値しか設定できない仕様。キャリアが混在する場合は別フルフィルメントを使用すること(元記事記載なし)。
課題
既存のfulfillmentCreateミューテーションではFulfillmentTrackingInputで複数追跡番号をサポートしていたが、注文インポート専用のorderCreateではこの機能がなく、APIの挙動に一貫性がなかった。
打ち手
両ミューテーション間の挙動を揃えることで、フルフィルメント管理ロジックをorderCreatefulfillmentCreateで共通化できる。新規実装ではtrackingNumbers(複数形)を標準として採用する。
効果
コードベースの一貫性が上がり、メンテナンスコストと学習コストが下がる。将来的なAPI統合もしやすくなる。
技術メモ
この動作はfulfillmentCreateFulfillmentTrackingInputと「一貫性を持つ」と公式が明記している。
TECHNICAL NOTES

03開発者が押さえるべき5つのポイント

FIELD PRIORITY RULECASE A: 単数のみtrackingNumber: "AAA"✓ "AAA" が使われる従来どおり動作既存統合に影響なしCASE B: 複数形のみ(推奨)trackingNumbers: ["AAA","BBB"]✓ ["AAA", "BBB"] が使われる新フィールド・推奨パターン2026-10以降で利用可能CASE C: 両方指定(注意)trackingNumber: "AAA"trackingNumbers: ["BBB","CCC"]⚠ "AAA" のみ使われる単数が優先、複数は無視意図しない動作に注意
API VERSION

利用可能バージョン: 2026-10 以降。それより古いバージョンのクライアントではtrackingNumbersフィールドは認識されない。

後方互換性

既存のtrackingNumber(単数形)フィールドは引き続き有効。既存インテグレーションはコード変更なしで動作継続可能。

優先度ルール

trackingNumber(単数)とtrackingNumbers(複数)を同時に指定した場合、単数が優先され、複数形は無視される。

キャリア共通適用

trackingCompanyの値はtrackingNumbers配列内のすべての追跡番号に共通して適用される。キャリア混在時は別フルフィルメントを作成する。

API一貫性

この動作はfulfillmentCreateミューテーションのFulfillmentTrackingInputと同じ設計。両ミューテーション間でロジックを共通化しやすい。

適用範囲

対象はあくまで注文インポート専用orderCreateミューテーション。通常のフルフィルメント作成はfulfillmentCreateを使用。

REFERENCE

04関連ドキュメント

ドキュメント 内容 リンク
orderCreate mutation reference ミューテーション全体のリファレンス 公式ドキュメント
OrderCreateFulfillmentInput 新フィールド trackingNumbers の型定義 公式ドキュメント
Manage fulfillments フルフィルメント管理のガイド 公式ドキュメント

「注文インポート時に複数パッケージの追跡番号をまとめて登録できるようになったことで、WMS・ERP連携の実装工数とAPIコール数を大幅に削減できます。API 2026-10へのアップグレードを検討する際のわかりやすい移行メリットとして、クライアントへご提案ください。」

Source: https://shopify.dev/changelog/order-create-fulfillment-tracking-numbers | 公開日: 2026年8月3日