Case study — Independent
PaisaSplit
An expense-sharing app for Indian friend groups, families and trips — track shared costs, split bills in different ways, and settle up over UPI.
- Type
- Expense-sharing mobile app
- Stack
- Flutter · Dart · Node.js · MongoDB · Provider · Express · Mongoose · JWT · Google OAuth · Firebase Cloud Messaging · Google ML Kit · Nodemailer · GitHub Actions
- Live
- Google Play ↗
Context & problem
PaisaSplit is an expense-sharing app for Indian friend groups, families and trips. People track shared costs, split bills in different ways, and settle up over UPI.
My responsibilities
- Built groups with five types — Family, Friends, Couple, Trip and Office — including group photos and a balance limit.
- Added three ways to join a group: QR code, deep link and email invite.
- Built on-device receipt scanning with Google ML Kit OCR that splits a bill item by item.
- Built settling up through UPI and PayPal payment links.
- Added monthly budgets and per-person net balances across all groups.
Implementation & technical decisions
- Flutter (Dart) with Provider for state management.
- Node.js and Express API with MongoDB (Mongoose).
- Sign-in with JWT and Google OAuth.
- Receipt OCR runs on the device with Google ML Kit.
- Push notifications through Firebase Cloud Messaging, and email through Nodemailer.
Links
Visit Google Play ↗Discuss a project
Share this case study