That is not how VAT usually works.

To my knowledge (IANAL, but have coded quite a few systems to handle VAT)

- VAT is always to be calculated on the total sum of an invoice (if you have different rates, you have to calculate one sum for every rate)

- VAT is always rounded up.


Example:

> **This is simple:** So let´s say you have an item that costs just 7 cent´s. That makes 1.4 cent rounded to 2 cents of VAT. 
> 
> Now you have a customer ordering 100 of these for $7. The total VAT is
> $1.40 
> 
> You give a 10% discount to $6.30, VAT is $1.26. 
> -> Tax per piece would be 1.26 cent
> 
> **But this:** Customer changes his order to 103 for $7.21. Tax would be $1.45 (1.442 rounded up)
> 
> You give discount again $6.49. VAT is  $1.30. Now if you calculate
> $6.49 / 103 pcs * 20% you get tax per piece of 1.26019417475728 cent
> 
> If you calculate $1.30 tax/ 103 pcs you get tax per piece of
> 1.26621359223301 cent


Makes for a total difference of **0.2 cents** already for the 103 pieces. So what is correct, 20% on the individual rebated price or the 1.26621359223301 cent out of the $1.30?

Answer: Neither, **VAT is a transaction fee** - it is added to the value of the transaction (the invoice) not the item. 

You can try to calculate back the per-item VAT then as **a statistical value**, but it may not be exactly 20% anymore. Don´t get that mixed up or you will acquire a lot of rounding errors down the road.

*As per comments, example of a groceries bill taxed 7% and plastic bag taxed 19%:*
[![enter image description here][1]][1]
*Notice how the 0.95... cents of tax for the plastic bag are rounded up to a full cent, and this full cent is owed by the supermarket.*

  [1]: https://i.sstatic.net/CkZnQ.gif