Attendance Tracking

Track employee check-ins and checkouts, manage attendance records, handle overtime, and understand the complete attendance lifecycle.

User Guide Attendance Tracking

Attendance Records

The Attendance page shows all check-in and checkout records for your organization. Use the filters to narrow down records by date range, employee, branch, or status.

Filters

Use these filters at the top of the attendance page to find specific records:

Filter Type Description
Date Range Date Picker Select a start and end date to view attendance within a specific period.
Employee Select Search for a specific employee by name or ID.
Branch Dropdown Filter attendance records by branch location.
Status Dropdown Filter by attendance status: Present, Late, Absent, Half-Day, On Leave.

List Columns

Column Description
Employee Employee name and ID with photo thumbnail.
Date The calendar date of the attendance record.
Check-In The time the employee checked in, with the method icon.
Check-Out The time the employee checked out. Shows "—" if still checked in.
Status The attendance status badge: Present, Late, Absent, Half-Day, or On Leave.
Work Hours Total hours worked calculated from check-in to checkout.
Overtime Extra hours beyond the scheduled shift end time (if overtime is enabled).
Method How the check-in was recorded: Mobile GPS, Face Recognition, Desktop, ZKTeco, or Manual.
Actions Edit or delete the attendance record.
AttendUX — Attendance Records
Attendance Records
2025-04-12
All Branches
EmployeeDateCheck InCheck OutStatus
Ahmed M.2025-04-1208:0217:05Present
Sara A.2025-04-1208:4517:00Late
Khaled H.2025-04-12Absent
Mona I.2025-04-1207:5817:10Present
Screenshot: Attendance records page with filters

Attendance Statuses

Each attendance record is assigned one of the following statuses based on the employee's check-in time and shift schedule:

Status Badge Description
Present Green Employee checked in on time (within the grace period) and completed their shift.
Late Amber Employee checked in after the shift start time plus the grace period. Late minutes are calculated and may trigger automatic deductions.
Absent Red Employee did not check in at all during their scheduled shift.
Half-Day Blue Employee worked less than half of their scheduled hours. Can also be manually set by admin.
On Leave Gray Employee has an approved vacation or leave for this date. No check-in is expected.

Manual Attendance Entry

Administrators can manually add attendance records when needed — for example, when an employee forgot to check in, had a device issue, or worked at a remote location without GPS.

Field Type Required Description
Employee Select Select the employee for whom you are recording attendance.
Date Date The date of the attendance record.
Check-In Time Time The time the employee started work.
Check-Out Time Time The time the employee finished work. Leave empty if the employee is still working.
Status Select Select the attendance status: Present, Late, Half-Day, or Absent.
Notes Text Optional notes explaining the manual entry (e.g. "Device malfunction", "Remote work").
Tip: Manual entries are tagged with the "Manual" method badge so you can easily identify them in reports. Use notes to document why the entry was added manually.

Bulk Attendance Entry

When you need to add attendance records for multiple employees at once (e.g. a team event or off-site training), use the bulk attendance feature.

1

Select date and branch

Choose the date and optionally filter by branch to narrow down the employee list.

2

Check employees and set times

Select the employees who attended and set their check-in and checkout times. You can apply the same times to all or set individual times.

3

Submit all records

Click "Save All" to create attendance records for all selected employees at once.

Import Attendance

You can import attendance records from a CSV file. This is useful when migrating from another system or importing data from biometric devices that export CSV files.

1

Download the template

Download the CSV template from the import page. The template includes columns: Employee ID, Date, Check-In Time, Check-Out Time, Status.

2

Fill in the data

Open the CSV in Excel or Google Sheets and fill in your attendance data. Use the format YYYY-MM-DD for dates and HH:MM for times.

3

Upload and review

Upload the completed CSV. The system validates the data and shows a preview with any errors highlighted before importing.

Warning: Importing attendance records will overwrite any existing records for the same employee and date. Always review the preview carefully before confirming.

Check-in Methods

AttendUX supports multiple check-in methods. Each method is tagged on the attendance record so you can see how each employee checked in:

