[5 - 6 - trunk] invoice tax - rounding issues and computation method
Bug #707923 reported by
Ferdinand
This bug affects 17 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Odoo Addons (MOVED TO GITHUB) |
Fix Released
|
Wishlist
|
OpenERP R&D Addons Team 3 | ||
Therp Backports (Deprecated) |
Fix Released
|
Low
|
Stefan Rijnhart (Opener) |
Bug Description
see attachment
due to rounding of the calculated tax for each position we get totals which are wrong.
In Austria we usually group the basis per tax rate and calculate the tax from this basis to avoid such errors.
in account/invoice.py
class account_invoice_tax -
def compute must be modified
actually only some lines of code to group the invoice lines before calculating the tax
probably this has been discussed (but not solved) already
Related branches
lp:~openerp-community/openobject-addons/fix-account-trunk-tax-computation-method
Ready for review
for merging
into
lp:openobject-addons
- Fabien (Open ERP): Disapprove
- Olivier Dony (Odoo): Pending requested
-
Diff: 1101 lines (+803/-15)14 files modifiedaccount/__openerp__.py (+2/-0)
account/account.py (+21/-0)
account/account_invoice.py (+62/-5)
account/account_invoice_view.xml (+2/-0)
account/demo/account_tax.xml (+68/-0)
account/test/tax_computation.yml (+471/-0)
purchase/__openerp__.py (+1/-0)
purchase/purchase.py (+21/-4)
purchase/purchase_view.xml (+1/-0)
purchase/test/tax_computation.yml (+67/-0)
sale/__openerp__.py (+1/-0)
sale/sale.py (+20/-6)
sale/sale_view.xml (+1/-0)
sale/test/tax_computation.yml (+65/-0)
lp:~elbati/openobject-addons/add-yaml-tests-for-tax-computation
Ready for review
for merging
into
lp:openobject-addons
- Nhomar - Vauxoo (community): Approve
- OpenERP Core Team: Pending requested
-
Diff: 844 lines (+785/-0)7 files modifiedaccount/__openerp__.py (+2/-0)
account/demo/account_tax.xml (+68/-0)
account/test/tax_computation.yml (+543/-0)
purchase/__openerp__.py (+1/-0)
purchase/test/tax_computation.yml (+86/-0)
sale/__openerp__.py (+1/-0)
sale/test/tax_computation.yml (+84/-0)
lp:~akretion-team/openobject-addons/trunk-add-tax-rounding-option
- qdp (OpenERP): Pending requested
- OpenERP Core Team: Pending requested
-
Diff: 172 lines (+40/-11)5 files modifiedaccount/account.py (+25/-11)
account/company.py (+6/-0)
account/company_view.xml (+1/-0)
account/res_config.py (+7/-0)
account/res_config_view.xml (+1/-0)
lp:~therp-nl/therp-backports/addons-6.1-lp707923-vertical_tax_computation_by_precision
- Therp: Pending requested
-
Diff: 137 lines (+33/-12)3 files modifiedaccount/account.py (+25/-11)
account/company.py (+7/-1)
account/company_view.xml (+1/-0)
summary: |
- [6.0 and 5] invoice tax - rounding issue + [5 - 6.0 - 6.1] invoice tax - rounding issues and computation method |
summary: |
- [5 - 6.0 - 6.1] invoice tax - rounding issues and computation method + [5 - 6 - trunk] invoice tax - rounding issues and computation method |
Changed in therp-backports: | |
milestone: | none → 6.1-maintenance |
status: | New → Confirmed |
importance: | Undecided → Low |
assignee: | nobody → Stefan Rijnhart (Therp) (stefan-therp) |
Changed in therp-backports: | |
status: | Confirmed → Fix Released |
tags: | added: bp70 |
tags: | removed: bp70 |
Changed in therp-backports: | |
milestone: | 6.1-maintenance → fixed-after-61 |
To post a comment you must log in.
I first encountered that problem with a Lexware software.
There are two ways to calculate the tax:
- by columns (vertical)
- by lines (horizontal)
Lexware (and obviously OpenERP) use horizontal calculations, while the most common usage is vertical.
So the totals are, while feeling wrong, actually correct.
(German link) support. lexware. de/portal_ support/ 00897-0000/ supportProductF AQDetail? ID=000000000015 732&searchTerms =&area= &version= 2008&batchStart :int=40
http://
In Germany, both ways are accepted by tax offices.
I don't know about other countries.
In you picture:
A * B = C
1,99 * 0,1 = 0,20
0,38 * 0,1 = 0,04
5,68 * 0,1 = 0,57
0,45 * 0,1 = 0,05
1,05 * 0,1 = 0,11
2,87 * 0,1 = 0,29
SUM(C) => 1,26
while
SUM(A) = 12,42
* 0,1 = 1,24