Expense Management System Final Year Project | Source Code
LIMITED TIME
Get Source Code ₹99
Real project UI Full source included

No live demo yet — message us for access

Our team shares demo access on WhatsApp within minutes

Expense Management System Final Year Project

Complete final-year project source code with frontend, backend, database, and setup guide. Instant download after secure payment.

  • NODE-JS Stack
  • Instant Download
Secure CCAvenue payment Instant download link WhatsApp support

Choose your plan

Source Code Only

Full ZIP with frontend, backend, database & documentation.

₹99 one-time
  • Complete project source files
  • Database script included
  • How-to-run guide

What's in your download

Review features, setup steps, and credentials before you pay.

Project Overview

Description, tech stack, and what is included

Full source Frontend + backend
Database .sql file
Setup guide README included

Expense Management System is a full-stack MERN application designed for tracking personal expenses, shared expenses, budgets, categories, receipts, group splits, and financial activity. The system includes a user portal for managing day-to-day expenses and a dedicated Admin Console for managing users, expenses, receipts, groups, categories, budgets, verification views, and reports.

Users can register with email OTP verification, log in securely, create and manage expenses, upload receipt images, organize expenses by category, track monthly and category-level budgets, generate spending reports, create groups, manage members, split group expenses, view balances, and receive in-app notifications. The system also supports forgot password and reset password using OTP, making it suitable for real-world academic demonstration.

The Admin Console allows administrators to view platform-wide analytics, manage users, audit all expenses, review receipts, manage groups, maintain global categories, delete budgets where required, and access verification/reporting views. This project is suitable for B.Tech, M.Tech, BCA, MCA, BE, ME, BSc, and MSc students who need a practical final year project, major project, or minor project based on personal finance tracking, expense management, group expense splitting, MERN stack development, JWT authentication, MongoDB database design, and admin dashboard functionality. FileMakr can provide this project with source code, project report, documentation, and setup support for academic submission.

Technical snapshot

Project
Expense Management System Final Year Project
Stack
NODE-JS
Includes
Code, DB, README
License
Academic submission
Secure CCAvenue payment · Instant download · Need help? WhatsApp us

Admin Features

Modules and controls available to administrators

  • Secure admin login in this final year project
  • Role-based admin access
  • Admin sidebar layout
  • Admin dashboard
  • View aggregated user metrics
  • View expense analytics
  • View activity analytics
  • Manage all users
  • List all users
  • View user details
  • Update user fields
  • Update user name
  • Update verified flag
  • Update active status
  • Delete user account
  • Cascade related user data where applicable
  • View per-user expenses
  • Manage global expenses
  • View all expenses across the system
  • View expense detail
  • Edit expense records using PATCH
  • Delete expenses when needed
  • Receipt audit management
  • View uploaded receipt list
  • Remove receipt attachment from an expense
  • Manage groups
  • List all groups
  • View member count
  • View expense count
  • View group detail
  • Update group metadata
  • Delete group where needed
  • Delete group expense where needed
  • Manage global categories
  • View category usage
  • Add categories
  • Edit categories
  • Delete categories safely when not referenced
  • Manage budgets
  • View budget records
  • Delete budgets where appropriate
  • Access verification-oriented views
  • View summary reports
  • Monitor system-level expense activity
  • Maintain operational control over users, categories, groups, budgets, receipts, and expenses

User Features

What end users can do in this application

  • User registration in this final year project
  • Email OTP verification
  • Gmail SMTP support when configured
  • User login
  • JWT-based user session
  • Forgot password using OTP
  • Reset password using OTP
  • Resend verification OTP
  • View profile
  • Update profile details
  • Change password
  • Optional avatar upload
  • Create personal expenses
  • View expense list
  • Search expenses
  • Filter expenses
  • Paginate expense records
  • View expense detail page
  • Edit expenses
  • Delete expenses
  • Add expense notes
  • Select payment method
  • Select category
  • Select expense date
  • Upload receipt images
  • Manage default system categories
  • Create custom user categories
  • View category usage statistics
  • Create monthly budgets
  • Create category-level budgets
  • Track spending against budget
  • View dashboard summary metrics
  • View spending trends
  • Generate reports by period
  • View daily reports
  • View weekly reports
  • View monthly reports
  • View category-wise reports
  • View budget vs actual report
  • Create groups
  • Manage group members
  • Add group expenses
  • Split expenses equally where supported
  • View group balances
  • View group detail
  • Group owner can update group information
  • View in-app notifications
  • Use landing page and polished user interface
  • Confirm destructive actions before deletion

