As we know Overtime Feature is one of the requirements by our ERPNext Community.
I have also done some research regarding this feature and here are some basic findings and designs to work on.
Policy and Purpose:
Purpose:
To compensate employees for hours worked beyond their standard schedule.Policy:
This company overtime policy won’t contradict any legal guidelines provided by local, state, or federal law.Policy Elements(To be covered):
-
Minimum and Maximum Hours Limit: The Minimum and Maximum hours limit parameter will be added to avoid a decline in work quality or other issues due to excessive working hours.
-
exempt or non-exempt Employee: We’ll classify our employees as exempt or non-exempt according to overtime pay laws. Non-exempt employees are workers who are entitled to earn the federal minimum wage and qualify for overtime pay.
-
Age Restriction: There will also be some age restrictions based on which there will be a proper validation.
Design:
As per my research, I came up with this design.
Options to be added in HR Settings:
-
Overtime Based On(Select): There will be two option for calculating overtime pay
- Timesheet: The employee will post the timesheet manually based on which Overtime pay will be calculated during payroll.
- Attendance: Based on entry and exit time, Which will be mapped in the Attendance document.
-
Overtime Minimum Limit.
-
Overtime Maximum Limit.
-
Minimum Age limit for Overtime.
Options to be added in Salary Structure:
-
Overtime salary Component (Select): Earning component which will reflect overtime pay in Salary slip
-
Overtime Rate Calculation Based On(Select):
- Formula: As per design can write formula.
example:rate = 1.5 * net_pay * overtime_hours
- Rate: You can also define standard numerical rate for overtime pay calculation
- Formula: As per design can write formula.
Changes in time sheet:
Is Overtime(checkbox) will be added in the Timesheet document, will be shown if Overtime is based on a timesheet. The employee will post their timesheet for their overtime hours.Workflow:
There will be two workflows for Overtime.-
Workflow Based on Timesheet(Manually):
- For this there should be a default shift in Employee Master or there should be a shift assignment document for Employee.
- The employee will fill their timesheet and get it approved by Hr manager for overtime pay calculation.
- After proper Approval of Hr manager, During the Payroll all Timesheet will be fetched in salary slip and overtime hours will be calculated accordingly.
- Based on hours and rate/formula the overtime pay will be calculated and will be reflected by salary component selected in salary structure for overtime, in Earnings Table.
-
Workflow Based on Attendance(Automated):
- Default shift or shift Assignment should be there.
- There is Auto Attendance feature already present in ERPNext. which automatically creates attendance based on employee check-ins(Fetched from biometric devices) and shift type.
- Based on entry and exit time of employee in Attendance Document the overtime hours and overtime pay will be calculated during payroll and will be reflected in the Earnings table.
These are some basic design patterns and workflow ideas, I propose based on my research. Please, provide us with some enhancements suggestions, or ideas to improve the current workflow.