Multiple discount at checkout

12 0 27

Hello, I am having an issue here. I have a promotion running on automatic discount (its 10% off every 2nd product) and I definitely want to keep this promotion (like forever). Besides that I give my customers various discount codes, but when they go to checkout, they get an error messages that they cannot apply more than one discount.  In automatic discount it says that it can't combine with other discounts - but there is nowhere to change this setting. So my question is - where and how do I change this setting? 

Thanks a lot! :-) 

Replies 539 (539)
New Member
2 0 3

This feature would be very helpful if added by Shopify. Feel free to add me to the list too !!!!!

11 0 27

Love the fact that this thread is marked as "solved". Talk about destroying expectations..... please add my vote as well lol 

New Member
1 0 2

Hi there, I just wanted to add my voice to request this feature. I am using Shopify to accept payment for virtual software training courses, and I have an automatic discount for early registration that I'd like to stack with other customer-specific discount codes. I've already promised this additional discount code to my customers, and now I'm scrambling to figure out how to actually give it to them (I assumed stacking was such a straightforward capability it didn't even occur to me it couldn't be done). Thanks!

New Member
2 0 2

52 pages of requests for 2 years but still not solved


5 0 3

I, too, would like this feature implemented. Shopify could if they wanted... 

5 0 10

So I have a collection that I'd like to apply a 20% discount to, and another that I'd like to apply a 40% discount to. You'd think this would be basic, core e-com platform functionality, but apparently not.

An hour of shopify plus support on this issue this time last year, and another hour just now, have gotten me nowhere.

— automatic discounts do not display pricing (because why would a customer need to know that prior going to the cart?!).
— you can't apply more that one automatic discount at a time anyway (because who would ever need more than one discount rate?!)
— you CAN however use per-product discounts, by manually copying the RRP to the compare-to price and then calculating / entering the 20%/40% off price (because that's quick and convenient).
— BUT our ERP sync will override the new price almost immediately, so we'll have to disable that for these products first.

And apparently this has been normal and accepted for YEARS now (and despite the green 'Solved!' banner — it's certainly not solved)...

4 0 1

Add us to the list of wanting the feature also!!  Not being able to run concurrent automatic discounts is a total pain, it limits the sale options quite a lot. 

New Member
1 0 0

Trevor, this thread has been open for more than 2 years and still Shopify has not addressed this important issue. Please add my vote. So disappointed Shopify doesn't take their clients seriously.

5 0 10

OK, in case anyone wants to know my eventual solution:

1. I added a shopify checkout script (plus accounts only I think) to apply a discount based on a customer tag. I included a check in the script to exclude products tagged with 'excldiscount'.
2. I edited all instances of the displayed price to show the correct price and sale price based on the customer tag.

1. Checkout script:

DISCOUNTS_BY_TAG = { #array of discounts
"discount30" => 30,
"discount40" => 40,
"discount50" => 50,

customer = Input.cart.customer

if customer #checks to see if user is logged in
  DISCOUNTS_BY_TAG.each_pair do |tag, discount| #cycle through the above array of tags
    if customer.tags.include?(tag) #pairs the customer's discount level from the above array of tags
      discount = #{discount}
      Input.cart.line_items.each do |line_item|
        unless line_item.variant.product.tags.include?('excldiscount')
              line_item.line_price * ( - discount / 100),
              message: "Proform Discount",

Output.cart = Input.cart

2. Price liquid (roughly):

    {% if customer.tags contains 'discount30' %}
      {% assign sale_price = price | times: 0.7 | round %}
    {% elsif customer.tags contains 'discount40' %}
      {% assign sale_price = price | times: 0.6 | round %}
    {% elsif customer.tags contains 'discount50' %}
      {% assign sale_price = price | times: 0.5 | round %}
    {% endif %} 
      <div class="prices">
        <span class="new-price">{{ sale_price | money }}</span>
        <span class="old-price">{{ price | money }}</span>


Mad that it takes this, but it seems to work — all logged-in customers tagged with 'discount30' etc... can see pricing and are charged correctly.

3 0 2

Please add me to the list too. This is very frustrating and really need this option.