Who was in, who was out —
on one honest record.
Swipe data says who was in the building; the absence report says who was out. Staff Attendance puts both on the same staff identity, reads the day with a rules engine — late in, left early, a missing swipe — and hands the business office a clean file instead of a screenshot. Every flag in plain English, every correction on the record.
From swipe to payroll, on the record.
Attendance isn't a dashboard to admire — it's the path from what the readers captured to what the business office can pay against.
- 01Swipes and absences import
Card-reader swipes and the Aesop absence report load onto the same staff identity every module already uses — no separate roster to reconcile.
- 02The engine reads the day
Late in, left early, a missing in-or-out swipe — each surfaced in plain English with an icon, colorblind-safe, never a raw code to decode.
- 03Non-count days step aside
Snow days and other excluded periods still show on the record, but don't count against anyone. Configurable per district.
- 04Corrections are deliberate
Fixing a time shows the old → new change, asks for a reason, and confirms before it writes — a payroll-relevant fix is never a silent slip.
- 05Payroll gets a file
Date, status, flags, first and last swipe export to real CSV or XLSX — a clean handoff to the business office, not a screenshot.
The day, flagged and fixable — without guesswork.
Every staff member, their swipes, and a plain-English flag when something's off. When a reader misfires, the fix is deliberate: old to new, with a reason, confirmed before it counts.
A time change writes only after someone confirms it — payroll never moves on a typo.
Inside Staff Attendance.
Card-reader swipes and Aesop absences resolve to the same staff record the whole platform uses — no parallel roster to keep in sync.
Late arrivals, early departures, and missing in-or-out swipes, each spelled out in plain English with an icon — colorblind-safe, never a raw code.
Excluded periods still show in the record but don't count toward a staff member's flags. Configurable per district, not hard-coded to one calendar.
Real CSV and XLSX exports — formula-injection safe — with date, status, flags, and first and last swipe. Ready for the business office as-is.
Editing a time shows the old → new change and asks for a reason and a confirmation before it writes, so a payroll-relevant fix is deliberate and on the record.
Shares Core identity, server-enforced roles, and the same audit trail as Conduct, Coverage, and Devices — nothing re-entered, every action attributable.
Running on a real year.
Staff Attendance runs against a full school year of real attendance data — swipes, absences, corrections, and exports, not a demo fixture. It's live where it was built, and it shares its spine with every other module on this site.
One person or the whole office.
Attendance runs on role-based access: one administrator can own it, or a district can split the responsibility across the office. Every action is scoped and audited on the server — shared responsibility never means blurred accountability.
The same record as everything else.
A staff member is one identity across the platform. Their attendance, the coverage they've given, and the audit trail behind every change all sit on the same Core — read and written under the same server-enforced roles.
- Referral 2027-0398 resolved — resolution shared with counselorOct 8
- Fine cleared — charger returned at Station BSep 30
- Cut slip 2027-0311 excused — attendance note attachedSep 22
- Chromebook CB-1102 assignedSep 3
Bring us your attendance headache.
Swipes, absences, snow days, the payroll export the business office actually needs — walked through end to end on anonymized demo data.
