FinAccounting Get started

Attendance & Leave Module

Tracking Attendance & Leave

How to record clock-ins, set up leave types, and request and approve time off — built entirely on top of HR’s employee roster.

Depends on HR

Start here

1Before you start

This module doesn’t keep its own employee list — every self-service feature (clocking in, requesting leave, checking your own balance) works by matching you to an employee record in HR whose Linked User field points at your own login.

Hard dependency

If you don’t have an HR employee record linked to your account, self-service actions here return an error asking an administrator to link your account under HR. See HR’s guide, Giving an employee a login.

Team-level features — viewing everyone’s attendance, entering it manually, and approving or rejecting leave — need one of: a site administrator account, a Role Profile of Company Admin or HR Manager, or being listed as someone’s manager via HR’s Reports To field.

Set up

2Set up leave types

Every company starts with three leave types already defined, so people can request leave with no setup at all: Annual Leave (21 days/year), Sick Leave (10 days/year), and Unpaid Leave (0 days/year).

To customize them, go to Leave Policies and edit the list:

FieldNotes
LabelWhat it’s called, e.g. “Maternity Leave.”
Annual DaysHow many days each employee gets per calendar year. Set to 0 for an unlimited/untracked type — see below.
Requires ApprovalStored on the policy, though every request today goes through the same Submitted → Approved/Rejected flow regardless.
ColorUsed for display.

Saving replaces your whole list of leave types. If you save an empty list, it falls back to the three defaults rather than leaving you with nothing.

Day to day

3Record attendance

From My Attendance, click Clock In when you start and Clock Out when you finish. Hours worked are computed automatically from the difference. You get one record per day: clocking in again the same day without clocking out first is blocked, and so is clocking out before you’ve clocked in.

For anyone who doesn’t have a login to clock in themselves, see Recording attendance for someone without a login.

4Request leave

From My Leave, click Request Leave. Pick a Leave Type, a Start and End Date (or check Half Day for 0.5 days), and a Reason.

Days requested are counted as inclusive calendar days between start and end — weekends and holidays aren’t excluded, since there’s no holiday calendar in this app to exclude them against.

If the leave type has an annual allocation greater than zero, the request is blocked when it would exceed your remaining balance for that type this year. Every new request starts in Submitted status, waiting on someone with team-manage permission.

5Approve or reject leave

From Leave Requests (team view), click Approve or Reject on any Submitted request.

  • Approve — optional note. The employee’s used-days balance for that leave type and year is recomputed from scratch across every approved request, so it never drifts out of sync. Logged to System Logs.
  • Reject — a brief reason note is required. Also logged to System Logs.

Neither action touches anything outside this module — the employee’s HR Status field and Payroll are both left exactly as they were.

Common tasks

Recording attendance for someone without a login

Anyone with team-manage permission can open the Team Attendance screen and enter or edit a record directly for any employee and date — this is the only way to log attendance for someone who has no Linked User to clock in themselves.

Set the employee, date, and Status (Present, Late, Absent, On Leave, or Half Day), plus optional clock times, hours worked, a related project, and notes. If you enter both clock times but no hours, hours worked is computed for you the same way self-service clock-in/out does.

Assigning shifts

In Shift Assignments, assign an employee a shift name, start/end time, and the days of the week it applies, with an optional effective-from date. This is a flat reference schedule — there’s no scheduling grid, and nothing here checks a clock-in against the employee’s assigned shift.

When a leave request exceeds the balance

If a leave type’s Annual Days is greater than zero, a request that would push someone over their remaining balance for that type and year is rejected outright at submission, with the remaining balance shown in the error. If Annual Days is set to 0 — the default for Unpaid Leave — that check is skipped entirely, so requests of that type are never blocked by balance.

Reference

Statuses

Leave request status

StatusMeaning
SubmittedEvery new request starts here, waiting on a decision.
ApprovedDays count against the employee’s balance.
RejectedDeclined, with a required reason note.
CancelledWithdrawn by the employee while still Submitted.
DraftDefined in the data model, but there’s currently no way to create a request in this state — every new request is Submitted immediately.

Attendance status

StatusHow it’s set
PresentSet automatically by self-service Clock In.
Late, Absent, On Leave, Half DayOnly set through manual/team entry — self-service clock-in never sets these.

What this module doesn’t do

Not connected to HR Status or Payroll

Approving a leave request doesn’t change the employee’s Status field in HR, and doesn’t feed Payroll in any way — those stay two entirely separate systems you keep in sync by hand if needed.

Leave days are calendar days

Weekends and holidays aren’t excluded from a leave request’s day count — there’s no holiday calendar anywhere in the app to exclude them against.

Shifts aren’t enforced

Shift Assignments is informational only — clock-in/out doesn’t check or validate against an employee’s assigned shift.

No geofencing or photo verification

Clock-in/out records a timestamp and whether it came from self-service (“web”) or manual team entry — nothing about location or identity verification.

FinAccounting — Attendance & Leave Reference Guide Back to top ↑