6 ms·
I've used GnuCash for years before switching to beancount (https://bitbucket.org/blais/beancount/ https://bitbucket.org/blais/beancount/ with smart_importer: ht
by rcMgD2BwE72F 6y ago
I've used GnuCash for years before switching to beancount (https://bitbucket.org/blais/beancount/ https://bitbucket.org/blais/beancount/ with smart_importer: https://github.com/beancount/smart_importer https://github.com/beancount/smart_importer) and fava (https://github.com/beancount/fava/ https://github.com/beancount/fava/). Much easier to work on your journals (ledger, trades, prices...) since they are just text files. Really great if you're using the beancount package for Sublime: https://packagecontrol.io/packages/Beancount https://packagecontrol.io/packages/Beancount.
More importantly, the importers (for all my banks and financial services) let me import and reconcile all transactions, but also archive all documents (including PDF, text files, etc) in one, well organized directory: each file is saved into a folder that corresponds to my account structure such as Asset:Current:Cash, Liability:Mortgage, Income:Salary, Expenses:Health:Dentist. It's great to rely on fava (example: https://fava.pythonanywhere.com/example-beancount-file/income_statement/ https://fava.pythonanywhere.com/example-beancount-file/incom...) to check your accounting (with all files listed in the journal by date, with tags and links and other neat features) and still be able to browse documents in your file browser.
- boromi 6y agoThanks for this. Looks compelling. Is there a simple installation guide, I find it hard to figure out how to get going.
- jonahbenton 6y agoAs a longtime beancount user- it should be easy to install- there are packages for most OSes, they mostly work, the maintainer, Martin Blais is amazing and indefatigable, and the community is active and friendly and technical. But the "how to get going" part is where I find the real difficulty lies. There is a conceptual friction in double-entry accounting, which beancount enforces. If you do not have prior exposure to it, even if you are financially and mathematically inclined- grokking double entry can be a life-changing practice. It is the Iyengar Yoga to the 7 minute workout that is just tracking transactions as per GnuCash or Quicken or whatever. One has to have the appetite to consume a worldview. As someone living in that world, FWIW, I highly recommend it. I would not undersell the conceptual work required. It is not for everyone. But if the approach speaks to you, reach out on the mailing list and people will help with the mechanics. Cheers.
- jkhdigital 6y agoA thousand times yes! the abstraction of double-entry accounting is absolutely central to understanding the modern economy and why (large) economic agents behave the way they do. It’s also essential for understanding fiat money, which is more or less just numbers in a double-entry ledger.
- djhworld 6y agoThe installation is really just a python library, but if you want to keep everything contained you can put them in a Dockerfile
- freddie_mercury 6y agoThe documentation says to type "pip install beancount". That doesn't seem hard, so I'm guessing you're having some other problem? If you post on the mailing list, people will help you.
- riffraff 6y agoI'm also a happy beancount user. It's also pretty simple to extend, if not too documented. I was able to write a plugin to get data from the Milan stock exchange in a few hours, which was very nice. The vim plugin is also pretty ok.
- djhworld 6y agoBeen an avid beancount'er for about two years now too! I've never used the import features, the manual inputting of transactions into a text file doesn't take too long.
- haberman 6y agoWow, your setup sounds very similar to what I've converged on. Except I wrote a fairly substantial pipeline that preprocesses the data before giving it to beancount and Fava. Maybe I missed something, but it seemed like beancount wants everything to live in One Giant Journal file. I really wanted a pipeline where each bank statement PDF would output one file with a corresponding list of transactions (this stage can run completely in parallel and I use "ninja" to make it very fast). Then another process can run over these files looking for matches (+$X, -$X), and spit out "transaction groups", where each transaction group is a set of transaction ids that sum to zero. And then a different interactive tool lets you categorize transactions and spits out transaction groups with embedded "expense" transactions. It's all non-destructive; each tool only adds data, and nothing ever modifies existing files. Then a final step can combine all these files and spit out a beancount file for Fava. How does this compare with the way beancount's importer does it? How does its importer handle transfers and categorization? Is it destructive or non-destructive?
- mattbillenstein 6y agoYou're parsing PDF? I'd imagine most places allow some sort of data export like csv or something? That's how I get the data out of Chase and BofA.
- mehrdadn 6y agoThere are a few problems with exporting data... here's what comes to my mind at the moment: - It's an additional step and unnecessary when you're already downloading PDF statements, which you probably should be doing regardless - Data is often unavailable for export after a few months or a year or two (depending on the bank), far earlier than PDFs - If you have PDF scans (especially from earlier days) then you need to parse the OCR anyway - If you're using official APIs (instead of writing a scraper or or downloading by hand) then you may need to pay extra
- mattbillenstein 6y agoTo each their own, csv for me has been the easiest thing moving forward every month or three. I did do a historical net worth calculation and the only data I had going back far enough was PDFs, so through a mix of bash scripts and pdftotext, I was able to get a number for each month back about 10 years. But I ended up just putting that monthly balance for each account in a google sheet so I could sum and plot it there. Now I just stick the month-end balance for each account in a sheet to keep this updated.
- anonymousDan 6y agoHow do you parse the pdfs?
- simonebrunozzi 6y agoThis sounds amazing. It would be great if one day you could publish a detailed how-to / tutorial.
- aostiles 6y agoI made this VS Code extension to help with manually entering Beancount transactions: https://github.com/aostiles/Beanquick https://github.com/aostiles/Beanquick
- seltzered_ 6y ago"each file is saved into a folder that corresponds to my account structure such as Asset:Current:Cash, Liability:Mortgage, Income:Salary, Expenses:Health:Dentist" Beancount user here, even if you don't bother with any finance tracking, organizing financial documents following the folder structure is useful - see "Filing Dcouments" in https://docs.google.com/document/d/1e4Vz3wZB_8-ZcAwIFde8X5CjzKshE4-OXtVVHm4RQ8s/edit#heading=h.zeye36yurb5 https://docs.google.com/document/d/1e4Vz3wZB_8-ZcAwIFde8X5Cj... Shameless promos: - People are starting to make Fava extensions for things like envelope budgeting, portfolio tracking, etc. Usually these are announced on the mailing list: https://groups.google.com/forum/#!forum/beancount https://groups.google.com/forum/#!forum/beancount - The sublime plugin is great but I have a really useful improvement to search by org-mode headlines that never seemed to get merged - see https://github.com/norseghost/sublime-beancount/pull/14 https://github.com/norseghost/sublime-beancount/pull/14
- BeetleB 6y ago> People are starting to make Fava extensions for things like envelope budgeting I've been hearing about making extensions for envelope budgeting for years, with little progress. I haven't checked in the last 2 years though - any progress on this? To be frank, it was fairly annoying that the author kept declaring it as "not too hard" and yet no one came up with one.
- seltzered_ 6y agoBrian Ryall is working on one: https://github.com/bryall/fava-envelope https://github.com/bryall/fava-envelope discussion: https://groups.google.com/forum/#!topic/beancount/RXvOvHHdsek https://groups.google.com/forum/#!topic/beancount/RXvOvHHdse...
- BeetleB 6y agoThanks. Too soon to see if it will be workable. I'll stick to Ledger until this becomes mature.