1
1
Introduction
The Employee Payroll System is an automated solution
designed to manage and streamline the process of
calculating employee salaries, benefits, deductions, and
taxes. It enables businesses to manage their employee
payroll efficiently and accurately while ensuring
compliance with legal requirements. This system
simplifies payroll tasks, reduces errors, and enhances
the transparency of salary distribution.
2. Objective
The primary objectives of the Employee Payroll System
are:
To automate the payroll process, reducing the need
for manual calculations.
To ensure the timely and accurate distribution of
salaries to employees.
To maintain records of salaries, deductions,
bonuses, and benefits.
To comply with tax regulations and statutory
deductions such as Provident Fund (PF), Employee
State Insurance (ESI), and professional tax.
To generate detailed reports for management,
auditing, and tax filing purposes.
3. System Design and Architecture
The system consists of both a front-end interface for
interaction and a back-end database to store employee
information, payroll data, and related records. The
architecture includes the following components:
6. System Workflow
The workflow of the payroll system typically follows
these steps:
1. Employee Data Input: The system administrator
enters employee details, salary structure, and
allowances.
2. Payroll Calculation: The system computes the
gross salary, deductions, and net salary based on
inputted data and predefined rules.
3. Payslip Generation: The system generates payslips
and sends them to employees.
4. Tax Calculation: The system calculates applicable
income tax and other statutory deductions (e.g., PF,
ESI).
5. Report Generation: Various reports like payroll
summary, tax reports, and statutory deductions are
generated for review and filing.
7. Security and Privacy Considerations
The system handles sensitive employee data, including
personal information and salary details, which must be
protected by strong security measures:
if choice==1:
try:
print('Enter employee information...')
mempno=int(input('Enter employee no.'))
mname=input('enter employee name:')
mjob=input('enter employee job')
mbasic=float(input('enter basic salary:'))
if mjob.upper()=='OFFICER':
mda=mbasic*0.5
mhra=mbasic*0.35
mtax=mbasic*0.2
elif mjob.upper()=='MANAGER':
mda=mbasic*0.45
mhra=mbasic*0.30
mtax=mbasic*0.15
else:
mda=mbasic*0.40
mhra=mbasic*.25
mtax=mbasic*0.1
mgross=mbasic+mda+mhra
mnet=mgross-mtax
rec=(mempno,mname,mjob,mbasic,mda,mhra,mgross,mtax,mnet)
query="insert into "+TableName+" values
(%s,%s,%s,%s,%s,%s,%s,%s,%s)"
mycursor.execute(query,rec)
mydb.commit()
print('Record added successfully....')
except Exception as e:
print("5",e)
elif choice==2:
try:
print(2)
query='select * from '+TableName
mycursor.execute(query)
'''myrecords=mycursor.fetchall()
for rec in myrecords:
print(rec)'''
except :
print('Something went wrong')
elif choice==3:
try:
en=input('Enter employee no. of the record to be displayed...')
query="select * from "+TableName+" where empno="+en
print(query)
mycursor.execute(query)
myrecord=mycursor.fetchone()
print("LOADING.",end="")
for i in range(10000000):
if i%1000125==0:
print(".",end="")
print("loaded")
elif choice==5:
try:
en=input('Enter employee no. of the record to be deleted...')
print("LOADING.",end="")
for i in range(10000000):
if i%100125==0:
print(".",end="")
print("loaded")
query='delete from '+TableName+' where empno='+en
mycursor.execute(query)
mydb.commit()
c=mycursor.rowcount
if c>0:
print('employee no ',en,' not found')
except:
print('Something went wrong')