Daily Check-In & Check-Out

Attendance tracking in Udyamo HRMS is built on the Attendance model, which records each employee's daily check-in time, check-out time, and calculated working hours. This chapter covers every aspect of the daily attendance workflow — from employee check-in to administrator corrections.


Prerequisites

Required: Before employees can check in:

  • At least one shift must be created and assigned to employees (see Creating & Assigning Shifts)
  • Employees must have active status
  • For web-based check-in, employees must have accepted their invitation and have login credentials

Attendance Model Overview

Each attendance record in Udyamo HRMS stores the following data:

FieldDescriptionExample
dateThe calendar date of the attendance record2025-06-15
check_in_timeThe timestamp when the employee checked in09:03
check_out_timeThe timestamp when the employee checked out18:15
working_hourCalculated total working hours (after deducting breaks)8.20

Additional data is captured through related models: shift, attendance events, break logs, and location coordinates.


Employee Check-In Process

Check-In via Web Portal

  1. The employee logs in to Udyamo HRMS.
  2. On the Dashboard, a prominent Check In button is displayed (if the employee has not yet checked in for the day).
  3. The employee clicks Check In.
  4. The system records:
    • The current timestamp as check_in_time
    • The current date as the date
    • The employee's location (if location tracking is enabled)
  5. The button changes to Check Out (or the status updates to "Checked In").
  6. A confirmation message displays the check-in time.

Check-in button on dashboard

Check-In via Mobile

  1. Open Udyamo HRMS on the mobile browser or app.
  2. Tap the Check In button on the dashboard.
  3. If location tracking is enabled, the app requests location permission. Grant it.
  4. The check-in is recorded with the location.

Check-In via Attendance Device

Biometric devices and face recognition terminals can also record check-ins. The device communicates with Udyamo HRMS via the AttendanceDevice API using token-based authentication. See Attendance Devices & Face Recognition for setup.


Employee Check-Out Process

  1. At the end of the work day, the employee navigates to the Dashboard or Attendance section.
  2. Clicks the Check Out button.
  3. The system records the current timestamp as check_out_time.
  4. Working hours are automatically calculated: check_out_time - check_in_time - break_duration.
  5. The attendance status updates to "Completed" for the day.

Check-out confirmation

Warning: If an employee forgets to check out, the attendance record for that day will show a check-in but no check-out, resulting in incomplete working hours. Administrators can correct this manually (see below) or configure auto-checkout policies.


Multiple Check-In Support

Udyamo HRMS supports multiple check-ins within a single day. This is useful for employees who leave and return during the day (e.g., client meetings, errands).

How It Works

  1. After checking out mid-day, the employee can click Check In again.
  2. The system creates a new check-in entry for the same date.
  3. Working hours are calculated as the sum of all check-in/check-out intervals.

Configurable Maximum Limit

Administrators can configure the maximum number of check-ins allowed per day.

  1. Navigate to Attendance > Settings.
  2. Locate the Multiple Check-In section.
  3. Set the Maximum Check-Ins Per Day value (e.g., 4).
  4. Save.
SettingDescriptionDefault
Maximum Check-Ins Per DayThe maximum number of times an employee can check in on a single dayConfigurable (typically 2-4)

Tip: If your organization does not need multiple check-ins, set the maximum to 1. This prevents accidental duplicate check-ins.

Working Hours with Multiple Check-Ins

When an employee has multiple check-in/check-out pairs in a day, the total working hours are calculated as the sum:

Check-InCheck-OutHours
09:0012:303.50
13:3018:004.50
Total8.00

Break duration is deducted from the total as configured in the shift settings.


Break Tracking

Udyamo HRMS supports explicit break tracking in addition to the shift-level break duration.

Logging a Break

  1. While checked in, the employee clicks Start Break on the dashboard.
  2. The break start time is recorded.
  3. When the break ends, the employee clicks End Break.
  4. The break end time is recorded.

Impact on Working Hours

  • If break tracking is enabled, actual break time is deducted from working hours.
  • If break tracking is not used, the shift's configured break duration is deducted.
ModeWorking Hours Calculation
Break tracking enabled(Total check-out - check-in time) - (actual break minutes)
Break tracking disabled(Total check-out - check-in time) - (shift break duration)

Tip: Break tracking provides more accurate working hour calculations, especially for employees with variable break lengths.


Late Check-In Handling

When an employee checks in after the shift start time plus the grace period, the check-in is flagged as late.

How Late Check-In Is Determined

  1. The system compares the check_in_time against the employee's assigned shift start time plus the configured grace period.
  2. If check_in_time > (shift_start + grace_period), the check-in is marked late.

Example:

  • Shift start: 09:00
  • Grace period: 15 minutes
  • Employee checks in at 09:20
  • Result: Late by 5 minutes

Late Check-In Visibility

