Payroll Management System is a desktop application built with Java Swing and MySQL/MariaDB. It handles employee records, salary configuration, daily attendance, a live analytics dashboard, and automatic statutory pay slip generation — including EPF, ESI, Professional Tax, and slab-based Income Tax (TDS).
Key Features
- Secure login authentication with parameterized queries (SQL-injection safe)
- Live dashboard with KPI cards (total employees, monthly payroll cost, average net salary, today's attendance %), a gross-salary bar chart, and an attendance donut chart
- Employee management — add, update, delete, and list employees
- Salary management — configure HRA, DA, MED, PF, and Basic Salary
- Statutory payroll engine — automatic EPF, ESI, Professional Tax, and TDS deductions on every pay slip
- Attendance tracking (First Half / Second Half)
- Detailed pay slip generation with full earnings/deductions breakdown and net salary
- Print support for employee lists and attendance reports
Tech Stack
- Java (JDK 8+, tested on JDK 21)
- Java Swing (custom UI design system, Java2D vector icons — no image assets)
- MySQL / MariaDB (works with XAMPP)
- JDBC (MySQL Connector/J)
Statutory Deduction Logic
- EPF — taken from the salary record's PF field
- ESI — 0.75% of gross salary, applied only if gross ≤ ₹21,000/month
- Professional Tax — generic slab (₹0 under ₹10k, ₹150 for ₹10k–15k, ₹200 above ₹15k gross)
- Income Tax (TDS) — FY24-25 new-regime slabs on annualized gross minus ₹75,000 standard deduction
Default login credentials: admin / admin. Ideal for students and developers learning Java Swing GUI development, JDBC database integration, and real-world payroll/business application design.
- Download and extract the source code
- Start MySQL/MariaDB (e.g. via XAMPP control panel)
- Import payroll.sql into phpMyAdmin/MySQL to create the database and tables
- Update DB credentials in src/conn.java if needed (default: root, empty password, port 3306)
- Compile: javac -encoding UTF-8 -cp "lib/mysql-connector-j-8.3.0.jar" -d build/classes src/*.java
- Run: java -cp "lib/mysql-connector-j-8.3.0.jar;build/classes" splash
- Login with default credentials: admin / admin
Stuck while running it? Chat with us on WhatsApp for free installation help.
No reviews yet. Be the first to review this project.