Kt, 2011 12 29 10:17 +0100, Dr. Axel Braun rašė:
> Am Mittwoch, 28. Dezember 2011 schrieb Giedrius Slavinskas:
> > Here is the patch that fix this issue:
> > http://codereview.tryton.org/210007
> >
> > Rounding is applied on each tax line instead of sum.
>
> This (tax calculation per line) is at least not allowed in Germany
>
> Cheers/Axel
>
In many business taxes (VAT) are already rounded per unit and not per
unit_price*quantity (or the tax sum). If you go to the shopping center,
you will see that the taxes there, are already included in the listing
price, so that means they are rounded per unit. If it would be rounded
per unit_price*quantity or the tax sum, you can get a strange situations
when buying for example 2 pens which list price is 1 EURO you must pay
2.01 EURO..
Btw, if you read the law of VAT, you will see that this tax adds value
for single product, material or service and not for invoice.. So
logically, if you have rounding on the sum of taxes, that means you
adding value for the invoice.
Normally, VAT is counted like this:
VAT = round(unit_1_price * VAT_% / 100) * quantity_1 +
round(unit_2_price * VAT_% / 100) * quantity_2 +
..
VAT = round(VAT)
So speaking in words, we need to know what is the added value (in same
precision as the list price) for a single product. After that, we need
to sum up all VAT for a single product by its quantity. In case, when
all quantities are integer we always get an accurate VAT without need of
rounding tax lines or the tax sum. But if we have decimal quantity, we
need to round one more time. And think this the situation what the
Germany laws are speaking about. If we round each tax line, we will get
an incorrectness:
round( round(unit_1_price * VAT_% / 100) * quantity_1 ) +
round( round(unit_1_price * VAT_% / 100) * quantity_2 )
is not equal to
round( round(unit_1_price * VAT_% / 100) * quantity_3 )
where quantity_3 = quantity_1 + quantity_2
so we must round the sum and not the lines.
p.s. "This (tax calculation per line) is at least not allowed in
Germany", is it because its written in law or just "some accountant
said"?
--
[email protected] mailing list