Skip to main content

ERPNext how-to & fixes

ERPNext HRMS: Attendance, Leave & Employee Setup (2026)

Set up ERPNext HRMS (Frappe HR) in the right order for an Indian SMB: employee master, attendance, leave, shifts and recruitment.

Updated 12 Oct 202610 min readBy ManojFirst published 20 Jul 2026

ERPNext handles HR through Frappe HR, a separate open-source app installed on the same site, covering the employee master, attendance, leave, shift scheduling and recruitment. Set it up in order: build clean employee records first, then layer attendance, leave policies and shifts on top, because every downstream module reads from the employee master.

Short answer

ERPNext HRMS is delivered by Frappe HR, an open-source HR and payroll app that installs alongside ERPNext since version 14. It manages the employee master, attendance with geolocation check-in, leave policies and balances, shift rosters and recruitment. Configure the employee master first: attendance, leave and payroll all depend on it.

I set up HR modules on ERPNext for Indian organisations, and the usual mistake is the same: teams start marking attendance before the employee master is clean. I am Manoj, and I lead ERPNext and Frappe HR implementations at MithTech, a team of Frappe specialists in Bengaluru. I have watched a rushed HR rollout unravel more than once. The software is capable, but HR in ERPNext is a foundation-first job, and the foundation is the employee record.

InteractiveHR Setup Order

Build the employee master first

  1. Company, departments and designations
  2. Holiday List for the year
  3. Employee records, with joining date, manager and holiday list
  4. Shift Types and a default shift per employee
  5. Attendance capture (mobile check-in, biometric feed or manual)
  6. Leave Types, Leave Policy, then Leave Allocation for the period
  7. Recruitment, if you hire through the system

What is ERPNext HRMS and how does it relate to Frappe HR?

ERPNext HRMS is powered by Frappe HR, a dedicated open-source application that installs on the same site as ERPNext. From version 14 onward the HR and payroll modules were split out of core ERPNext into this separate app as they matured. Frappe HR is open source under GPLv3 and covers the full employee lifecycle.

Frappe HR is not a third-party bolt-on: it is built by the same team on the same Frappe framework, so it shares one database, one login and one permission model with your ERPNext accounting and inventory. That tight coupling is the point: an expense claim raised in HR posts straight to accounts, and payroll reads the same employee records you use for attendance.

If you are evaluating ERPNext as your core platform, treat HR as an included capability rather than a separate purchase. Hosting and support pricing varies by provider, but the HR application itself carries no licence fee. The Frappe HR page covers what we set up.

Skimmable summary: ERPNext HRMS is Frappe HR, a separate open-source (GPLv3) app installed on the same ERPNext site since v14. It shares one database and login with accounting, so HR, expense and payroll all read the same records.

How do I set up the employee master in ERPNext?

The employee master is the central record every other HR module depends on, so build it before attendance, leave or payroll. Create one Employee record per person with joining date, department, designation, reporting manager and company. Attach a Holiday List and, where relevant, a default shift, because attendance and leave calculations read these fields directly.

Get the structure right before the people. Here is the order I follow.

1

Company and org structure

Confirm the Company, then create Departments and Designations. These populate the dropdowns on every employee record, so define them once, cleanly.

2

Holiday List

Build a Holiday List for the year with weekly offs and public holidays. Leave and attendance both subtract holidays, so a wrong list quietly corrupts every downstream count.

3

Employee records

Create each Employee with joining date, department, designation, reporting manager and the linked Holiday List. Link the user account if the person needs self-service access.

4

Reporting hierarchy

Set the "Reports to" field so leave and expense approvals route to the correct manager automatically.

Skimmable summary: Build the employee master first — Company, Departments, Designations, then a Holiday List, then one Employee record per person with joining date, department, manager and holiday list. Every other module reads these fields.

How does attendance work in ERPNext HRMS?

Attendance in Frappe HR records each employee's presence per day and feeds directly into payroll. Staff check in and out through a mobile PWA that can capture geolocation, through biometric device integration, or via manual entry by HR. Attendance is then processed against the assigned shift to mark present, absent, half-day or on-leave for the period.

You have three practical ways to capture attendance, and most Indian SMBs mix them:

Capture methodBest forNotes
Mobile app (PWA) check-inField staff, remote teamsCan capture geolocation at check-in
Biometric device feedFactory, office with hardwareDevice logs import into ERPNext
Manual entry / bulk uploadSmall teams, correctionsHR marks or imports attendance

Attendance is evaluated against the employee's shift, so a missing or wrong shift assignment is the usual reason attendance looks off. Regularise exceptions — a forgotten check-out, an official-duty day — through the Attendance Request and Employee Checkin records rather than editing raw data.

Skimmable summary: Attendance is captured via mobile PWA (with geolocation), biometric device feeds or manual entry, then processed against the assigned shift. Wrong or missing shift assignments are the usual cause of odd attendance.

How do I configure leave management in ERPNext?

Leave management in ERPNext runs on four building blocks: Leave Types, a Leave Policy, Leave Allocation and a Leave Application workflow. Define each leave type (earned, casual, sick, unpaid), group them into a policy, allocate balances to employees for the period, then let staff apply through self-service while ERPNext computes remaining balances and routes approvals.

Configure leave in this sequence so balances calculate correctly.

1

Define Leave Types

