Setting up VAT in WooCommerce without invoice rounding issues
Goal
Configure taxes in WooCommerce to minimize rounding differences between the order totals and the amounts shown on the electronic invoice.
What WooCommerce recommends
WooCommerce itself recommends setting product prices tax-exclusive (not tax-inclusive), precisely to avoid imprecise rounding when the tax is extracted during the generation of fiscal documents. This is not a requirement imposed by POP: it is WooCommerce’s official recommendation in its own tax settings guide.
If you still prefer to work with tax-inclusive prices, WooCommerce allows it (Tax tab, “Yes, I will enter prices inclusive of tax” option), and POP handles this case too.
Why small differences can appear on the invoice
An e-commerce store is designed to sell, not to issue fiscal documents: when prices are tax-inclusive, some recalculations are unavoidable in order to produce a fiscally correct document:
- Line total — on the fiscal document this is recalculated as the net unit price (net of any discounts) times the ordered quantity; it may differ by a few cents from the total shown on the WooCommerce order (which starts from a tax-inclusive price).
- VAT total per rate — this is recalculated as the rate percentage × the aggregated taxable amount for that rate; if the WooCommerce order’s VAT total differs by a few cents, the invoice uses the value that is correct from an accounting standpoint.
These differences are not a plugin error: they ensure the invoice complies with Italian tax rules even when the store works with tax-inclusive prices.
If you want to switch to tax-exclusive prices on a catalog already set to tax-inclusive
- Make a full backup of the site.
- Export the products to CSV using WooCommerce’s native tool.
- Update the tax-exclusive prices in the exported file.
- Re-import the products.
Verify
Compare the VAT total of a test order with the one reported on the generated invoice: any differences of a few cents are expected and documented here, not a malfunction.
Common errors
- The VAT total on the invoice doesn’t exactly match the order — see the explanation above: it is an effect of rounding during VAT extraction, not a bug.
- You want to eliminate the differences entirely — the only effective strategy is to work with tax-exclusive prices, as recommended by WooCommerce; there is no tax-extraction method that, starting from the gross price, always exactly reconstructs the original net price.
Related configuration
For selling to foreign customers (reverse charge) see reverse-charge; for the nature codes to use based on the tax regime see tax-regime-invoicing-rules.