Ask AwraIQ about features, pricing, onboarding, login, integrations, security, demos, mobile apps, automation, reports, or support.
Three factors, and none of them trusts the other two.
A passkey on the employee's own registered device. A GPS position inside one of their assigned site radii. A rotating code on the office screen. AWRA OpsHub checks all three independently, records the full evidence of every attempt whether it passed or not, and tells the person exactly what went wrong when it did.
Radius from 10 m to 5 km · Passkey device binding · QR rotating every 30 s · Evidence stored per clock event
Distance is measured on the sphere, not on a flat grid, so a radius means the same thing at the equator as it does at latitude sixty. Coordinates are stored to seven decimal places — about a centimetre of resolution, which is far finer than any phone can actually report.
Each factor answers a different question.
The point of three is not redundancy. It is that "is this the right person", "are they in the right place" and "are they physically at the screen" are separate questions, and a system that answers one of them and infers the others is a system with a workaround.
The device Checked first
Is this the right person? A passkey assertion on a device the employee registered themselves — the phone's own biometric or screen lock, verified cryptographically rather than by a shared code.
- The employee registers their own device from their attendance portal — nobody enrols on their behalf
- Verification can be enabled per employee, or switched on for many at once
- A lost phone's credential can be removed individually, by the employee or by HR, without disturbing their other devices
- Checked before location, so a borrowed session never reaches the geofence at all
- Which credential was used is recorded on the clock event
This is the factor that solves buddy-punching, which no amount of geofencing can. A colleague standing in the right car park with your password is inside the radius; they are not holding your registered phone.
The position Mandatory where sites are assigned
Are they in the right place? The distance from their reported position to each of their assigned sites, against that site's own radius.
- Assigned sites are ranked by distance and whichever one they are genuinely within range of is adopted — an employee covering three branches needs to be near one, not all three
- Each site carries its own radius, from ten metres for a single room to five kilometres for a site or estate
- A reading with accuracy worse than a hundred metres is refused — a vague position is not evidence of presence
- An employee with no assigned site skips the location check entirely, which is correct for genuinely mobile roles
- The exact coordinates, accuracy and distance are all stored on the event
The code Per site, optional
Are they physically at the screen? A signed code the employee scans, verifiable only against that site's own secret. Switched on per site, because a warehouse floor and a remote depot do not need the same rigour.
- The live kiosk code rotates every thirty seconds, signed rather than stored — no database write per rotation
- A tolerance of one rotation either side, so clock skew never blocks an honest scan
- A separate printable non-expiring code for a notice board, for sites with no screen
- Two independent secrets per site — the QR secret and the kiosk address — each regenerable on its own
- Both secrets are never serialised out of the record, so they cannot leak through an interface or an export
A screen and a printed poster cannot have the same security.
So they are two different tokens with two different properties, and the difference is stated rather than blurred.
Displayed on a screen at the site — a tablet, a monitor, a spare laptop — reached by its own address, separate from the QR secret.
- Rotation
- Every 30 seconds
- Storage
- None — computed, not saved
- Tolerance
- ±1 rotation for clock skew
- Replay window
- Under a minute
A photograph of it is worthless within about a minute. The code is a signature over the current time bucket, so it is stateless — there is no rotation job to run and no row to write sixty times a minute per site, which is why it can rotate this fast at all.
A print-ready page you pin to a notice board, for a site with no screen to spare. Opens the browser's own print dialogue — no export step, no PDF tool.
- Rotation
- None — fixed
- Lifetime
- Until the secret is regenerated
- Trades away
- Photo-replay resistance
- Keeps
- Device and position factors intact
Here is the honest part. A printed code can be photographed and it will still work tomorrow. That is the price of not needing a screen — and it is a price worth naming rather than hiding, because the other two factors are untouched by it. Somebody with a photograph of your poster still needs their own registered device and a real position inside your radius. And regenerating the site's secret invalidates every printed copy at once.
A refusal that tells you what to do about it.
Somebody standing outside in the rain at seven in the morning does not need "verification failed". Every refusal names the actual problem, with the actual numbers.
You are 410 m from Industrial Area (your nearest assigned site) — you must be within 150 m of one of your assigned sites to clock in.
GPS signal too weak (±240 m) — move outdoors or near a window and try again.
Attendance verification is required to clock in — register a device from your attendance portal first.
Scan the office QR code to clock in at Industrial Area.
You scanned Industrial Area's QR code, but this device reported a location about 380 m away — so its GPS looks unreliable, not your location. Turn on precise location (or use a phone with GPS) and clock in again. This attempt is logged for HR to review.
That last message is worth dwelling on, because it is the one place this design makes a genuinely difficult judgement in public. If somebody scanned a valid code for one of their own sites, they were physically at that site — the code only exists there. But their phone reported a position hundreds of metres away, which happens constantly with cheap handsets indoors and with network-derived positions.
So the system does not accuse the employee of being somewhere else. It says the device's location signal looks unreliable, which is what the evidence actually shows — and it logs the attempt with the QR verification marked as passed, so HR can see a pattern of these and correct them properly through the attendance regularisation flow rather than through a series of arguments.
And the clock-in still stays blocked. That is the deliberate part: the position requirement is not waived just because the failure has a sympathetic explanation, because a rule with a sympathetic exception is a rule with a workaround. Explain honestly, log completely, and still refuse.
One row per clock event, not one per day.
The attendance record says somebody was present. The verification log says how that was established — and it exists for the failures too, which is where it earns its place.
Because it is one row per event rather than per day, a person who clocked in, out for lunch, back and home again leaves four evidence snapshots. That granularity is what makes fraud review possible at all: an aggregate day tells you nothing about which of four events was the odd one.
One more thing worth knowing about the kiosk. The site screen runs on a public address with nobody signed in, which is exactly right for a device sitting in a warehouse — and it means the guards behind attendance have to work without an authenticated user to lean on. The monthly timesheet lock is one of them: it resolves the workspace explicitly rather than from whoever is logged in, so a locked month is closed to the kiosk too. A guard that only worked for signed-in requests would have left the one unauthenticated write path wide open.
Four fields and two secrets.
Small on purpose. Everything else about attendance is decided by the roster, the employee's assignments and the shift — a site only needs to know where it is and how far around it counts.
unique per workspace Appears in every failure message an employee reads, so it is worth naming it the way your staff refer to it.
7 decimal places Validated to real coordinate ranges, and stored far finer than any handset can report.
10 – 5,000 m Ten metres for a single room; five kilometres for an estate, a farm or a construction site.
per site On where you have a screen or a poster and want the third factor; off where position and device are enough.
The two secrets are generated for you and regenerated independently. Rotating the QR secret invalidates every printed poster and every live code at once — which is what you want after a poster walks off a wall. Rotating the kiosk address invalidates the screen's URL without touching the codes. Keeping them separate means an incident with one does not force you to reprint for the other.
Employees are then assigned to sites — individually, or in bulk for a whole group — and a site shows how many people are attached to it, so a site nobody is assigned to is visible rather than quietly inert.
What verification does today — and what we can add to yours.
Attendance evidence ends up in pay and occasionally in a tribunal, so here it is exactly.
What AWRA OpsHub does today
- Three independent factors on a clock event — a passkey on the employee's own registered device, a GPS position inside an assigned site radius, and an optional site QR code
- The device factor checked first, before location, so a borrowed session never reaches the geofence
- Employees registering their own devices, with individual credentials removable by the employee or by HR without disturbing their other devices
- Verification enabled per employee or in bulk, and site assignment done individually or for a whole group
- Distance measured on the sphere rather than a flat grid, so a radius means the same thing at any latitude
- Coordinates stored to seven decimal places, and validated to real coordinate ranges
- A per-site radius from ten metres to five kilometres, for anything between one room and an estate
- Assigned sites ranked by distance with the nearest in-range one adopted — an employee covering three branches needs to be near one, not all
- Readings worse than a hundred metres of accuracy refused, because a vague position is not evidence of presence
- Employees with no assigned site skipping the location check, which is correct for genuinely mobile roles
- A live kiosk QR rotating every thirty seconds, signed rather than stored, with a one-rotation tolerance so clock skew never blocks an honest scan
- A separate printable non-expiring poster code for sites with no screen, using the browser's own print dialogue
- Two independent secrets per site, each regenerable on its own, and both kept out of every serialised form of the record
- Every attempt recorded — pass or fail — with site, coordinates, accuracy, distance, QR result, device credential and a plain-language reason
- One evidence row per clock event rather than per day, so a four-event day leaves four snapshots
- A specific honest message when a valid QR scan meets an implausible position: the device's signal is blamed rather than the employee, the attempt is logged with the QR pass recorded, and the clock-in still stays blocked
- The monthly timesheet lock enforced on the unauthenticated kiosk path too, by resolving the workspace explicitly rather than from a signed-in user
More we can add to your workspace
- A map picker for placing a site and dragging its radius, instead of entering coordinates by hand
- Mock-location and rooted-device detection, refusing a position from a spoofing app
- A live site board showing who is currently clocked in at each site, and a headcount against the roster
- Geofenced clock-out reminders — a notification when somebody leaves a site radius while still clocked in
- Face or photo capture at the moment of clocking, stored alongside the existing evidence
- A site-level exception report ranking sites by failed-attempt rate, so a badly placed radius or a weak-signal building surfaces on its own
- Offline clock-in on the site kiosk, queued and verified when the connection returns
- Beacon or Wi-Fi network presence as a fourth factor, for indoor sites where GPS is genuinely unreliable
- A per-site accuracy threshold, so a dense urban building can be given more tolerance than an open yard
- Automatic regularisation of the scanned-QR-but-bad-GPS case, raising the correction request itself instead of leaving it to be filed
- Shift-aware geofencing, so a site only accepts clock-ins during the hours a shift is rostered there
- A scheduled digest of failed verifications, so the pattern reaches somebody without the log being opened
Where we point you to a specialist
- Whether you may track an employee's location, and on what notice and consent, is a data-protection question that varies by jurisdiction. We give you the controls; the lawful basis for using them is yours to establish.
- We will not build a way to clock somebody in without their own registered device present. That is the factor that makes the rest meaningful, and an override would quietly remove it.
- A disciplinary conclusion from attendance evidence is a management decision. We record what happened, completely and in both directions; we do not judge it.
- We will not waive the position requirement because a failure has a sympathetic explanation. We will explain the failure honestly and log it fully, and the correction goes through the regularisation flow where somebody accountable approves it.
- Continuous background location tracking is not something we will build. Verification happens at a clock event, which is the only moment a location is needed.
A map picker and mock-location detection are the two most-asked items here, and both attach to the site record and the evidence row that already exist. Tell us which matters most for your sites and we will come back with a written spec, a timeline and a price.
One trade-off to decide deliberately at setup: the printed poster code does not expire, so a photograph of it keeps working until you regenerate the site secret. That is the price of not needing a screen, and the device and position factors are unaffected — but if a site has a screen to spare, the rotating kiosk code is the stronger choice.
What the evidence feeds.
Sites & geofencing FAQ.
What actually stops one person clocking in for another?
Can somebody photograph the QR code and use it later?
What if an employee works across several branches?
What about roles with no fixed site at all?
Our building has terrible indoor GPS. What happens?
Somebody scanned the code but the app said they were far away. Whose fault is that?
Do you track people's location continuously?
The kiosk has nobody logged in. Is that a hole?
Know who clocked in, and know how you know.
Their own device, a real position inside your radius, a code that goes stale in half a minute — and a full evidence snapshot of every attempt, including the ones that failed.