Shopify’s native “Amount off order” discount type does not support excluding specific products or collections. If you need certain items – a new pre-order collection, a low-margin product line, or anything else – to be ineligible for an order-level discount, Shopify gives you no built-in way to do that.
The workaround is to use Regios Discounts, which lets you create order discounts with product and collection exclusions built directly into the discount logic. The discount still applies to the order subtotal, but is calculated based only on the eligible items.
Here’s why this limitation exists, what you can do about it, and where the workaround falls short.
Why Shopify’s order discounts can’t exclude products
Shopify has three separate discount types for reducing the amount a customer pays:
- Amount off products – applies to individual line items. Supports targeting specific products, collections, or variants.
- Amount off orders – applies to the entire order subtotal. No product-level targeting or exclusions.
- Amount off shipping – applies to the cost of a shipping method. No product-level targeting.
This is a fundamental architectural difference, not a missing setting. Order discounts in Shopify are designed to apply broadly – they don’t have the product eligibility controls that product discounts do.
The result: if you run a sitewide order discount and a customer adds an excluded item (a pre-order, a low-margin product, a sale item), there’s nothing in Shopify’s native discount system to prevent the discount from applying to it.
There is a native workaround: instead of excluding products, you can create an automated collection containing only the eligible items, then restrict the order discount to that collection. It works, but it’s manual to maintain – every time you add a new product you need to make sure it ends up in the right collection, and it gets unwieldy fast.
How Regios Discounts handles this
Regios Discounts lets you build order discounts with exclusion logic using the advanced logic builder.
Here’s how to set it up:
- Click “Create discount.”
- Click “Use a template.”
- Select “Exclude products” or “Exclude collections.”
- Click “Use template.”
- Change “Discount class” from “Product” to “Order.”
- Click “Edit logic.”
- Click “Edit criteria” on the first “Check if…” step.
- Update the criteria to exclude the specific products/collections.
The discount applies to the order subtotal, but Regios calculates the eligible subtotal by excluding the specified items first. So if a customer has $80 of eligible products and $20 of excluded products, a 10% order discount gives them $8 off – not $10.
What about third-party discount codes?
A common reason merchants search for this is affiliate or subscription platforms that generate their own order-level discount codes. If that’s your situation, this solution won’t cover it – those codes run through Shopify’s native discount system, which has no exclusion support.
Shopify has a Discount Allocator Functions API that could eventually allow apps to intercept and modify externally-created discount codes, but it’s been in developer preview for years with no release date or ETA.
The short version
Shopify’s “Amount off order” discount type doesn’t support product or collection exclusions natively – the closest workaround is restricting the discount to a manually-maintained collection of eligible items. Regios Discounts handles this more cleanly with built-in exclude conditions: the discount applies to the subtotal, but calculated only on eligible items. If your order discount codes are generated by an external affiliate or subscription tool, neither solution applies today.
For more on how different discount types interact in Shopify, see our Discount Stacking Guide.