nopSolutions / nopCommerce

ASP.NET Core eCommerce software. nopCommerce is a free and open-source shopping cart.
https://www.nopcommerce.com
Other
9.31k stars 5.32k forks source link

Tax rounding issues. Do not round tax (configurable) #3949

Open AndreiMaz opened 5 years ago

AndreiMaz commented 5 years ago

It was reported by our customer form Switzerland. I noticed a bug where the VAT amount is not correct when "Rounding down with 0.05 intervals" is enabled. While the product amounts are correctly rounded, the VAT amounts are not correct. Example: Assume an Order Sub-Total of CHF 87.20 incl. tax, then the correct VAT amount is 6.23 (but the current logic is also rounding the VAT amount down to 6.20, see image attached).

The reason behind the rounding to 0.05 CHF is related to the smallest coin in CHF, but this has nothing to do with the VAT. While the price (to be paid by customers) are rounded to 5 Rappen, the VAT is "NEVER" rounded to 5 Rappen. Beside paying a wrong amount to the tax authority, each and every booking in the accounting system will have a difference

So let's add a setting indicating whether rounding rules should be applied to taxes. Please note that if not, then at least we have to round it to 0.01 as it was previously done

Originally reported at our premium support ticket 14908

Here is a branch to be tested - https://github.com/nopSolutions/nopCommerce/tree/issue-3949-do-not-round-taxes


See also other topics about tax rounding issues: https://www.nopcommerce.com/en/boards/topic/92310/vat-calculation-change-requirment and https://www.nopcommerce.com/en/boards/topic/92738/vat-cart-calculation-incl-and-excl-vat-difference and https://www.nopcommerce.com/en/boards/topic/89791/nop-430-critical-tax-rounding-error

ecommerce-tester commented 3 years ago

We need to disable tax round for individual product, not only for all products