TL;DR: my Magento 1.9 shop handles product prices including taxes. But a new Tax Rule reduces the price to be paid by the customer. Why??? Complete issue description follows.
I'm the developer with a multi-website Magento 18.104.22.168 instance. Prices for the whole catalog are managed "including taxes" => if we insert a 100 € price, the customer is expected to pay 100 € for the product.
Every product has the same Tax Class. It's called
IVA 22%, but that's just a label. It actually means "it's a product with the standard tax rate".
Up until today, we had a standard "Tax Rates" table: one entry for every country we ship to, with the same
Rate Percent set to 22% for every country. This is the one for France:
This is the related rule:
This worked great! On the frontend, said product with a 100 € price tag could be purchased for 100 €. Under the hood, the sale was handled as 81.96 € + 22%.
Now we must change the tax rate depending on the shipping country. So the same Tax Rate for France was updated like this (note the
Rate percent now set to 20 instead of 22):
We must keep the prices unchanged. The product with a 100 € price tag must continue to be sold for 100 €. Under the hood, we expect to be managed correctly based on the shipping country. For France, this would be 83.33 € + 20%.
Unfortunately, it doesn't work as expected. When the customer tries to buy said 100 € product and selects one of the country with a different tax, the price... gets lower. I understood that:
- the 100 € price still gets handled as "81.96 € + 22%" (22% being the original tax rate)
- the system takes the 81.96 € price and adds the country-specific tax
- results: the customer pays "81.96 € + 20%" = 98,35 € instead of 100 €
I've already tried to remove the original 22% tax rule, re-index everything and also to ask God for mercy. Nothing works.
What am I doing wrong?