Accounting

My father described to me his accounting system just now. He uses a hodgepodge of methods, because no software that exists works well enough. He’s a contractor, and travels from business to business working on computers. He often works in places with computers that break or network that is unstable for anything but email, so remotely accessing accounting software would be difficult, especially since one of the few workable choices is QuickBooks, which doesn’t play nice in any sort of distributed environment short of remote-desktop over a fast network.

So he uses an adaptation of old accounting techniques, now electronic. He sends bills to customers, puts a copy in his email in an IMAP box, and when a customer pays a bill, he drags it to the “Paid” folder. At the end of the year or quarter, he sums it up and enters it into spreadsheets and calculates taxes and the like. It’s a reliable system that even in the face of software failure, is quite robust. Email is well enough studied that things pretty much Just Work, mailboxes are reliable databases (if poorly indexed).

So to expand on this system and build a distributable workflow for accounting, imagine this:

Build a simple XML or RDF format for accounting documents (I suspect this already exists) — invoices, statements, promisory notes, checks. Attach them to emails as MIME multipart/alternative messages, with the alternate part being a text or HTML (or both) representation of the bill for human reading. Write simple software for generatingthese documents.

Then, the next stage, build extensions or external software for reading and cataloguing these documents — this could be a Thunderbird extension, even — and for summarizing. From there, build simple reporting software to pull what they need from the summaries and be able to calculate tax liabilities and other period-end financial tasks.

It’s a simple, scalable system. Contacts for bills can be pulled from an email address book. Customer relations systems that integrate with email would then integrate with the financial end of customer management. Email recording and logging systems could make record of financial transactions as they can make record of any other email sent or received. Cryptographic signatures can be used to sign the messages.