Pharmacovigilance Platform for a South African Generics Maker
Designed and built a clickable safety database for a South African generic medicines company: one intake inbox for calls, emails, web forms, rep and partner reports, case processing with MedDRA coding and WHO-UMC causality, medical review sign-off, and a submission clock that counts every SAHPRA and partner deadline from Day 0.
Most of our work is under NDA. Per agreement, we can share the work but not the company details - all names and identifying information shown here have been changed.
Dashboard, intake inbox, case list, case workspace with 10 tabs and the submission clock. Every one of the 24 demo cases opens its own workspace.
Serious cases count down from the date anyone at Suurveld, a rep or a partner first heard of them, with partner deadlines of 7 or 10 days from each safety data exchange agreement. Days left turn red at 2 or fewer.
Reporter, patient, product and event show as chips on each intake item, beside a possible serious flag and an age that turns amber after 4 working hours and red after 1 working day.
22 intake items in English, isiZulu, isiXhosa and Afrikaans, 21 submissions to SAHPRA and 5 partners, 13 products, 13 staff users and 6 markets.
Suurveld's safety team of nine ran pharmacovigilance from a shared mailbox, a call centre spreadsheet and an ageing Access database. Call notes came in whatever language the caller used, sales reps forwarded WhatsApp screenshots days later and partners sent line listings once a quarter. Nobody could say which serious cases were close to their 15-day deadline, and a SAHPRA inspection finding on late expedited reports made it a board-level risk.
Umlindi takes every report of a suspected adverse reaction through triage, coding, medical review and quality check to an ICH E2B(R3) submission inside the deadline. Intake checks the four minimum criteria, each case shows a clock per regulator and partner, and sign-offs need re-authentication and a stated meaning.
Suurveld holds certificates of registration for about 140 medicines, from antiretrovirals and TB treatment to cardiovascular and diabetes lines, sold directly in South Africa and through partners in five SADC countries. Every suspected reaction has to be caught, assessed and reported on time.
Serious domestic reactions generally go to SAHPRA within 15 calendar days of first awareness by anyone in the company, including sales reps and partners. A report that sat in a rep's phone or a partner's inbox was already late when safety opened it.
Reports arrive by phone in English, isiZulu, isiXhosa and Afrikaans, and by email, web forms, rep visits, literature, partner files and clinical trial handoffs. The original words have to be kept beside the English translation and the name of who translated them.
A case is valid only with an identifiable reporter, patient, suspect product and event (ICH E2D), and seriousness follows the six ICH E2A criteria. Invalid reports must be kept and followed up, not deleted, and duplicates were being found by memory.
Partners report to NMRC, BoMRA, ZAMRA, MCAZ and EMRA under their own agreements and deadlines. Health information is special personal information under POPIA, so reporter contact details have to stay separate and access-controlled.
Mapped 14 user roles from intake associate to QPPV and inspector, 39 screens (36 staff and 3 public reporting pages) and the data model for intake items, reporters, versioned cases, MedDRA and WHODrug coding, reviews, follow-ups, submissions, signals, aggregate reports and the audit trail. Wrote down the rules the design follows: the Medicines and Related Substances Act and SAHPRA's guideline, ICH E2A, E2B(R3), E2C(R2) and E2D, WHO-UMC causality, the QPPV role, POPIA and the ECT Act.
Built 5 key screens on a production dashboard kit: the dashboard with case workflow by step and serious clocks due within 5 days, the intake inbox with a source viewer showing original text beside its translation, the case list with saved views, the case workspace with clocks, progress rail, WHO-UMC causality grid and medical review sign-off, and the submission clock with Generate E2B file and Mark sent.
MedDRA and WHODrug Global dictionaries, an E2B(R3) service validated against the ICH schema, SAHPRA's submission channel, Embase and PubMed literature searches, call centre telephony, Clickatell SMS, Microsoft 365 email and the rep CRM handoff, hosted in South Africa. Plus role-based access, an append-only audit trail, computer system validation, and the remaining screens: call capture, literature, follow-ups, signals, aggregate reports, partners and the public report forms.
Each case shows a card per regulator or partner with days left and the rule applied, such as SAHPRA serious domestic 15 calendar days. The dashboard lists serious cases due within 5 days with overdue rows in red.
Selecting an intake item opens the original call note, email or partner file, the English translation and translator, keyword hits such as admitted to hospital, and Day 0. Marking an item not an adverse event needs a reason and keeps it.
Medical review sign-off stays disabled until the company causality is set for every product and event pair, then asks for the password again and a signature meaning. Marking a submission sent after its due date requires a late reason.
Case records use patient initials and age, reporter contact details are masked until revealed, and each reveal is recorded in the case audit trail alongside every field change, with who, when, old and new values and the reason.

Designed and built a clickable clinical trial management system for a Warsaw contract research organisation running phase II and III trials in seven countries: a portfolio dashboard with CTIS notification deadlines, study timelines planned against actual, an 11-step site activation tracker and monitoring visit reports signed with a stated meaning.

Designed and built a clickable recruitment and eConsent platform for a Japanese site management organisation: a pre-screen leads pipeline with contact SLAs, a consent status view against the current IRB-approved version, and a participant consent record with every signature, quiz result and question a monitor needs to see.
Enterprise Software Engineering - Human + AI
Contact Us
© 2026 - Copyright. All Rights reserved Oceanlab
Location
Global Headquarters
21 Merchant Road, 3rd Floor, Singapore 058267
Main corporate office and leadership operations
North America Office
548 Market Street, PMB 12345, San Francisco, CA 94104
Client operations and business development
India Office
402 Shivalik Shilp II, SG Highway, Ahmedabad 380015
Engineering and delivery center
Enterprise Software Engineering - Human + AI
Contact Us
Locations
Global Headquarters
21 Merchant Road, 3rd Floor, Singapore 058267
Main corporate office and leadership operations
North America Office
548 Market Street, PMB 12345, San Francisco, CA 94104
Client operations and business development
India Office
402 Shivalik Shilp II, SG Highway, Ahmedabad 380015
Engineering and delivery center
© 2026 - Copyright. All Rights reserved Oceanlab