Sync & Integrations
Sync mirrors people from your other systems into User Access automatically, so door access follows your member database without manual data entry. This page covers the two sync sources, identifier requirements, what sync does and doesn't overwrite, the sync activity log, automatic invitations, and bulk-deleting synced users. Configure everything under Settings → Sync settings.
Syncing is off by default so existing facilities keep their manually-managed list. Nothing syncs until you enable a source.
Sync sources

Figure 1: The two sync source blocks
| Source | What it mirrors | Resulting user source badge |
|---|---|---|
| Integrations | Members from your connected member-management integration(s) | Integration / the partner's name |
| Performance Hub features (CCTV/Computer Vision) | Identified people from the CCTV module | CCTV/Computer Vision |
Each block has its own enable toggle and shows its last run time and counts (or Never run).
For the Integrations source you can also opt individual integrations in or out under Sync from these integrations — "Turn off an integration to stop mirroring its members. Members already synced stay until you remove them."
Require identifier
People sign in to the mobile app with a one-time code sent to their phone or email, so a record without either is useless for door access. The Require identifier dropdown controls which records are synced:
| Option | Records synced |
|---|---|
| Email OR phone (default) | Has an email or a phone |
| Email required | Has an email |
| Phone required | Has a phone |
| Both required | Has both |
Records that don't meet the requirement are skipped (and show in the sync log as skipped for a missing identifier).
When sync runs
| Trigger | When |
|---|---|
| Continuous | Changes in the source system flow through within moments of the source record changing |
| Nightly reconciliation | A full pass over all enabled facilities once per day |
| Sync now | The button on this page runs a full pass for this facility on demand — it shows Running… then Sync complete (or Sync failed) |
What sync updates — and what it never touches
On every pass, synced rows are refreshed from the source:
| Overwritten each sync | Preserved (admin-owned) |
|---|---|
| First name, last name | Access enabled switch |
| Mobile phone, email | Per-user grants |
| Person type, membership status | Custom tags |
| Synced tags | Notes |
| Last-synced timestamp | Decoupled state, app message |
So you can safely disable a synced user, give them grants, or tag them — sync won't undo it.
If a person is removed at the source, their User Access row isn't deleted — their access is disabled automatically (they keep appearing in the list with a Disabled badge, preserving history).
Decoupling: turning off Track source updates on a user's panel makes sync skip that row entirely — edits to name/contact details stick, and source removals no longer disable them. See User Access.
Automatic app invitations

Figure 2: Auto-send and bulk invitations
- Auto-send app invitations — "When syncing, email an app invitation to synced users who have access and haven't been invited yet. Email only; never re-sends." Failures are retried on the next pass.
- Send invitations… — opens the bulk invitation dialog (works for all users, not just synced ones). Full details in Invitations.
Sync activity & troubleshooting

Figure 3: The sync activity panel
Expand Sync activity & troubleshooting to "see why recent records did or did not sync." You can search by name, ID, or reason, and Refresh the list. Each entry has an outcome badge:
| Outcome | Meaning |
|---|---|
| Added | A new User Access row was created |
| Updated | An existing row was refreshed from the source |
| Skipped | The record was not synced — the entry shows why (below) |
| Disabled | The person was removed at the source, so their access was turned off |
| Processed | The record was handled with no visible change |
Skip reasons you may see:
| Skip reason | Fix |
|---|---|
| Integration sync is turned off for this facility | Enable the source toggle on this page |
| This integration is turned off in sync settings | Enable that integration under "Sync from these integrations" |
| No phone or email on the record (a phone or email is required to log in) | Add contact details in the source system, or relax Require identifier |
| Record is decoupled and managed manually | Expected — re-couple via the user's Track source updates toggle if you want sync back |
| No facility on the source record | The source record isn't associated with this facility in the source system |
| No matching User Access record | The change referenced a person who has no row here (e.g. removed before first sync) |
Clicking an entry opens Sync activity detail with the full record: name, external ID, source, integration, reason, and IDs for support escalation.
Bulk delete synced users
To clear out users that came from an integration (e.g. after disconnecting it):
- Under Bulk delete synced users, click Bulk delete…

Figure 4: The bulk delete wizard
- Choose the scope: All integration-synced users or a single integration. Click Preview.
- Review: the dialog shows exactly how many users will be removed (with a sample list). Note the warning — This cannot be undone, and any admin customisations on those rows (grants, custom tags, notes) are lost. The users' access log history is kept.
- Also turn off syncing from this integration (recommended) is checked by default — leave it on, otherwise the same users are recreated on the next sync pass (without their old customisations).
- Tick I understand this is permanent and customisations will be lost, then click Delete N.
If the underlying user set changed between preview and confirm, you'll be asked to re-run the preview — this guarantees you delete exactly what you reviewed.
Related pages
- User Access — sources, decoupling, the user panel
- Invitations
- Troubleshooting — "user missing / out of date" walkthroughs