Firefly kinda worked around this. You can download all transactions of your bank as a CSV, then use the Firefly importer to automatically map the data and save it inside Firefly. I usually do this once a week and it works pretty quickly, maybe a minute of work.
Most banks will let you export a CSV but that's a pain, you have to manually download and feed it into your system on a regular basis.. having it automated with an API would be a lot better.
Every bank I've used lets you download your transactions as a csv or qfx, which is then trivial to import onto gnucash (I still need to spend ~20m each month carefully sorting things in categories).
Depending on your bank you might be able to import transactions with the tool I use for my finances (https://firefly-iii.org/): it can import using the Spectre/Salt Edge API or through CSV files.
Do banks have anything you can use to automate getting data off their websites? My annoyances lie in generating the csv files. My checking account outputs an arbitrary range of dates, however many transactions fit on pg 1, while my credit card from the same bank outputs csvs by billing cycle. It makes it a little annoying going into the bank website and generating these files across relevant date ranges.
Does anyone have any recommendations on ways to automatically download data from bank accounts / brokerages etc onto disk for easy / scripted importing into GnuCash / Spreadsheets etc (instead of having to click around on the websites and download csvs or whatever daily?).
I have seen some products aimed at developers that will bucket various banks into APIs but not anything aimed at individuals. I have experimented with automating it with puppeteer, but surely there has to be a better way?
Maybe it's a matter of finding and using a modern set of financial insitutions with decent APIs. Does that even exist (in the US)?
My biggest problem was with importing CSV from my bank (TD Bank). It got all the debits and credits reversed, so I had to fix them all by hand.
In the end it wasn't worth maintaining -- too much manual down;loading and entry. I need a system that can automatically pull the information from my banks and make it easy for me to massage the data as needed.
That's what I use. A simple CSV download of transactions (what bank doesn't offer that?), an awk script or two, and my bank transactions are ledger entries.
Can I ask how you get the current balance from your bank (i.e., do you have a bank that provides a nice API, or is there another trick you're using)? I've spent a lot of time looking for a way to automatically download transactions from all my accounts but still have to either enter them by hand or manually log in and download a CSV to import.
The alternative that I use is to use GnuCash and periodically download CSVs from my bank of my transactions. That way I don't have to manually enter transactions and don't have to give my bank login to some random third party.
All that's needed is about 15-30 minutes every couple of months to bring in the latest transactions and double check the categorizations. GnuCash uses double entry bookkeeping, so you always know if your data is accurate or not by being able to reconcile the accounts.
There's bank data aggregators like Yodlee. If the app uses that it can auto import transactions. Ghostfolio seems to be oriented around manual import though (export csv from your bank and import yourself periodically).
I remember our bank changing our account type (Number stayed the same, they just changed the fee structure) so they expunged all our transaction history from the site, we could only request paper copies be sent out.
I ended up scanning them all, writing a script that split the images up and OCR'd them, then formatted them correctly into and importable format in a single file. It turned out to be much faster and easier than the CSV data provided by the bank (Actually having transaction descriptions on your imports helps!). So much so that for the next couple of years instead of getting the CSVs from the bank, I got PDF copies of our paper statements and fed them into the same script.
It looks like automatic importing of transactions isn't supported yet[0]: "There are a couple ways to get transactions into the system. For now, automatic transaction downloading is not available but it will be available very soon."
What I really want is some system that lets me just click "Import", and it goes out to my various CC/bank sites and pulls in the data automatically. Or, imports on a schedule 2x/day or something. The thing I want to avoid is having to log in/download/import these files manually from like 7 different sites. I want that because I handle this stuff on a random basis, when I have a few free minutes, and the time it takes to get my records up to date the manual way is about the same amount of time I have overall to do it. And I find reconciling everything on a fixed schedule, say at the end of the month, is much harder than doing it on the fly, because a lot of times I will not remember what a charge was even for if I wait 30 days to process it.
Check out GNUCash. I've been using it for about a year. Entering all your stuff is tedious, but it's open source and integrates with some banks (also import from Quicken and CSV).
As nice as the tool and the insights it provides, the pain point is manually entering all the transactions. It is 2018, and we still dont have a easy way of exporting our transactions from the bank in a standard way. Every bank wants to use their own way of exporting it.
I was seriously considering using Plaid API[1] to build an app that would download my transactions automatically, categorise it, and prompt me to only verify entries it classified with low-confidence. But, Plaid API at the time did not support all my bank accounts, which made the effort moot.
Another concern of mine is exporting such personal data to a 3rd party. Ideally, an open source tool that strictly runs on my laptop would be the best!
reply