Supervisor Workflow

Attendance Management — view, filter, regularize

A complete training guide for Stafferin supervisors: filter guard attendance by date, site, or employee; expand a record to see breaks, location, and notes; open the check-in/check-out point on Google Maps; and regularize records when a guard's check-in time, check-out time, or pay rate needs correcting.

Mobile app · admin role ~9 min read Latest version
Section 1

Before you start

Attendance Management is the supervisor's view of every guard's check-in and check-out. It's where you confirm coverage, spot missing records, and correct mistakes. Get a few things lined up before you open it.

Sign in with admin / lead credentials
This page is gated to lead-tier and supervisor roles. Standard guards won't see it on their menu.
Know which sites you supervise
The Site dropdown lists every site you have permission to view. If a site is missing, talk to your account owner.
Have a date range in mind
By default the page opens to today. To check yesterday's no-show or last week's overtime, you'll switch the preset.
Check your data signal
Pulling a week's attendance is more data than a single check-in. Wifi or strong cellular helps.
Know the guard's payroll cut-off
Regularizing a record after payroll is processed has different implications. Ask Operations if you're unsure.
Have the correct time on hand
Regularize asks for HH:mm (24-hour) like 09:00 or 17:30. Don't guess — pull it from the guard's report or the schedule.

Regularization changes a guard's pay record. Editing a check-in time changes hours worked, which changes wages. Always have a documented reason — a verified note from the guard, a site-log entry, or an incident report — before you regularize. Audit fields capture who and when, so it's traceable back to you.

Section 2

Open Attendance Management

From the Stafferin admin home menu, tap Attendance Management. You'll land on a page titled "Attendance Management" with a navy app bar — the formal admin tone. The Filters panel is open by default.

9:41
Attendance Management
Filters
Today Yesterday This Week Last Week This Month
From30 Apr 2026
To30 Apr 2026
All Sites
All Employees
Show Favorites Only
Apply Filters

Attendance Management — opens with Filters expanded and From / To set to today.

What you should see

  • A navy app bar reading "Attendance Management".
  • A Filters panel, expanded by default. Inside: a horizontal row of date-preset chips, the From / To date pickers, the Site dropdown ("All Sites"), the Employee dropdown ("All Employees"), a Search field ("Search by name, number..."), a "Show Favorites Only" toggle, and the blue "Apply Filters" button at the bottom.
  • Below the filters: an empty area with the message "Apply Filters to View Attendance" and the hint "Select date range and optionally filter by site or employee, then click 'Apply Filters'".
  • On first open, the page auto-applies filters once the org date and sites finish loading — so you'll often see records appear without needing to tap Apply Filters yourself.

The empty prompt is normal at first. It means filters haven't been applied yet (or auto-apply is still loading). Tap Apply Filters, or wait a moment for the auto-apply to complete.

If you see the empty prompt and never anything else, the org-date or sites endpoints failed silently. Pull-to-refresh, then check your network. The snackbar "Failed to load organization date." may flash briefly.

Section 3

How it works at a glance

Before we dig in, here's the full attendance review workflow on a single line. The indicator highlights each step in turn — that's the order you'll do them in.

1
Open page
Filters expanded
2
Pick date range
Preset or custom
3
Filter
Site / employee / search
4
Apply Filters
Records load
5
Tap to expand
See detail + map
6
Regularize
If correction needed

Decision flowchart

Behind the scenes, here's what the page is doing. The orange diamonds are decision points — places where the app or you decide which way the flow goes.

Open Attendance Management
App auto-loads org date + sites
Org date + sites loaded?
No
Pull-to-refresh
or check network
Yes
Auto-apply with
From=To=today
Need a different date / site / employee?
No
Skip — read the records
Yes
Adjust filters &
tap Apply Filters
Tap a card to expand detail
Does the record need correcting?
No
Done
Yes
Tap Regularize
edit + Submit

Plain-English version: Pick the dates, narrow the list, expand a row to see what happened, and fix it if it's wrong. That's the whole page.

Section 4

Watch the full flow

Six frames. Each one is a real screen from the app. Tap a step on the right to jump there, or use Pause / Restart.

