System user guide

معمل الفحوصات — A comprehensive guide to all modules
Download PDF

1 Introduction

This Laboratory Information System (LIS) manages a medical laboratory end to end: patient registration → order & invoice → sample collection → result entry → verification → report release → patient notification. It supports Arabic and English and works offline.

You navigate through the sidebar, which shows only the modules your role is allowed to use.

2 Roles & permissions

Each user has a role that defines what they can do:

  • System administrator: all permissions, settings and user management.
  • Lab manager: catalog, reference ranges, result verification, release and reports.
  • Pathologist: verify and release results (especially qualitative and histopathology).
  • Lab technician: result entry only (cannot verify).
  • Phlebotomist: collect and receive samples and print labels.
  • Receptionist: register patients and create orders, invoices and payments.

If you don't see a link in the sidebar, your role does not have that permission.

3 Login & my profile

Enter your username and password on the login page.
From the top menu (user icon) you can open My profile, Change password or Log out.
Switch the language (ع / EN) and the display mode (dark/light) from the top menu.

4 Dashboard

Shows quick indicators: today's patients, orders, pending orders, average turnaround time, most-requested tests, referring-doctor performance, and the latest critical values. Revenue appears only to users with billing permission.

5 Registering patients

From the menu: PatientsRegister patient.
Enter the name and gender, plus a date of birth or age (one is required), phone and referring doctor.
A unique medical record number (MRN) is generated automatically.
From the patient page: New order, Cumulative (their result history), or edit/delete.

All tables are searchable and sortable by clicking a column header.

6 Referring doctors

From Referring doctors add the doctor's details (name, specialty, facility, phone) to later link them to patients and orders and measure their performance on the dashboard.

7 Creating a test order

From Orders → New order (or the "New order" button on the patient page).
Choose the patient, the priority (routine/urgent/emergency) and the referring doctor.
Select panels and/or individual tests (with instant search). The total updates automatically as you select.
Click Create order & invoice — the order, invoice and samples are created automatically.

8 Billing, payments & receipt

The order page shows the invoice summary (total, discount, due, paid, remaining).
Enter a discount if needed, then record a payment (cash/bank/mobile) — partial payment is supported.
Click Receipt to print a thermal receipt with the lab logo.

9 Sample collection, receipt & labels

From Samples the worklist appears (default "Awaiting collection").
Each sample has an accession number, barcode and QR. Print the label and stick it on the tube.
Click Collect when drawn, then Receive when it reaches the lab (who and when are logged).

10 Entering results

From Enter results pick the order to open the entry grid, each category in a distinct color.
Enter the values — use Enter to jump quickly to the next field.
The flag is computed automatically by gender and age: H high, L low, ! critical. Abnormal values are highlighted (yellow) and critical ones (red) with a prominent alert.
Click Save results.

11 Verify & release

Workflow: entry (technician) → verification (manager/specialist) → release. No report is issued before verification.

  • Verify: saves the values then verifies them (locked against editing).
  • Release: saves + verifies + releases the report in one step, and notifies the patient automatically.

12 Reports, verification & cumulative

From the order page: PDF report — choose the language (Arabic / English / bilingual).
The report contains the lab header, patient details, results by category with abnormal/critical highlighting, the verifier's signature, and a verification QR.
The patient/doctor scans the QR to open a public verification page confirming the report is genuine.
From the patient page: Cumulative shows their results over time with a mini chart.

13 Notifications (WhatsApp/SMS)

When a report is released, a "your result is ready" notification is sent automatically (if the patient has a phone), or manually via the Notify patient button on the order page. Every send is logged under Notifications. The delivery provider is configurable in settings (WhatsApp/SMS).

14 Test catalog & reference ranges

From Test catalog: tests, categories and panels.
Edit any test (price, unit, result type) and its reference ranges (by gender/age, with critical limits) — these must be reviewed for your own analyzer and reagent.
Create panels (CBC, LFT...) with a bundled price.

Default reference ranges are pre-loaded (16 categories) but are fully editable.

15 Lab settings

From Lab settings set the lab name, logo, address, phone, currency, default language, and the report header/footer — they appear immediately on reports and receipts.

16 User management

(For the administrator) from Users add a user and set their role, or edit/deactivate an account or set a password. Each role's permissions appear on the user detail page.

17 Audit log

The system logs every sensitive action (create/edit/delete/login/verify/release/print) with the user, time and address. Review them under Audit log.

18 Full workflow

1 Reception: register patient2 Order + invoice3 Payment + receipt4 Sample collection + barcode5 Receipt at the lab6 Result entry (auto flag)7 Verify8 Release report9 Notify patient + PDF

