POS UI Extensions 2026-07
割引計算が単価ベースに変更
FixedAmount行割引の解釈ロジックが変わる — アプリ側の計算式の見直しが必要
POS UI ExtensionsのAPIバージョン2026-07から、setLineItemDiscountおよびbulkSetLineItemDiscountsに渡すFixedAmount(固定金額)行割引の値が、合計額ではなくユニットあたりの割引額として直接解釈されます。従来バージョン(2026-04以前)では自動換算が行われていましたが、2026-07ではその変換処理が廃止されます。2026-07を採用するアプリは、割引計算ロジックの修正が必要です。
01変更内容:Before / After 図解
USE CASES02業務に活かせる具体ユースケース
ユースケース 1:数量まとめ買い割引アプリの対応
- 課題
- 「3点で300円引き」のような合計固定割引を実装しているPOSアプリが、2026-07移行後に割引額が3倍になってしまう
- 打ち手
-
setLineItemDiscountを呼ぶ前にtotalDiscount ÷ quantityを計算し、その値を渡す。例:数量3で300円引き →100を渡す - 効果
- 2026-07採用後も割引金額が意図通りに適用され、過剰割引によるマージン損失を防げる
- 技術メモ
- 割り切れない場合は端数ポリシー(切り捨て・四捨五入)をアプリ内で統一定義し、ユーザー向けレシートと照合すること
ユースケース 2:bulkSetLineItemDiscountsを使う一括割引処理
- 課題
- カート内の複数ラインに一括で固定金額割引を設定するアプリが、数量の異なる各ラインで正しい単価割引を計算できていない
- 打ち手
-
bulkSetLineItemDiscountsに渡す配列を生成する際、各ラインの数量(line.quantity)で割り算を行い、ラインごとに個別の per-unit 値を計算する - 効果
- 数量が1のラインと複数のラインが混在するカートでも、意図した合計割引額を正確に適用できる
- 技術メモ
- Cart APIリファレンスで各ラインオブジェクトのスキーマを確認し、
quantityフィールドへのアクセス方法を事前に把握しておくこと
ユースケース 3:旧バージョンと新バージョンの並行サポート
- 課題
- 異なるPOS端末で2026-04と2026-07が混在している環境で、同じコードベースから割引を正しく適用したい
- 打ち手
- 使用しているAPIバージョンをランタイムで判定し、2026-04以前の場合は合計額をそのまま渡し、2026-07以降の場合は単価額に変換してから渡すという分岐ロジックを実装する
- 効果
- 段階的な移行期間中もどちらの端末でも正しい割引が適用され、移行リスクを最小化できる
- 技術メモ
- 元記事によると2026-04以前のアプリは変更不要とされているため、移行スケジュールが確定してから切り替えを検討することを推奨
03技術者目線のポイント
この変更はFixedAmount(固定金額)行割引のみ対象。Percentage(パーセンテージ)割引はまったく影響を受けない。パーセンテージ割引のみを使用しているアプリは対応不要。
APIバージョン2026-04以前を使用しているアプリはコード変更不要。自動換算処理は引き続き2026-04以前では機能する。変更が必要なのは2026-07を新規採用する場合のみ。
合計割引額が数量で割り切れない場合(例:$5を数量3で割る)、どの端数処理(切り捨て/切り上げ/四捨五入)を採用するかはアプリ側で決定する。元記事には「アプリの意図する割引動作に合った値を選択」とあるが、具体的な推奨方式の記載はなし。
変更対象は Cart API の setLineItemDiscount と bulkSetLineItemDiscounts の2メソッド。詳細なスキーマや型定義はShopify公式のCart APIリファレンスで確認すること(元記事にリンクあり)。
2026-07への移行を決断する前に割引計算ロジックの修正を完了させる必要がある。元記事は「新バージョン使用前に更新を完了すること」と明示。段階的移行の場合はバージョン分岐ロジックの実装も検討する。
POS UI Extensions 2026-07では固定金額行割引が「単価ベース」に統一されるため、2026-07採用前に合計割引 ÷ 数量の変換ロジックをアプリ側に実装することで、過剰割引による損失リスクを回避できます。
Source: https://shopify.dev/changelog/pos-ui-extensions-2026-07-uses-per-unit-fixed-amount-line-item-discounts | 公開日: 2026年7月8日






Share:
Shopifyアプリ料金プランが大幅強化:8プラン・無料テスト・小数イベント対応
Shopify App Pricing移行ツール完全解説