解決できる課題 事業紹介トップ 経営データ分析基盤 AI導入・業務改善 AI 業務アプリ 基幹システムのWeb化・段階移行 複雑な SaaS を専用 UI に Shopify Plus 移行・拡張 生成AI 活用(Multi AI) SEO / AIO / 広告運用 顧問・アドバイザリ インフラ構築 自社メディア投資・開発
AI導入 AI導入・業務改善 ChatGPTの社内導入 OpenAI Codex導入 AI運用・定着 Claude / MCP 総合 Claude Cowork Claude Code 導入支援 Claude Code 使いこなし支援 Claude Design MCP 開発・サーバー構築
EC構築・移行 Shopify Plus トップ EC-CUBE からの移行 大手カートからの移行 Shopify 通常プラン EC サイト構築
実績
業界ニュース 業界ニュース トップ AI ニュース └ Claude └ ChatGPT・Codex └ Gemini └ その他 Shopify ニュース SaaS ニュース お知らせ(自社発信)
会社情報 相談する
2026.10.01

Shopify GraphQL Admin API、在庫出荷の受領アクションに「CANCELED」を追加

記事のサマリー(TL;DR)

  • GraphQL Admin APIバージョン2026-10で、在庫出荷(inventory shipments)の受領アクションに新しい「CANCELED」が追加され、既存の accepted・rejected に加えてキャンセル数量を記録・参照できるようになりました。
  • 2026-10向けの追加的(additive)な変更であり、対応は不要です。2026-10より前のAPIバージョンを使っているアプリには影響しません。
  • inventoryShipmentReceive ミューテーションで reason: CANCELED を指定することで、二度と到着しない数量をキャンセルとして記録でき、inventory_shipments/receive_items Webhookのペイロードにも新しいキャンセル数量フィールドが追加されます。

対象と前提条件

この変更が適用されるのは、GraphQL Admin APIバージョン2026-10以降(またはunstable)を使用して、在庫出荷の読み取り、出荷明細の受領、inventory_shipments/receive_items Webhookへの購読のいずれかを行っているアプリです。2026-10より前のバージョンを使用しているアプリは影響を受けず、新しいフィールドや列挙値は利用できず、Webhookペイロードの形式も従来のままで、キャンセルのみの受領はこれまで通り配信が抑制されます。

詳細

変更内容

バージョン2026-10の在庫出荷(inventory shipments)APIにおいて、キャンセル受領(Canceled receiving)が、既存のaccepted(承認)・rejected(却下)の受領アクションに加わりました。

新しいフィールド

  • InventoryShipment の totalCanceledQuantity:出荷内の全明細にわたってキャンセルとしてマークされた数量の合計。既存の totalAcceptedQuantity と totalRejectedQuantity フィールドと並んで追加されました。
  • InventoryShipmentLineItem の canceledQuantity:明細項目でキャンセルとしてマークされた数量。既存の acceptedQuantity と rejectedQuantity フィールドと並んで追加されました。

キャンセルされた数量は InventoryShipment.totalReceivedQuantity にもカウントされるため、2026-10では受領合計が accepted・rejected・canceled の3種類に完全に分解されます。

また、InventoryShipmentReceiveLineItemReason 列挙型に新しい値 CANCELED が追加されました。inventoryShipmentReceive ミューテーションで、明細項目の reason としてこの値を渡すことで該当数量をキャンセルとしてマークできるほか、bulkReceiveAction として渡すことで、出荷の残り全数量をキャンセルとしてマークできます。

Webhookペイロードの変更

バージョン2026-10以降で inventory_shipments/receive_items Webhookトピックを購読している場合、items_received 内の各エントリに old_canceled_quantity と new_canceled_quantity が追加されます。また、キャンセル数量のみが変化した受領でも、配信がトリガーされるようになります。

2026-10より前のバージョンの購読は変更されません。キャンセル関連フィールドはペイロードに含まれず、キャンセルのみの受領では配信はトリガーされません。

この変更が重要な理由

出荷を受領する加盟店は、時として一部の数量が二度と到着しないことを把握する場合があります。これまでAPIは受領(accept)または却下(reject)のみをサポートしていたため、アプリ側ではこの結果を記録・把握する方法がありませんでした。該当の数量は未受領のまま放置されるか、却下として誤って記録するしかありませんでした。キャンセル受領アクションにより、こうした数量を正確に処理できるようになり、購買発注・倉庫管理システム・3PL(サードパーティロジスティクス)と受領状況を同期するアプリは、全体の状況を正確に記録・反映できるようになります。

対応方法

対応は不要です。キャンセル受領アクションを利用する場合は、以下を行ってください。

  • アプリをAPIバージョン2026-10に更新する
  • 受領の進捗を表示・同期している箇所で、InventoryShipment の totalCanceledQuantity と InventoryShipmentLineItem の canceledQuantity をクエリする
  • 到着しない数量をマークする際に、inventoryShipmentReceive へ reason: CANCELED を渡す
  • 開発ストアでテストし、inventory_shipments/receive_items Webhookハンドラーが old_canceled_quantity と new_canceled_quantity フィールドを処理できることを確認する

以下はサンプルのミューテーションです。出荷の明細項目1件に対して5ユニットをキャンセルとしてマークし、更新後のキャンセル数量を読み取ります。

mutation ReceiveShipment {
  inventoryShipmentReceive(
    id: "gid://shopify/InventoryShipment/123"
    lineItems: [
      {
        shipmentLineItemId: "gid://shopify/InventoryShipmentLineItem/456"
        quantity: 5
        reason: CANCELED
      }
    ]
  ) @idempotent(key: "b105ab7c-4680-4bfc-b350-c766e01a431f") {
    inventoryShipment {
      totalCanceledQuantity
      lineItems(first: 10) {
        nodes {
          id
          canceledQuantity
        }
      }
    }
    userErrors {
      code
      field
      message
    }
  }
}

IDは自分の出荷・明細項目のIDに置き換え、受領ごとに一意のidempotencyキーを生成してください。このキーはバージョン2026-04以降、本ミューテーションで必須となっています。詳細はidempotentリクエストガイドを参照してください。

関連ドキュメント

  • inventoryShipmentReceive ミューテーション
  • InventoryShipment オブジェクト
  • InventoryShipmentLineItem オブジェクト
  • InventoryShipmentReceiveLineItemReason 列挙型
  • Webhooksリファレンス