19 Calculated tests & auto-verification

Calculated tests: some tests are computed automatically from others and are not entered manually; they show a calculated badge:

  • Globulin = total protein − albumin, and the A/G ratio.
  • Indirect bilirubin = total − direct.
  • VLDL, cholesterol/HDL ratio, transferrin saturation.
  • eGFR (glomerular filtration rate) via CKD-EPI from creatinine, age and gender.

Any test's formula can be set from Test catalog → Edit test → "Calculation formula" field (e.g. TP - ALB or @egfr).


Auto-verification: when enabled from Lab settings, the system verifies normal numeric results automatically (an auto badge), leaving abnormal and critical ones for human review only — greatly reducing the review load.

Sensitive tests (viruses, tumors, cultures, histopathology) are never auto-verified. Auto-verification can be disabled per test from the catalog. For an auditable trail, open "Auto-verification audit" (under Quality control): the applied rules, the auto-verification rate, and a log of the most recently auto-verified results.

20 Inventory & reagents

From Inventory & reagents add items (reagents, consumables, QC materials) with a reorder level.
Record movements from the item page: receive / issue / damage / stock adjustment with the lot number and expiry date. The balance is computed automatically.
Automatic alerts: Low stock when the reorder level is reached, and lots near/at expiry — shown at the top of the list and on the dashboard.

21 Doctor & patient portals and email onboarding

Email onboarding: register the doctor from "Referring doctors" or the patient from "Patients" (email is required). Then from the list click the "Invite" button next to the record → the invitee receives a welcome email with a secure one-time link to set a password and activate their account (linked to their existing record) — no password is sent by email.

Referring-doctor portal: after login they see their patients' orders and results, can submit a new tests order for their patient, and write a recommendation the patient sees in their account — limited to their patients only.

Patient portal: they see only their released results and their treating doctor's recommendations, and download their reports. They can also still download their report via the QR code without an account.

22 Export & charts

  • Excel / CSV export: buttons in the patient, order and inventory lists — they respect the current filter and export all displayed data (Excel with a formatted header and RTL direction).
  • Tables: all lists are searchable, sortable (click a column header) and paginated.
  • Dashboard: a chart of orders and revenue over 14 days + a result-distribution chart (normal/abnormal/critical).

23 Tips & FAQ

  • The "Release" button does nothing? Make sure the values are entered first — "Release" saves, verifies and releases together.
  • I don't see a link in the menu? Your role lacks the permission — ask the administrator.
  • Reference ranges are different? Edit them in the catalog to match your analyzer and reagent.
  • All tables are searchable, sortable (click a column header) and paginated.
  • Printing: reports, receipts and labels open in a print-ready window.

24 Delta, reflex, QC & instrument integration

  • Delta check: when an entered result differs greatly from the patient's previous result for the same test, a Δ badge and an alert appear — to catch sample mix-ups or important changes. The threshold (%) is set per test in the catalog.
  • Reflex tests: rules that add a test automatically based on a result (e.g. abnormal TSH → FT4 added). Managed from the admin panel (reflex rules).
  • Quality control (QC): from Quality control add a QC material and a target (mean ± SD) per test, then record QC results — the z-score is computed and Westgard rules are applied automatically, with a Levey-Jennings chart.
  • Instrument integration: from Instrument integration upload/paste an HL7 or ASTM message from the analyzer — the system matches results to orders by accession number and enters them automatically. For folder-based ingestion: manage.py import_instrument <folder>. Set the "instrument code" per test in the catalog if it differs.

25 Disease surveillance & early warning

A smart surveillance tool that monitors notifiable infectious diseases (malaria, dengue, typhoid, hepatitis B/C, HIV, brucellosis, syphilis, TB, H. pylori, COVID, cholera) from your existing results — with no extra data entry.

Open Disease surveillance from the sidebar (available to users with dashboard permission).
The page shows the weekly positivity rate per disease, a trend chart, and a detailed table.
The system raises an outbreak alert automatically when this week's positive cases exceed the recent baseline (a yellow alert for a rise, red for a sharp rise or a reappearance after absence).

A decision-support tool for early detection; it does not replace formal epidemiological assessment. A result is counted "positive" from qualitative test values (positive/reactive).

26 Turnaround-time analysis & bottleneck detection (TAT)

This page measures result turnaround time across the pipeline stages and reveals where delays occur — from existing timestamps, with no extra entry.

