Community, Lets make a better HR Module

Recently we had a demo with a multi-billion dollar corporation for ERPNext in their subsidiaries and it came out that the HR Module is the weakest part of the product at the moment to be implementation ready for larger enterprises.

Some of the key missing pieces were:

  • Leaves
    • Multi-level approval
    • Exceptional approval rules
    • Encashment
    • Optional Leaves
  • Payroll
    • Employee Grades (linked Salary Structures)
    • Deeper integration with leaves
    • Freezing of Payroll
    • Payroll Processing for large number of employees (> 1000)
    • Selection of Flexible pay options (income tax exemptions)
  • Department
    • Staffing
    • Hierarchy
    • Recruitment Planning
  • Employee Onboarding + Lifecycle

This is just to give you an idea. We would like the community experts to help us prepare detailed specs for these features so we can get them implemented. We think that if these features are there, ERPNext will become very attractive to mid-size activities.

Let us know if anyone is willing to volunteer for this.


Hi Rushabh,
Would be happy to pitch in.
I would rather do a rough implementation than a detailed specs though :slight_smile:

Hi @rmehta,

We too are from HR Organization,we too felt the same when we met with some corporates definitely we will be part of this feature development.

Currently you mentioned above missing,why dont we can start with those then we can add further while moving.

Thanks and Regards,
Abdulla P I

1 Like

This is a great initiative. The fact that ERPNext is being pitched to mutli-billion dollar company is a validation itself. Every system has its weaknesses. The biggest room is the “room for improvement”. Hope you will win the contract.

The only suggestion I have is to build a “generic workflow” where any doctype can flow through would be better than building individually built workflows.


I am interested to work on this

HR module each company have it’s own rules … the things in common is leave application depending in the tree of employee roles , like you are learder at department one and there is leader at department 2 so it will be based on your leader in the same branch (Tree) … also grade … @ahmad18189 we used to work on many customization for HR …

Some thoughts:

  1. Benefits (Insurance for example) integration with HR and terminal benefits
  2. Attendance linking with Payroll (can be a setting to either use Attendance data for payroll days or Leave data)
  3. Leave accumulation based on number of days worked
  4. Tax declaration capture (more India specific)
  5. Competency management
  6. Shift Register
  • ”Apply with Linkedin” - Linkedin integration for job application web form

  • Goals,Year Plan,Self Evaluation,Check-in (monthly/quarterly/half-yearly performance review) DocType

  • Onboarding/Promotion/Transfer/Resignation/Exit Interview/Career path(multiyear plan)/Employee Feedback(to manager) DocType

1 Like

Yes, we did many of Improvement, some of needed forms we manged to integrate lately :

64_desk#modules_HR Services|690x352


@ahmad18189 what do you think we are missing in HR also , i remember we did the Custody doctype and link it with employee and his retirement or when he left the company …

I think the better way is to start with attendance as a module with a wide settings which will be used in payslip generation also the formula in payroll still not satisfied for all contries in we look at sage payroll u can do whats ever in parametrrs and finally the analytical part with accounting module


No contribution :cry:


Your post does cover a lot, I would like to add the following

Disciplinary tracking - This allows a supervisor to query a subordinate, have this query answered by the surbidinate and actions taken by management after review. Actions can include warning, final warning, suspension without pay and termination.

Integration with Biomteric clocks. It will be nice to have a standard inbuilt way ERPNext integrates with biomteric clocks for attendance monitoring.

Staff Scheduling tool. Some staff work shifts. It will be nice to have a flexible scheduling tool that allows HR to define work periods (8am to 2pm 2pm to 9pm) and assigns staff to this periods. Staff will be able to review their shift and if needed apply for shift reassignment which can only be approved by mgt. If integrated with the biometric clocks this would be a powerful monitoring tool.

These are my thoughts.



@ahmad18189 how about we let the the party begin :stuck_out_tongue: lets Send some PR :stuck_out_tongue: … i’m ready to help since i wrote some of them , @OmarJaber @random.1 … what do you think guys ?


@ahmadRagheb I too ready to work with u people :sunglasses::sunglasses:

1 Like

All of the above mentioned features recommended to enhance the HR module will make it suitable for larger enterprises, but large enterprises often have conditional workflows for approvals based on some varying values of fields, so it will be great if such feature is considered, also the leave control panel “Leave allocation tool” will be more powerful if some extra options added to it such as creating leave allocation base on employee joining date and then some period options, (Monthly, Quarterly, anual, etc…) and to be converted as muti-entry doctype rather than single doctype such as payroll entry
@ahmad18189 @ahmadRagheb @OmarJaber My workmates … @rmehta @ahmadRagheb we should start making our PRs for our tremendous work


@rmehta thies change where made into v7 . recently i worked with my team to migrate it to v10 .
and thier also changes we made into accounting (like payment terms and PE advance payment Vat separation )
and will be happy to share all our changes with the community.
@ahmadRagheb @ahmed-madi @OmarJaber all Mawred erp HR services need to be fixed … remove the advance Workflow and clean the code so it can be accepted into erpnext .


What the main branch that we should clone from ?
devlop or master ?


If you share your repository community will be able to validate it

We desire that the statistical formula need to be looked into.There are some formulae that work well in microsoft excel to determine variable but fail to work in payroll of erpnext