Offline-first · Private · Made for ₹

Know where your paisa goes.
Nobody else does.

PaisaFlow is an expense tracker that keeps every rupee on your device — a real SQLite database, no account, no server, no analytics. Log a chai in two taps, see salary day coming, and know exactly who still owes you ₹500.

  • 0 accounts to create
  • 0 bytes sent to a server
  • 1 file you fully own
PaisaFlow web app on a desktop: left sidebar with Home, Transactions, Add transaction, Insights and Settings; dashboard showing remaining balance, income, expenses and a due credit-card bill.
PaisaFlow on a phone in dark mode: monthly summary cards and the money hub grid.
Integer paise Amounts are stored as whole minor units — never floating point, so ₹0.01 is always ₹0.01.
SQLite, on-device One local database is the source of truth. On the web it is SQLite compiled to WebAssembly, saved in your browser.
Works offline Trains, basements, roaming abroad — the app never waits on a network.
Yours to take Export every transaction to CSV whenever you like. No lock-in, no "premium" export.

What is inside

Everything a money month in India actually needs

Not a dashboard for a hypothetical user — the screens that came out of tracking real salary days, UPI splits and "bhai, kab lautayega?".

Transactions & accounts

Income, expense and transfer between cash, bank, UPI wallet and credit card. Categories, tags, merchant, notes and payment method. Soft delete with undo.

Budgets with your cycle

An overall budget plus per-category limits, on a monthly cycle that can start on the day you actually get paid.

Insights

Daily, weekly and monthly trends and a category breakdown — drawn as plain SVG from local SQL aggregates.

Recurring payments

Rent, subscriptions and credit-card bills with due and overdue tracking, month-end clamping and one-tap confirm.

Salary tracking

Expected day, one-tap "credited", plus partial, bonus and delayed states — with a history per month.

People & money

A personal lending ledger: who you lent to or borrowed from, partial repayments, due dates and follow-ups by call, SMS or WhatsApp.

Investments

Mutual funds, FDs, RDs, PPF, stocks, gold — contributions, manual valuation, gain or loss, allocation and maturity dates.

Savings goals

Targets with scheduled contributions, suggested amounts and progress that only moves when you actually save.

Smart reminders

Morning and evening nudges whose text is composed from your own data: due lendings, salary, SIPs, goals, today's spend.

App lock

A 4–6 digit PIN. On Android it lives in the Keystore and re-locks after 30 seconds in the background.

SMS auto-tracking Android

Bank and UPI alerts are parsed on the phone into a review inbox — approve to add, dismiss to ignore. OTPs and promos are skipped. On the web, paste the alert text instead.

AI summary, your key

Optional monthly narrative via OpenRouter with an API key you bring. Only aggregates leave the device — never notes or transaction lists — and the app never lets AI do the arithmetic.

Privacy, specifically

What leaves your device: nothing, unless you switch it on

Always local

  • Transactions, accounts, categories, budgets, people, salary, investments, goals
  • SMS text in the review inbox (Android) — parsed on the phone, never uploaded
  • Your PIN — in the Android Keystore; on the web, only a salted hash

Only if you opt in

  • AI summary — sends pre-computed totals and category shares to OpenRouter with your key. Never notes, never a transaction list.
  • Cloud backup (Android) — to a Supabase project you control.

Honest about the web

Browser storage is less protected than a phone's keystore: anyone with access to your browser profile can read it. The web app says so where it matters, and keeps API keys encrypted at rest. For the strongest protection, use the Android app.

Same code, two homes

Web vs Android

One React Native codebase. The web build swaps the native pieces for browser ones and is upfront about what it cannot do.

Feature availability on web and Android
CapabilityWebAndroid
Tracking, budgets, insights, money hubYesYes
StorageSQLite (WASM) in IndexedDBSQLite on device
Works offlineYes, after first loadYes
SMS auto-trackingNo — paste alerts insteadYes
RemindersOnly while a tab is openScheduled, wakes the phone
App lockPIN hash in browserPIN in Android Keystore
AI summary (your OpenRouter key)Yes, key encrypted in browserYes, key in Keystore
Cloud backup (your Supabase)NoYes
CSV exportDownloadShare sheet

Get it

Try it in the browser now. Android build on request.

The web app needs nothing from you — it even offers sample data on first run so you can poke around. The Android app is not on the Play Store yet; the APK is shared on request.