priceAfterAllDiscountsBeforeTaxesSet 明細行の「割引後・税抜き小計」が GraphQL で取れるように
原題: `LineItem.priceAfterAllDiscountsBeforeTaxesSet` field now available
- Admin API
- GraphQL
- LineItem
- Orders
- 注文エクスポート
- Discounts
- 多通貨
- MoneyBag
- 新機能
図解 : LineItem.priceAfterAllDiscountsBeforeTaxesSet が GraphQL Admin API で利用可能に Admin GraphQL API / 2026-07 priceAfterAllDiscountsBeforeTaxesSet 明細行の「割引後・税抜き小計」が GraphQL で取れるように REST API の current_subtotal_price_set に相当するフィールドが LineItem に追加。全割引適用後・返品/削除済み数量を除いた・税抜きの明細小計を、ショップ通貨と表示通貨の両方で返す。注文エクスポート用途に効く。 このページの構成 30秒で理解 : 何が追加されたのか 図解 : この金額はどう計算されるか 含むもの/含まないもの REST と GraphQL の対応表 クエリ例 利用条件・適用範囲 技術者が押さえるべき5つのポイント 業務に活かせる3つのユースケース 提案で使える1行サマリ 1 30秒で理解 : 何が追加されたのか GraphQL Admin API の LineItem オブジェクト に priceAfterAllDiscountsBeforeTaxesSet フィールドが追加された。 これは REST API の current_subtotal_price_set (明細行レベル)に 相当 する。これまで GraphQL 側で素直に取れなかった「割引後・税抜きの明細小計」を、移行せずに取得できるようになった。 従来 : REST に頼る 明細行の「現在の割引後・税抜き小計」は REST の current_subtotal_price_set で取得していた。GraphQL に移行したいワークフローでは対応物がなく障壁になっていた。 今後 : GraphQL で完結 LineItem.priceAfterAllDiscountsBeforeTaxesSet で同じ値が取れる。ショップ通貨・表示通貨の両方を返す。注文エクスポートなどを GraphQL に寄せられる。 2 図解 : この金額はどう計算されるか 名前の読み解き方 : priceAfterAllDiscounts (全割引の 後 )+ BeforeTaxes (税の 前 )+ Set (通貨ペア=ショップ通貨と表示通貨の両方)。 REST 側の current_subtotal が持つ「current(=返品・削除済みを除いた現在値)」のニュアンスも、このフィールドは引き継いでいる。 3 含むもの/含まないもの 含む 適用後 すべての割引(discount)を適用した後の金額 現在数量 返品・削除済みを除いた「現在の」数量分 2通貨 ショップ通貨(shopMoney)と表示通貨(presentmentMoney)の両方 含まない 除外 税(taxes)— 値に税は含まれない 除外 返品済み数量(refunded quantities) 除外 削除済み数量(removed quantities) 税込み小計が欲しい場合は、このフィールド単体では不足する(税は別管理)。税額・税込み総額の取得方法についてはこの告知に 記載なし 。別途 LineItem の税関連フィールドを確認すること。 4 REST と GraphQL の対応表 観点 REST Admin API GraphQL Admin API(新) フィールド名 current_subtotal_price_set (line item 上) priceAfterAllDiscountsBeforeTaxesSet (LineItem 上) 意味 等価 全割引後・税抜き・返品/削除済みを除いた明細小計 通貨 shop / presentment の両方( _set ) shop / presentment の両方( Set = MoneyBag) 税 含まない 含まない 主用途 注文エクスポート等、明細レベルの「割引後・税前」小計が必要な処理 5 クエリ例 明細行ごとに、ショップ通貨と表示通貨の両方で割引後・税抜き小計を取得する例。 query OrderLineSubtotals($id: ID!) { order(id: $id) { name lineItems(first: 50 ) { nodes { title quantity priceAfterAllDiscountsBeforeTaxesSet { shopMoney { amount currencyCode } # ショップ通貨 presentmentMoney { amount currencyCode } # 顧客の表示通貨 } } } } } ...Set 型は shopMoney / presentmentMoney を持つ MoneyBag。多通貨ストアでは「会計はショップ通貨、顧客向け表示は presentment」と使い分けられる。 具体的なサブフィールド名は GraphQL スキーマ(2026-07)で確認すること。 6 利用条件・適用範囲 API Admin GraphQL API REST ではなく GraphQL Admin API の LineItem オブジェクトに追加される。 バージョン 2026-07 ドキュメントは 2026-07 版を参照。利用前にアプリの API バージョンを確認する。 未記載 その他の範囲 Bulk Operations・Webhook ペイロード・対象プラン等への適用可否は告知に 記載なし 。 7 技術者が押さえるべき5つのポイント 1. 戻り値は MoneyBag(2通貨) ...Set サフィックスは MoneyBag を意味し、 shopMoney と presentmentMoney を持つ。単一の金額ではないので取り出し方に注意。 2. "current" の意味=返品/削除を反映 返品済み・削除済みの数量を 除外 した現在値を返す。注文後に部分返品が起きた明細では、元の小計と値がずれる点を前提に設計する。 3. 税抜きである 値に税は含まれない。税込み総額が要るレポートでは、別途税フィールドと合算するロジックが必要(合算方法は本告知に記載なし)。 4. REST 移行のギャップを埋める current_subtotal_price_set に依存していた REST 実装を、対応物のなかった GraphQL へ移植しやすくなった。REST 卒業ロードマップの 1 ピース。 5. 利用は API バージョン 2026-07 を参照 フィールドのドキュメントは 2026-07 版で公開。アプリの利用バージョンが古い場合はスキーマに存在しない可能性があるため、クエリ導入前にバージョンを揃える。Bulk Operations や Webhook での扱いは本告知では 言及なし のため、自動化前にサンドボックスで挙動を確認すること。 8 業務に活かせる3つのユースケース USE CASE 1 会計・基幹システムへの注文エクスポートを GraphQL 化 課題 明細レベルの「割引後・税抜き小計」を会計/ERP へ連携するために REST の current_subtotal_price_set を使い続けており、REST に縛られている。 打ち手 エクスポート処理を priceAfterAllDiscountsBeforeTaxesSet を含む GraphQL クエリへ置換。ショップ通貨を会計用、presentment を顧客向け明細用にマッピング。 効果 注文取得を GraphQL に一本化でき、1 リクエストで必要項目をまとめて取得。REST 依存を削減。 技術メモ これは告知が明言する主用途(order export workflows)。税込みが必要なら税フィールドとの合算ロジックを別途用意。 USE CASE 2 部分返品後の「実効売上」レポートを正確化 課題 部分返品・明細削除が発生した注文で、元の小計をそのまま集計してしまい、ダッシュボードの実売上が過大に出る。 打ち手 集計ロジックを、返品/削除済み数量を除外した priceAfterAllDiscountsBeforeTaxesSet ベースに切り替える。 効果 割引・返品を反映した「現在の」明細小計で集計でき、税抜きベースの実効売上が正確になる。 技術メモ "current" の語義どおり返品/削除を反映済みなので、別途差し引き計算を自前で持たなくてよい。 USE CASE 3 越境ストアの多通貨・明細別マージン分析 課題 表示通貨で販売する越境ストアで、明細別の割引後売上をショップ通貨で正規化して原価と突き合わせたい。 打ち手 shopMoney (ショップ通貨)で利益分析、 presentmentMoney (表示通貨)で顧客向け明細を生成。1 フィールドで両軸を取得。 効果 通貨換算の二重管理を避け、税抜き・割引後の明細単位でマージン可視化が可能に。 技術メモ MoneyBag の shopMoney / presentmentMoney を用途で使い分け。税込みが必要な指標は別フィールドと合算。 9 提案で使える1行サマリ 「明細行の 割引後・税抜き小計 (REST の current_subtotal_price_set 相当)が GraphQL Admin API(2026-07)で取れるように。 返品・削除済み数量を除いた現在値を、 ショップ通貨と表示通貨の両方 で返す。 注文エクスポートや実売上レポートを REST から GraphQL へ寄せる好機。」 source : shopify.dev / changelog / LineItem.priceAfterAllDiscountsBeforeTaxesSet field now available 公開日 : 2026-04-13(Developer Changelog)