Live data from Hacker News

Plain Text Accounting, a guide to Ledger and friends

plaintextaccounting.org

101–110 of 126 posts

Re: Plain Text Accounting, a guide to Ledger and friends

#101

I used ledger / cl-ledger for some time, but they do not correctly support multi-currency accounting, which is a show stopper for me.

Do you mean, in the sense of https://hledger.org/investments.html#a-more-correct-entry ? balancednoautoconversion validation may be relevant, if so ( https://hledger.org/hledger.html#strict-checks )

I mean I want to log income, spendings, exchanges in multiple currencies (or commodities), and then be able to see reports in a single currency - my net worth, my income over period of time, capital gains / losses.

Leger printed nonsence for such roports.

I used to pay taxes in multi currency environment, and know the official rules here, in Belarus, how to calculate the indicators when converting to a single currency.

Also I once came across US guideline for that - the same simple principle.

So I guess that's a very standard aporoach in accounting.

Ledger does something strange instead.

I remember also some large blog post was circulating, where the author "explains" how to do accounting in two currencies, in some overcomplicated way, that only works for two currencies. This link was usualy shared between people as an ansver to the multi-currency question.

Re: Plain Text Accounting, a guide to Ledger and friends

#102

I've used the ledger-likes extensively, and they have two major problems: (1) One of the hard problems in personal finance is data capture and input validation. Programs like QuickBooks and Xero don't just hide the GL because they're being mean, they're doing it because even experienced bookkeepers make mistakes on the general ledger all the time. "Since it's a text file it's easy to read" solves exactly the wrong pr…

Yes, it's much easier to just have accounting data in a relational database. It's much easier to work with (edits and arbitrary analysis/reporting), rather than having to use/learn some bespoke tooling and data format. It's much easier to associate entries with metadata or categories, and much simpler to add editing GUI on top if you want to, or integrate with third party data sources.

(I wrote a text based ledger tool myself, and then switched to storing data in PostgreSQL)

Re: Plain Text Accounting, a guide to Ledger and friends

#103
post #80
post #71

Earlier quoted context omitted.

This is one of the reasons I use YNAB (for shared household budget) and a Google sheet (for personal budget). I usually just hold onto the receipt for whatever I do until the end of the working day and get it entered that night. But if a receipt or my pay app isn't an option then I can enter the transaction right there on the phone before I forget.

Do you use the original or SaaS version of YNAB?

Currently on the SaaS version. It's much slower than I'd like on desktop web, truth be told, but it does the job and the mobile app is pretty good.

Re: Plain Text Accounting, a guide to Ledger and friends

#104

I've used the ledger-likes extensively, and they have two major problems: (1) One of the hard problems in personal finance is data capture and input validation. Programs like QuickBooks and Xero don't just hide the GL because they're being mean, they're doing it because even experienced bookkeepers make mistakes on the general ledger all the time. "Since it's a text file it's easy to read" solves exactly the wrong pr…

> Programs like QuickBooks and Xero don't just hide the GL because they're being mean

What is the GL?

Re: Plain Text Accounting, a guide to Ledger and friends

#105
post #79

Earlier quoted context omitted.

> hard problems in personal finance is data capture and input validation It's also true for business accounting. Getting data into your accounting/ERP software is always a clusterfuck, and I've yet to see a process that didn't require many hours/days of reconciliation and posting manual journal entries to close a reporting period.

This is the data representation problem. It's in the customers' best interest to have a universal format. It's in no one else's (read: especially vendors) interest for there to be a universal format. Which is why you generally only see it when it's mandated by a coordinating party in the middle (e.g. Medicare).

Sort of.

The challenge is that no two businesses are really alike, so it's difficult to create a standard that can capture all the nuance of running a business. GAAP/IFRS-compliant accounting requires double-entry accounting, so many ERP systems share a lot of the same things (account, debit/credit, accruals, receipt of goods, month-end close) that are needed to spit out the three sheets and other artifacts for financial reporting.

A running joke in the industry is that you don't customize your ERP for your business, but customize your business for your ERP. You end up with a lot of "middleware" that essentially adapts your operational systems into the format needed by the ERP to do its job, and your staff will design workflow processes specifically centered around how the ERP works for things like closing the books or managing inventory.

Re: Plain Text Accounting, a guide to Ledger and friends

#106

