Jump to content

Cart rules - For every X product, get Y free gifts

Recommended Posts

I am looking to set up a cart rule to give the customer a free gift with every purchase of a certain product.


I want the rule to allow multiple gifts for every certain number of that product.


Example, for every 2 apples, give a free gift of an orange.


Looking through the cart rules documentation, it seems I would need to add infinite rules to allow the following:


2 apples, 1 orange

4 apples, 2 oranges

6 apples, 3 oranges



Is there a way to do this in vanilla PS? Or do I need a module?

Link to comment
Share on other sites

I'm into a similar problem but I just would like the gifts to be cumulative, so that for 10 product matching my single rule, 10 gift are added to the cart.

For now the only solution I can think of is to make a product pack with 2 item that I want to give as gift, duplicate it with 3 of the same item and so on. Then add a rule for each pack, like if 2 product match this category or whatever, give the 2 pack as gift.

In my case this is very tedious because I should make lots of packs and rules and It's not virtually infinite, but in ur case, if you want to give a set of different products instead of several amount of the same one, this should be the right solution for you.

make a product set of 2 oranges and another one of 3 oranges,

then add 3 rules matching 2,3,6 apples and choose the gift of the corresponding pack/product

set the priority of the rule that gives 3 oranges as gift to 1,

the priority of the rule that gives 2 oranges as gift to 2,

the priority of the rule that gives 1 oranges as gift to 3,

then make them incompatible with each other with the appropriate condition.

Edited by frankit (see edit history)
Link to comment
Share on other sites

I see your reasoning. That could be a plausible solution.


For now, we have had to abandon the free gifts as the cart rules are simply not robust enough, there are lots of issues with rules not being added in the checkout when updating quantities.


Until the cart rules get an overhaul, it looks like the ideal  solution is just a pipe dream :)

Link to comment
Share on other sites

  • 2 months later...
  • 4 months later...
  • 2 weeks later...

How do we make sure that each of X item will get Y item free?


For example, if a person buys 2 of X items, he should get 2 of Y items free.


When I set the cart rule, it only give 1 Y item free.


Appreciate if anyone can shed some light.

Link to comment
Share on other sites

  • 5 weeks later...
  • 6 months later...
  • 1 year later...
  • Create New...