購入者は未発送の商品を注文から外すリクエストを出せるようになった。そのリクエストは RequestedOrderEdit として GraphQL Admin API・Customer Account API・3 つの新しい Webhook から見える。マーチャントやアプリはこれを確認して、対応済みにするか、却下できる。
リクエストは API の外でやり取りされるだけ。アプリはリクエストを見ることも、処理することもできない。発送前の保留中の変更を ERP や WMS に反映することもできない。
リクエストの作成・計算・対応済み化・却下が API でできる。進行状況は Webhook で届く。アプリは自分のワークフローに保留中のリクエストを表示し、自動で判断できる。
requestedOrderEditResolve の説明は「リクエストを手動で対応済みにする」。このミューテーションを呼ぶと注文の中身が自動で変わるのかどうかは記載なし。
購入者のリクエスト 1 件を表すオブジェクト。ステータス、要求された変更、リクエストが作成・対応済み化・却下された日時を持つ。
requestedOrderEditsdisplayRequestedEditStatusrequestedOrderEditCreaterequestedOrderEditResolverequestedOrderEditDeclinerequestedOrderEditCalculaterequested_order_edit_statusorderRequestEditrequestedOrderEditCalculate@idempotent ディレクティブでべき等キーを任意で付けられるrequested_order_edit/createdrequested_order_edit/resolvedrequested_order_edit/declinedペイロードの中身 : リクエストのステータス、order_id、要求された line item の変更(確定した数量つき)。
| 項目 | API 2026-07 | API 2026-10 |
|---|---|---|
| 購入者のリクエスト | API の外 マーチャントへ直接連絡 | API で扱える orderRequestEdit で送信 |
| API から見える記録 | なし | あり RequestedOrderEdit |
| アプリによる処理 | リクエストを見ることも処理することもできない | 作成/対応済み化/却下をミューテーションで実行 |
| 外部システムとの同期 | 発送前の保留中の変更を ERP・WMS に反映できない | Webhook 3 種で進行状況を受け取れる |
| 対応待ちの注文を探す | — | requested_order_edit_status フィルタ |
| 金額の事前確認 | — | requestedOrderEditCalculate(Admin/Customer 両方) |
注文を読み取る・管理するアプリ。
発送処理と連携するアプリ。
購入者向けのアカウント画面を作るアプリ。
read_ordersGraphQL Admin API でリクエストや注文を読み取るのに必要。
write_ordersGraphQL Admin API でリクエストを作成・対応済み化・却下するのに必要。
記事では、ステータスが REQUESTED の注文の発送を止めることがユースケースに挙がっている。3PL や WMS に渡す前のゲートとしてステータスを確認する設計が組める。
orderRequestEdit にべき等キーを付ければ、通信エラーでリトライしても最初のオブジェクトが返り、重複リクエストは作られない。モバイル回線の多いアカウント画面では付けておくのが無難。
requestedOrderEditCalculate は Admin と Customer Account の両方にあり、作成前に金額面の結果を返す。購入者への確認画面や、社内の承認判断に使える。
リアルタイム処理は Webhook 3 種で、取りこぼし対策や一括処理は orders クエリの requested_order_edit_status フィルタで、と使い分けられる。
リクエストで行われる編集は既存の注文編集モデルを通り、requestedOrderEditResolve の説明は「手動で対応済みにする」となっている。Resolve を呼ぶと注文の中身が自動で変わるのか、別に注文編集 API を呼ぶ必要があるのかは記載なし。対象も 未発送の商品の削除に限られる。導入前に開発ストアで実際の動きを確認すること。
requested_order_edit/created を受けたら、WMS 側でその注文の出荷を保留にする。resolved/declined の Webhook を受けたら保留を解除する。requested_order_edit_status で対応待ちの注文がないかもう一度確認する。スコープは read_orders。requestedOrderEditResolve/requestedOrderEditDecline で Shopify に返す。write_orders が必要。承認画面には requestedOrderEditCalculate で計算した金額の変化を出すと判断しやすい。requestedOrderEditCalculate で金額の変化を見せてから orderRequestEdit で送信する。@idempotent のべき等キーを付けて、ボタンの連打やリトライによる重複を防ぐ。対象は未発送の商品の削除だけ。