Flexipy
Industries · Services · Products

Work · an industry safety-certification body

A training record registry auditors can trust

01 The engagement

The problem

Safety training records for an industry standard lived with the training providers who issued them. An employer hiring a technician had no single place to check whether a certificate was real, current, or had been withdrawn — and the body that owned the standard had no way to correct a record once it was out.

The approach

A central registry that providers upload into in batches. Each batch is validated before it counts for anything: records are separated into valid, duplicate and errored, and the batch sits as a draft with those counts visible until someone commits it. Delegates hold certificates against courses, courses are tied to the published standard, and every transition — committed, discarded, revoked — records who did it and when.

02 The engineering

What was technically hard

A certificate is a claim someone will rely on when deciding who is allowed onto a hazardous site, so nothing may be quietly overwritten. That ruled out treating an upload as a simple import: a batch is staged and counted first, corrections arrive as explicit revoke and change requests rather than edits, and the audit trail is part of the schema instead of a log nobody reads. Getting duplicate detection right mattered most — the same delegate legitimately retrains, so a repeat is only a duplicate in a narrow, defined sense.

One decision we made, and why

Validation results are shown before the batch is committed, not after. Rejecting a two-thousand-record upload wholesale because forty rows were wrong would have pushed providers into re-uploading blind; showing the split lets them fix the forty and commit the rest, which is what keeps the registry current rather than merely correct.

More work

start-project.sh

$ tell us what you're building and where it's stuck

Book a 30-min discovery call

We reply within one business day.

Let's talk about your build

Pick a time, or leave a note and we'll reply within one business day.

Stanislav Rybonka · Founder & Principal Engineer

Pick a time →
or write to us