Live data from Hacker News

Ledger, a command-line accounting system

ledger-cli.org

111–120 of 169 posts

Re: Ledger, a command-line accounting system

#112

I used ledger-cli, but as I constantly deal with several currencies, I can't rely on it. Unfortunately, none of the open source accounting system I know support multi-currency accounting well.

Ledger deals with multiple currencies quite well in my experience, especially using a custom prices.db file. What is the problem you are having?

Re: Ledger, a command-line accounting system

#113
post #47

Earlier quoted context omitted.

MoneyDance doesn't appear to be a double entry system. The nice thing about double entry bookkeeping, is it allows some pretty complicated cash-flow tracking - so setting up your accounts for a small business or consultancy is a bit easier.

I'm curious about this. I thought double entry book-keeping was mostly an artefact of manual/analog book-keeping. Humans are notoriously error-prone, and it's easier to avoid errors when two sets of numbers are supposed to balance out (ideally, exactly). How is double entry beneficial once all transactions are documented digitally? Could you give a somewhat concrete example? (Contrived or otherwise)?

You can think of double entry accounting as unit tests for your financial books. It definitely does help in making sure that you don't make mistakes when you enter the data, but where it really shines is analysis after the fact.

In Japan, the government actually gives me concessions for submitting my documents for income tax as double entry accounting. This is because it saves them huge amounts of money. So, if I document an expense that I want to get a deduction for, they can easily check that there is a corresponding withdrawal from the bank account to pay that expense. Especially for complicated areas, like my payroll, where I have up to 5 bank accounts in play (some of them off shore), it's absolutely the only way they can go back and understand what the heck is going on.

Similarly, for me, I have sometimes gone back and discovered that I got an exchange rate wrong. Fixing that mistake is a nightmare (especially if you have to pay capital gains tax in a LIFO or FIFO manner -- you have to record the capital gains or losses for each "lot" of currency that you purchased). Double entry accounting will totally save your butt as you ripple through all your transactions changing the exchange rate for the foreign currency. If you get it wrong (i.e. over or underspend a particular "lot"), the numbers won't balance at the end.

Is it necessary for your average person? Obviously not. As your finances become more complicated it kind of goes like this: intellectually interesting -> super cool -> crap, how did I get by without this? -> there is absolutely no other way to do it and not get arrested for tax evasion.

Re: Ledger, a command-line accounting system

#114

I used ledger-cli, but as I constantly deal with several currencies, I can't rely on it. Unfortunately, none of the open source accounting system I know support multi-currency accounting well.

Ledger deals with multiple currencies quite well in my experience, especially using a custom prices.db file. What is the problem you are having?

After currency exchange transactions it doesn't balance.

Re: Ledger, a command-line accounting system

#115
post #37

Is it possible to attach a receipt (say scanned PDFs) to a Ledger entry? I am interested in ledger, would like it to be the accounting system for my side business, a bit more bookkeeping feature such as the receipt attachment would be great for tax filing purpose. Edit: I know that Ledger uses plain text for each entry. Though I kind of wonder how do you guys keep those receipts.

We use Ledger for all of our accounting (it's not too much... yet) and we've been using comments in Ledger to keep track of our receipts. Example: 2015/02/05 Clipper Card Expenses:Transport:Public Transportation $20 Liabilities:Reimbursement:Zach Latta ; Receipt: 52fae6a40afaf2a79bfdef92f5e1b6d3.pdf Each receipt filename is . and they're all tracked in a private GitHub repository. Here's a link to our repo with more…

I do something similar, although I name my receipts/documents with yyyymmdd-friendlyname.pdf for ease of lookup.

For my IT consulting business, I also wrote a wrapper that rejects entries that don't have a receipt tag which allows me to catch any entries that I haven't complied 100% with my practices (and tax office won't get upset in an audit).

I also autogenerate the ledger entries from the receipt name (and prompt for description/expense account/$$ with logic for handling common items like fuel etc).

I've played with PDF metadata so my entire receipt scanning => ledger is automated from just the PDF document but haven't reached a satisfactory setup there.

Re: Ledger, a command-line accounting system

#116

Earlier quoted context omitted.

Ledger deals with multiple currencies quite well in my experience, especially using a custom prices.db file. What is the problem you are having?

After currency exchange transactions it doesn't balance.

I deal with multiple currencies in Ledger as well. Feel free to email me or join their IRC channel for some help! :)

Re: Ledger, a command-line accounting system

#117

I've used Ledger extensively for a side business as well as for timekeeping for work. It's incredibly powerful and incredibly unforgiving. If you want to keep PDF, JPG, etc. receipts with it, just put them in the same directory and note them in a comment. Additionally, use a VCS that does binaries well. Git does not.

> as well as for timekeeping for work Any tips on that?

I use https://github.com/nuex/t, which generates ledger timelog entries as documented here http://www.ledger-cli.org/2.6/ledger.html#Using-timeclock-to.... I've tracked approx 2000 billable hours using this method over the last couple of years. When I invoice, timelog entries are archived into a separate file, so my active timelog ledger file records unbilled time.

Re: Ledger, a command-line accounting system

#118

Earlier quoted context omitted.

After currency exchange transactions it doesn't balance.

I deal with multiple currencies in Ledger as well. Feel free to email me or join their IRC channel for some help! :)

You profile doesn't specify your email :)

I'd be glad to get help here, but I think this is just an unsolved problem. Discussed it on google group. I think I understand it relatively well, and even wanted to fix it, therefore I doubt multiple currencies can be handled with the current version of ledger; but would be glad to find a workaround.

Re: Ledger, a command-line accounting system

#119
post #2

(Coming from a Windows background) I often wonder what the appeal is to something like this. (Seriously!) Why would you use something like this over say a spreadsheet? Is it really much easier than opening a browser and running Google Docs???

Keep in mind that this is a ledger, not a spreadsheet. You record transactions in a text editor. The ledger-cli program is simply a report generator. From the perspective of an "accounting application", what you might think of as the meat of the program is actually the text editor. There are plugins for emacs and vim to do text highlighting and insert dates, etc, but it's basically free form editing.

In a way, it's exactly what you are thinking would be superior: why not use some general purpose tool for data entry and then write some macros for generating reports? It's just using a text editor rather than a spreadsheet.

The text editor is actually quite a bit better suited to this kind of entry than a spreadsheet. Have a look at the examples at the website. Since the journal is also just a text file, you can easily use a version control systems on the data -- this has saved me more times than I care to mention.

So, yes, it really is easier than just about everything else you could imagine. If you are interested in double entry accounting, I highly recommend it.

Re: Ledger, a command-line accounting system

#120
post #62

A number of people here say use a VCS with ledger. When do you commit? After every entry? And do you have branches?

All the time (many times per hour when doing bookkeeping).

But I use git & remote bare repos as a backup & multi-device sync method for nearly everything I do on my systems, so I'm pushing very frequently.

Post reply on HN