News:

Support the VirtueMart project and become a member

Main Menu

Still cannot figure out how discounts work!

Started by bogusj, September 07, 2013, 00:50:57 AM

Previous topic - Next topic

bogusj

Hi,

I am really confused here. I have a product (service) that costs 40 Euro.
I have the following shopper groups that are associated to their respective calculation rules:
1. Registered -65% (Order 2)
2. Silver -5% (Order 1)

Now, so far I thought that when a shopper belongs to two shopper groups gets the total discount of them. So I have a shopper who belongs to both groups. So the total discount should be: -65% + -5%=-70%, so 40 Euro should become 12 Euro. However VM returns 13 Euro. Where is the mistake in my logic? Please help.
Also, what is Ordering do in the calculation rules? Is it possible to only use one rule? The one with the lower order? In that case I could set Register to 65% and Silver to 70%.

Please help.

AH

I have never tried to configure a user to belong to 2 shopper groups

In your situation I would set :-

Registered to -65%
Silver to -70%

And associate a user to only one shopper group!
Regards
A

Joomla 4.4.5
php 8.1

Jörgen

#2
Hello bogusj

I think VM makes the calculation correct. VM probably calculates the rules one after another and doesn´t know anything of the rules used before. Makes probably a simple and robust program  logic.

This is how it goes:

Price €40

First discount: 5% (on €40) => €40 x 0,95 = €38, Note that now we have €38 left !

Second discount: 65% (on €38) => €38 x 0,35 = €13,30 This looks like what You have seen in Your calculations.

This can also be seen as €40 x 0,95 x 0,35 = €13,30.

This is how it works. ;)

You can see this when some stores have a 75% sale and then they have another 50% sale. With Your reasoning this would be 125% discount. They of course mean 50% of the already discounted price.

best regards

Jörgen @ Kreativ Fotografi
Joomla 3.9.18
Virtuemart 3.4.x
Olympiantheme Hera (customized)
This reflects current status when viewing old post.