Other Features

Additional capabilities included in the project

  • Full-stack MERN architecture in this final year project
  • MongoDB database
  • Mongoose schemas
  • Express.js REST API
  • React SPA using Vite
  • React Router navigation
  • Tailwind CSS v4 styling
  • JWT authentication
  • bcrypt password hashing
  • express-validator validation
  • Multer file upload support
  • Receipt upload storage
  • Nodemailer SMTP support
  • Email OTP verification
  • Forgot password and reset password workflow
  • Personal expense CRUD
  • Shared expense tracking
  • Group expense splitting
  • Budget tracking
  • Category management
  • User-specific custom categories
  • System default categories
  • Admin and user role-based access
  • Admin analytics dashboard
  • Admin verification and report views
  • In-app notification data
  • Search, filters, and pagination
  • Safe category delete where not referenced
  • Database seed support
  • Demo users, admin, expenses, budgets, categories, and group split data
  • Production build support
  • Local development support using Node.js and MongoDB

Technology Used

Layer Technology
Frontend React with Vite
Routing React Router
Styling Tailwind CSS v4
Backend Node.js, Express.js
Database MongoDB
ODM Mongoose
Authentication JWT, bcrypt
Validation express-validator
File Upload Multer
Email / OTP Nodemailer SMTP
Runtime Node.js
Upload Storage Server uploads folder

How to Run

Step-by-step setup on your laptop or PC

Step 1: Copy environment file

Copy the server environment template:


 
copy server\.env.example server\.env

For macOS/Linux:


 
cp server/.env.example server/.env

Step 2: Configure environment variables

Open server/.env and update the required values:


 
PORT=5000
MONGODB_URI=mongodb://127.0.0.1:27017/expense-management-system
JWT_SECRET=your_long_random_secret
JWT_EXPIRES_IN=7d
CLIENT_URL=http://localhost:5173
SMTP_HOST=your_smtp_host
SMTP_PORT=587
SMTP_USER=your_smtp_email
SMTP_PASS=your_smtp_app_password
[email protected]
ADMIN_PASSWORD=Admin@123

SMTP configuration is optional for development. If Gmail SMTP is used, an app password should be used instead of the normal Gmail password.


Step 3: Install dependencies

From the project root:


 
npm run install:all

Or install server and client separately:


 
cd server && npm install
cd ../client && npm install

Step 4: Start MongoDB

Make sure MongoDB is running locally or update MONGODB_URI with a valid MongoDB Atlas connection string.


Step 5: Seed the database

From the project root:


 
npm run seed

The seed command creates the admin user, default categories, demo users, sample expenses, budgets, and a group with split expense.


Step 6: Start the API

From the project root:


 
npm run dev:server

Or from the server folder:


 
npm run dev

Default API URL:


 
http://localhost:5000

Step 7: Start the React client

From the project root:


 
npm run dev:client

Or from the client folder:


 
npm run dev

Default frontend URL:


 
http://localhost:5173

Production Build

For server:


 
cd server && npm start

For client:


 
cd client && npm run build

The production build output is generated in:


 
client/dist

Application URLs

Area URL
Frontend http://localhost:5173
Backend API http://localhost:5000
User Login Based on client routes
User Dashboard Based on client routes
Admin Console /admin/...
API Base /api
Receipt Uploads server/uploads

Login Credentials

Default demo accounts for testing after setup

These credentials apply after running npm run seed, unless admin values are overridden in server/.env.

Admin Login

Role Email Password
Administrator [email protected] Admin@123

Demo User Login

Role Email Password
Demo User [email protected] Demo@123
Demo User [email protected] Demo@123
Demo User [email protected] Demo@123

Security note: Change all default passwords before any public or production deployment.

License

Usage terms for academic and personal projects

Related Tags

Search terms and categories for this source code

Expense Management System Final Year Project Source Code Final Year NODE-JS Project Ready-to-Run Code With Database File Plagiarism-Free Faculty Approved Expense Management System expense tracker project personal expense management system shared expense management system budget tracking system group expense split project MERN stack expense tracker MongoDB Express React Node project final year project major project minor project source code project report expense management source code receipt upload project budget management project category expense tracking system admin expense dashboard college project source code