I've used the ledger-likes extensively, and they have two major problems: (1) One of the hard problems in personal finance is data capture and input validation. Programs like QuickBooks and Xero don't just hide the GL because they're being mean, they're doing it because even experienced bookkeepers make mistakes on the general ledger all the time. "Since it's a text file it's easy to read" solves exactly the wrong pr…

> Programs like QuickBooks and Xero don't just hide the GL because they're being mean What is the GL?

General ledger

https://en.wikipedia.org/wiki/General_ledger

Re: Plain Text Accounting, a guide to Ledger and friends

#107

Earlier quoted context omitted.

Well, my company has been using Ledger CLI for a decade. It has a few large advantages over off-the-shelf accounting packages, the primary one is that it allows us to extend the "Everything is code" approach to everything from ops to accounting. - For example, instead of someone needing to remember passwords to five different current accounts and credit card sites, there are ruby scripts that download the data, conve…

Ledger CLI in a company in this day and age? I forgot to mention I studied accounting in uni and after investing/wasting my time into understanding CLI and terminal application I have come to the conclusion that they are simply not for me. Specially if you are not using Linux in all your applications and even that is another issue. I digress... I am just incredibly intrigued by your organization's practice. Who are t…

The company is small (around 20 direct + indirect) but the accounting can get somewhat complex because it has sales in multiple countries, leading to 7 currencies and with two dozen different VAT rates. The fact that ledger can keep tally in multiple currencies was an essential feature for our use case, most commercial packages want to convert everything into a base currency which leads to cumbersome conversions when you subsequently need to pay affiliates and taxes in a non-base currency.

That's small enough that all accounting can be handled by a single person, me, including updating the scripts that keep it all running. They do need regular upkeep as a result of changes in regulations, APIs, etc. It takes me about two or three days per quarter, and a few more days at year closing. There is a script that generates a pretty Excel workbook from the ledger output with a familiar looking dual ledger balance sheet and another one with a profit and loss statement, any accountant should be able to read those. There is not often a need to involve an actual accountant or do audits though, the company is privately held.

Teaching a programmer the basics of accounting is pretty easy. Would this work in an organisation that's not a software company where you would need to teach an accountant scripting, git, CLI, etc? I don't know.

Re: Plain Text Accounting, a guide to Ledger and friends

#108
post #67

Earlier quoted context omitted.

Yeah, but IMHO, while it makes sense to have configurable formatting for terminal output, it doesn't make sense to apply that formatting to output meant for SQL.

True! I will look into it, thanks for the report.

Oh, Simon Michael! I hadn't noticed your username until now.

> I have not used the SQL output.

I've used it to process the register output in a pipeline.

Sometimes, my `hledger reg` queries result in multiple quantities on some transactions. The terminal output leaves the columns of the date, transaction description and account blank, for pretty-printing purposes, I suppose. Those blanks complicate adding up the quantities per transaction using a tool like awk. There's also the JSON output format, but the depth of the objects around quantities makes the CSV still simpler to process, even though I need to process the quantities' text in SQL so they can behave like quantities.

Just sharing how one user uses hledger.

Re: Plain Text Accounting, a guide to Ledger and friends

#109
post #65
post #27

Earlier quoted context omitted.

If you're based in the US, I would recommend ofxtools [1]. Anytime an institution supports "Download in Quicken", they have an OFX endpoint that you can find via ofxhome. [1] https://github.com/csingley/ofxtools

I used this a couple of years ago to create a script that automatically imports transactions from my bank account into my beancount ledger. Unfortunately, only one of my banks provides OFX access at all (for a monthly fee), and I learned I’m not disciplined enough to keep up with the other banks manually. Its annoying because I’m pretty sure the other banks do have OFX services somewhere, they just dont provide it to…

The email solution is my plan. The banks/cc I use all have transaction alerts so I plan on parsing my maildir to automatically add transactions

Re: Plain Text Accounting, a guide to Ledger and friends

#110
post #48

Earlier quoted context omitted.

I've used Ledger for a number of years because I'm comfortable using plain text files. I just send CSV exports and reports to my accountant. I'm an independent software developer working on my own. I guess it's useful for people like me.

How are you generating the reports? Are they in PDF?

I use plain text to begin with and then run them through pandoc with html template. And either send them as word or pdf files.

It’s not particularly sophisticated but it works and it’s simple enough to live with.

Post reply on HN