Learn LabFlow
Everything you need to set up, configure, and get the most out of LabFlow for your laboratory.
Getting Started
LabFlow is set up for your laboratory by our team during onboarding. Here's what happens and what you need to do after your account is created.
Initial Setup (done by LabFlow team)
- 1
Organization Created
We create your organization with your lab name, license number, and contact details.
- 2
Admin Account
An admin user is created for you with a temporary password sent via email.
- 3
Branches Configured
Your main branch (and any additional branches) are set up with addresses and phone numbers.
Your First Steps After Login
- 1
Change Your Password
Go to Settings → Profile and update your temporary password.
- 2
Upload Lab Logo
Go to Settings → Organization and upload your logo. This appears on all PDF reports.
- 3
Set Up Your Test Catalog
Navigate to Test Catalog and add your tests with parameters, reference ranges, and pricing. You can also request our team to import your catalog.
- 4
Create User Accounts
Go to User Management and create accounts for your staff (technicians, receptionists, etc.).
- 5
Register Your First Patient
Go to Patients → New Patient and register a patient to test the workflow.
- 6
Create a Test Order
Navigate to Orders → New Order, select the patient, choose tests, and create your first order.
Patient Management
Manage patient records with demographics, medical history, and contact information. Each patient gets an auto-generated unique code (e.g., P-10001).
Registering a New Patient
- 1
Navigate to Patients → New Patient
Click the '+ New Patient' button on the patients page.
- 2
Enter Required Information
Full name (Arabic is required), date of birth, and gender are mandatory fields.
- 3
Add Optional Details
Phone number (needed for WhatsApp delivery), blood type, allergies, medical conditions, and emergency contact.
- 4
Save
The system generates a unique patient code automatically.
Required vs Optional Fields
| Field | Required | Notes |
|---|---|---|
| Full Name (Arabic) | Yes | Used on reports and records |
| Full Name (English) | No | Optional, for bilingual reports |
| Date of Birth | Yes | Used for age-based reference ranges |
| Gender | Yes | Used for gender-specific reference ranges |
| Phone | No | Required for WhatsApp report delivery |
| National ID | No | For patient identification |
| Blood Type | No | A+, A-, B+, B-, AB+, AB-, O+, O- |
| No | For email report delivery | |
| Allergies | No | Free text, appears on reports |
| Medical Conditions | No | Free text for chronic conditions |
| Emergency Contact | No | Name, phone, and relation |
Finding Patients
Use the search bar on the Patients page to find patients by name, patient code, phone number, or national ID. You can also filter by gender and blood type.
Orders & Samples
Orders are the core of LabFlow's workflow. An order connects a patient to one or more tests, tracks samples, and flows through the entire process from collection to report delivery.
Creating an Order
- 1
Select Patient
Choose an existing patient or register a new one directly from the order form.
- 2
Choose Tests
Search and select individual tests or pre-configured panels. Pricing is calculated automatically.
- 3
Set Priority
Normal (default), Urgent, or STAT. Urgent and STAT orders are highlighted throughout the system.
- 4
Add Clinical Information
Optionally add referring doctor, diagnosis, clinical notes, and fasting status.
- 5
Apply Discounts
Add per-test or order-level discounts if applicable.
- 6
Confirm Order
The order is created with a unique number (e.g., ORD-2026-00018) and an invoice is auto-generated.
Order Status Workflow
| Status | Meaning | Next Step |
|---|---|---|
| Pending | Order created, awaiting sample collection | Collect sample |
| Sample Collected | Sample taken from patient, barcode printed | Receive in lab |
| In Progress | Lab is processing the sample | Enter results |
| Completed | All results entered and validated | Generate report |
| Reported | PDF report generated and/or delivered | Done |
Sample Collection
After creating an order, collect the required samples. LabFlow tracks each sample with:
- •Sample type: Blood, Serum, Plasma, Urine, Stool, Sputum, CSF, Swab, Tissue
- •Container type: EDTA tube, Serum separator, Plain tube, Citrate tube, Heparin tube, etc.
- •Sample condition: Good, Hemolyzed, Lipemic, Icteric, Clotted, Insufficient
- •Barcode label printing for sample identification
Sample Rejection
If a sample is unsuitable for testing, it can be rejected with a reason:
- •Hemolyzed sample — red blood cells destroyed
- •Insufficient volume — not enough sample
- •Wrong container — incorrect tube type used
- •Clotted sample — unwanted clotting in anticoagulant tube
- •Contaminated — bacterial or chemical contamination
- •Improper labeling — missing or incorrect label
- •Patient ID mismatch — sample doesn't match patient
- •Expired collection — too much time since collection
Result Entry & Validation
Result entry is where lab technicians input test values, and the system automatically flags abnormal and critical results based on configured reference ranges.
Entering Results
- 1
Open the Order
Navigate to Results Entry and select the order to work on.
- 2
Select Unit System
Toggle between SI and Conventional units using the SI/Conv button at the top. Your preference is remembered.
- 3
Enter Values
Type the result value for each parameter. The reference range is shown next to each field.
- 4
Review Flags
The system auto-flags results: H (High), L (Low), C-H (Critical High), C-L (Critical Low).
- 5
Add Comments
Optionally add interpretive comments for any parameter.
- 6
Mark as Completed
Click 'Completed' when all parameters are entered.
Auto-Flagging System
| Flag | Color | Meaning | Action Required |
|---|---|---|---|
| Normal | None | Result within reference range | None |
| H (High) | Yellow | Above normal range | Review |
| L (Low) | Yellow | Below normal range | Review |
| C-H (Critical High) | Red | Dangerously above normal | Immediate notification |
| C-L (Critical Low) | Red | Dangerously below normal | Immediate notification |
Result Types
| Type | Input | Example |
|---|---|---|
| Numeric | Number value | Hemoglobin: 14.5 g/dL |
| Text | Free text | Appearance: Clear, pale yellow |
| Select | Dropdown options | Blood Group: A+, B+, O+... |
| Calculated | Auto-computed from formula | LDL Cholesterol from Friedewald equation |
| Memo | Long text | Microscopy findings description |
Validation Workflow
LabFlow supports a two-level validation workflow:
- •Technical Validation — Lab technician verifies data entry accuracy, checks for QC issues, and confirms sample quality.
- •Medical Validation — Supervising doctor or pathologist reviews results for clinical significance, identifies patterns, and approves for release.
- •Both levels record the validator's name and timestamp for audit purposes.
Test Catalog
The test catalog is where you define all the tests your laboratory offers, including their parameters, reference ranges, pricing, and sample requirements.
Adding a New Test
- 1
Navigate to Test Catalog → Add Test
Click the '+ Add Test' button.
- 2
Enter Test Details
Code (e.g., CBC), name, category, sample type, turnaround time, and price.
- 3
Add Parameters
Define each measurable parameter (e.g., WBC, RBC, Hemoglobin) with units and decimal places.
- 4
Set Reference Ranges
Configure normal and critical ranges for each parameter, broken down by age and gender.
- 5
Activate the Test
Toggle the test to Active so it appears in order creation.
Test Categories
Tests are organized into categories for easy browsing:
- •Chemistry / Biochemistry
- •Hematology
- •Coagulation
- •Hormones
- •Serology (Immunology)
- •Special Tests
- •Blood Gases
- •Urine Analysis
- •Blood Bank
- •Stool
- •Microbiology
- •Body Fluids
Reference Ranges
Reference ranges can be configured per parameter with the following dimensions:
- •Gender: Male, Female, or All (applies to both)
- •Age range: Specified in days (e.g., 0–365 for infants, 366–6570 for children, 6571+ for adults)
- •Normal range: Min and max values for both SI and Conventional units
- •Critical values: Thresholds that trigger critical flags
- •Conversion factor: Multiplier between SI and Conventional units
Test Panels
Panels group multiple tests together for convenience and pricing. For example, a "Lipid Panel" might include Total Cholesterol, HDL, LDL, and Triglycerides.
- •Panels have their own code and name
- •Panel price can be set lower than the sum of individual tests
- •A discount percentage can be applied to the panel
- •Tests within a panel can be ordered individually or as the full panel
Reports
LabFlow generates professional PDF reports with your laboratory's branding, color-coded reference ranges, and QR verification codes.
Report Contents
- •Lab header with logo, name, address, license number, and contact info
- •Patient information: name, ID, age, gender, order date, report date
- •Test results grouped by category (Hematology, Biochemistry, etc.)
- •Reference ranges displayed next to each result
- •Color-coded range bars showing where the result falls (green = normal, yellow = high/low, red = critical)
- •Abnormal results highlighted with H/L/C-H/C-L flags
- •Validating doctor's digital signature
- •QR code linking to the verified report
- •Report number and generation timestamp
Report Customization
Customize reports in Settings → Organization:
- •Upload your laboratory logo
- •Set lab name, address, phone, and license number
- •Configure report header layout (centered or left-aligned)
- •Choose single-column or two-column result layout
- •Add custom footer text
Report Specifications
| Property | Value |
|---|---|
| Paper Size | A4 (210 × 297 mm) |
| Resolution | 300 DPI |
| Generation Time | < 3 seconds |
| File Size | < 2 MB |
| Language Support | English and Arabic (RTL) |
| Format |
WhatsApp Delivery
Send verified lab reports directly to patients via WhatsApp with a single click. Reports are sent as PDF attachments with a personalized greeting message.
How It Works
- 1
Patient has phone number on file
Ensure the patient's phone number is registered (with country code, e.g., +972).
- 2
Results are validated
All test results must be validated before a report can be sent.
- 3
Generate report
Generate the PDF report from the order page.
- 4
Click 'Send via WhatsApp'
The report is sent as a PDF attachment with a greeting: 'Dear [Patient Name], your lab results are ready.'
- 5
Track delivery
View delivery status: Sent → Delivered → Read.
WhatsApp Setup
WhatsApp integration is configured in Settings → WhatsApp. Our team assists with the WhatsApp Business API setup during onboarding. You'll need:
- •A dedicated phone number for your laboratory
- •WhatsApp Business API access (we help set this up)
- •Message templates approved by WhatsApp
Multi-Branch
If your laboratory has multiple locations, LabFlow lets you manage them all from a single dashboard while keeping data and reporting separate per branch.
Branch Features
- •Each branch has its own address, phone, and report header
- •Users can be assigned to specific branches
- •Orders and samples are tracked per branch
- •Reports show the branch-specific header and contact info
- •Dashboard can be filtered by branch or show all branches
- •Consolidated analytics across all branches for managers
Setting Up a New Branch
- 1
Go to Settings → Branches
Click '+ Add Branch'.
- 2
Enter branch details
Name, address, phone, and email for the branch.
- 3
Assign users
Go to User Management and assign staff to the new branch.
- 4
Configure report header
Upload a branch-specific logo if different from the main lab.
Quality Control
LabFlow's QC module helps you monitor analytical accuracy using Levey-Jennings charts and Westgard rules, essential for laboratory accreditation.
Levey-Jennings Charts
Visualize QC results over time with interactive charts that show mean, ±1SD, ±2SD, and ±3SD lines. Zoom into specific date ranges and identify trends.
Westgard Rules
The system automatically evaluates QC data against Westgard multi-rules:
| Rule | Description | Type |
|---|---|---|
| 1-2s | Warning: one control exceeds ±2SD | Warning |
| 1-3s | Reject: one control exceeds ±3SD | Random error |
| 2-2s | Reject: two consecutive controls exceed ±2SD (same side) | Systematic error |
| R-4s | Reject: one control >+2SD and one >−2SD in same run | Random error |
| 4-1s | Reject: four consecutive controls exceed ±1SD (same side) | Systematic error |
| 10x | Reject: ten consecutive controls on same side of mean | Systematic error |
QC Lot Management
- •Track QC materials by lot number, manufacturer, and expiry date
- •Set target values and acceptable ranges per material
- •Receive alerts when QC lots are approaching expiry
- •Full history of all QC runs per lot for audit
Inventory
Track reagents, consumables, and supplies with real-time stock levels and automatic low-stock alerts.
Key Features
- •Add items with name, category, unit, and reorder level
- •Record stock additions (purchases) and usage (consumption)
- •Automatic low-stock alerts when quantity drops below reorder level
- •Track expiry dates for reagents and materials
- •Full transaction history for audit trail
- •Filter inventory by category, stock status, or expiry
Stock Transactions
| Transaction | Effect | When |
|---|---|---|
| Addition | Increases stock | When new supplies arrive |
| Usage | Decreases stock | When reagents are consumed |
| Adjustment | Corrects stock level | After physical count |
| Disposal | Decreases stock | When expired items are discarded |
Billing
LabFlow automatically generates invoices when orders are created and tracks payments through completion.
Invoice Workflow
- 1
Order Created → Invoice Auto-Generated
Test prices from the catalog are applied, including panel discounts.
- 2
Record Payment
Accept payment by Cash, Card, Bank Transfer, or Insurance.
- 3
Track Status
Invoices are marked as Pending → Partial → Paid. Overdue invoices are flagged.
Payment Methods
| Method | Notes |
|---|---|
| Cash | Most common for walk-in patients |
| Card | Credit or debit card payments |
| Bank Transfer | For insurance companies or corporate accounts |
| Insurance | Claims tracked separately, may require additional documentation |
Analytics
The analytics dashboard provides real-time insights into your laboratory's operations.
Available Metrics
| Metric | Description |
|---|---|
| Today's Orders | Number of orders created today vs yesterday |
| Pending Results | Samples awaiting result entry |
| Completed Today | Orders completed today |
| Today's Revenue | Total billing amount for today |
| Pending Billing | Unpaid invoices count |
| Low Stock Items | Inventory items below reorder level |
| Average Turnaround Time | Mean time from order to report |
| Abnormal Rate | Percentage of abnormal results |
| Critical Values | Count of critical results this period |
Charts & Visualizations
- •Orders Overview: Daily/weekly bar chart showing order volume trends
- •Tests by Category: Distribution of ordered tests across categories
- •Revenue by Day: Financial performance over time
- •Status Distribution: Breakdown of order statuses
- •Abnormal Tests by Gender: Abnormality rates compared between male and female patients
- •Abnormal Tests by Age Group: Heatmap showing which age groups have higher abnormal rates
User Roles & Permissions
LabFlow uses role-based access control to ensure each team member sees only what they need.
| Role | Can Do | Best For |
|---|---|---|
| Admin | Everything — users, settings, organization config, all data | Lab owner, IT administrator |
| Lab Manager | Test catalog, result validation, QC, reports, analytics | Lab supervisor, quality manager |
| Lab Technician | Enter results, validate, sample tracking, view orders | Bench technicians |
| Receptionist | Patient registration, order creation, sample collection, billing | Front desk staff |
| Accountant | Billing, payments, financial reports, invoices | Finance team |
| Doctor | View reports, medical validation, patient history | Pathologist, physician |
Unit System (SI / Conventional)
LabFlow uses a flexible unit system. Data is always stored in SI units internally, but displayed in whichever unit system you prefer.
How It Works
- •Default: SI units (standard for most analyzers in Palestine)
- •Toggle: Switch to Conventional units with the SI/Conv button during result entry
- •Storage: All values stored in SI — conversion happens at display time
- •Reports: Show results in the unit system active when the report was generated
- •Reference ranges: Automatically adjust to match the displayed unit
Common Conversions
| Test | SI Unit | Conventional | Factor |
|---|---|---|---|
| Hemoglobin | g/L | g/dL | ÷ 10 |
| Glucose | mmol/L | mg/dL | ÷ 0.0555 |
| Creatinine | µmol/L | mg/dL | ÷ 88.4 |
| Total Cholesterol | mmol/L | mg/dL | ÷ 0.0259 |
| Calcium | mmol/L | mg/dL | ÷ 0.25 |
| Uric Acid | µmol/L | mg/dL | ÷ 59.48 |
| Potassium | mmol/L | mEq/L | × 1 (same) |
| Sodium | mmol/L | mEq/L | × 1 (same) |