Skip to content
SkyRosterBook a working session

Trust · Data protection

What the system holds, and why it is there

Every field below exists because a rostering, leave, competency or payroll decision needs it. None of it is collected speculatively for a future feature.

The employee record

Personal data, and the reason it is there

An employee's record holds personal details, contract terms, an address, a profile picture, and up to five categories of attached documents: personal, managerial, qualification, leave and duty. That covers the actual paperwork a 24/7 workforce runs on, IDs, licences, medical certificates and qualification proofs, not a generic file store.

The most sensitive fields, a fiscal number, an ID or passport number, a home address, a phone number, are held apart from general viewing. They are returned only through a separately gated endpoint that requires write-level access to the employee's primary unit, not the broader read tier that lets a wider set of roles see general employee and roster information. Viewing your own confidential fields through self-service needs only individual-level access, nothing more.

verified

Documents

Encrypted, categorised, and checked per row

Document content is encrypted at the point of storage and decrypted only at the moment it is read, and has been for every document uploaded since the product's 4.11.0 release. A small number of files uploaded before that version are recognised and read through a separate, backward-compatible path rather than silently assumed to be encrypted when they are not.

Downloading a document is not just possession of a file identifier: the request explicitly checks that the document belongs to the employee it claims to, before any content is returned. The full mechanism, including how that check sits alongside the platform's other authorisation layers, is on the security page.

The audit trail

Who changed what, when, and to what value

For a growing list of the platform's configuration and staffing aggregates, every change is recorded as a structured, field-level entry: which field changed, its previous value, its new value, who made the change, and a UTC timestamp. Employee identifiers in that history are resolved to readable names, so an audit trail reads as "who changed what" in plain language rather than as a list of internal IDs someone has to look up separately.

Coverage is real and is being extended deliberately, aggregate by aggregate, with an automated test suite behind each rollout that checks every field on that aggregate is actually captured. Treat it as comprehensive across the platform's major configuration and staffing changes, and growing, not as a claim that every possible field change in the system is logged today.

Audit history is retained indefinitely per tenant; nothing is automatically purged. Where it matters most, an administrator investigating why a value is what it is can see that history inline, on the exact screen where the change was made, rather than correlating a separate report against the setting they are looking at.

The Audit & History module covers customer-facing access to the central change log, history on individual records, and search and filters across licensed functionality. It is included in SkyHeavy or available as an add-on to other plans. The written offer confirms record coverage. Internal change recording continues to support platform workflows; this packaging does not change retention, existing contractual entitlements or the published limits of shift-change history.

verified

Retention

A configuration, not a fixed vendor policy

The product does not impose one retention period on your data. The audit trail's own default is indefinite retention, described above. Employee records, documents and other operational data are kept for as long as your contract and your own configuration keep them.

If your organisation needs automatic deletion after a defined period, for example a fixed window after an employee leaves, that is a configuration and contractual matter set for your engagement. It is not a platform-wide switch we can quote in the abstract on a page that has to be accurate for every customer at once. Set the specific policy →

configured

Data residency

Residency follows the deployment shape you choose

Because each tenant has its own separate database, and because self-hosting is one of the three deployment shapes, your data can be kept entirely within an infrastructure and a jurisdiction you choose. See the deployment page for what each of the three shapes actually involves.

No public-cloud dependency is architecturally required for the core application, its database, its identity layer, its cache, or its message queue; all of them are self-hostable. A small number of ancillary services, sending transactional email, or where we run backups on your behalf on the managed-cloud shape, have an external dependency by default, and are themselves configurable per environment rather than hard-wired.

Subject rights

Stated plainly, not certified

Every employee can see their own record through self-service, and correct what self-service allows them to correct. An administrator can export an employee's data, or remove it, through the same staff-management tools used day to day, scoped automatically to what that administrator is permitted to see. When an engagement ends, the standing process is to remove the tenant's identity realm, drop its database, and revoke its stored secrets, a documented step rather than something improvised on request; see deployment for how tenants are isolated in the first place.

Read next

The rest of the trust section

Bring us a month that went wrong.

A working session is 45 minutes with your own roster on screen, not a canned demo. Bring a pattern that fought you and we will walk through what the engine would have done with it.