Having another detailed look at the tax code chart of account_de_skr03 while debugging intra-community taxes in one of our modules I found a surprising behavior (probably existing since the very start, I checked back until version 5.0).
The problem
To have all readers on the same picture some rough translations of tax code names:
- 83: Remaining advance payment for VAT / Remaining surplus - please put a negative sign before the amount
- U: VAT
- VST: Deducible input tax
As the tax code structure is deducted from a regular official formular this means that in field 83 should be the resulting amount to pay to the tax collection agency which should amount to U minus VST. For testing I created a customer and supplier invoice with amount 100€ subject to VAT 19% resp. Deducible Input Tax 19%. The result of taxes to pay thus amounts to zero.
The current behavior
Note: Do not care about the base amount which is correctly 100, I used an intracommunity tax in this example provding basically the same tax line setup.
All tax amounts are summed in field 83 thus showing a definitely wrong amount according to its name.
Solution 1
Reverting the tax code line signs for Deducible Input Tax 19% indeed results in correct numbers.
This solution would afford a migration of existing tax lines when applied.
Solution 2
Renaming tax code 83 to a correct name indicating that taxes are just summed up and do not show the result to deduct to authorities.
Which direction to take?
Personally I am strongly inclined to Solution 1.
- The resulting amount to pay shows correctly the expected sum.
- OTOH this change will afford migration of existing tax lines and will show after migration different tax code charts for previous periods.
- Solution 2 corrects the (currently wrong) description but doesn’t provide useful numbers.