I can vouch for ledger. There is a learning curve, but it works great. Hledger is another implementation in Haskell. I went with ledger, and I'm not looking back.
I'm so sick of Intuit, and I got burned badly when I bought into their 3-year obsolescence cycle. In case you're considering Quicken or Quickbooks, DO NOT BUY IN. They have designed multiple kill-switches into their software to disable key features after a time delay. Specifically, you will not be able to download transactions, import them from a file, or export them - after 3 years.
I got ledger, and within a day I had written the code to grab my transactions and import them. It's a little strange, but it won't ever become obsolete due to the capricious and profiteering whims of some company.
Thank you for posting this. Ledger looks fantastic. Not sure yet how I can use its files to give information to an accountant, but I'm sure I'll achieve enlightenment after learning more about it.
One more cool thing: look at the TODO file in the planning branch of the source checkout. Pretty solid-looking example of how to do bug tracking using org-mode.
Not sure what your accountant wants, but the normal register output is very simple to read.
If you need something more customized, the python integration coming in HEAD gives you access to the internals without having to speak C++. It's still not quite done, but it'll give you enough power to do whatever you want.
I'm looking for an easily extensible double-entry accounting system for hackers. I would imagine many self employed entrepreneurs/hackers rolling their own for their needs but haven't been able to find anything open source in the wild that's both somewhat complete and extensible.
Gnucash is polished but extensibility isn't too great. Command line seems a bit too much on the other side of the spectrum.
Did you just use "hackers" and "too extensible" to describe your problem? :)
As I see it, ledger has two excellent interfaces: text files (i.e. the ledger itself, where the transactions are stored) and the command line. You extend it with anything that writes to text files (that is, anything at all) and you script it with anything that executes commands (bash, python, makefiles, you name it).
In my case, I added on a transaction downloader/importer that simply extends the text file aspect. I use other people's scripts to actually generate reports, from that point on.
If you love SQL and Perl or are a bit of a masochist you could look at SQL-Ledger or Ledger-SMB (fork of the former). It's relatively well tested. They are web interface programs (a bunch of CGI scripts in front of a postgresql database) so you can let non-technical people drive them.
I'm so sick of Intuit, and I got burned badly when I bought into their 3-year obsolescence cycle. In case you're considering Quicken or Quickbooks, DO NOT BUY IN. They have designed multiple kill-switches into their software to disable key features after a time delay. Specifically, you will not be able to download transactions, import them from a file, or export them - after 3 years.
I got ledger, and within a day I had written the code to grab my transactions and import them. It's a little strange, but it won't ever become obsolete due to the capricious and profiteering whims of some company.
Ledger is great. It's for hackers.