WooCommerce pharmacy platform
24hr Pharmacy
A UK online pharmacy where the checkout respects the prescription
A scalable WooCommerce platform for a British online pharmacy: patients, pharmacists, prescribers and admins each get their own dashboard, and every order follows the prescription lifecycle before money moves.
About the project
The catalogue was the smallest part of the job. A prescription has a lifecycle — submitted, reviewed, approved, dispensed — and the store had to respect that state before it ever took a payment. Four user roles saw four different versions of the same dashboard, while payments, couriers and stock all had to agree on what “order complete” means.
Instead of stitching that logic together from a pile of third-party plugins, we built and owned a single, testable prescription-management system on top of WooCommerce.
My role
WordPress Developer & Project Manager
I architected the platform, led a fully remote development team and managed the full development and QA lifecycle: planning, technical interviews, onboarding, timelines and delivery of high-load components.
Team & ownership
-
I owned
- Solution architecture and technical design
- Prescription lifecycle and business logic
- Key integrations and release process
- Technical decisions and long-term roadmap
-
I led
- Code review and quality standards
- Task estimation and planning
- Technical interviews and hiring
- Team onboarding and mentorship
-
Team delivered
- Patient and admin dashboards
- Frontend development and responsive UI
- QA and testing
- Ongoing support and iterative improvements
How it works
-
Submitted
Patient places an order and uploads a prescription.
-
Reviewed
Pharmacist reviews the prescription.
-
Approved
Prescription is approved and order is confirmed.
-
Paid
Payment is processed securely via Worldpay.
-
Dispatched
Order is shipped via DPD or Royal Mail.
-
Delivered
Patient receives the order and gets status updates in real time.
What I did
-
Role-based dashboards
Custom dashboard for 4 user roles covering the entire prescription lifecycle.
-
Prescription system
Custom prescription management with statuses, reviews and approvals wired into checkout.
-
Payments & delivery
Worldpay payments plus DPD and Royal Mail delivery, joined into a single fulfilment flow.
-
Real-time chat
Patient support chat on WebSockets, built into the platform.
-
Team leadership
Remote team management, technical interviews and onboarding.
-
QA process
Full development and QA lifecycle in a distributed team.
Technical challenges & solutions
-
Checkout must respect prescription state
Standard WooCommerce takes payment as soon as the cart is valid. A pharmacy cannot: an order must wait for a pharmacist’s review and approval.
Built a custom prescription lifecycle with explicit statuses and gated the checkout and payment capture on it, so money only moves when the prescription is approved.
-
Plugin pile vs. owned logic
Role-based access, custom order statuses and fulfilment rules could each be “solved” with another plugin — all hooking into the same checkout, stock and payment flow with unpredictable results.
Consolidated the core business rules into one plugin we own, test and understand, and kept commodity features on well-maintained third-party plugins.
-
Fulfilment across three services
Payments, couriers and stock all had to agree on what “order complete” means.
Integrated Worldpay, DPD and Royal Mail APIs into one fulfilment flow, so payment capture, dispatch and tracking follow the order status automatically instead of being chased by hand.
Impact & outcomes
-
One fulfilment flow
Payment, dispatch and tracking follow the order status automatically.
-
4 user roles
One platform, four tailored dashboards for patients, pharmacists, prescribers and admins.
-
Real-time support
WebSockets chat significantly improved patient communication.
-
On-time delivery
High-load components shipped on schedule by a fully remote team.
Project testimonial
Kate, a smart and talented girl! I can recommend Kate as a qualified developer, with skills in working with databases. And also she has a high level of English. During the time Kate worked in our company, she did a lot of quality projects, took the initiative, communicated with the multinational team. I was very happy to work with her!
What I’d do differently
-
Start performance testing earlier
Add proper load testing in the first phase to catch bottlenecks sooner.
-
Invest more in automated tests
Expand end-to-end tests for critical prescription flows to reduce manual QA.
-
Simplify admin UI further
Some workflows are still too complex for non-technical staff — I’d iterate on the admin experience earlier.