Income Tax

From GnuCash
Jump to: navigation, search

The (US Income) Tax module, added on 2001-08-20 by Dave Peticolas, should be modified to support forms for other regions and languages: Bug 730470: Tax reports are limited to us and de_DE locales only. As a proof of concept in 2004 Christian Stimming added support for the monthly VAT declaration in de_DE and made german business users happy.

I18n

As Christians changes show, the core is robust enough to support more than one region and language. To get a clear structure, a few components should be moved. And the general components should instead of the current de_DE hack check for a subdir with the region symbol and files with the language symbol inside. The fall back could in each case be a user selectable list of existing region directories or language files.

Components

This is mostly taken from the first commit. Feel free to add missing parts!

Engine and Test

src/tax/us/gncmod-tax-us.c
No header file, not doxygenized, should be moved one level up.
src/tax/us/us.scm
the interface with module definition, export declarations and load pathes. in between unused.
/src/tax/us/test/test-load-module
test loading.
test-link-module.c
returns 0. Meaning?

They should be moved one level up.

Tax Tables

Needed for each supported region.

src/tax/us/txf.scm
Tax table
src/tax/us/txf-help.scm
Help strings for the tax table

Probably they should be renamed to <language code> instead of txf. Then the respective de_DE files should be moved to ../de and renamed to de*.

Reports for Display and Export

src/report/locale-specific/us/
gncmod-locale-reports-us.c

Probably a general report should be moved one level up.

Export Formats

Export is usualy country specific: US: TXF, many parts implemented. DE: IIRC some xml file, currently only partial implemented. CA: GIFI was requested on the mailing list.