9:41
Attendance Management
Filters
Today Yesterday This Week
All Sites
All Employees
Apply Filters
9:42
Attendance Management
Filters
Today Yesterday This Week
Downtown Office
All Employees
Apply Filters
9:42
Attendance Management
3 record(s) found
Site: Downtown Office
Alex Johnson
#EMP-204
Completed
29 Apr 2026 Downtown Office
In NFC
8:58 AM
Out GPS
5:02 PM
Duration
8h 04m
Maria Lopez
#EMP-117
In Progress
29 Apr 2026 Downtown Office
9:43
Attendance Management
Alex Johnson
#EMP-204
Completed
29 Apr 2026 Downtown Office
In NFC
8:58 AM
Out GPS
5:02 PM
Duration
8h 04m
Shift Details
PositionLobby Guard
Shift Time9:00 AM - 5:00 PM
Pay Rate$22.50
Break Time30m
Location
Check-in100 Main St
View on Map
9:44
Attendance Management

Regularize Attendance

Alex Johnson
Check-in Time (HH:mm)09:00
Check-out Time (HH:mm)17:00
Pay Rate22.50
Cancel
Submit
9:45
Attendance Management
Attendance regularized successfully
Alex Johnson
#EMP-204
Regularized Completed
29 Apr 2026 Downtown Office
In ADMIN
9:00 AM
Out ADMIN
5:00 PM
Duration
8h 00m

Step-by-step demo

  1. Open Attendance Management — Filters expanded.
  2. Pick a date preset (e.g., Yesterday) and a site.
  3. Tap Apply Filters. Records appear, count shown ("N record(s) found"). Active filter chips appear above the list.
  4. Tap any card — it expands to show shift detail, location, breaks, and a View on Map link.
  5. Tap Regularize, edit Check-in / Check-out (HH:mm) or Pay Rate, then Submit.
  6. "Attendance regularized successfully" — orange "Regularized" chip appears on the card.

You don't always need to regularize. Most records load fine — the regularize step only matters when a check-in / check-out time is wrong, missing, or the pay rate needs an override. Skip it for clean records.

Section 5

Reading an attendance row

Each card holds nine pieces of information. Once you can read one, you can read every record on the page in under a second.

9:46
Attendance Management
Maria Lopez
#EMP-117
In Progress
29 Apr 2026 Downtown Office
In NFC
8:55 AM
Out --
N/A
Duration
--
David Tran
#EMP-301
Regularized Completed
28 Apr 2026 Riverside Plaza
In ADMIN
7:00 AM
Out ADMIN
3:00 PM
Duration
8h 00m

Two cards — an in-progress one and a regularized completed one (orange-bordered).

Anatomy of a card

  1. Employee name & number

    Top-left of the header. Bold name. #EMP-204-style number underneath. Falls back to "Unknown" if the record has no name and the cached employee list can't resolve it.

  2. Status pill

    Top-right. Three values, all derived from check-in / check-out timestamps: Not Started (gray) — neither time present; In Progress (yellow) — checked in, not yet out; Completed (green) — both present. There is no Late, No-Show, or Absent state in this view.

  3. "Regularized" chip + orange border

    If the record has been edited, an orange "Regularized" chip appears next to the status pill, and the card itself gets a subtle orange border. Tap to expand to see who regularized it and when.

  4. Date & site row

    Below the header: a calendar icon with the date, then a pin icon with the site name. Long site names truncate with ellipsis.

  5. Check-in time + method badge

    Labeled "In". The tiny colored badge next to it tells you how the check-in was recorded: NFC indigo (tap a tag), GPS teal (geofenced location ping), ADMIN orange (a supervisor entered it manually — i.e., regularized), MANUAL grey (manual / unknown method).

  6. Check-out time + method badge

    Labeled "Out". Same badge palette as check-in. If the guard hasn't checked out, this shows N/A with no badge.

  7. Duration

    Computed by the server (not the app). Shown as "8h 04m" or similar. If check-out is missing, duration shows --.

  8. Chevron

    Down arrow — tap the card to expand. Up arrow — tap to collapse. Only one card is expanded at a time.

  9. Expanded detail (after tap)

    Shows up to four sections: Shift Details (Position, Shift Time, Pay Rate, Break Time + each break window), Location (Check-in / Check-out address with "View on Map" link), Notes (Employee Notes, Payroll Notes), and Regularization (audit trail — only if the record was regularized). At the bottom: a "Regularize" button.

Status reference

Three derived states. If you need Late / No-Show / Absent classifications, they're not in this view — talk to Operations about the Reports module.

Status Pill color What it means Typical action
Not Started Gray No check-in time recorded. Verify with the guard / site lead. If the guard worked, regularize the check-in time.
In Progress Yellow Checked in, no check-out yet. Wait — guard is still on shift. After shift end, check back. If they forgot to check out, regularize.
Completed Green Both check-in and check-out present. No action — record is closed. Regularize only if a time is wrong.
Regularized Orange An admin has edited check-in / check-out. Shown alongside the underlying status, not in place of it. No action — but the audit trail (in the expanded detail) tells you who and when.

