I recently did this for myself using https://tiller.com/ to sync checking/credit-card transactions to a Google Sheets spreadsheet. Then a GitHub action mirrors the spreadsheet to a free Supabase database.
From there, Supabase MCP or psql gives Claude/Codex access to the transactions/balances for english queries. Really impressed with their ability to find subscription patterns, abnormal patterns, etc. Also to predict cashflow which no online tool so far is good at i.e. "tell me how much cash I can move to savings based on my monthly spend patterns and available cash".
For autocategorization, I learned Claude is really good at custom DSLs. Had it create a markdown table based ruleset to normalize payee/categories. I also run the autocat rules as part of the GitHub actions.
How does Tiller get your transaction data from your bank?
Do they pull it through Plaid and the like? It's been a while since I checked them out.
Does it still entail entrusting Plaid with your web banking user credentials? How's 2FA handled?
Does Plaid still rely on screen scraping for certain financial institutions who lack formal API's? What happens if there's a bug and they inadvertently click something they shouldn't, eg. "I Agree" to a popup or something you don't consent to, or even send funds to the wrong place? I know they claim they are "read only" but afaik no bank offers the ability to set up secondary user accounts (on personal banking plans) that truly are just read only?
Do they maintain underwriten insurance or a bond or something to improve your confidence you'll be reimbursed if they, say, cause you a million+ dollars worth of financial damage?
How about the implications of letting both those parties see all your private banking data? I heard there was a class action lawsuit with allegations data was sold or shared inappropriately, any indications on what actually happened?
Or how about the clauses in your banking Terms of Service where you agree not to share your password with third parties?
I just feel queesy using a web / cloud service to manage my finances. Would prefer some client software that runs locally and talks to some kind of bank API's. Does such a thing exist in Canada? (Open Banking is supposed to be coming but I'm not clear if individuals will be able to access it for software they write themselves?) I would switch banks if it did.
These are genuine questions, I sure could use something like an API to my bank, if it were impeccably trustworthy and enforced policies of limited internal data retention once I've "downloaded" it.
One trick I've seen, is that some banks will send notification emails/texts to warn about transactions over a certain amount, in case you card was stolen and to warn you. The hack then is to set that to "warn" you of transactions over $0.01, which gets you a notification stream of all transactions. From there it's a small matter of forwarding that information to your system for processing.
Local AI models are getting a lot better. If you have the capability to run them, you could automate this yourself using your own browser automation, actually. It is rather fiddly, as mentioned in the post, but is absolutely doable, and probably the only option, at least for now, where you wouldn't need to provide your credentials to a third party.
Plaid does do screen scraping for smaller banks, but they have agreements for OAuth-based access with most of the largest institutions.
I believe they use Yodlee and yes there is a lot of trust in Yodlee/Tiller to keep data safe. The integrations go through an OAuth type flow where you hit say Chase first and approve/revoke individual accounts so it seems like it's API based now, not screen scraping.
For all those concerns, I bet you could automate just parsing all the data from the statements or a CSV export.
I'm doing something similar with Tiller (which I've been using since Mint was acquired by Intuit).
It's neat to see how OP did this using a Claude Routine though. My version locally uses a local qwen model + an API key (annoyingly created using OAuth) with sheets access. A Claude Routine would've been significantly easier
Routines are so fun to work with. It's almost too easy to spin a new one up. A little worried about when I get past the 15 routines limit, though. Then it goes into "extra usage" land.
That's so cool! Are you planning to open source any of this? Would love to see how you set everything up, or - maybe most interested in - some of your prompts.
It was all GitHub Spec Kit + Claude Opus tbh. I narrated a couple paragraphs of how I wanted to sync to flow and it knocked it out in one pass practically.
It's great because Claude Code generated complex analysis/models 10X better than I was familiar with.
The key was normalizing the payee/categories so we can analyze month to month, and separating fixed vs variable spend. It then did a fancy Monte Carlo simulation with the computed mean/stddev per payee. And out came T+30/T+60 estimates at P50/P80/P90.
I've been using Tiller since the pre-AI era. Plaid seems to be more B2B oriented so I haven't looked into it. But eventually yes that would be ideal to own the full pipeline.
From there, Supabase MCP or psql gives Claude/Codex access to the transactions/balances for english queries. Really impressed with their ability to find subscription patterns, abnormal patterns, etc. Also to predict cashflow which no online tool so far is good at i.e. "tell me how much cash I can move to savings based on my monthly spend patterns and available cash".
For autocategorization, I learned Claude is really good at custom DSLs. Had it create a markdown table based ruleset to normalize payee/categories. I also run the autocat rules as part of the GitHub actions.