Method Icon Description
Mobile GPS Employee checks in via the mobile app with GPS location verification. The app confirms they are within the branch geofence radius.
Face Recognition Employee checks in via the mobile app using face recognition. Requires a pre-captured face encoding in their profile.
Desktop Check-in from the web dashboard by an administrator. Used for office-based manual recording.
ZKTeco Device Attendance recorded via a ZKTeco biometric device (fingerprint, face, or card). Synced to AttendUX automatically or manually.
Manual Added manually by an administrator through the attendance form. Tagged so it's identifiable in reports.

Automatic Checkout

Automatic Checkout ensures that employees who forget to check out are not left with open attendance records. The system automatically closes the record at a configured time.

How It Works

When automatic checkout is enabled in Settings, the system monitors open attendance records (checked in but not checked out) and closes them automatically:

  • At shift end time — If the employee's shift ends at 17:00 and they haven't checked out by 17:00, the system records checkout at 17:00.
  • After a configurable delay — You can set a buffer (e.g. 30 minutes after shift end) before auto-checkout triggers, allowing for natural overtime.
  • Via scheduled task — A background process runs periodically to close stale records.
Warning: Auto-checkout records the shift end time as the checkout time, not the actual departure time. This means overtime will NOT be counted for auto-checkout records unless the admin manually adjusts the checkout time.

Single Punch Detection

Single punch detection identifies records where an employee checked in but never checked out (or vice versa). This helps administrators catch missed punches and take corrective action.

The system flags single-punch records in the attendance list and in the dedicated Single Punch Report. Administrators can then either add the missing checkout time manually, or the automatic checkout system will handle it at the configured time.

Tip: Review the Single Punch Report weekly to catch patterns. If an employee frequently forgets to check out, remind them or enable automatic checkout for their branch.

Overtime Detection

AttendUX can automatically detect and calculate overtime when employees work beyond their scheduled shift hours. Overtime settings are configured in the system Settings page.

Overtime Calculation

Overtime is calculated as the difference between the actual checkout time and the scheduled shift end time, minus any configured threshold:

Setting Description Example
Enable Overtime Master toggle to enable or disable overtime tracking across the system. On / Off
Overtime Rate The multiplier applied to the hourly rate for overtime hours (e.g. 1.5x means 50% extra). 1.5x
Overtime Threshold Minimum minutes beyond shift end before overtime starts counting. Prevents minor delays from counting as overtime. 15 minutes
Example

Ahmed's shift ends at 17:00. He checks out at 19:30. The overtime threshold is 15 minutes and the rate is 1.5x. Overtime = 19:30 − 17:00 − 0:15 threshold = 2 hours 15 minutes. If his hourly rate is 50 EGP, overtime pay = 2.25 hours × 50 × 1.5 = 168.75 EGP.

Location Validation (GPS Geofencing)

When employees check in via the mobile app, the system validates their GPS location against the branch geofence. This ensures employees are physically present at the workplace.

1

Employee opens the app

The employee opens the AttendUX mobile app and taps "Check In". The app requests their current GPS coordinates.

2

System calculates distance

The server calculates the distance between the employee's GPS position and the branch center coordinates. It compares this to the branch's geofence radius.

3

Accept or reject

If the employee is within the geofence radius, check-in succeeds. If outside, the check-in is rejected with a message: "You are outside the allowed area".

Warning: GPS accuracy varies by device and environment. Indoor locations, tall buildings, and basements can reduce accuracy. Set an appropriate geofence radius (we recommend 150–300m) to account for GPS drift.

Example: Employee Arrives Late

Example

Scenario: What happens step-by-step when an employee arrives late

1

Shift starts

Fatima's Morning Shift starts at 9:00 AM with a 15-minute grace period. She is expected to check in by 9:15 AM at the latest to be marked "Present".

2

Employee arrives late

Fatima arrives at the office at 9:32 AM — 32 minutes after shift start and 17 minutes past the grace period.

3

Check-in via mobile app

Fatima opens the AttendUX app, taps Check In. The app verifies her face and GPS location (within geofence). Check-in is recorded at 9:32 AM.

4

System marks status as "Late"

The system compares 9:32 against the shift start (9:00) + grace period (15 min) = 9:15. Since 9:32 > 9:15, Fatima is marked as "Late" with 17 minutes of lateness.

5

Deduction applied (if configured)

If automatic late deduction is enabled in Settings, the system applies the configured deduction tier. For example: 15–30 min late = warning, 30–60 min late = 0.5 day deduction. Fatima's 17 minutes past grace falls in the first tier.