Why I built Mifolio
October 2026
I wanted to know what I was spending while I was spending it. My money sits across three cards and a buy-now-pay-later account, and I wanted all of it in one place.
None of the banks I use offer an API I can connect to. What they do send is a message every time a card is used: an SMS from one bank, an email from another, a notification from Tabby, and an Apple Wallet tap on my phone. Mifolio reads those.
What it does
Each alert is sent to one private endpoint, parsed, and filed under the right card. When the same purchase arrives more than once, it is counted once. Merchants are put into categories by rules that know UAE names first, and the few the rules do not know go to Claude. The answer is saved as a rule, so each new merchant is only asked about once.
The dashboard shows where the money went by category against what is usual for me, how this month is pacing against a typical month, what each card has left from its latest alert, and the merchants that add up. A net-worth page adds up bank balances, DFM stocks, gold and crypto at current prices.
Spent
AED 16,589
11 categories
Mifolio’s own charts, on made-up numbers. Open the full demo ↗
What was harder than it looked
Duplicates. A single coffee can reach Mifolio as a Wallet tap, a bank alert and later a statement line. Getting that right took more thought than anything else, so I wrote it up separately, with a walkthrough you can click through. Reading bank SMS when banks have no API →
Buy-now-pay-later. Purchases on the Tabby card are counted when they happen. When I later pay Tabby back from a bank card, the bank reports a charge to Tabby, and counting that too would double the spending. Mifolio looks for the matching repayment on the Tabby side, the same amount within three days, and leaves the bank charge out when it finds one. Without a match, the charge is treated as an instalment and counted.
Dates. One bank’s SMS has no year, so Mifolio picks the most recent date that is not in the future. Times are worked out in Dubai time; the UAE has no daylight saving, which keeps that part simple.
Where it is now
My data lives in my own Supabase database behind row-level security, and nothing private is in the code. It is private for now, but the charts on my site run on made-up numbers if you want to see how it feels.