Method badges

The four badges that can appear next to a check-in / check-out time. They tell you how the time was recorded — and "ADMIN" specifically flags supervisor edits.

Badge Color Meaning
NFC Indigo Guard tapped an NFC tag at the site to record this time. High confidence.
GPS Teal Geofenced location ping — the app saw the guard inside the site geofence and recorded the time.
ADMIN Orange A supervisor entered or overrode this time via Regularize. Look at the audit trail in the expanded detail to see who.
MANUAL Gray Manual / fallback — guard used a manual check-in option, or the method wasn't classified.

Why "ADMIN" matters. If both badges on a card are ADMIN, the guard never recorded the times themselves — they were entered by a supervisor. That's not necessarily wrong (e.g., the guard's phone died), but it's worth confirming the underlying reason. Check the Regularization audit trail.

Section 6

Filters & date range

Six filter controls. Use them in any combination — they all apply at once when you tap Apply Filters.

Date range

Two ways to set it: tap a preset chip, or use the From / To date pickers directly. Presets just fill in the From / To for you.

Today

Today

From = To = today's org date. The default on first open.

Yesterday

Yesterday

From = To = today minus one day. Quickest way to confirm last shift's coverage.

This Week

This Week

From = Monday of the current week (weekday 1) through today. Calendar week, not "last 7 days".

Last Week

Last Week

From = Monday of last week through Sunday. The full prior calendar week.

This Month

This Month

From = first day of the current month, through today.

Last Month

Last Month

From = first day of last month, To = last day of last month. The full prior calendar month.

Order rules. If you pick To earlier than From, you'll see "To Date cannot be before From Date". If you pick From later than To, you'll see "From Date cannot be after To Date". The pickers reject the change — your previous date stays.

Site dropdown

Defaults to "All Sites". Pick a single site to narrow the records to that location only. The Employee dropdown reloads automatically to show only employees assigned to that site.

"All Sites" clears the employee selection. Switching from a specific site back to "All Sites" wipes any employee filter you had set. If you want a single employee across all sites, pick "All Sites" first, then the employee.

Employee dropdown

Defaults to "All Employees". While loading, it shows "Loading employees...". The list cascades from the Site selection — pick a site first to narrow the employee roster.

Search

Free-text. Hint: "Search by name, number...". Matches against employee name and employee number. Case-insensitive. Combines with the dropdown filters — search inside the already-filtered set.

Show Favorites Only

A toggle near the bottom. Off by default. When on, only records for employees you've marked as favorites are shown. (Favoriting happens elsewhere — talk to Operations about how to mark.)

Apply Filters & active chips

None of the filter changes take effect until you tap Apply Filters. After that, your active filters appear as small dismissible chips above the list ("Site: Downtown Office", "Employee: Alex Johnson", "Search: maria", "Favorites Only"). Tap the on any chip to remove that filter and re-apply.

Pull-to-refresh on the list reloads the current filtered set. Use it after a guard finishes their shift to see their check-out come through. If filters aren't applied yet, the refresh shows "Please apply filters first".

Section 7

Regularize an attendance record

Use the Regularize sheet when a check-in time, check-out time, or pay rate needs correcting. The sheet has three optional fields — fill at least one of the time fields.

9:50
Attendance Management

Regularize Attendance

Alex Johnson
Check-in Time (HH:mm)09:00
Check-out Time (HH:mm)17:00
Pay Rate22.50
Cancel
Submit

The Regularize bottom sheet — three fields, at least one time required.

The three fields

  1. Check-in Time (HH:mm) — optional

    Hint: 09:00. 24-hour clock. Pre-filled with the guard's actual check-in if there was one. Leave blank to keep the existing value. If you want to set a check-in, type a 24-hour time like 14:30.

  2. Check-out Time (HH:mm) — optional

    Hint: 17:00. Same format. Pre-filled with the actual check-out, or empty if the guard never checked out.

  3. Pay Rate — optional

    Hint: 15.00. Decimal number, no currency symbol. Pre-filled with the current pay rate (e.g., 22.50). Used to override the rate for this specific record.

Tap Submit. On success, the sheet closes, the list refreshes, and a green toast confirms "Attendance regularized successfully". The card now shows the orange "Regularized" chip and an orange border. Tap it to see the audit detail.

Validation rules

Before the Regularize call goes out, the app checks four things. Fail any and you get an inline snackbar.

