PrestaShop/PrestaShop — pull request #651 by prom3theu5 (2013-08-14 11:45:58+00:00)
Title: Workaround for tax breakdown displayed wrong to customer. Invoices still need sorting.

Rewrote tax calculation slightly to accurately calculate tax per product in the cart - not per group of products.
Tax is paid per Product, rounded (because you cannot pay a fraction of a penny / lowest currency denominator).

Because its per product, this must be worked out before the total for a group (* quantity) is worked out. Otherwise it will definitely be wrong.

For Example:
(round(product * (tax% + 1),2)* quantity);
not
(round(product * (tax% + 1) * quantity,2);

Mrotacon on Forums.
Please see thread: http://www.prestashop.com/forums/topic/235504-tax-is-calculated-wrong-in-prestashop-it-has-to-be-not-just-me-but-everyone/page__p__1159913#entry1159913

Basically - the entire way tax is calculated in prestashop needs to be rewritten - but its very deeply seeded, across multiple classes.