Implementing New Attendance Policy in ERPNext

Hello everyone,

I hope you’re all doing well. I’m currently working on implementing a new attendance policy in ERPNext for our office, and I could really use some guidance to ensure I’m setting it up correctly. Here are the details of the requirement:

  1. Current Setup:
  • Shift start time: 9:30 AM
  • Grace period: 15 minutes
  • Late check-ins considered after 9:45 AM
  1. New Requirement:
  • Total grace period for a month: 300 minutes
  • Maximum late period for a day: 1 hour (until 10:30 AM)
  • Entries beyond 10:30 AM considered half-day
  • If employee exhausts 300 minutes of grace period and is late by even one minute the next day, automatic absence is recorded regardless of check-in/out.

Now, here’s where I could use your expertise:

  1. Setting up the Monthly Grace Period:
  • How can I configure ERPNext to allocate 300 minutes of grace period per employee for a month?
  1. Handling Late Check-Ins:
  • How can I ensure that late check-ins beyond 10:30 AM are marked as half-day?
  • Is there a specific way to implement this rule within ERPNext’s attendance module?
  1. Automatic Absence:
  • What steps should I take to ensure that once an employee surpasses the 300-minute grace period and is late even by a minute the next day, an automatic absence is recorded?

Thank you in advance for your help!

Hello @Alfiya_Hussain,

Currently, Frappe HR does not support any of your requirements natively; however, they can be met through customization.

  1. There’s no option to set a total grace period.

  2. The system does not allow setting a maximum limit for late entries.

  3. In the Shift Type settings, within the “Working Hours Calculation Based On” field, it would be beneficial to include an additional option such as “First Check-in and SHIFT End Time or Last Checkout”.
    Note: To accommodate policies like marking an employee for a half-day if they check in after 10:30, it’s essential to base calculations on the employee’s first check-in and the shift end time.