Create each Leave Type — earned/privilege, casual, sick, unpaid — with its rules: whether it carries forward, whether it is paid, and any maximum allocation.

2

Build a Leave Policy

Group the leave types and their annual counts into a Leave Policy, then assign it so allocations can be generated consistently across the team.

3

Allocate leave

Create Leave Allocations (or Leave Policy Assignments) for the period. This is the step that sets each employee's opening balance — skip it and applications have nothing to draw down.

4

Enable applications and approvals

Employees raise a Leave Application; it routes to the Leave Approver (usually "Reports to"); ERPNext checks the balance and updates it on approval.

The most common leave problem I see is a zero balance despite a configured policy — almost always a missing Leave Allocation for the current period, or a leave type that was never added to the policy assignment.

Skimmable summary: Leave runs on Leave Types → Leave Policy → Leave Allocation → Leave Application. Allocation is the step people forget; without it balances read zero even when the policy is correct.

How does shift management work in Frappe HR?

Shift management assigns working-time patterns to employees so attendance can be judged against the right start and end times. Define a Shift Type (timings, grace period, working-hours thresholds), then create Shift Assignments to place employees on a shift for a date range. A roster view lays shifts out on a calendar, each coloured by its linked Shift Type.

Shifts matter because attendance processing is meaningless without them — the system needs to know when an employee was supposed to work to decide whether a check-in counts as late, present or half-day. For teams with rotating patterns, assign shifts ahead of time so mobile check-ins map to the correct shift automatically.

Skimmable summary: Define a Shift Type (timings, grace, thresholds), then assign employees to it via Shift Assignment or a default shift on the employee master. Attendance is judged against the shift, so unassigned shifts break attendance logic.

Does ERPNext HRMS handle recruitment?

Frappe HR includes a recruitment module covering the pipeline from opening to offer. Plan manpower with Staffing Plans, raise a Job Opening, collect Job Applicants, and move candidates through a hiring pipeline board with stages such as open, replied, shortlisted and accepted. Recruiters can rate applicants on the board and convert a hired candidate straight into an employee record.

Because recruitment sits on the same platform, an accepted candidate flows into onboarding and the employee master without re-keying data — the same joining date and department you captured in hiring carry through. That continuity is the practical advantage of running HR inside ERPNext rather than stitching a separate ATS to your payroll.

For the payroll side of the employee lifecycle — salary structures, PF, ESI, professional tax and TDS — I have written a dedicated walkthrough on setting up payroll in ERPNext for India.

Skimmable summary: Frappe HR handles recruitment end to end — Staffing Plans, Job Openings, Job Applicants and a hiring pipeline board — and converts a hired candidate directly into an employee record, feeding onboarding and payroll with no re-keying.

Frequently asked questions

+Is ERPNext HRMS free?

The HR application itself, Frappe HR, is open source under GPLv3, like ERPNext, so there is no per-user licence fee. What you may pay for is hosting, implementation or support, which varies by provider.

+Is Frappe HR the same as ERPNext?

Frappe HR is a separate application built by the same team on the same framework, installed on the same site as ERPNext. Since version 14 the HR and payroll modules live in this dedicated hrms app rather than in core ERPNext, but they share one database, login and permission model with your accounting and inventory.

+Can employees mark attendance from their phone?

Yes. Frappe HR ships a mobile app as a PWA that supports check-in and check-out, and it can capture geolocation at the moment of check-in. This suits field staff and remote teams. Office sites can additionally feed attendance from biometric devices.

+Why is my leave balance showing zero in ERPNext?

A zero leave balance almost always means no Leave Allocation exists for the current period, or the leave type was never included in the Leave Policy Assignment. Configuring the leave type and policy is not enough on its own — you must also allocate leave to each employee for the period before applications can draw down a balance.

+What comes first, the employee master or attendance?

The employee master comes first, always. Attendance, leave, shift and payroll all read fields from the employee record — joining date, department, holiday list and shift. Marking attendance before employee records are clean produces wrong reports without warning, so build and verify the master before switching on any downstream module.

+Do I need a separate recruitment tool with ERPNext?

Not necessarily. Frappe HR includes recruitment — Staffing Plans, Job Openings, Job Applicants and a hiring pipeline board — on the same platform as onboarding and payroll. A hired candidate converts directly into an employee record, so for many SMBs a separate applicant-tracking system adds cost and data syncing without adding much.

Setting up ERPNext HR is not hard, but it punishes shortcuts: the employee master has to be clean before attendance, leave and shifts go live. If you want it set up right, or a second opinion on an existing configuration, talk to us. To see what a full rollout involves, estimate your price.

Your next step

Planning an ERPNext HR rollout?

See it live

Payday in one run

Salary, PF, ESI and TDS in one run, posted to the books and paid out.

You end with salary slips · 2 screens · about 3 min

No sign-up, no card, no account.

Next step · ERPNext how-to & fixes

Now see what an audit finds in yours

When the same problems keep coming back, tick what you see and get an audit of the ERPNext you have, then fixes in order of what costs you most.

Comments & ratings

No comments yet. Start a new discussion.

0

Manoj · Published on 20 July 2026

Worked with us? Leave a Google review

Questions about this? Talk to the team.

Book a 30-minute Google Meet, WhatsApp us, or send a message. The engineer who works on this replies.

Send us a message
Your details go to our team's CRM and are used only to reply.