V5 Ultimate
Module · Lab & QC

From the first pull to a signed CoA in your customer's hands.

One connected QC loop. The analyst runs the sample on the kiosk; the result lands on the chart; an out-of-spec opens its own investigation, spawns a CAPA, holds the batch and routes the disposition; the released lot's Certificate of Analysis is built from real values, signed under §11.50, and delivered to the customer portal with every view logged. No spreadsheets. No retyping. No quiet edits.

Start free — no card
The bench · live

Follow a sample across the operator kiosk.

Not a transcribed clipboard. Not a paper batch record retyped later. The analyst's screen is the source of truth — login, method, materials, instrument, notes, pass/fail. Every step writes a real row with a real signature.

BENCH · SUITE 2 · KIOSK-1209:42:18 · K. Chen
Bench sign-in
Kiosk · Suite 2
1 / 7
badge tap
K. Chen
● 3 active certs · 1 lapsed dimmed
biometric · NFCauthenticated

Analyst taps in. The bench inherits their certifications — methods they aren't current on are dimmed before they pick a sample.

What lands on the kiosk
Analyst
K. Chen · ID 0241
Active certs
LM-218, LM-303, LM-117
Lapsed
LM-440 (renews 2026-09-02)
Where it lives
/kiosk/lab/index · /kiosk/lab/queue
lab_analyst_certs
every step signed · §11.50

If the analyst presses Fail (OOS) at step 7, the next four sections of this page are what happens automatically.

The chart is the source of truth

Trends become alerts before they become an excursion.

Every captured result fires a database trigger that writes to the active baseline, evaluates Westgard 1₃ₛ, 2₂ₛ, R₄ₛ, 4₁ₛ and 10ₓ, and updates Cp / Cpk on the spot. When a confirmed OOS lands, the next four things happen without a human chasing them.

/app/lab/spc/LM-218 · baseline LJB-2024-Q4 · locked
live
Levey-Jennings · QC level 2n=6 · x̄ 100.0 · SD 1.00 · Cp 1.42
-3s-2s-1s+1s+2s+3s
in ±1s±1–2s warn>3s OOSfn_lab_spc_capture_result · trigger
Auto-actions as results land
  1. No flags. SPC nominal — keep running.
Sample quarantine, deviation and CAPA all open server-side from the same trigger. No human chases the flag.
What the OOS does to the batch

One failing result. Four possible dispositions. The batch can't release until one is signed.

The OOS opens a deviation. The deviation routes a CAPA. The CAPA's disposition gates lot release. If the choice is rework, the work order gets a correction step, the lot is re-sampled, and the second pass runs through the same method, the same SPC chart and the same signatures.

OOS → Deviation → CAPA → Batch release
OOS confirmed
  • lab_oos_investigations
  • linked: run · instrument · reagent lot · analyst
Deviation DEV-1144
  • status: investigating → closed
  • scope: WO-9821 · lot L-78214
CAPA-0871
  • actions: containment · root cause · corrective · effectiveness
  • tracked in /app/quality/capas
Pick a disposition · see what happens to the batch
Rework — downstream effects
  • WO opens a corrective step (blend-back, re-dilute, re-blend)
  • Re-sample request fires when the step closes
  • Re-test runs the same method · SPC re-captures
  • Lot disposition flips to 'released' only on the second pass
/app/qms/batch-release · gated on deviation closure signature
electronic_signatures · meaning: deviation_closed + qa_approved
lots.disposition ∈ ('released','rejected','quarantine','rework')
Batch correction is a real step

Rework opens a work-order corrective step (blend-back, dilute, re-mix). It's planned, signed and time-stamped — not a verbal patch.

Release is signature-gated

Lot.disposition + lot.release_sig_id won't write without the deviation_closed signature on the linked CAPA.

Effectiveness gets checked

Every CAPA carries an effectiveness check date. If the same cause re-occurs inside the window, V5 flags the CAPA as ineffective and re-opens it.

The output the lab actually ships

CoA built from real results, signed under §11.50, in the customer's portal in minutes.

Not a Word template. Not an "export to PDF" workflow run by an admin. The Certificate of Analysis assembles itself from lot_test_results, requires a QA e-signature, stamps the lot record, and lands in the customer's portal — with every download and view recorded in the audit log.