Rule What you'll see if you violate it Fix
At least one time must be provided Please enter at least a check-in or check-out time Type something into either field.
Check-in must be HH:mm Invalid check-in time format. Use HH:mm Use 24-hour like 09:00, not 9 AM.
Check-out must be HH:mm Invalid check-out time format. Use HH:mm Same.
Pay rate must parse as a number (if provided) Invalid pay rate value Numeric only, e.g. 22.50. No $, no spaces.

Audit trail (after regularization)

Once regularized, expanding the card shows a new Regularization section with five fields:

  • Reg. Check-in — the new check-in time you entered.
  • Reg. Check-out — the new check-out time you entered.
  • Reg. Pay Rate — the new pay rate (formatted as $15.00).
  • Regularized By — your name (the supervisor who submitted).
  • Regularized At — the timestamp when the regularize was submitted.

Regularizing an already-regularized record overwrites the previous regularization. The audit trail keeps only the latest set of values. If you need a longer history, document changes in your own log before re-regularizing.

Regularizations affect payroll. A check-in shifted from 9:00 to 9:30 reduces paid hours by 30 minutes. Be sure of the correct time before submitting — pull from the guard's report, the site log, or the schedule. Your name is on the record forever.

Section 8

Errors & how to fix them

Every error message you can see while using Attendance Management, with what it actually means and what to do.

Filter / date errors

If you see…It meansDo this
"Please apply filters first" You pulled-to-refresh before tapping Apply Filters at least once. The list isn't loaded yet. Set a From / To range, then tap Apply Filters. Pull-to-refresh works after that.
"Please select both From and To dates" One of the two date pickers is empty. Tap the empty picker, choose a date. Or tap a preset chip — it fills both at once.
"From Date cannot be after To Date" You tried to set From to a date later than To. Pick an earlier From, or first move To later.
"To Date cannot be before From Date" You tried to set To to a date earlier than From. Pick a later To, or first move From earlier.

Loading errors

If you see…It meansDo this
"Failed to Load Attendance" The attendance list endpoint failed. Could be network or server. Tap the Retry button. If it persists, switch to wifi.
"Failed to load attendance records." Snackbar version of the same. Shows briefly at the bottom. Pull-to-refresh, or wait a moment and try again.
"Unable to load more records." Pagination failed — the next page of records didn't load. Scroll up and pull-to-refresh. Your existing records stay visible.
"Failed to load organization date." The org date couldn't be auto-detected. From / To stay empty. Pick From and To manually using the date pickers.
"Failed to load sites." / "Unable to load sites." The site dropdown couldn't populate. You'll see "All Sites" only. Pull-to-refresh. If still failing, retry once you have a stronger connection.
"Unable to load employees." Employee dropdown couldn't populate after a site selection. Try a different site or pick "All Sites" then pull-to-refresh.

Regularize errors

If you see…It meansDo this
"Please enter at least a check-in or check-out time" Both time fields are empty in the Regularize sheet. Type at least one time in HH:mm.
"Invalid check-in time format. Use HH:mm" The check-in field doesn't parse — wrong shape, non-numeric, or out-of-range hour/minute. Use 24-hour HH:mm exactly. Examples: 09:00, 14:30, 23:45.
"Invalid check-out time format. Use HH:mm" Same problem on the check-out field. Same fix.
"Invalid pay rate value" The pay rate field doesn't parse as a decimal number. Type only digits and a single decimal point — e.g., 22.50. No $, no spaces.
"Failed to regularize attendance." Server rejected the regularize submission, or a network drop mid-submit. Re-open the card, tap Regularize again. If it fails twice, contact Operations.
"Unable to regularize attendance." Network exception (no response). Same as above but a different code path. Switch to wifi and retry.
"Attendance regularized successfully" Success — the change was saved. The list refreshes automatically. The card now has the orange "Regularized" chip.

Empty / pre-filter states

If you see…It meansDo this
"Apply Filters to View Attendance — Select date range and optionally filter by site or employee, then click 'Apply Filters'" Filters haven't been applied yet (or the auto-apply is still loading). Set From / To, optionally pick a site / employee, then tap Apply Filters.
"No attendance records found — Try adjusting your filters or date range" Filters were applied successfully but the result set is empty. Broaden the date range, drop the employee filter, or check spelling in Search.
Section 9

FAQ

Why is the page empty when I first open it?

It's not empty — the auto-apply is loading. The page asks the server for today's org date and the site list before applying filters automatically. If that takes more than a second on a slow connection, you'll see the "Apply Filters to View Attendance" prompt briefly. Wait, then either the records appear (auto-apply succeeded) or they don't (something failed silently — see Section 8).

Can I filter by multiple sites at once?

