The biggest hurdle for me with these tools is CSV import - banks are so crappy with them. If only we had a universal banking API system that all these tools could tap into. "Challenger" banks like Monzo and N26 and so on could unite behind a form of OAuth for banks that would kick ass.
I don't know about other areas, but in Europe there is such a standard (called FinTS) and there are libraries for every language. I actually once wrote a python tool that did something similar to this app.
I feel ya. I wrote a script to reformat my bank's CSV export to make it easier to work with for OnTrack [0]. I imagine it wouldn't take too much work to write a script that reformats and combines multiple sources.
I'm guessing the reason these universal API's don't exist is because there would be no business model and hence no billion dollar companies. However, Europe's PSD2 regulation was essentially launched to establish these open API's for banking
I watched a bank CEO claim the security of their customer's data was the reason it was tightly controlled and API access was only available to their trusted partners for the purposes of running credit checks and other things that make the bank's own life easier. They also followed that up with a spiel about how open to competition they are.
You may find https://github.com/reubano/csv2ofx useful. It coverts csv files to qif and ofx. It has built in support for numerous banks, and can be easily customized to parse unsupported csv formats.
Looks nice. I am already very invested in YNAB at this point but this looks impressive. I’ve learned that I need automatic syncing for budgeting, otherwise I slowly give up because inputting transactions from multiple sources can be too time consuming for me. I’ve read that many people are the opposite and rely on manual entry for accountability but in my case a quick glance once or twice a week to reconcile my budgeting tool with spending accounts is all I need.
Would be cool if this was mashed up with "Build your own Mint" https://github.com/yyx990803/build-your-own-mint, which leverages your own dev account on Plaid and pushes data to google sheets. It lacks a UI for analysis though, which this project here does nicely.
It looks like this tool imports bank CSV. You can produce similar CSV with hledger's register command (or aregister, in master). Export one account and one currency at a time. Eg:
I don’t know about hledger but getting out of ledger to YNAB was a royal PITA. Partly because ledger is so flexible because it is based on pure unadulterated double entry accounting, so its csv export is based on an entry per line rather than per transaction and that’s useless for most imports as they assume it’s a one transaction per line and you do splits once imported
I've been developing something very similar myself, with Rails also! I don't have any plans to open source it at the moment, but I might at some point.
Yours definitely looks far better than mine, UI-wise! As I'm only one person, and I don't have much time to dedicate to mine, I've just done some basic styling of tables, etc. so that it'll work on mobile with relative ease. However, it's something that I can progressively work on.
Claiming "self hosted" or "self-hostable" is a bit weird without a Dockerfile being provided, I think. That's not a mean-spirited comment, I just think most people would expect it as it's the standard for relatively quick and easy deployment (in my case for testing).
If you're one of those people you might appreciate the hint that someone has made a Dockerfile, it's just not merged yet.