Any way to exclude bundle components from discount?

Hi,

Is there a way to exclude certain components of a bundle from a discount?

For example, our bundle contains components A and B. The 10 % discount is currently split between both, but - due to a legal requirement - the customer needs the discount applied only to component A.

I don’t see a way to do this. Am I missing something?

Instead of discount, you can adjust the compare at price for the component A only if I am not wrong?

Hey there! I’m a developer on the Discounts team. I could use a few more details to help you out with this.

  • Is this a fixed bundle created with the productBundleCreate mutation, or created with a Cart Transform Function?
  • What kind of discount are you referring to? A Discount created in the Discounts section of Admin, or something else? Is it based on a Discount Function?

Thank you!

2 Likes

Hey @AdamF-Shopify!

  1. So the bundle is created with productBundleCreate mutation (via Shopify Bundles app)
  2. discount is added by discount function

Thank you!

Hey @AdamF-Shopify, can you please let me know? thank you!

Apologies for the delayed response. Unfortunately, I don’t have good news: no, you cannot exclude specific bundle components from discounts with Discount Functions. As far as I can tell, the cart input you can query shows each bundle as a single line item, not individual components. :pensive_face:

I’m using a cart transform function to create bundle products by injecting component line items. I want to exclude certain bundle components from being eligible for discounts (e.g., free gifts or fixed-price items).

I’ve tried using product tags (like no_discount) to flag components, but discount functions still apply discounts to these items.

@Yokub_Sobir : excluding specific bundle components from discount via Cart Transform is currently not feasible in Shopify’s Functions framework due to internal handling and discount allocation logic.

So share your use case with business objective and we will see if a different approach suggestion can be provided