Back to Home

Wealthify

Personal finance app with ML-powered transaction categorization, spending insights, and bank integration.

The Problem

Managing personal finances is fragmented — people use separate tools for budgeting, expense tracking, and investment monitoring. Most solutions lack intelligent categorization, making it hard to understand true spending patterns and get actionable advice.

Tech Stack

Next.js
FastAPI
Supabase

Key Features

  • ML-powered transaction categorization that automatically classifies expenses into categories like groceries, utilities, and dining using a trained text classification model
  • Spending insights and trends surfacing patterns, anomalies, and personalized saving recommendations based on historical spending data
  • Bank integration via financial APIs for automatic transaction sync with deduplication and reconciliation
  • Multi-currency support handling expenses and conversions across currencies with live exchange rates

Challenges & Solutions

Transaction Categorization Accuracy

Problem

Raw bank transaction descriptions are messy and inconsistent — the same merchant may appear under multiple names, making rule-only categorization unreliable.

Solution

Built a hybrid pipeline combining regex-based pattern matching with a lightweight ML model (TF-IDF with logistic regression) that improves categorization accuracy as more transactions are labeled.

Real-Time Sync and Reconciliation

Problem

Keeping transaction data in sync across multiple bank connections required handling webhooks, rate limits, and duplicate transactions from overlapping sync periods.

Solution

Implemented a reconciliation system with idempotent ingestion keys, webhook event processing, and daily reconciliation jobs that detect and merge duplicate entries.

Privacy and Data Security

Problem

Handling sensitive financial data requires robust security without compromising user experience or feature velocity.

Solution

Enforced encryption at rest and in transit, implemented row-level security policies via Supabase, and designed an API surface that minimizes exposed financial data to the frontend.

Generating Actionable Insights

Problem

Static charts and tables do not drive behavioral change — users need contextual, personalized recommendations to act on their spending patterns.

Solution

Built a rule engine that detects spending anomalies (e.g., spending 2x the normal amount on dining) and surfaces them as contextual recommendations within the dashboard, linked to specific transactions.

Outcome

Wealthify gives users a unified view of their finances with intelligent categorization that improves over time, helping them understand spending patterns, detect anomalies early, and save more effectively.

GitHub
LinkedIn
X