Deterministic output, downloadable from the payroll screen.
How it works
From a punch at the door to a month that closes on its own.
Four stages, one record. Nothing is retyped between them, and nothing important is decided by a system that cannot show its working.
- 01
Capture
Every punch arrives through one path, and none are lost on the way.
- A terminal sends to the TmAi24f gateway; the gateway pushes to Attendance over a per-site API key, which is stored only as a hash.
- Attendance also polls the gateway for anything it missed, with a five-minute overlap, so a gateway that loses its connection loses no punches.
- The same event sent twice lands once, keyed on the site and the source event id.
- A punch quoting a badge or enrolment id we do not know is held, not discarded. Create or correct the employee and it replays itself.
- 02
Watch
The questions a duty manager asks before nine in the morning.
- How many of today's rostered staff are on site, and where.
- Which departments are short against what the roster asked for.
- Who was due in and has not arrived, and by how many minutes, against your own tardy and late thresholds.
- Who still has an open session and no check-out.
- Updates arrive on a live stream that survives losing the network and resumes where it left off. When contact is lost the screen says so, because a quiet morning and a broken connection must not look the same.
- 03
Reconcile
Punches become hours, and what does not add up becomes a decision.
- Punches pair into sessions. An early arrival is clamped, a punch inside your grace window snaps to the rostered start or end, and the rest rounds to your chosen interval.
- A session belongs to the local date it started, so a shift crossing midnight lands on one day instead of being split across two.
- One base pay code per day, public holiday, Sunday or normal, in a precedence you set, then daily overtime, then weekly.
- Two or more sessions separated by at least your minimum gap earn a split-shift allowance as its own line.
- What cannot be resolved becomes a named exception: a missing punch, an overlong session, a no-show, or work with no roster behind it.
- A manager can write a session by hand. It replaces the punch-derived one for that day, it needs a reason, and the reason is kept.
- Recomputing is idempotent, and it never touches a day that has been approved.
- 04
Close
A period closes once, and what leaves it cannot drift.
- Monthly or weekly periods. Closing requires every day approved; you can force it, and the reason is recorded against the period.
- What comes out is an immutable batch of employee-by-pay-code lines, in minutes. Hours are derived for display, so rounding never accumulates on the way to payroll.
- A pay code with no mapping to your payroll's own code stops the close rather than being guessed at.
- Reopening voids any batch not yet delivered. A delivered period is final.
Getting it to payroll
Delivered, retried, and honest about which is which.
A closed batch is delivered automatically. If a delivery fails it retries with a widening gap, and after five attempts it is set aside for an administrator to send again.
Built and tested, with your pay codes already mapped to theirs. Hours cross automatically the day CyCom open their interface; until then they go as a file, and a batch is only ever marked delivered once it was.
The screens
Where the work actually gets done.
Roster
Shift templates of one to four segments, a split shift is one template with two segments, not two shifts. One assignment per employee per day. Copy last week without overwriting anything already assigned. Cyprus public holidays and weekends highlighted separately.
Timesheets
A week grid per employee, each day carrying its pay-code minutes. Approval is blocked while that week has open exceptions. Mark a day as annual leave, sick or off, add a manual session, or reopen a day that was closed too early.
Hours
Worked and overtime side by side, by week or by month, filtered by site and team. Days worked, scheduled minutes, late arrivals, early finishes and unapproved days. Out as CSV.
Leave
Annual, sick, unpaid and other, with a balance per type. Approve, reject with a reason, or cancel.
People
One profile per person, with the badge, enrolment id and credentials each terminal reports holding. Bulk import from CSV. An immutable audit of every attendance event on that person, machine and manager alike.
Settings
Which verification methods are allowed. Tardy and late thresholds. What to do about a missing check-out, flag it for review, use the rostered end, credit the rostered duration, or credit a fixed maximum, and how long to wait first. Roster display and workspace currency.
Bring us a week of your real operation.
Your sites, your departments, your shift patterns, and how you check people in today.