Pharmacy Fulfilment Platform
Outcome
NPS 30% → 65% · 70% fewer pickup errors · 100% subscription retention
The problem
Wellahealth's pharmacy fulfilment flow was held together with phone calls. Pickup errors were high, partner NPS sat at 30%, and pharmacy staff had no visibility into order status — so they called Wellahealth constantly, and Wellahealth had no scalable way to handle it. The business had a subscription product it wanted to launch, but couldn't do it on top of a fulfilment layer this unreliable. The question wasn't what to build — it was whether anyone had actually understood why the flow kept failing.
What I did
- —
Discovery: ran 12 contextual interviews with pharmacy staff across Lagos and Abuja, observing them mid-shift rather than in a meeting room. The key finding wasn't what partners said — it was what they did. Most didn't use the app during dispensing at all. They served the customer, then went back to update records later, or didn't. The app was designed around an ideal workflow that didn't match how pharmacies actually operated.
- —
Journey mapping: mapped the full partner journey from onboarding through to payout — five stages, 23 touchpoints. This surfaced three critical failure points: order status ambiguity at the point of dispensing, wallet confusion at the point of reconciliation, and a near-complete absence of feedback when something went wrong. Each failure had a downstream effect on trust.
- —
Insight reframe: the original brief was 'build a better notification system.' The research reframed it as a visibility problem. Partners didn't need more notifications — they needed to see exactly what was happening to their orders and their money, without having to ask. That reframe changed the entire direction of the design.
- —
Wireframing: sketched three distinct approaches to the fulfilment dashboard — a chronological feed, a status-grouped kanban view, and a simplified list with inline actions. Ran a quick preference test with six pharmacy staff. The kanban pattern won on speed of comprehension, but they found the terminology confusing. Iterated the labels through two more rounds before moving to high-fidelity.
- —
Dashboard design: the final fulfilment dashboard surfaces every order's status in real time — pending, in progress, dispensed, and reconciled — with one-tap actions at each stage. The design eliminated the need to call Wellahealth entirely. Partners could see, act, and move on without leaving the counter.
- —
Wallet redesign: discovered in testing that pharmacists couldn't tell the difference between their total balance and the amount they could actually withdraw. Assured-but-unpaid funds looked identical to available funds. Designed a split balance view — total, locked, and withdrawable — with a plain-language explanation of why funds were locked and when they'd release. This single change reduced payment-related support tickets significantly.
- —
Design system: built a component library in Figma covering 40+ components — cards, status indicators, action sheets, modal patterns, form elements, and a colour system with WCAG AA contrast compliance throughout. The system was documented with usage notes and handed to engineering with annotated specs, cutting back-and-forth on implementation questions by roughly half.
- —
Usability testing: ran two rounds of moderated testing — first on wireframes with 5 pharmacy staff, then on a high-fidelity prototype with 8 partners. Round one identified that the tab navigation was creating confusion between the fulfilment and wallet sections. Round two confirmed the redesigned navigation and validated the wallet split view. Both rounds were conducted in the pharmacies themselves, not remotely.
- —
Engineering handoff: annotated every screen with interaction states, edge cases, and error handling. Worked alongside the engineering lead through QA — catching six interaction gaps that hadn't been specified and closing them before release.