Excluding a specific item to receive any kind of discount

Hi all,

We’re trying to implement a rule on a Shopify Plus store where a specific product (tagged, e.g., no-discount) should never receive any discount allocation, while all other cart lines should continue to be discounted as usual.

We’re aware that this can be handled cleanly using Shopify Discount Functions by filtering targets. However, our store relies on a large number of existing native discount codes, automatic discounts, and app-generated discounts, which makes migrating everything to Functions impractical.

Given that, is there any mechanism (checkout validation, cart transform, or otherwise) that allows us to prevent discount allocation on a specific line item when native discounts are applied?

Or is it fundamentally not possible due to how Shopify distributes discounts across line items?

Would love to hear how others have handled similar constraints.

Thanks in advance :folded_hands:

Hi @abrar_anwar

With active native discounts, there is no supported way in Checkout Extensibility to say “this line can never have any discount allocation” while letting all your existing code/automatic/app discounts run as usual. Your options would be:

  • move the relevant discounts into Discount Functions (where you can control targets), or
  • accept that the “no-discount” item will participate in native allocation, and handle it with non-Function workarounds.