Open Turnaround-time analysis from the sidebar (requires dashboard permission).
Time is split into stages: registration → collection → receipt → entry → verification → release, with each stage's average and a chart.
The system highlights the slowest stage (the bottleneck), shows TAT by priority, the share completed within the target time per test, and the slowest tests.

The target time is set per test from the "Turnaround time (hours)" field in the catalog.

27 Smart inventory forecast & reorder

The system estimates each item's consumption rate from recent issue movements, predicts the number of days until depletion, and suggests what to order and how much before it runs out — important given slow/difficult reagent supply.

Open Inventory forecast from the sidebar (under inventory, with inventory-management permission).
For each item: balance, daily consumption, days remaining, status (safe/soon/order now/out), and a suggested order quantity.
The system highlights items that need reordering now (out of stock or running out within the supply lead time).

The suggested quantity covers the supply lead time + a default coverage period. A decision-support tool — review the figures before purchasing.

28 Automatic interpretive comments

The system reads the order's results and automatically adds interpretive comments on the order page (the "Automatic result interpretation" card) — a decision-support tool for the doctor and technician.

  • Anemia: low hemoglobin with pattern classification by MCV (microcytic/macrocytic/normocytic).
  • Diabetes: classification of glycated hemoglobin (HbA1c) or fasting glucose (normal/pre-diabetes/diabetes).
  • Kidneys: eGFR stage classification, or a high-creatinine alert.
  • Liver/thyroid/lipids/inflammation: alerts for liver enzymes, TSH, lipids, CRP, and critical potassium.

The interpretation is based on the values, the lab's reference ranges and common global cut-offs, and does not replace specialist review.

29 Culture & cumulative antibiogram

The microbiology module: record culture and susceptibility results, then build the cumulative antibiogram (the %-susceptibility of each organism to each antibiotic) to guide empiric therapy and track antimicrobial resistance (AMR).

From the order page → Record culture result: choose the sample and the isolated organism (or "No growth"), and set each antibiotic: susceptible S / intermediate I / resistant R.
Results appear on the order page as colored badges (green S / yellow I / red R).
Open the antibiogram from the sidebar (with QC permission): a matrix of organisms × antibiotics with %S and isolate count, for a period (90/180/365 days).

Common organisms and antibiotics are pre-loaded (expandable from the admin panel). Rates based on fewer than 30 isolates are less reliable (CLSI recommendation).

30 Real-time quality control (PBRTQC)

Monitors analytical drift in real time from patient results (an exponentially weighted moving average, EWMA, of normal results) — without QC materials, bridging the gap between traditional QC events and providing continuous, free monitoring.

Open Real-time QC (PBRTQC) from the sidebar (with QC permission).
The list of numeric tests shows their status (stable/drift). Choose a test to see the EWMA curve with the mean and control limits.
"Drift" means the EWMA crossed the ±3σ limits computed from the spread of normal results — review the analyzer/reagent calibration.

A complementary tool — it does not replace traditional QC (Westgard/Levey-Jennings).

31 Quality indicators (ISO 15189)

A quality-indicators dashboard per ISO 15189:2022 and the three-tier IFCC WG-LEPS model (optimal/desirable/minimum), computed automatically from system data.

Open Quality indicators from the sidebar (with QC permission).
Includes: the sample rejection rate (pre-analytical), TAT compliance, the critical-value rate, and the auto-verification rate — each with a color grade.

The default thresholds are indicative and should be set to your lab's performance specifications. An ISO 15189:2022 accreditation requirement (clause 4.12.4).

32 Blood bank

Integrated blood-bank management: donors, unit inventory with screening, and cross-matching and issue with automatic ABO/Rh compatibility checking.

Donors: register the donor and their blood group from "Blood bank → Donors".
Receive a unit: enter the group and component (expiry computed automatically). The unit stays in "Quarantine" until a transfusion-transmitted-infection screening result is recorded as "Passed", then it becomes available.
Inventory: the main page shows availability by group × component and expiry/quarantine alerts.
Cross-match & issue: choose the patient, their group and the component; the system shows only the available compatible units, then "Cross-match & issue" issues and records the unit.

Compatibility is computed automatically (ABO/Rh for red cells, and the plasma rule for plasma components) — a support tool that does not replace manual laboratory matching.

33 Interoperability (FHIR R4 / LOINC)

The system provides a read-only FHIR R4 interface that exports results as standard resources (Observation, DiagnosticReport and Bundle) — a foundation for integration with national systems and insurance platforms (such as NPHIES and Malaffi).

  • Add a LOINC code and SNOMED CT to each test from Test catalog → Edit test for global coding (they appear in the FHIR coding).
  • Endpoints: /fhir/metadata (capability statement), /fhir/DiagnosticReport/<order id>, /fhir/Order/<id>/$everything (full bundle).
  • Access is authenticated (token/session) and requires the "View reports" permission.