WhoWhere to See Late Check-Ins
EmployeeDashboard attendance widget shows a "Late" indicator
ManagerTeam attendance view highlights late entries
AdminAttendance reports with late flag filter

Late Check-In Impact

The impact of late check-ins depends on the configured attendance policy (see Attendance Policies & Rules):

  • No impact — Late check-ins are logged but have no payroll effect
  • Half-day deduction — After a threshold number of late arrivals per month, a half-day is deducted
  • LOP (Loss of Pay) — Excessive late arrivals result in salary deductions

Early Check-Out Handling

When an employee checks out before the shift end time, the check-out is flagged as early departure.

How Early Check-Out Is Determined

  1. The system compares check_out_time against the shift end time.
  2. If check_out_time < shift_end_time, the departure is marked early.

Early Check-Out Impact

Similar to late check-ins, the impact depends on the attendance policy:

  • Minimum working hours may not be met
  • May trigger half-day or absent marking based on policy rules

Check-In from Different Devices

Employees can check in from various devices:

DeviceMethodLocation Tracked
Desktop browserClick "Check In" on the web portalBased on IP (approximate)
Mobile browserClick "Check In" on the mobile webGPS location (if permitted)
Biometric deviceFingerprint or card swipeDevice location (fixed)
Face recognition terminalFacial scanDevice location (fixed)
Mobile appTap "Check In" in the appGPS location

Tip: For organizations requiring strict location verification, enable geo-fencing in the office settings. Check-ins will only be accepted if the employee is within the configured radius. See Location Tracking.


Viewing Today's Attendance Status

Employee View

  1. Log in to Udyamo HRMS.
  2. The Dashboard displays:
    • Current status: Not Checked In / Checked In / Checked Out
    • Check-in time (if checked in)
    • Working hours so far (if checked in)
    • Check-out time (if completed)

Manager View

  1. Navigate to Attendance > Team Attendance or Dashboard > Team Overview.
  2. View a list of team members with their current attendance status.
  3. Filter by status: Present, Absent, Late, On Leave.

Administrator View

  1. Navigate to Attendance > Daily Attendance.
  2. View all employees' attendance for the current date.
  3. Use filters: department, office, status, shift.

Daily attendance admin view


Editing Attendance Records (Administrator)

Administrators can correct attendance records when employees forget to check in, check out, or when manual adjustments are needed.

Manual Edit

  1. Navigate to Attendance > Daily Attendance or open the employee's attendance record.
  2. Locate the date that needs correction.
  3. Click Edit on the attendance entry.
  4. Modify the Check-In Time, Check-Out Time, or both.
  5. Optionally add a Reason for the correction (for audit trail).
  6. Click Save.
  7. The working hours are automatically recalculated.

Edit attendance record

Warning: Attendance edits are logged in the system's audit trail. All changes show the original value, new value, who made the change, and when.

Manual Attendance Entry

For cases where no attendance record exists for a day (e.g., the employee worked but the system was down):

  1. Navigate to Attendance > Daily Attendance.
  2. Click Add Attendance or Manual Entry.
  3. Select the Employee from the dropdown.
  4. Select the Date.
  5. Enter the Check-In Time and Check-Out Time.
  6. Click Save.

Attendance Events

Every check-in, check-out, break, and modification is logged as an AttendanceEvent. This provides a detailed timeline for each day.

Event TypeDescription
check_inEmployee checked in
check_outEmployee checked out
break_startEmployee started a break
break_endEmployee ended a break
manual_editAdministrator modified the record
auto_checkoutSystem auto-checked out the employee based on policy
device_check_inCheck-in recorded by an attendance device

Administrators can view the full event log for any attendance record by clicking on the attendance entry and expanding the Event Log section.


Auto-Checkout

If configured in the attendance policy, the system can automatically check out employees who forget to check out.

SettingDescription
Auto-Checkout EnabledWhen enabled, the system automatically records a check-out for employees at a specified time
Auto-Checkout TimeThe time at which the system performs auto-checkout (e.g., 23:59 or shift end time)

Tip: Auto-checkout prevents incomplete attendance records but may result in inflated working hours. Combine with attendance policy rules that flag auto-checkout records for review.


Common Issues and Solutions

IssueCauseSolution
"Already checked in" errorEmployee tries to check in when already checked inCheck out first, then check in again (if multiple check-ins are enabled)
"Maximum check-ins reached"Employee has reached the configured daily limitAdministrator can increase the limit or add a manual entry
Check-in time is wrongEmployee's device clock is incorrectCheck-in time is recorded server-side; if still wrong, admin can edit
No check-out recordedEmployee forgot to check outAdmin can add the check-out time manually
Working hours show 0 despite check-in and check-outBreak duration exceeds working timeVerify the shift break duration configuration
Check-in rejected (location)Employee is outside the geo-fence radiusEmployee must be within the configured radius, or admin can add a manual entry

Next Steps