Buy X get discount for Y automatically in a cart

Hey,

Is there any way to create a discount with the following conditions:

  • A customer spends a minimum amount on products from a specific vendor and then gets a discount on product Y.

Shopify’s default BOGO is great, but I need product Y to be added to the cart automatically.

I couldn’t find anything like this — every app only offers something like “meet the conditions and get a FREE gift.” I don’t want to give a free gift; I want to apply a discount to a product.

Could you help me? :wink:

Hi @BartGal For the vendor condtion just make it a collection of that vendors products for the discount condition.

Shopify avoids baking in features to auto add anything to a persons cart without that customers interaction.
So it’s an advanced theme customization or apps.
For themes just use the ajax api and or any relevant theme events to know when the cart has the items for the condition.
https://shopify.dev/docs/api/ajax/reference/cart

If your not code savvy you can reach out to me for theme customization services
:speaking_head: :postbox: Click profile-pic on forums for options to connect, ALWAYS provide context/reference in all new communications.

Hi,

I would suggest that you can use one cart upsell apps that show the product with discount in the cart drawer and customer can easily add by a single click.

or you can use a post purchase upsell app that shows the offer post customer’s checkout and adds the product to the existing order. I have an app - PPS Post Purchase Upsell - PPS Post Purchase Upsell - Increase AOV with Checkout Upsell | Shopify App Store that does this and can help you set it up.

Hey there, I just launched my app CartSprinkle that does just this. You simply build discounts within the app and if you want, you can add to cart automatically or via our “Gift Hub”. Check it out, it’s free through BFCM too!

Let me know if you have any feedback and best of luck to you!

If you want something like “Spend X on Vendor A, then Product Y gets automatically added with a discount” yes, it’s possible, but Shopify can’t do this by default.

The easiest app that supports all this is SellEasy – Bundles & Upsell.
It allows you to:

  • Set a minimum spend on a specific vendor

  • Auto-add Product Y

  • Apply a partial discount (not zero)

Most other apps only do free gifts, but this one works.

If you ARE on Shopify Plus

Then you’re in luck, you can do this natively with:

  • Shopify Functions for the discount logic

  • A tiny cart snippet to auto-add Product Y

You can build this promo, but Shopify won’t let you do it out of the box.
Use an app (SellEasy), or Shopify Plus if you have it. Happy to help anytime! :blush:

Hi,

To achieve exactly what you need, I recommend using a third-party app designed for free gifts, such as BOGOS App.

With the Buy X Get Y feature in BOGOS, you can set a condition where a customer spends a minimum amount on products from a specific vendor and then receives a discount on product Y. The product Y will also be added to the cart automatically.

Here’s a quick setup guide in BOGOS App:

You can start to try BOGOS for FREE here!

Yeah, this is one of those things that sounds simple but Shopify just doesn’t do out of the box. Native Buy X Get Y can put a discount on product Y instead of making it free, but it won’t drop Y into the cart for you, and like you found, almost every app treats “hit the threshold” as “here’s a free gift” rather than an actual discount on a product you choose.

The setup you’re after is a spend threshold on one vendor, then a discount on specific other products. I’ve done basically this with Pareto Quantity Breaks. You set the trigger as a product group (Vendor contains “Target”) with a $100 minimum, and the reward is a cross-product discount rather than a gift. The nice part is each reward product can have its own percentage and its own min quantity, so you’re not stuck with one flat rate. Something like: spend $100 from Target, trousers 20% off, socks 20%, the knit 10%, all applied on its own once they cross $100.

It runs on Shopify Functions so it stacks on top of your normal pricing at checkout instead of overriding it, and it carries over to POS too.

One thing I’d pin down first: do you want the discount to hit Y only when it’s already in the cart, or do you actually need Y auto-added when it isn’t there? Those behave a bit differently, so worth testing on a real cart before you rely on it. Here’s the app if you want to poke at it: Pareto quantity break