Here is a feature complete project:
http://ofbiz.apache.org/[
^]
What you're asking for can't really be given a "Quick answer". Use OFBiz as a reference implementation, as it provides a solid data model and implmentation.
Java isn't that hard to read for a c# developer - so dive in, it might seem complicated, but a lot of the stuff has to be done that way for legal reasons.
[Update]
It sounds like your project is going to handle monetary transactions - this means that there is a lot of stuff you have to know about. The Sarbanes Oxley Act, in summary, requires that corporations maintain much better financial records than were required in the past. It requires companies to actually establish a system of internal controls by which financial reporting takes place. It then requires managers to prepare quarterly statements assessing the strengths and weaknesses of these controls, and furthermore forces an outside accounting agency to do provide an independent assessment of the in-house auditing controls, and to report any flaws which may indicate sloppy—or fraudulent—practices taking place.
As a part of financial reporting under SOX, record keeping is a major point of interest. When crafting this piece of legislation, federal lawmakers made sure that corporations would be required to maintain records—both paper and electronic—for a minimum of five years. For an age in which an increasing number of transactions and reporting have become electronic, Sarbox has placed a heavy strain on IT departments, email archiving specialists and Sarbanes Oxley software developers.
Sarbanes–Oxley Act[
^]
Basel I[
^]
Basel II[
^]
Basel III[
^]
http://www.theaccounting.org/sarbanes-oxley.php[
^]
Here is a brief overview:
DBA Guide to Understanding Sarbanes OxleyPresentation[
^]
Google provides a wealth of links[
^] related to this topic, it has become an industry in it's own right ...
For example: Your system must track all changes related to monetary transactions, what was changed and who did it, and why was it done - simple overwrites of existing records must
not be possible - because then you lose track of previous registrations. So change tracking and accountability must be built into your system from the start.
Most countries are implementing similar laws and regulations, and I imagine the requirements for accountable governance and risk assesment will be strengthened over the next years.
Best regards
Espen Harlinn