Certificate of Analysis
Lot L-78214 · WO-9821
Product: API-302 · 50 kg drum · regulated_reports kind='coa'
SG Systems
batch released 2026-06-04
TestMethodSpecificationResultOutcome
Assay (HPLC)LM-21898.0 – 101.5 %99.42 %Pass
Reviewed
M. Rivera, QC Analyst
2026-06-04 · 09:52 · §11.50
QA Approved · coa_approved
awaiting QA…
Pipeline status
  1. Assemble from lot_test_results
    5 tests · all pass
  2. QA e-sign · coa_approved
    J. Liu · §11.50 · 09:58
  3. Lot stamped · release + coa_url
    lots.disposition → released
  4. Pushed to customer portal
    ACME Pharma · CUST-118
  5. Customer downloaded & viewed
    logged · audit-grade timestamp
ACME Pharma · customer portal
awaiting delivery…
What the lab actually does

A full LIMS, ELN and SPC stack — wired to the rest of the platform.

Eight capabilities. Every one of them pinned to a real table, a real trigger and a real route in the running product. Nothing here is slideware — your lab can open the page and find it.

01
01 · Sample plans & AQL

Plans that fire themselves — in-process, finished, stability, environmental

Sample plans bind to a product, a step, a process line or a stability protocol. When the trigger fires — work-order release, in-process step, stability pull window — the plan opens a sample request, routes it to the right bench, and starts the clock. AQL tables drive container counts. Nothing is logged after the fact.

Release
In-process
Stability
Environmental
request opened → bench
Where it lives in the product
lab_sample_plans → lab_sample_requests
fn_lab_open_request_from_plan() · trigger
/app/lab/plans · /app/lab/requests
02
02 · Reagents linked to WMS

Reagents are first-class WMS items — not a side spreadsheet

Every reagent points at a stocked item. Lots are real lots in the warehouse. Sub-aliquots, working solutions and titre standards inherit genealogy from the parent lot. Expiry is live. The SDS sits in document control. The bench can't open a run with an expired reagent — the method gate blocks it.

L-9921exp 2027-03
L-9921-Aexp 2026-09
WS-441exp 2026-07
✓ SDS in doc controlitems → lots → prep
Where it lives in the product
lab_reagents.stocked_item_id → items
lab_reagent_prep.parent_lot_id → lots
lab_reagents.sds_doc_id → documents
03
03 · Instruments are assets

Instruments live in the asset register — cal status flows through

Every instrument is an asset. Calibration due, calibration verified, location, condition and condemn status all live in the asset register. A test run binds the instrument by asset_id; if the asset's calibration has lapsed or its condition is OOS, the run is hard-blocked. Move an asset to a new suite, the lab sees it.

asset_idAST-2014
HPLC-04 · in cal
next cal: 2026-06-12condition: OK
Where it lives in the product
lab_test_runs.instrument_asset_id → assets
lab_instruments.next_calibration_due
/app/lab/runs · /features/calibration-management
04
04 · SPC + Westgard, captured by trigger

Control charts that build themselves at the moment of result

When a result is captured, a database trigger writes it into the SPC results table against the active baseline, evaluates Westgard multi-rules (1₃ₛ, 2₂ₛ, R₄ₛ, 4₁ₛ, 10ₓ), and updates Cp / Cpk vs LSL/USL. Baselines are locked with a signature — you can't quietly re-baseline a drifting assay. The chart is the source of truth, not a screenshot.

+3σ-3σ
Where it lives in the product
fn_lab_spc_capture_result() · trigger
lab_spc_baselines.locked_at · lock_sig_id
lab_spc_results.westgard_flags · Cp · Cpk
05
05 · Stability programs

Stability — protocol once, pulls scheduled for years

Define a protocol (conditions, time points, tests per point). Open a study against a lot. V5 schedules every pull — 1, 3, 6, 9, 12, 18, 24, 36 months — auto-creates the sample request as the window opens, pages owners on the day, and folds excursions into a structured deviation if a chamber trips. Real ICH Q1A territory, not a spreadsheet.

25°C / 60% RHICH Q1A
1m
3m
6m
9m
12m
18m
24m
36m
Where it lives in the product
lab_stability_protocols → studies → pulls
lab_stability_pulls → auto lab_sample_requests
/app/lab/protocols
06
06 · ELN — electronic lab notebook

ELN entries are immutable at the database level — not by policy

