5 ms·
I switched to beancount after trying several other things (mint, spreadsheets, gnucash), and I like it quite a bit. It's choice to be very strict about things
by balves 5y ago
I switched to beancount after trying several other things (mint, spreadsheets, gnucash), and I like it quite a bit. It's choice to be very strict about things held at cost (like units of stock) is a great differentiation.
It's VERY hard to accidentally miss capital gains, or get cost basis wrong on something, or have something not balance. Much harder than even ledger-cli, let alone the other alternatives. It feels at times like working with a static type system versus a dynamic type system.
And the burden associated with this is not anything more than other tools. Importers have been great. I have 68 asset subaccounts between my spouse and I (if you do double-entry accounting you'll know this isn't actually that many), and I spend about 1-2 hours a month balancing the books, doing reporting, etc.
Finally, it's quite easy to get your transactions into a pandas datatable or similar, allowing you to utilize your programming/datascience skills to do things that just aren't available in other tools. Mint offers nothing here, spreadsheets can do some of it (but the downsides of accuracy), and gnucash requires learning some niche scheme stuff; it feels very "tacked on".
- NoboruWataya 5y ago> gnucash requires learning some niche scheme stuff; it feels very "tacked on". There is also piecash, which gives a nice Pythonic interface to the SQL files generated by GnuCash: https://pypi.org/project/piecash/ https://pypi.org/project/piecash/
- rmbyrro 5y agoBear in mind that using SQL in GnuCash may result in data loss: > Note this feature is considered experimental. It works for most of the common use cases but some corner cases have been reported to result in data loss. [1] [1] https://gnucash.org/features.phtml https://gnucash.org/features.phtml
- haberman 5y ago> Importers have been great. What importers do you mean? Are these importers you've written yourself, or existing importers you were able to reuse? What format are these importers pulling from (PDF statements, CSV, OFX, etc)?
- balves 5y agohttps://github.com/redstreet/beancount_reds_importers/tree/master/beancount_reds_importers https://github.com/redstreet/beancount_reds_importers/tree/m... https://github.com/jbms/beancount-import https://github.com/jbms/beancount-import https://beancount.github.io/docs/importing_external_data.html https://beancount.github.io/docs/importing_external_data.htm... Support for OFX is generally great, CSV is also great. There are some proof of concept things floating around too for PDF.
- haberman 5y agoDo you find that all of your financial institutions offer reliable OFX/CSV feeds? I'm asking because I've generally come to the conclusion that PDF is the only universal data format that every institution will offer.
- OJFord 5y agoNot GP, but in my experience they offer CSV with the most helpful columns for programmatic use omitted; present only in the PDF. Of course I've submitted requests pointing it out/requesting it, but to be honest I can only assume it's deliberate.
- tacostakohashi 5y agoOFX is the closest to being universal, although often it is well hidden. CSV feeds are often surprisingly useless for programmatic / feed use, they're often littered with stupid textual headers and footers and lack important columns - they're designed to be opened in excel and looked at by a human, not parsed and ingested.
- andreareina 5y agoThere's also the heterogeneity of transactions. Looking at the csv export I've got from my bank, there are three "reference" columns and they play different roles depending on how I'm paying: - debit card: merchant name + date, card number, blank - alternative card-based payment system: constant (account number?), merchant, constant - alternative app-based payment system: constant, merchant, user custom reference And a data sanitation issue: one of the merchant names has a comma in it, and it's not escaped or quoted in the csv so that record is corrupted.
- repiret 5y agoFor GnuCash it’s easy to parse it’s XML files or Sqllite database, so you don’t have to mess with scheme.
- djhworld 5y agoI've been using beancount for 3+ years and totally agree, the flexibility of it is the real USP. I've never used any import tools though, I just enter the transactions manually maybe once or twice a week. It's been fine - especially using beancount-mode for emacs, although admittedly it's just my accounts, it might not scale so well for a family.
- fatcow 5y agoThere's an upcoming UI to input stock transactions and will explicitly request capital gains, so, there will be fewer opportunities for error. https://github.com/Gnucash/gnucash/pull/818 https://github.com/Gnucash/gnucash/pull/818