Last updated: 2026-06-20
How devices, apps, and web sessions are paired and linked to the company server.
devicesdevice_pairing_requestsdevice_authorizationsdevice_heartbeatsdevice_rolesdevice_route_assignmentsapp_web_linksapp_web_link_tokensapp_web_sessionsclient_installations
- A device/app starts pairing by scanning a QR code or entering a pairing code.
- The company server creates a
device_pairing_request. - An admin approves the request (if approval is required for the device role).
- A linking token (
app_web_link_tokens) is issued and a session (app_web_sessions/device_sessions) is created. - The pairing, approval, and session are audited.
- Linking can be revoked; revocation ends the session and is audited.
- device identity (iPad / POS / KDS / printer agent / warehouse)
- device role and branch
- device status (online/offline via
device_heartbeats) - route assignments (e.g. which station/printer)
- last heartbeat timestamp
- Linking tokens are issued by the company server, encrypted/opaque, and revocable.
- Approval gating for sensitive device roles.
- Heartbeats drive the device status shown in the UI.
- All pairing/approval/revocation actions are audited.
See AUDIT_LOGGING.md and DEVICE_WORKFLOWS.md.