Not in the UI. The Site dropdown is single-select. Internally the API accepts multiple site IDs (the field is plural siteIds), but it isn't exposed yet. If you need cross-site reporting, work around it by picking "All Sites" and using Search.

What's the difference between "Not Started" and "No Show"?

This page only shows "Not Started" — meaning no check-in time was recorded. It does not classify No-Show. A "Not Started" record could be a no-show, a guard whose shift hadn't begun yet, or a guard who worked but never tapped check-in. Verify with the site lead before treating it as a no-show.

What does "ADMIN" on a method badge mean?

That time was entered by a supervisor via Regularize, not by the guard. If both check-in and check-out badges show ADMIN, the entire record was supervisor-entered. The Regularization section in the expanded detail tells you who and when.

Can I un-regularize a record?

Not directly — there's no "undo regularize" button. The only way to revert is to regularize again, putting the original time back. The audit trail will show your second regularization, not the original record. If a deeper revert is needed, contact Operations.

How many records does the page load at once?

10 per page (page size 10). Scroll to the bottom and the next 10 load automatically. You'll briefly see a small spinner. If pagination fails, you'll see "Unable to load more records." — pull-to-refresh.

What if a guard's name shows as "Unknown"?

The record's empName field was empty and the cached employee list couldn't resolve the empId. This is rare. Fix the underlying employee record (in the Employees admin section), or contact Operations.

Why is "View on Map" doing nothing when I tap it?

Your phone OS couldn't launch the maps URL — there's no maps app installed, or the URL launcher is blocked. Copy the address from the row, paste into a browser, and search there.

Can I edit the address or notes on a record?

No — Regularize only edits Check-in Time, Check-out Time, and Pay Rate. Addresses are auto-captured at check-in. Notes are entered by the guard or by payroll elsewhere. To change them, talk to Operations.

What's "Show Favorites Only"?

A toggle that limits records to employees you've marked as favorites. The favoriting itself happens in the Employees admin module, not here. Off by default. If you don't use favorites, ignore the toggle.

The "From / To" pickers default to today — can I change the default?

Not in the UI. The default is hard-coded to today's org date so that supervisors landing on the page see today's coverage immediately. If you want a different default, save your filters as a habit (e.g., always tap "This Week" first).

Can I export the records to CSV / Excel?

Not from this page. The Reports module has CSV export. Talk to Operations.

The "Regularized" chip is orange but the status pill is still green — is that a bug?

No, that's intentional. The status pill (Completed / In Progress / Not Started) is derived from the actual check-in / check-out timestamps, after regularization. The orange Regularized chip is a separate signal that an admin edited the record. They coexist on purpose.

What happens if I regularize a record from yesterday but payroll already ran for last week?

The record updates in Stafferin but payroll won't re-run automatically. You'll need to tell Payroll there's an adjustment. The audit trail (Regularized By, Regularized At) gives them the timestamp they need.

Why are the check-in / check-out times shown in 12-hour but I have to type 24-hour to regularize?

Display uses the org's locale formatter (which usually picks 12-hour with AM/PM). Input is fixed to 24-hour HH:mm because it's unambiguous and shorter. So you'll read "5:02 PM" on the card but type "17:02" in the regularize sheet.

At a glance

Quick reference card

Print this section and keep it taped above your desk for the first week. After ten regularizations, you won't need it.

Open the page
Filters expanded by default. From = To = today.
Pick a date range
Tap a preset chip (Today / Yesterday / This Week / Last Week / This Month / Last Month) or use From / To pickers.
Filter
Site dropdown → Employee cascades. Search by name/number. Show Favorites Only toggle.
Apply Filters
Records load. Count + active chips appear. Pull-to-refresh anytime.
Tap to expand
See Shift Details, Location (View on Map), Notes, Regularization audit.
Regularize
Edit Check-in / Check-out (HH:mm) or Pay Rate. Submit. Toast: "Attendance regularized successfully".
Status: Completed
Green pill — both times present. No action needed.
Status: In Progress
Yellow pill — checked in, no check-out. Wait for shift end.
Status: Not Started
Gray pill — no check-in. Verify with site lead. Regularize if needed.
"Regularized" chip
Orange chip + orange border = an admin has edited this record. Audit trail in expanded detail.
Method: NFC / GPS / ADMIN / MANUAL
Tiny badge by each time. ADMIN = supervisor entered (regularized).
Stuck?
Pull-to-refresh first. If errors persist, contact Operations.

Regularization affects payroll. Always have a documented reason before editing a record. Your name and timestamp go into the audit trail forever.

AI Simulation Trainer
Practice the Attendance Overview workflow in a safe sandbox. Real screens. Real buttons. Real errors.