Derek Atkins warlord at MIT.EDU
Tue May 24 09:17:14 EDT 2005

Andrew Sackville-West <andrew at> writes:

> So... is anyone already working on payroll?

I don't know of anyone working on it.

> Any objections to any of us trying to tackle it?

No objections from me.  Please do.

> I think to ideas are heading towards the plug-in thing, where do we 
> figure out how to plug-in?

Well, there's a couple ways of doing it

The way I envisioned it working is a combination of a gnc-module that
implements the generic payroll computations, perhaps plugging into the
business features, extending the employee objects.  Then we'd plug-in
the various tax entities into the generic module (I envisioned this
being done by scheme).

For each employee in the system you could set up the various locales,
deductions, etc.  The generic module would then use that information
to call out into the locale-specific plugins.

> A couple of my thoughts:
> 1. I would assume that GNC developers would not want to roll out a 
> payroll feature unless it could be implemented for a pretty wide scope 
> of users, which means multiple nations and a really complicated problem. 
>  My feeling is that if we can get some kind of generic payroll 
> structure going as a plug-in, it would be a bit outside the GNC devel 
> team and therefore not necessarily be beholden to pleasing a wider 
> audience.

That's not true.  I for one would be happy so long as the architecture
is generic and extensible to multiple locales, even if the original
implementation is specific to one locale.  C.f. the TXF report, which
was US only until recently.

Note that the system DOES have to be generic enough that users could
create their locale-specific definition files and plug those in.  But
I think we can release code without supplying those definitions at the

> 2. If a plug-in was developed it would probably be fairly easy to modify 
> it on a case-by-case basis to make country-specific plug-ins.  or

True.  Note that I don't think we want to require changing C code for
each locale, so I don't want to require changes to the payroll module.
So it would be a "module + plugin" architecture.  (I'm sorry I keep
harping on this).

> 3. it may be fairly straight-forward to create a very generic payroll 
> feature that would allow the user to create their own tax tables (which 
> we sort-of have to do every year in the US anyway) thereby making the 
> implementation easier and also absolving the developers of 
> responsibility for keeping track of all those jurisdictions.


> your thoughts are appreciated
> Andrew


       Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
       Member, MIT Student Information Processing Board  (SIPB)
       URL:    PP-ASEL-IA     N1NWH
       warlord at MIT.EDU                        PGP key available

More information about the gnucash-devel mailing list