Skip to content

Own product

Sumant

Personal finance web app for Spain and Europe. Local-first, no bank connection required, with sync across devices.

Context

Many people want to know where their money goes, but the usual options ask for too much effort —a spreadsheet abandoned within weeks— or too much trust, like handing your bank credentials to an app. Sumant was built for the middle ground: a calm, clear and private tool.

It is a product of its own, designed, built and run by Óscar Gómez, founder of MROS Studio. It is not a client project.

What it does

  • Tracks expenses, income and transfers between accounts, with categories, budgets, goals, recurring items and subscriptions.
  • Imports bank statements in CSV, XLSX and Norma 43 (the Spanish banking standard), with header detection, column mapping, saved templates and possible-duplicate detection.
  • Suggests categories using a catalog of Spanish merchants and a prediction model that runs on the device itself.
  • Works offline as a PWA and syncs automatically across devices after signing in.
  • Interface in Spanish and English, and a paid plan handled with Stripe.

Technical decisions

Local-first. Data lives on the device first (IndexedDB) and syncs to PostgreSQL on Supabase, protected by row-level security policies. The app responds instantly even on a poor connection.

Reliable imports. Every imported transaction keeps its batch and origin, so any import can be undone. Ambiguous number formats are rejected with a visible message instead of being saved incorrectly.

Robust payments. The Stripe webhook is the single source of purchase status, and each purchase is recorded idempotently so a resent event never grants a duplicate license.

Separate architecture. The app (React and Vite) is served from Cloudflare; the landing page and the internal admin panel are built with Next.js.

Why it is here

Sumant shows how we work at MROS: a product shaped by a real problem, careful design, documented technical decisions and software that is kept running in production, not just delivered.