Payment Manager
Finance Hub for Freelancers

The Challenge
Freelance income arrives in pieces — advances, per-page fees, monthly retainers, partial payments over UPI and bank transfer. Tracking it across chat screenshots, bank statements and notes made it hard to answer simple questions: how much is still pending on this project, what did I earn this month, and what is my real monthly average?
The Solution
I designed and built a focused finance workspace. The dashboard shows lifetime earnings, this month's revenue, active projects and a 12-month average, with an income trend chart, a project status breakdown and recent transactions. Projects track budget, paid and pending amounts with progress and status, including ongoing monthly retainers. Every payment records its method, reference and notes, with the payment screenshot stored as proof. Clients, projects and payments can be searched and exported, and an office-tasks grid stays in sync with Google Sheets for day-to-day work logs.
Technical Architecture
Next.js 14 App Router with TypeScript and server actions, Supabase for auth, PostgreSQL and file storage with SSR middleware protecting routes, Radix UI and Tailwind CSS, Recharts for analytics, Google Sheets API for office tasks, xlsx and jsPDF for exports, and a scheduled GitHub Action that keeps the database active. Deployed on Vercel.
Key Tech Stack
Business Outcome
In daily use as my personal system for tracking freelance clients, projects, payments and office work.
Interface & Dashboard Details


UX & Design Decisions
- A light, airy interface with one strong green accent, so money reads as calm and clear rather than alarming.
- Pending amounts and progress bars on every project, so outstanding money is impossible to miss.
- Payment proof lives next to each payment, so any transaction can be verified in one click.
- Retainers modelled as ongoing projects, so monthly income and one-off projects share one timeline.
