The Blood Clinic UK
A private blood testing clinic running on three outsourced plugins and around seven thousand lines of code nobody could safely touch. Bookings hung, results were hard to read, and a medical PDF could be downloaded by anyone who guessed the link. We rebuilt the whole thing: the booking engine, the patient portal, the reporting, the lab connection and the back office the owner runs it from.
Client
Name
Rich / The Blood Clinic UK
Industry
Private Blood Testing Clinic
Location
Sheffield, Retford & 65 clinics nationwide
Website
Visit live site →
Thechallenge.
The booking diary called the lab while the page was still loading, with no timeout set and nothing cached, on top of WooCommerce Bookings working out availability at the same time. Customers watched a spinner before they could pick a date, and some of them left.
Patients got a plain lab PDF and a list of numbers. No context, no reference ranges they could read at a glance, no way to see whether a marker had moved since last time.
Results PDFs sat on a public endpoint that never checked who was asking, and the results webhook accepted every caller, created accounts and wrote patient details into the error log.
Orders were handed to the lab on the thank-you page with no queue and no retry. When it failed, nobody found out, which is exactly why nationwide bookings sometimes went quiet.
When a booking could not be placed, the code deleted the order. A paid order, gone.
Missing clinical fields were filled with hardcoded defaults, so a sample could reach the lab dated 31 December 2000 and marked male.
There was no data model. Patients, registrations and results all lived in scattered WordPress meta, and nine paid plugins were propping the rest up.
Ourapproach.
One plugin instead of three, with its own database tables for patients, registrations, results, appointments and a visible sync log. Every job that talks to the lab goes through a proper queue that retries, and every failure is something you can look at rather than guess at.
The booking diary rebuilt around when work actually happens. The page paints straight away, both clinic calendars are fetched quietly in the background while the customer is still choosing a location, and the times for a single day are pulled only when that day is tapped. By the time anyone picks a clinic the month is already there.
A patient portal that answers the question people actually have. A health snapshot at the top, anything outside its healthy range brought to the front, then a system-by-system view, then every marker with its reference range drawn as a gauge and its history behind a tap.
The clinic's own branded PDF, built from the stored results rather than passing on the lab's template, carrying the doctor's letter, the gauges and the out-of-range flags. It is never emailed as an attachment: health data does not belong in an inbox, so the email links to a download that checks who is asking.
A back office the owner runs without us. His clinic hours, closures, slot length, capacity, buffer and lead time, a colour-coded calendar of who is coming in, walk-in entry, the emails his customers receive, and reporting on revenue, locations, busiest days and test popularity.
AI accelerated the build. A rebuild of this size, on a live clinic taking real orders, is not something a business this size gets offered otherwise.
Thework.
Scroll inside the window to explore, or open the live site.
Booking that does notkeep you waiting.
Four taps from a test to a time. How you want to be tested, where, which day, which slot. The old diary made you wait on the lab before the page had even finished loading. This one loads first and does the waiting itself, in the background, while you are still reading.




Your results, ina language you speak.
Anything outside its healthy range comes first. Then a system-by-system read, then every marker against the range it should sit in, with its history behind a tap and a plain-English explanation of what it measures. Shown on a test account with demonstration results, not a patient's record.






What webuilt.
- ✓Patient results portal with reference-range gauges
- ✓Out-of-range markers surfaced first, with trends
- ✓Plain-English guide to every marker tested
- ✓Branded PDF report, behind a permission check
- ✓Booking in three modes: clinic, nationwide, home kit
- ✓Postcode and town finder across 65 clinics
- ✓Owner-controlled diary, hours, closures and capacity
- ✓Colour-coded admin calendar, synced to Google
- ✓Walk-in entry with an other-lab safeguard
- ✓Editable customer emails, separate from WooCommerce
- ✓Revenue, location and test-popularity reporting
- ✓Queued lab sync with retries and a visible log
Thenumbers.
199,131
Historic results migrated into the new portal, for 2,206 patients
1,704
Existing bookings moved into the new diary so no slot could be sold twice
9 plugins
Paid plugins retired, including WooCommerce Bookings
No waiting
A month of real availability is in hand before a customer picks a clinic
