コンテンツへスキップ

Shopify Plusで同じ商品に複数ディスカウントを併用可能に【組み合わせ設定の条件】

Shopify Plusで同じ商品に複数割引を組み合わせる条件

Shopifyで「会員向け割引と季節キャンペーンを、同じ商品に重ねたい」と考えても、従来は同一商品に適用される商品ディスカウントが1件に限られていました。2026年7月15日の更新により、Shopify Plusでは同じ商品へ複数の商品ディスカウントを組み合わせられます。

ただし、Plusへ契約すれば自動的に併用されるわけではありません。
管理画面の組み合わせ設定に加え、GraphQL Admin APIで割引タグの双方向関係を設定する必要があります。

通常プランとの境界、Shopify Plusで必要になる設定条件、自動ディスカウントやBuy X Get Yの注意点、本番前のテスト順を確認します。
割引の名前からではなく、同じ商品へ重なるかどうかから設計するのがポイントです。

Shopify Plusで同じ商品へのディスカウント組み合わせが可能に

Shopifyは2026年7月15日、同じ商品へ複数の商品ディスカウントを適用できる更新を案内しました。対象はShopify Plusで、ディスカウントコードと自動商品ディスカウントの組み合わせも含まれます。

結論変わったのは「同じカート行」の扱い

注文全体で複数種類の割引を使えるという一般論ではなく、一つの商品行に商品ディスカウントを複数適用できる点が今回の変更です。

要点Shopify Plus限定の追加条件があります

既存の「商品+注文」「商品+配送」などの組み合わせと、同じ商品に「商品+商品」を重ねる設定は別です。Plus、対象条件、組み合わせ許可、タグの相互関係を分けて確認してください。

出典: Shopify Changelog「Multiple product discounts on the same item」(英語)

Shopifyは更新頻度が高く、過去の記事では「同じ商品には最適な商品ディスカウント1件だけ」と説明されている場合があります。
古い前提のまま設定可否を判断せず、現行の公式情報を確認してください。ほかの直近機能は、Shopify Editions Spring ’26の注目アップデートでも整理しています。

Shopifyのディスカウント組み合わせは通常プランとPlusで何が違うか

違いを理解するには、「同じ注文で複数の割引を使うこと」と「同じ商品に商品割引を重ねること」を分けます。
前者は組み合わせ設定に応じて通常プランでも可能ですが、後者はShopify Plus限定です。

通常プラン
同じ商品には商品ディスカウントを1件だけ適用。別クラスや別商品なら組み合わせを検討
VS
Shopify Plus
APIのタグ条件を満たせば、同じ商品へ複数の商品ディスカウントを適用

6種類の組み合わせをクラスで整理する

組み合わせ考え方同一商品での注意
商品+注文商品別割引後に注文割引通常プランでも条件次第で利用
商品+配送商品別割引と送料割引通常プランでも条件次第で利用
注文+配送注文割引後に送料割引商品割引同士とは別
商品+商品商品ディスカウント同士同じ商品はPlus限定
注文+注文注文ディスカウント同士同一商品限定の機能ではない
注文+商品+配送3クラスを順番に計算各割引の許可条件を確認

Shopifyでは、利用できる組み合わせでも各ディスカウント側の設定が一致しなければ適用されません。組み合わせ不可の場合は、顧客にとって最適な割引または割引の組み合わせが選ばれます。

出典: Shopifyヘルプセンター「ディスカウントの組み合わせ」

通常プランとPlusの機能差を広く確認する場合は、Shopify B2Bの通常プランとPlusの違いも参考になります。

Shopify Plusで同じ商品に複数ディスカウントを重ねる条件

同じカート行へ商品ディスカウントを重ねるには、次の4条件をそろえます。
自動ディスカウントかコードかだけで可否を判断すると、API側の条件を見落とします。

  • ストアがShopify Plusである
  • 対象商品、期間、顧客条件など各ディスカウントの利用条件を満たす
  • combinesWith.productDiscountstrueにする
  • GraphQL Admin APIで相手タグを双方向に許可する

このAPI入力はGraphQL Admin API 2026-04で導入されました。
実装時は現在利用するAPIバージョンと、対象ディスカウントを作成しているアプリやShopify Functions側の対応を確認します。

注意Plus契約だけでは既存割引は重なりません

管理画面でタグを付けただけ、またはproductDiscountsを有効にしただけでは不十分です。相手のタグを許可するAPI設定を両方のディスカウントへ反映してください。

出典: Shopify Developers Changelog「Multiple product discounts can apply on a single cart line」(英語)Shopify Developers「DiscountCombinesWithInput」(英語)

タグとAdmin APIを双方向に対応させる設定方法

タグ設計では、ディスカウント自体に付けるタグと、APIで設定する組み合わせを許可する相手タグを分けて考えます。
API入力のaddは、ディスカウント自体へタグを付ける操作ではありません。

用途タグを付ける
APIでタグを指定
対象と例外を試す
結果を記録し、問題がなければ対象キャンペーンを段階的に広げる

2件ならAとBが互いを許可する

たとえば会員向け割引Aにloyalty、季節割引Bにseasonalというタグを付ける場合、A側でseasonal、B側でloyaltyを許可します。
片方向だけでは同じカート行で組み合わされません。

3件以上は全ペアを確認する

割引A・B・Cを重ねるなら、AとB、AとC、BとCのすべてで双方向一致が必要です。
1組でも相互許可が欠けると、予定した3件の組み合わせになりません。件数が増えるほど設定漏れを見つけにくくなるため、割引名を縦横に並べた確認表を作ります。

