← Learning Center · POS

Set up the POS time clock

Add the Staff Hub tile to your Shopify POS, configure PIN-based clock-in, location restrictions, break policies, and the manager-view roster — so your team can clock in from POS instead of paper or another app.

⏱ Time: 15 minutes 👤 Role: Admin 📋 Prerequisite: Staff Hub installed; staff profiles created with PINs

What you'll set up

Step 1 — Confirm staff have PINs

Open Manage → Staff. Each staff member who needs to clock in via POS must have a PIN set. The Staff Directory shows a status badge for missing-PIN profiles. If you see any, set their PINs first — see Onboarding new staff.

Step 2 — Configure workforce settings

Open Manage → Workforce. The default settings work for most stores; review these:

Step 3 — Configure break policy

Under Manage → Workforce → Break policies, create a policy that matches your jurisdiction:

One policy per shop is fine for most retailers. If you have salaried managers and hourly floor staff, you can create separate policies and assign per-role.

Step 4 — Add the tile to Shopify POS

On the iPad or POS hardware:

  1. Open Shopify POS, tap the menu icon, then Smart Grid
  2. Tap Edit Smart Grid
  3. Tap Add tile → choose App → select Staff HubTime clock
  4. Drag the tile to a prominent position
  5. Repeat for the Manager View tile (a separate option in the Staff Hub picker)
  6. Tap Save
Tip: Put the Staff Hub time clock tile near the top-left of the smart grid so staff hit it first thing when they sign in.

Step 5 — Test the flow

Walk through a clock-in as one of your staff:

  1. Tap the Staff Hub tile on POS
  2. The PIN entry screen loads. Enter a staff member's PIN.
  3. Verifying happens server-side: bcrypt compare against the stored hash, plus rate-limit check. On success, a 10-minute signed verification token returns and the staff state loads.
  4. Tap Clock In. The screen should now show "Clocked in at 9:02 AM" or similar with the option to take a break or clock out.
  5. Tap Clock Out. The session ends and a TimeEntry is finalized.
  6. Open the admin web app at Manage → Timesheets. The new entry should appear with any warnings flagged (e.g. early clock-in if it was outside the grace window).

Step 6 — Set up Manager View

Manager View is a separate POS tile that shows the live store roster. Managers can:

Every manager action creates an immutable TimeEvent with the manager's ID, timestamp, IP, and the reason. Audit trail is full.

Common issues

"Verifying..." spinner hangs

Network issue between POS and the Staff Hub backend. Check your store's internet, then check https://api.staffhubapp.com/api/health in a browser — should return "status": "ok". If health is fine, retry. The app handles transient network errors gracefully.

"Invalid PIN" but the PIN is correct

Most common cause: the staff member is set to terminated in their profile. Inactive staff can't clock in. Check Manage → Staff → the staff member's Employment status. Less common: rate limit (5 wrong PINs in 5 minutes triggers a temporary block).

"Location not allowed"

The staff member's Workforce → Assigned locations doesn't include the location they're clocking in from. Either add the location to their profile or turn off Assigned location only in workforce settings.

"Already clocked in" when they're not

A previous shift didn't close cleanly (network drop, app crash). Open Manage → Timesheets, find the open entry, and click Force close. This adds a manager_adjustment audit event. The auto-close-after-16-hours setting catches these in the background.

What's next

Once POS clocking is live, the natural next steps are: