Syncing bank transactions to my budget, and experimenting with Cursor

March 9, 2025

YNAB is my budgeting tool of choice. It works, and I don’t want the hassle of maintaining my own instance of Actual Budget .

YNAB has support for Open Banking sync, which I do use. However, their API vendor, TrueLayer, continues to lack Chase UK Open Banking support, despite it being available for ~1 year now. Other tools, like Moneyhub, have supported it for yonks now.

Using the direct bank API yourself is impossible (regulatory requirements), but you can use a intermediary vendor. GoCardless is particularly cool because they offer free access (albeit limited), something with Actual Budget uses for their sync implementation. It should be easy to replicate this for YNAB.

With some spare time, and a desire to dig into agentic LLM tools, I decided to give it a shot. I’m pretty happy with the outcome.

Desires

This ruled out the already existing GoCardless-based tool, Synci. I’m sure it absolutely works great, has a bunch of features my tool will never have, and is risk-free. But better to be safe than sorry.

Thoughts while building this,

This project was built a lot on vibe coding. It was a fun experiment, and after some effort, absolutely got me where I wanted to. On the way, I learned a bunch of stuff.

xkcd #1205

Historically, this sort of project I wouldn’t have looked at due to the unlikely nature I’d save any time here. As much as it seemed cool, I had other projects I wanted to prioritise.

But LLMs change the dynamics a lot: it takes substantially less time to get you almost there.

That being said, you’ve still got to read everything it outputs, build up that mental model, and get stuck in if is unable to deliver the proper solution, which, even in a relatively simple like this one, I find it does shockingly often.

Either way, I’ll be exploring more ideas that come to me with this tech, and I think that’s a really neat outcome.