Back to Updates
·

July 2026 Updates

July
2026

In June we said July was about opening doors: a billing platform you could build on, and finer-grained access so bank transactions could stay hidden from part of your team. Neither one shipped. We spent July on Expensicat Agents instead, the thing every month before this one was groundwork for, and once it went in, the rest of the month bent around it. Both promises are still on the list. They just aren't done. Here's what actually landed.

Expensicat Agents

Expensicat now works your books while you're doing something else. As transactions sync and documents arrive, it categorizes, matches receipts to charges, and reconciles in the background. The confident routine is handled quietly; only the genuinely ambiguous comes to you.

  • It asks instead of guessing: when a charge could honestly go either way, you get a one-tap question, in the app or on WhatsApp, and your answer settles it for next time
  • Missing receipts get chased for you: high-value expenses get a same-day nudge, the rest are batched politely, and a photo replied on WhatsApp comes back filed, matched, and confirmed
  • Recurring vendors get watched: duplicate charges and quiet price increases get flagged with the evidence attached, before they add up
  • Italian flat-rate businesses get a running set-aside: how much of the income that just landed to keep back for tax, plus a warning as the €85k ceiling gets close
  • Everything is on the record: open any transaction and you see what was decided, by what, and why. Anything applied automatically comes off in one tap
  • Your corrections become the policy: fix the same category three times and it becomes a rule, and you stop being asked

Nothing sends, nothing files, and no money moves without you. It's rolling out to early-access workspaces now, and the full release entry has the rest of it.

Cat got steadier underneath

We replaced the machinery Cat runs on. You don't see any of it directly, but you see what it fixed.

  • Conversations survive interruptions: a dropped connection no longer strands a reply mid-sentence. Come back and it picks up where it was
  • Every question Cat asks now arrives whole: the options come through as real buttons, all the way to your screen, instead of collapsing into text you have to answer by hand
  • WhatsApp receipts tell you what actually happened: send a photo and the reply says whether it was received, processed, or filed
  • Reactions mark the progress on the message itself, so scrolling back through a thread tells you how far each receipt got without opening the app

One road in for every document

A document can reach Expensicat five ways: a forwarded email, a connected Gmail or Outlook account, WhatsApp, an upload, or the API. Each path used to have its own habits and its own gaps. They now run through the same pipeline, so a receipt gets the same recognition and the same routing whether you photographed it in a taxi or your supplier emailed it to your accountant's address.

  • Phone photos just work: HEIC images off an iPhone convert on arrival and process like anything else
  • More formats accepted on upload, so fewer documents bounce for the wrong reason
  • Anything that can't be read as text goes through OCR instead of failing quietly
  • Removing a connected mailbox actually removes it: the account disconnects and the imports stop, which is what the button always claimed to do
  • The intake screens in the app got a cleanup pass
  • One call imports a document end to end if you work through the API or an AI client: upload, extraction, and filing, instead of orchestrating three separate steps and waiting between them

Matching got harder to fool

Four changes this month, all pointed at the same thing: the suggestion you see should be the right one more often.

  • Duplicates count as one document: photograph a receipt, then have the supplier email the same invoice, and Expensicat treats the pair as one thing and matches the group instead of racing two copies at the same charge
  • Subscriptions stop grabbing last month: a recurring charge that looks nearly identical every month no longer pairs itself with the previous month's transaction
  • Better ranking before anything reaches you: a smarter model now scores the candidates, so the suggestion at the top is more often the one you'd have picked
  • Search understands meaning better after an upgrade to the engine behind it, which helps both when you're looking for something and when Expensicat is

Edits save, buttons act

One rule now, across the whole app. Typing into an editor saves on its own. Buttons do exactly the thing written on them and nothing else. You should never have to wonder whether closing a panel kept your change, or whether a Save button also sends something.

  • The entity editor got an explicit save, because that one genuinely needs a decision point
  • Empty rows show placeholders, so a blank field tells you what belongs in it
  • Invoice numbering continues from your history and respects a manual bump: set a number by hand and the sequence carries on from there

For anything that talks to Expensicat

  • Full Workspace Access moved to the newest MCP specification, on a new SDK, so Claude, ChatGPT, and anything else speaking MCP stays on the current standard
  • CLI 0.5.0 shipped on the 8th

Everything else

A busy month under the hood, too:

  • Mobile got its rough edges filed down: iOS stopped zooming in when you tap a search box, and the floating Ask/Search pill and the panel tray are gone from small screens
  • Our cache and queue infrastructure moved onto machines we run ourselves, which puts one less provider between you and a fast response
  • A round of security hardening as part of an independent security assessment we're working through
  • The usual hundreds of fixes across intake, matching, invoicing, and sync

Coming in August

August is electronic invoicing, the half of it we haven't done yet.

In May we shipped the formats: EN 16931, Factur-X, UBL, CII, a compliant file you can download and hand over. What's missing is delivery. In a growing number of countries an invoice isn't issued until it has travelled through a government system, and that's the part landing now.

  • Government rails, opened country by country, and we'll name each one as it goes live
  • Drafts get validated against EN 16931 before they leave, so a field that would be rejected is something you hear about while you can still fix it

The billing platform's external surface and per-member visibility on bank transactions both took a back seat to agents in July. Neither is cancelled. They'll show up in one of these posts when they're real, not before.

If you want Expensicat Agents on your workspace ahead of the general rollout, tell us.