There is a quiet gap between recording a completion and proving one. A row in a table that says “Jordan finished Working at Heights on 14 May” is trivial to write. Anyone can write it. The harder question — the one a WorkSafe investigator asks after a fall — is whether Jordan actually did the training, whether the assessment meant anything, and whether the certificate sitting in the file was minted the day it claims to have been.
Most learning systems answer the easy question and quietly skip the hard one. They mark the row, generate a PDF, and trust the rest. We took the opposite view: in a compliance platform, the LMS exists to produce evidence that survives a hostile reading. Every design choice below is downstream of that.
The credential guardrail that lives in the database
Accredited training in Australia is a regulated act. A nationally recognised qualification can only be issued by a Registered Training Organisation, and the NRT logo is not decoration — it is a legal claim about who you are. A platform that lets any tenant print an “accredited” certificate is handing its customers a strict-liability problem.
So the guardrail isn’t a checkbox in the UI, which a determined admin will eventually defeat. It’s a database trigger. A tenant without RTO status cannot write an accredited certificate at all — the insert is rejected at the schema level, before any application code gets a vote. The rule sits underneath the buttons, where it can’t be clicked around.
Watching the watch: server-authoritative video tracking
The most common way to fake e-learning is to open the module, hit play, and walk away. Client-side progress bars are theatre — the browser happily reports 100% to anyone who asks it nicely.
Our video tracking is server-authoritative and measured in real wall-clock seconds watched. The server credits time against the actual playback window, and it is built to resist the obvious cheats: rewinding doesn’t double-count, seeking ahead doesn’t skip credit, and a tab left running in the background doesn’t manufacture watched minutes. You get credit for the seconds you were genuinely in the content, reconstructed on the server, not asserted by the client. The difference matters because the client is the one party with a motive to lie.
A quiz engine that doesn’t hand over the answer key
Any assessment that ships the correct answers to the learner’s browser has already failed — they’re one “view source” away from a perfect score. In our quiz engine, answer text is never disclosed to the browser. The learner sees the question and the options; the marking happens on the server, against data the client never receives.
Free-text answers go a step further. Genuine open responses can’t be machine-graded without losing the point, so they route into a human reviewer queue. A real person reads the answer and makes the call. That’s slower, and it’s meant to be — competence is a judgement, and we’d rather a person make it than a regex.
Certificates you can hand to an auditor
A certificate is only as good as your ability to defend it later. Ours are issued as tagged, accessible PDFs — structurally readable, not just an image of a document — so they hold up against accessibility obligations as well as scrutiny. Each one carries a public QR verification page: scan it, and a stranger with no login can confirm the certificate is real, current, and unrevoked, straight from the source of truth.
Behind that sits an append-only certificate ledger. You cannot backdate an issuance, because the ledger only accepts forward writes — the history is immutable, and the issue date means what it says. When the question becomes “was this certificate really minted on the fifteenth, or was it conjured the morning the inspector arrived?”, the ledger answers it without anyone having to be believed.
Why this only holds because the LMS isn’t bolted on
None of this would be defensible if learning were a separate product stitched in at the edges. Most platforms connect training to operations through SCORM export and manual reconciliation, treating the LMS as a swappable module. Ours lives inside the compliance schema — the same system, not connected to it.
That’s what lets the evidence do work. A completion mapped to the compliance catalogue writes straight into employee_courses and triggers a council compliance recalculation — the score moves on its own. The same completion materialises as a skills record that a per-position gap view diffs against what the role requires. A high-risk-work licence minted from an LMS-verified competency is enforced by the PPE pre-start gate under OHS Regs reg 129, so an uncertified operator is physically blocked from the task. The proof isn’t filed away; it changes what’s allowed.
If you want the foundation this all rests on, read why we built a training matrix from scratch. For how authored content becomes a course in the first place, see authoring courses, SCORM without the cloud tax. And for where a verified completion turns into evidence in a live investigation, see incident management with competency snapshots.