Op woensdag 23 mei 2018 03:11:26 CEST schreef Matthew Pounsett:
> I've got an off-by-a-cent error on an invoice due to the way taxes are
> calculated.  GnuCash (2.6.21) is calculating the tax on each individual
> taxable item, then summing that up, and adding that value to the subtotal.
> This causes an error because each individual tax calculation is rounded
> prior to subtotalling.
> 
> Given a tax rate of 13%, GnuCash is doing this:
> 
>             Item     Tax
>           277.50   36.08
>            92.50   12.03
> Subtotal: 370.00 + 48.11 = 418.11
> 
> When the real calculation should be:
> 
>             Item      Tax
>           277.50   36.075
>            92.50   12.025
> Subtotal: 370.00 + 48.100 = 418.10
> 
> This could be fixed by GnuCash not rounding tax amounts until the final
> total, but typically I believe the calculation done is to add up all the
> taxable items and apply the tax calculation to that subtotal, so that it's
> not necessary to track many decimal places to avoid a rounding error.
> 
> I did some searching through the mailing lists and I see a lot of reported
> issues about rounding errors in GnuCash 2.x.  I can work around this by
> putting in an extra line item to correct the taxes, but it would be nice
> not to have to do that.  Is this something that's been fixed in 3.x?  I've
> been avoiding the update because I haven't had time for a careful
> migration, and testing whether I'm affected by any of the various issues
> that have been reported since its release.  But, this might be a reason to
> set that time aside.

The rounding issues are a known bug:
https://bugzilla.gnome.org/show_bug.cgi?id=502853
https://bugzilla.gnome.org/show_bug.cgi?id=504954
https://bugzilla.gnome.org/show_bug.cgi?id=520547
I once implemented a first fix to handle rounding as you are expecting it but 
that immediately broke rounding in jurisdictions that have different rounding 
rules. So that fix got reverted.

Nothing has changed in this area for gnucash 3 so until the above bugs are 
fixed the only option is to add a tax correction line. What sometimes does 
help is entering the amounts as tax included, though in your example it will 
not work: gnucash doesn't accept 3 decimal places for currencies that normally 
only have one so it would round anyway even before starting the calculation.

Regards,

Geert


_______________________________________________
gnucash-user mailing list
gnucash-user@gnucash.org
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
If you are using Nabble or Gmane, please see 
https://wiki.gnucash.org/wiki/Mailing_Lists for more information.
-----
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.

Reply via email to