Websites11 min read

Medical analysis lab: online booking + secure results (2026)

Mohamed Bah·Fondateur, Kolonell
May 17, 2026
Share:
Medical analysis lab: online booking + secure results (2026)

Medical analysis lab: online booking + secure results (2026)

Websites

Francophone Africa's medical lab market: 60+ major labs in Senegal, 90+ in Ivory Coast. Digitalizing the patient journey (booking → collection → results) lags and represents a massive opportunity.

TL;DR

- Stack: Next.js + online booking + home collection + secure results portal.

- Pre-defined panels (bundles) accelerate conversion: "General checkup 35K XOF".

- Strict GDPR + SN Law 2008-12 patient data compliance.

Digital lab architecture

`

[Patient]

[Lab site]

├── Test catalog + pre-defined panels

├── Online booking (center + home)

├── Prescription upload

├── Wave/OM payment

└── Patient portal (secure results)

[Backend]

├── Test catalog (250+ types)

├── Technician slots

├── Sampling material stock

├── Analysis workflow

└── Biologist validation before sending

`

Step 1 — test catalog + panels

`prisma

model Test {

id String @id @default(cuid())

code String @unique

name String

category String

description String

priceXof Int

fastingRequired Boolean

fastingHours Int?

delayHours Int

prescriptionRequired Boolean

isActive Boolean @default(true)

}

model TestPackage {

id String @id @default(cuid())

slug String @unique

name String

description String

testIds String[]

totalPriceXof Int

isPopular Boolean

}

model Booking {

id String @id @default(cuid())

patientId String

type String

scheduledAt DateTime

testIds String[]

packageId String?

totalAmount Int

paidAt DateTime?

prescriptionUrl String?

status String

technicianId String?

homeAddress String?

resultsUrl String?

resultsValidatedAt DateTime?

resultsValidatedBy String?

}

`

Step 2 — pre-defined panels (#1 conversion lever)

`tsx

const POPULAR_PACKAGES = [

{

name: 'General checkup',

description: 'CBC, glucose, urea, creatinine, transaminases, cholesterol',

tests: 6,

fastingRequired: true,

delayHours: 24,

individualSum: 42000,

packagePrice: 35000,

discount: '-17%',

},

{

name: 'Diabetic checkup',

description: 'Fasting glucose, HbA1c, post-meal glucose, creatinine',

tests: 4,

fastingRequired: true,

individualSum: 28000,

packagePrice: 22000,

discount: '-21%',

},

{

name: 'Pre-marriage checkup',

description: 'Blood typing, hemoglobin electrophoresis, HIV/HBV/HCV/syphilis serology',

tests: 7,

fastingRequired: false,

individualSum: 58000,

packagePrice: 45000,

discount: '-22%',

},

{

name: 'Pregnancy checkup',

description: 'CBC, glucose, toxoplasmosis/rubella/CMV serology, blood typing, RAI',

tests: 8,

fastingRequired: true,

Need a professional website?

Kolonell builds websites that attract clients, optimized for the Sénégalese market. Free quote in 2 minutes.

individualSum: 75000,

packagePrice: 58000,

discount: '-23%',

},

];

`

Panels = 65-75% of bookings — easy to understand + visible savings.

Step 3 — home collection workflow

Premium service in high demand (elderly parents, busy professionals):

`tsx

'use client';

export default function HomeCollectionBooking() {

return (

steps={[

{ name: 'Tests', component: SelectTestsStep },

{ name: 'Address', component: AddressStep },

{ name: 'Date/time', component: SlotStep },

{ name: 'Patient', component: PatientStep },

{ name: 'Prescription', component: PrescriptionUploadStep },

{ name: 'Payment', component: PaymentStep },

]}

/>

);

}

`

Home fees: +5,000-10,000 XOF per zone.

Step 4 — secure results

`

[Analyses complete]

[Biologist validation]

[Digitally signed PDF generation]

[Encrypted storage]

[Patient SMS + WhatsApp + email notification]

[Patient logs in via magic link]

[Download PDF + history access]

`

`tsx

export default async function ResultsPage({ params }) {

const session = await getSession(params.token);

if (!session) return redirect('/expired');

const booking = await getBookingForPatient(session.patientId, params.bookingId);

if (!booking || !booking.resultsUrl) return ;

return (

Your results

);

}

`

Step 5 — AI interpretation (with disclaimers)

With Claude API, provide patient explanation of values (no diagnosis):

`tsx

async function explainResult(test, value) {

const response = await anthropic.messages.create({

model: 'claude-sonnet-4-6',

max_tokens: 300,

messages: [{

role: 'user',

content: `Test "${test.name}" returned ${value} (reference ${test.normalRange}).

Explain to the patient in plain English what this test measures (in 100 words) and the importance of consulting their doctor for interpretation. DO NOT diagnose. End with "Consult your doctor for interpretation."`,

}],

});

return response.content[0].text;

}

`

Step 6 — physician partnerships

Doctors prescribe: sign partnership allowing direct prescription to lab + secure result retrieval.

Workflow:

  • Doctor logged into platform
  • Generates signed digital prescription
  • Patient receives direct lab booking link (pre-filled)
  • After analyses, doctor receives results notification
  • Optional follow-up consultation

Real case — Mermoz Lab Dakar

MetricBeforeAfter 12 months
Bookings/month280720
Pre-defined panels (% bookings)068%
Home collection (% bookings)022%
Avg results delay36h18h
Patient NPS3872
Monthly revenue8.4M XOF22.6M XOF

Common pitfalls

  • Plain unencrypted email results — illegal GDPR/Law 2008-12. Always secure magic link.
  • No biologist validation — legally mandatory. Workflow can't be 100% auto.
  • Long-term unencrypted storage — health data = special GDPR category.
  • Non-transparent pricing — losing 50% bookings vs transparent competitors.
  • Home collection without quality control — kit + cold chain critical.

FAQ

Q: Mandatory biologist validation delay?

A: Always required. But can be <1h for simple panels with optimized workflow.

Q: Home in all Dakar?

A: Per lab. Plateau-Almadies-Mermoz-Yoff generally covered. Suburbs more expensive or uncovered.

Q: Competition?

A: Bio24 (CI), Pasteur Lille Senegal, Mérieux. Far from saturated on digital tier.

Conclusion

Digitalized medical lab = 2-3× booking volume of traditional lab. 8-20M XOF stack for clean MVP. 12-18 month ROI. Critical legal compliance = entry barrier and defensible advantage for serious players.

Tags:#Lab#Medical Analysis#Online Booking#Health#Africa#MedTech
Share:

Mohamed Bah

Fondateur, Kolonell

Passionate about digital and entrepreneurship in Africa, Mohamed has been helping Sénégalese businesses with their digital transformation since 2020. Founder of Kolonell, he believes every SME deserves a professional and accessible online présence.