Hey Emma team, long-time user here.
I’ve been tinkering on a personal side project that lets me ask an LLM (Claude, in my case) questions about my own finances by pointing it at my Emma export — things like “what subscriptions am I still paying that I forgot about” or “how are my bills tracking against last month”. Pure personal use, runs on a Pi at home, just me and my own data.
I’ve been getting really far with what’s already in the spreadsheet export — the per-transaction Category, Subcategory, Counterparty, Merchant, Notes, Linked transaction ID fields are honestly fantastic and do most of the heavy lifting. Big credit to whoever designed that schema; it’s noticeably more thoughtful than what most banks expose directly.
There are two small additions that would meaningfully improve my setup, both of which I imagine Emma already has internally:
-
Account balance at the time of each transaction. Right now, I derive running balances by summing amounts forward from the earliest imported row, which means (a) I never know the “starting” balance before my first export, and (b) any small inconsistency (a missed credit-card repayment row, a pending-then-posted duplicate, etc.) silently drifts the running total. If each row carried the post-transaction balance, I could just use it.
-
A cleared/pending flag. Some of my charges show up as pending, then repost under a different ID a couple of days later. Without a status field, I either count them twice or have to write fragile heuristics to dedupe. A simple pending/posted column would solve that cleanly.
Two smaller bonuses that would be lovely if they’re cheap to add:
- GBP-equivalent amount (or the FX rate used) for foreign-currency rows — currently, any cross-currency aggregation is approximate
- A refund/reversal link — similar to Linked transaction ID but specifically for “this row is a refund of that row”, so I can net them out properly
Totally understand if any of these are awkward upstream (some banks just don’t expose balance per-transaction over Open Banking, for instance). But even partial coverage — say balance on just the current-account/savings rows where the bank does provide it — would be a huge win.
Either way, thanks for keeping the export feature alive. It’s the main reason I’ve stayed on Emma instead of trying to roll my own aggregator. And if the project ever gets stable enough that other Emma users with a Raspberry Pi and too much time on their hands might benefit, I’d probably stick it on GitHub — but it’s a long way from that point.
Cheers!