Depensa is a mobile expense tracker. It pulls your purchase history from the merchants you shop with and merges it into one itemized, deduplicated timeline, so you see what you bought and not just a bank line that says "AMZN MKTP".
How it works
Instead of sending an AI agent to browse on every sync, Depensa uses AI to learn or repair a connector for each merchant. A plain, deterministic extractor handles routine syncs, so they skip the AI model and run faster, cost less, and are easier to test.
You sign in to each merchant yourself, MFA included, in a browser inside the app. Depensa never reads your username or password. Once you are signed in, the app grabs the session cookies from that in-app browser and loads them into a Firecrawl cloud browser profile on the server. Those cookies are authentication tokens, so Depensa treats them as sensitive. Later syncs run from that profile, so you don't have to log in again each time. The first connector run checks that the access actually works.
Convex handles auth, data, actions, and scheduled work. Merchant orders go into one reactive timeline. You can name and tag each connection, which lets you link two accounts on the same site.
Stack
- Expo, React Native, Expo Router (iOS and Android).
- HeroUI Native, Uniwind, Tailwind CSS 4.
- Convex, Better Auth.
- Firecrawl cloud browsers with persistent profiles.
- Bun workspaces, Turborepo, TypeScript.
This one is not open source.
