WooCommerce Dynamic Pricing and Discounts – Discounting per item except the first one in cart

On many occasions, shop owners want to charge the complete price for the first product and then set a per item flat discount. For example, I sell buckets in my shop. For a particular bucket, if my customer purchases in bulk, then I want to charge the complete price for the first item and then provide a discount of 50% for the rest.

How can I achieve this?

XAdapter Dynamic Pricing for WooCommerce provides the solution:

Solution 1:
Using Product rules – You can provide a flat discount for items that are purchased in bulk. Then, you can adjust the price of the first item using the adjustment option to negate the discount. For instance, let us say, price of “Woo Ninja aa” is $100.
Here I have framed a rule to provide a flat discount of 50%. However, still the first item has to go without discount. So, I put up an adjustment of $50 so that the price will be shown without discount for the first one.

In the above rule, I have provided a flat discount of 50 % and then adjusted the price of the product by 50 so that the first item goes without discount. So, the calculation happens this way:
50% of 200 (because 2 products are in cart) = 100. So discount is $100. So ideally the price should be $200-$100 = $100. But since I have already provided an adjustment of 50, the final amount comes as $100+$50 = $150

This reflects the cost in the cart perfectly as shown below :

The above solution is applicable when you want to set up the pricing based on products

If I am not bothered about any particular product but only want to charge full amount for the first item and then a per item discount , it is even an easier solution.

Solution 2:
Using Cart rules – Instead of product rules, I can switch to cart rules and frame the exact same rule as shown below:


In the above rule, I have provided a flat discount of 25% and then adjusted the price of the product by 25 so that the first item goes without discount. So, the calculation happens this way:
25% of 300 (because 3 products are in cart) = 75. So discount is $75. Again, ideally the price should be $300-$75 = $225. But since I have already provided an adjustment of 25, the final amount comes as $225+$25 = $250

So with one rule, we can get discount as shown below:

I found it a very easy solution! Did you?

Leave a Reply