出典: Shopify Developers「ProductDiscountsWithTagsOnSameCartLineInput」(英語)

既存のShopify Scriptsから割引ロジックを移している場合は、同じカート行の条件とShopify Functions側の責任範囲も整理します。移行の前提はShopify Scripts終了に向けた移行準備で確認できます。

Shopifyの自動ディスカウント・コード・Buy X Get Yの注意点

同じ商品へ重ねられるかは、自動ディスカウントかコードかという入力方式だけでは決まりません。
商品ディスカウントのクラス、対象条件、組み合わせ許可、タグ関係をそろえて確認します。

Buy X Get YはX側とY側を分ける

Buy X Get Yでは、Shopify Plusで追加の商品ディスカウントを適用できるのは、顧客が受け取るY側の商品です。
購入条件となるX側の商品は追加商品ディスカウントの対象外で、顧客にとって最適な割引が選ばれます。

確認対象併用の考え方見落としやすい点
自動+コード条件と相互許可が合えば対象方式だけで可否を決めない
Buy X Get YのX側最適な商品割引を選択追加商品割引の対象外
Buy X Get YのY側Plusでは追加商品割引の対象対象条件とタグを確認

注意割引率はキャンペーン単位で見ない

個別の割引率が妥当でも、併用後の販売価格が粗利下限を下回る場合があります。最大併用時の注文金額をテストし、停止条件を先に決めることが重要です。

本番前に確認したいテスト項目

設定後は、対象商品を一つ入れて成功するかだけでなく、対象外と境界条件も同じ手順で確認します。
割引が一部だけ適用された状態を「成功」と判断しないよう、期待結果を先に書いておきます。

  • 対象商品で、予定した商品ディスカウントがすべて表示される
  • 対象外商品では、意図しない割引が適用されない
  • 顧客条件、購入数量、期間の境界で結果が切り替わる
  • コードと自動ディスカウントの片方を外した場合も想定どおりになる
  • オンラインストア、Storefront API、POSのうち実際に使う経路で確認する
  • 最大併用時の販売価格と粗利下限を確認する

件数上限をキャンペーン開始前に確認する

Shopifyでは、有効な自動ディスカウントは最大25件です。1注文で使える商品または注文ディスカウントコードは最大5件で、配送ディスカウントコードは1件です。

Shopifyのディスカウント件数上限
自動割引とコードの利用上限を整理

この上限は、同じ商品へ重ねられる実務上の推奨件数を示すものではありません。
「API上は組み合わせ可能」と「運用しやすい」は別なので、設定数、問い合わせ対応、粗利確認まで含めて絞ります。

複数条件のカートテストを継続的に回す場合は、AIブラウザテストで確認作業を自動化する考え方も参考になります。
自動化する前に、期待結果と例外を人が定義しておくことが前提です。

テスト記録設定値と注文結果を一緒に残す

割引名、タグ、組み合わせ許可、対象商品、顧客条件、適用チャネル、カート結果を一つの表にします。設定変更の前後を比較できる記録があると、不適用の原因を切り分けやすくなります。

Shopifyディスカウントの組み合わせでよくある質問

QShopifyで複数のディスカウントを同じ商品に併用できますか?

AShopify Plusでは可能です。対象条件、商品ディスカウントの組み合わせ許可、GraphQL Admin APIの双方向タグ設定をそろえます。

Q通常のShopifyプランでもディスカウントを組み合わせられますか?

A商品と注文、商品と配送などは設定に応じて組み合わせられます。同じ商品への商品ディスカウント同士はShopify Plus限定です。

Q自動ディスカウントとディスカウントコードは併用できますか?

A各割引のクラス、対象条件、組み合わせ許可が合えば併用できます。同じ商品へ商品割引を重ねる場合はPlusとAPI設定が必要です。

QShopify管理画面だけで同じ商品への複数割引を設定できますか?

A管理画面だけでは完結しません。ディスカウント自体のタグとは別に、GraphQL Admin APIで相手タグを許可します。

Qタグを付けたのに割引が併用されないのはなぜですか?

AAがBを許可し、BもAを許可する双方向一致が必要です。対象商品、期間、顧客条件、productDiscountsの設定も確認します。

QBuy X Get Yに別の商品ディスカウントを重ねられますか?

AShopify PlusではY側の商品が対象です。購入条件となるX側では、顧客にとって最適な商品ディスカウントが選ばれます。

Qディスカウントはどの順番で計算されますか?

A商品ディスカウント、注文ディスカウント、配送ディスカウントの順です。各段階で組み合わせ可能な割引が計算されます。

割引設計は併用可否から逆算する

Shopifyのディスカウント組み合わせとは、割引ごとの併用可否と適用順を条件に、同じカートで適用できる範囲を設計する方法です。

私なら、最初に実施予定のキャンペーンを一覧にして、同じ商品を対象にする組み合わせだけを抽出します。
そのうえで、通常プランの組み合わせで足りるか、Plus限定の同一商品適用が必要かを判断します。

  • 割引ごとに商品・注文・配送のクラスを記録する
  • 対象商品が重なるキャンペーンを洗い出す
  • 管理画面の組み合わせ許可とAPIの相手タグを分けて記録する
  • Buy X Get YはX側とY側を分ける
  • 対象外・境界・最大併用時の結果をテストする

次の一歩

割引一覧と組み合わせ表を先に作る

自社だけでタグ設計やAdmin APIの実装範囲を切り分けにくい場合は、現在のキャンペーン一覧と期待するカート結果を用意したうえでノーサイドへご相談ください通常設定で足りる範囲と、Plus向け実装が必要な範囲を整理します。