The lab notebook isn't a Word doc. Every entry is captured against a run, a sample, a method or a study, with attachments, calculations and signatures. A database trigger blocks update / delete after lock — corrections go through a supersession chain so the original stays readable forever. Witness signatures where the SOP demands them.

ELN-08821 · v1
Where it lives in the product
lab_eln_entries · supersedes_id chain
fn_lab_eln_immutable() · BEFORE UPDATE/DELETE
lab_eln_entries.lock_sig_id · attachments
07
07 · OOS / OOT investigations

Out-of-spec opens a structured investigation — not a free-text form

An OOS result auto-quarantines the sample, opens an investigation record bound to the run, the instrument, the reagent lot, the analyst and the method rev — and links to the active baseline. Retest rules are governed by the method, not by negotiation. Averaging traps (the Barr ruling territory) are blocked by design. Closure feeds CAPA.

Result captured
OOS · sample quarantined
Investigation opened
CAPA routed
Where it lives in the product
lab_oos_investigations · linked_run · linked_capa
method_retest_policy · enforced server-side
/features/audits-capa-auto-routing
08
08 · Analyst certs & methods

Only certified analysts can run the method — checked at the bench

Every method names the analyst certifications it requires. Certs have effective and expiry dates and live in the same skills matrix the floor uses. The bench can't start a run if the logged-in analyst isn't current. Lapsed certs auto-route to retraining; the underlying competency record sits next to the operator's WO competencies, not in a parallel HR sheet.

M. RiveraLM-218 HPLC
current
K. ChoLM-218 HPLC
lapsed
J. PatelLM-218 HPLC
current
Where it lives in the product
lab_analyst_certs.valid_from · valid_until
lab_method_requires_cert · enforced at run start
/features/skills-matrix
Wired in — not bolted on

One platform — the lab plugs into everything that matters.

Two rings. The inner ring is the rest of V5 — already wired, no middleware, one audit trail. The outer ring is the hardware and third-party systems your bench already runs.

Inner ring — other V5 modules
WMS — reagents & samples

Reagents are stocked items; samples inherit source_lot_id from the warehouse. Expiry and quarantine flow through automatically.

Assets & calibration

Instruments are assets. Out-of-cal hard-blocks the run; calibration certs link directly to lab_test_runs.

eBMR / eDHR

A passing lab result re-evaluates the bound eBMR step; a late result auto-amends the sealed record under controlled change.

Document control

Methods, SOPs and SDS sit in the central doc register. Method rev is pinned at run start — published changes can't drift under a live run.

Skills matrix

Analyst certifications are the same competency records the floor uses — one source for who can do what, not an HR parallel.

Audits & CAPA

OOS investigations and Westgard-trip deviations route straight into CAPA with the run, lot, instrument and analyst already linked.

Label & CoA

Released results feed the customer CoA and the on-pack label data — never retyped from a printout.

Outer ring — instruments & external systems
Balances & pH meters

Mettler, Sartorius, Ohaus, Hanna over RS-232/USB/Bluetooth — captures stable readings with the asset bound.

HPLC / GC / UPLC

Empower, Chromeleon, OpenLab, MassHunter — integration over result-file watch folders or vendor API. Method ID and run ID both bind.

NIR / FTIR / Raman

Process and benchtop spectrometers — bring your own model; V5 stores the spectrum, the chemometric output and the call.

Plate readers & titrators

TECAN, BMG, Metrohm — endpoint, kinetic or potentiometric runs land against the sample with the well-map preserved.

External LIMS

Already on LabWare, STARLIMS or LabVantage? V5 can ingest results via SDC bridge while the floor stays on V5 — full handoff is optional.

Environmental sensors

Chamber temperature, humidity and pressure tags from PLCs or standalone loggers — bound to stability studies for excursion handling.

Engineered on
21 CFR Part 11 e-signatures
Immutable audit trail
Multi-tenant RLS isolation
GS1-128 license plates
Two-way ERP adapters
Instead of an FAQ

Just ask V5 — it knows the product cold.

Pick a question or type your own. V5 answers grounded in how lab & qc — lims, eln, spc, oos, capa and coa | v5 ultimate actually behaves on the floor.

Related capabilities

The rest of the platform this plugs into.

V5 isn't a bolt-on. Every module shares the same data, the same audit trail, the same operator. Pick where to look next.

Got questions, or want to see it on your shop floor?

Ask V5 — our code-aware assistant — or spin up a workspace. Both are free.