Read-only for now — a foundation for future integration and insurance claims.

34 Quality management (ISO 15189)

The accreditation-readiness module per ISO 15189:2022, from "Quality management ISO 15189" in the sidebar (with quality-management permission):

  • Controlled documents (SOPs): codes, versions, status and review dates (alert when near/overdue).
  • Equipment & calibration: an equipment register with calibration tracking; "Log maintenance/calibration" updates the next calibration date automatically.
  • Nonconformity (CAPA): record cases with the root cause and the corrective/preventive action, and close them.
  • Competency records: staff competency assessment and re-assessment dates.

The module dashboard shows what is due (reviews/calibrations/open cases/assessments).

35 Imaging & digital microscopy

Archive and structured review of microscope images (malaria smear, peripheral blood film) — with a ready hook for an AI engine that plugs in when hardware/a model is available with no workflow change.

From the order page → Imaging & digital microscopy: create a study and choose its type.
On the study page: upload microscope images (stored with access control), then enter the structured review (malaria: positive/negative, species and density; blood film: differential count, red-cell morphology and platelets).
"Save & verify review" verifies the study. The "AI suggestion" button works automatically once the engine is installed.

Automatic malaria detection / cell classification requires a model/hardware — until then the review is manual (useful as an archive and for remote review).

36 Insurance & claims (NPHIES)

Manage payers and insurance coverages, and create claims from orders with automatic FHIR bundle building in NPHIES format — live submission is enabled once NPHIES credentials are set.

From Insurance & claims: add payers, then a coverage for the patient (membership number).
From the order page → "Insurance claim": the claim and its items are created from the invoice, and the NPHIES (FHIR) bundle is built and saved.
On the claim page: the items and the FHIR bundle are shown. "Build/update" refreshes the bundle, and "Send" submits it for real once the connection is configured.

Without credentials: bundles are built and saved ready (as a message Bundle + MessageHeader + Claim) — set NPHIES_BASE_URL and the key in .env to enable submission.

37 Radiology & teleradiology

Create radiology studies (X-ray/CT/MRI/ultrasound/mammography), upload images or DICOM files or PDF, and write a structured report the radiologist signs remotely, producing a PDF.

From the order page → Radiology & medical imaging: choose the modality and create a study, then upload the images/files (DICOM metadata is read automatically).
The radiologist opens Radiology → Radiology worklist, reads the study, and writes: technique, findings, impression, recommendation (or starts from a ready template).
Workflow: draft → preliminary verification → final verification & release (with a later addendum if needed), and the patient is notified.

The interactive DICOM viewer and the PACS server (Orthanc) are enabled later by setting PACS_BASE_URL with no data change.

38 Home sample collection

A service to request sample collection from the patient's home, integrated into the lab cycle: the request becomes a normal test order and invoice automatically upon confirmation.

The patient fills a public form (without logging in): name, phone, address, requested tests, preferred time.
Reception (Home collection): links the request to a patient or creates one, then sets the appointment and assigns it to a phlebotomist — the order and invoice are created (with the home-collection fee).
Status tracking: new → scheduled → collected → arrived at the lab, then the sample enters the usual cycle. The patient is notified at each step.

39 Remote medical consultations

An asynchronous conversation between the patient and a specialist to explain a result or give a second opinion — works on weak networks, with a fee added to the invoice automatically.

The patient, from their report verification page (QR): "Request a consultation to explain the result" opens a conversation via a secure private link without an account. (Reception can also open one from the order page.)
The lab manager assigns the consultation to a specialist (Remote consultations), and the specialist replies with text or attachments (images/audio/document) then closes it.
The other party is notified on every reply. Live video appears automatically once a video service (VIDEO_BASE_URL) is configured later.

40 Lab owner & subscription (labs platform)

The platform lets multiple labs run on a single system with full isolation of each lab's data.

The lab owner registers via "Register your lab" (from the login screen) → a 14-day free trial → their account is activated and their lab appears in the city directory.
Each lab's data is isolated: the owner and their team see only their own lab's patients, orders and results.
The "My lab & subscription" page: remaining trial/subscription days and status. The catalog and identity settings are global and are not edited by the lab.
Patients and doctors find the lab via the "Labs directory" by choosing the state and city.

Fair Deal Technology — معمل الفحوصات