Medicines wholesale · Playbook 69

Recalls and drug alerts

Every recall read within minutes, affected batches found in stock and dispatch history, the right customers told, and completion evidenced. The Responsible Person confirms every quarantine and approves every customer notice.

  • Document AI
  • Agents with tools
  • Human in the loop
  • Event-driven integration
  • MHRA WDA(H) and GDP
  • MHRA DMRC
  • National Patient Safety Alerts
  • UK GDPR

At a glance

The problem
Recall notices arrive by email and PDF, and someone has to read them, find the batches and contact every customer
Typical volume
Around five MHRA recalls and notifications a month, plus manufacturer-led recalls. Each may touch hundreds of deliveries
Who's involved
The Responsible Person, quality, warehouse, transport, customer services, IT
Pilot
4–6 weeks after a 2-week discovery
Clouds
AWS or Azure, UK regions

An illustrative scenario. Linked to a real, anonymised case study below; the numbers here are still typical examples. The cloud services and UK rules were checked on 9 November 2026.

The business problem

Recalls reach a wholesaler from several directions: MHRA recall and notification emails, National Patient Safety Alerts for the most serious (Class 1) cases, letters and emails from manufacturers for company-led recalls, and separate cascades in Scotland, Wales and Northern Ireland. Each one names a product, batch numbers, expiry dates, the date of first distribution, and the level the recall goes to: wholesaler, pharmacy or patient.

In a typical wholesaler, the Responsible Person's team reads each notice, searches the warehouse system for the batches, pulls dispatch history from the ERP, exports a customer list, then emails or phones each customer, chases returns and reconciles quantities in a spreadsheet. Batch numbers are retyped from PDFs, and one wrong character means a batch is missed. The MHRA avoids issuing anything other than Class 1 notices on Fridays, so a notice that lands late on a Friday is likely to be serious, and is often the hardest to staff.

The rules are clear. Under the Human Medicines Regulations 2012 (regulation 43(7)), a wholesale dealer must keep an emergency plan for recalls and the records that make recall possible. The MHRA's guide to defective medicinal products, updated in February 2026, says wholesalers must inform every customer who may have received an affected batch. Inspectors look at the records afterwards, and the manufacturer needs the wholesaler's figures for its final recall report.

What AI changes

  • Every notice is read within minutes of arriving: product, batches, expiry, class, recall level and required actions are extracted and shown next to the original text.
  • Batches are matched exactly against current stock, stock in transit, returns, and every dispatch since the first distribution date in the notice.
  • Matched stock is put on hold in the warehouse system straight away, so nothing more is picked or shipped, pending a person's confirmation.
  • Affected customers are listed with quantities and delivery dates, and a notice is drafted from an approved template. A person approves it before it goes.
  • Replies and returns are tracked, quantities reconciled, and customers who haven't responded are chased automatically.
  • A completion pack is assembled as the recall runs: timeline, decisions, who did what, and quantities supplied against quantities accounted for, ready for the manufacturer's report and for inspection.

How success is measured

Agree these, and measure the baseline, before anything is built. Example targets are typical, not promises.

Notice to hold

Time from a notice arriving to matched stock being blocked in the warehouse.

ExampleFrom hours to under 30 minutes

Notice to customers told

Time from a notice arriving to every affected customer being sent an approved notice.

ExampleSame working day; Class 1 straight away, including out of hours

Missed batches

Affected batches found later that the process should have caught.

ExampleZero, tested by replaying past recalls

Reconciliation

Quantity supplied against quantity returned, destroyed or otherwise accounted for.

ExampleFully reconciled or explained, for every recall

Customer response

The share of notified customers who confirmed action, and how quickly.

ExampleOver 95% within the agreed time

Mock recall results

Speed and completeness of each test recall, including a test with the AI switched off.

ExampleEvery test passes

UK regulation and controls

Cross-sector rules are on the UK regulation map.

  • MHRAWholesale dealer's licence (WDA(H)), regulation 43(7)

    The licence holder must keep an emergency plan for recalls and the sale and supply records that support it. Batch-level dispatch history is searchable in seconds, and the emergency plan says how the AI helps and exactly what happens when it's unavailable.

  • MHRAGood Distribution Practice and the Responsible Person

    Recalls are a quality process the Responsible Person owns. The AI reads, matches, drafts and chases; the Responsible Person or a trained delegate confirms quarantine and approves notices, and only quality can release held stock. Recall arrangements are tested with regular mock recalls. Controlled drugs follow the existing Home Office-licensed procedures and records.

  • MHRA DMRCA guide to defective medicinal products (updated February 2026)

    Wholesalers must tell every customer who may have received an affected batch, and not every recall comes with an MHRA notice: some are led by the manufacturer. The intake handles both, and the evidence pack supports the manufacturer's final report, which the DMRC needs before it closes the case.

  • MHRA / NHS EnglandNational Patient Safety Alerts and recall classes

    Class 1 recalls (risk of death or disability) are issued as National Patient Safety Alerts; Class 2 and 3 as medicines recalls; Class 4 as caution-in-use notifications. The class sets the priority, and Class 1 pages a named on-call person immediately.

  • MHRAWindsor Framework and the devolved cascades

    Since 1 January 2025, one UK-wide licence and 'UK Only' packs cover Northern Ireland, so batch matching works the same across the UK. Cascades still differ: Scotland, Wales and Northern Ireland have their own routes, so the intake watches each one that applies to your customers.

  • ICOUK GDPR and the Data Protection Act 2018

    Customer records name pharmacists and contacts. Patient-level follow-up is the pharmacy's job, so the wholesaler needs no patient data. A short DPIA, UK regions, and a contract that stops providers training their models on your data.

The solution

Showing AWSAzuresovereign / on-prem services. Switch with the toggle; every diagram and table on this page follows it.

Recalls and drug alerts: reference architecture
  1. 01Sources

    • MHRA recall and notification emails
    • National Patient Safety Alerts
    • Manufacturer recall letters
  2. 02Intake

    • Amazon SESLogic Apps email connectorYour own mail serverShared recall mailbox
    • Scheduled LambdaTimer-triggered Azure FunctionsScheduled job on KubernetesBackstop check of MHRA alerts page
    • S3 with Object LockImmutable Blob StorageCeph with S3 Object LockNotice archive
  3. 03Intelligence

    • Textract + BedrockContent Understanding + FoundryDocling + open-weight vision modelRead the notice
    • Agent
      Bedrock AgentCoreFoundry Agent ServiceLangGraph on KubernetesRecall agent
  4. 04Orchestration

    • Step FunctionsLogic Apps / Durable FunctionsTemporal or n8nRecall workflow and timers
    • EventBridge + SQSEvent Grid + Service BusKafka or RabbitMQEvents and queues
  5. 05Systems of record

    • Warehouse management system
    • ERP: sales and dispatch history
    • Quality management system
  6. 06People

    • Person
      Responsible Person: confirms quarantine
    • Person
      Approves customer notices
    • Person
      Quality: releases stock, closes recall
  • Cloud or platform service (AWSAzuresovereign / on-prem)
  • AI agent
  • A person decides
  • Your existing systems
  • Outside your organisation

Components, side by side

Recalls and drug alerts: components on AWS, Azure and a sovereign or on-prem stack
LayerAWSAzureSovereign / on-prem
Intake: mailbox, alerts, lettersSubscribe a shared, monitored mailbox, never one person's inbox, and check the MHRA alerts page as a backstop in case an email goes astray.Amazon SES, S3, scheduled AWS LambdaLogic Apps connectors, Blob Storage, Azure FunctionsYour own mail server, scheduled jobs on Kubernetes, Ceph or IONOS S3 Object Storage
Reading noticesBatch numbers are compared character by character with the source and shown side by side for a person to confirm.Amazon Textract, with Amazon Bedrock to structure the resultAzure Content Understanding (includes Document Intelligence), with Microsoft FoundryOpen-source parsing (e.g. Docling) plus an open-weight vision model
Reasoning and draftingBoth clouds offer a choice of models, including Claude and others.Amazon BedrockMicrosoft FoundryOpen-weight models served with vLLM on your own GPUs, or IONOS AI Model Hub
Agent runtimeThe original Bedrock Agents closed to new customers on 30 July 2026; new builds use AgentCore.Amazon Bedrock AgentCoreFoundry Agent ServiceAn open-source agent framework (e.g. LangGraph) on Kubernetes
Batch matchingDeliberately exact matching, not AI. Near-misses are only suggested, for a person to check.Queries on read replicas of the ERP and warehouse data, run by AWS LambdaQueries on read replicas, run by Azure FunctionsQueries on read replicas, run as services on Kubernetes on-prem (e.g. OpenShift, Rancher)
Workflow and timersTimers chase customers who haven't replied, and escalate if any step stalls.AWS Step FunctionsLogic Apps or Durable FunctionsTemporal, or n8n
Customer noticesUse the channels customers already read, and keep the phone for Class 1.Amazon SES, the ordering portal and delivery notesAzure Communication Services email, the ordering portal and delivery notesYour own mail server, the ordering portal and delivery notes
Middleware and eventsAmazon EventBridge, SQSEvent Grid, Service BusApache Kafka or RabbitMQ
Link to warehouse and ERPHolds use the warehouse system's own block status, the same one a person would set.API Gateway, plus your existing integration platformAPI Management, plus your existing integration platformKong, or your existing API gateway, plus your existing integration platform
Evidence storeRecords can't be edited after the event, which is what an inspector wants to see.Amazon S3 with Object LockBlob Storage with immutability policiesCeph with S3 Object Lock
GuardrailsBedrock GuardrailsFoundry guardrails (Azure AI Content Safety)Open-source guardrails (e.g. NeMo Guardrails, Llama Guard)
Identity, keys, data protectionIAM Identity Center, KMSEntra ID, Key Vault, PurviewKeycloak or your existing Active Directory; OpenBao or HashiCorp Vault; an HSM
Monitoring and auditAlert a person if any notice hasn't been processed within 15 minutes of arriving.CloudWatch, CloudTrailAzure Monitor, Log AnalyticsPrometheus, Grafana, OpenTelemetry
UK data residencyeu-west-2 (London)UK South / UK WestYour own UK data centre, or a UK/EU provider (IONOS AI Model Hub runs in Germany)

On a phone, the table shows the platform you pick. Sovereign / on-prem means open, portable components you can run in your own data centre or with a UK or European provider; IONOS is shown as one example, and others exist. What sovereign cloud means →

Hybrid and on-prem

Many organisations keep core systems and sensitive data on their own servers. This is how the same design works across both.

Stays on-prem

The warehouse system, ERP and quality management system, with every batch and dispatch record, stay in your data centre. Batch matching and the hold run on-prem too, next to the data, so the step that protects patients never depends on a wide-area link.

Uses cloud AI

Reading notices and drafting customer letters use cloud models. Recall notices are public documents, so what leaves your network is mostly the notice itself; customer names and quantities are merged into the drafts on-prem.

How they connect

AWS Direct Connect or Azure ExpressRoute links the cloud to your data centre. The agent reaches the on-prem matching and hold services only through your API gateway, with its own identity and narrow permissions. AWS Outposts, or Azure Local with Azure Arc, can bring the cloud services onto your own hardware if you prefer.

If the link drops

The manual emergency plan applies, and on-prem monitoring raises an alert as soon as notices stop being processed. The shared mailbox still receives everything; when the link returns, queued notices are processed in order and checked against what the team handled by hand.

The agents

What each agent may do through its tools, what it may not, and where a person signs off. The limits are enforced by the platform, not the prompt.

Recall agent

May do

  • Read a notice and extract the product, batches, expiry, class, level and actions
  • Search stock, stock in transit, returns and dispatch history for the affected batches
  • Place a temporary hold on exact batch matches in the warehouse system
  • Build the customer list and draft the notice from the approved template
  • Track replies and returns, send reminders, and assemble the completion pack

May not do

  • Release held stock or close a recall
  • Send a customer notice before a person approves it
  • Decide that a notice doesn't apply to the business
  • Move, return or destroy stock
  • Change batch, product or customer data in the ERP

Where a person signs offThe Responsible Person or a trained delegate confirms the extracted details and the quarantine, approves the notice and the customer list, and signs off completion. Only quality can release held stock. The hold is the one action the agent takes on its own: holding a batch for a few minutes by mistake costs little, and missing one could harm a patient. Permissions are enforced by the platform's identity and policy controls, not by instructions in a prompt.

Middleware and integration

The warehouse system and ERP are reached only through an API layer. Batch searches run against read replicas, so a large recall query never slows down picking. The hold is set through the warehouse system's own API, so it behaves exactly like a hold a person sets.

Each notice becomes a message on a queue, and every step is logged against it. The same recall often arrives twice, from the MHRA and from the manufacturer, so notices are matched on product, batches and reference and handled as one recall. A retry never sends a customer a second notice.

The AI speeds the recall up; it is never the only route. If it's down, the manual emergency plan runs exactly as it does today, and the intake raises an alert if any notice sits unprocessed.

None of this works without batch numbers captured at goods-in and at dispatch. If the warehouse only records batches on receipt, fixing that comes first. No AI can recover data that was never captured.

Process and people

  • The recall procedure rewritten to include the AI steps, the approvals and the manual fallback, and signed off by the Responsible Person.
  • A named on-call person for Class 1 alerts out of hours, paged by the system.
  • Regular mock recalls through the new process, including one with the AI switched off.
  • A weekly check of the MHRA alerts page against the recalls processed, so nothing is missed quietly.
  • A named owner for every prompt, template and data feed, with change control through the quality system.
  • Responsible Person delegates trained in checking extracted batch numbers before go-live, not after.

Delivery plan

  1. 2 weeks

    Discovery

    Map today's recall procedure, time last year's recalls step by step, and check batch capture at goods-in and dispatch.

  2. Gate · must be true to passBaseline agreed, batch traceability confirmed, Responsible Person and quality involved, and DPIA screening done.

  3. 4–6 weeks

    Pilot

    Shadow mode: every new notice is handled by the AI and by the team in parallel, and last year's recalls are replayed.

  4. Gate · must be true to passZero missed batches in the replay, every extraction error caught by review, and the Responsible Person signs off the updated procedure.

  5. 3–4 weeks

    Production

    Holds and drafted notices go live, with monitoring, the manual fallback, and a mock recall before go-live.

  6. Gate · must be true to passMock recall passed, out-of-hours route tested, delegates trained.

  7. Ongoing

    Scale

    Reuse the pattern for returns, complaints and suspected falsified medicines, and for field safety notices on any medical devices you distribute.

  8. Gate · must be true to passEach new use passes the same pilot gate.

Roles and RACI

Who is responsible, accountable, consulted and informed, by activity
ActivityOperations directorResponsible PersonSolutions architectI can fill thisTechnical PMI can fill thisEngineersI can fill thisWarehouse & customer servicesSecurityI can fill this
Business case and benefitsAccountableConsultedConsultedResponsibleInformedConsultedInformed
Updated recall procedureInformedAccountable and ResponsibleConsultedConsultedInformedConsultedInformed
Target architectureInformedConsultedAccountable and ResponsibleConsultedConsultedInformedConsulted
Build and integration with warehouse and ERPInformedConsultedAccountableResponsibleResponsibleConsultedConsulted
Replay of last year's recallsInformedAccountableResponsibleConsultedResponsibleConsultedInformed
Mock recall before go-liveInformedAccountableConsultedResponsibleResponsibleResponsibleInformed
Go-live decisionAccountableResponsibleConsultedResponsibleInformedConsultedConsulted
Run, monitor and improveInformedAccountableConsultedConsultedResponsibleResponsibleConsulted

Business case and benefits

Operations director
A · Accountable
Responsible Person
C · Consulted
Solutions architect
C · Consulted
Technical PM
R · Responsible
Engineers
I · Informed
Warehouse & customer services
C · Consulted
Security
I · Informed

Updated recall procedure

Operations director
I · Informed
Responsible Person
A/R · Accountable and Responsible
Solutions architect
C · Consulted
Technical PM
C · Consulted
Engineers
I · Informed
Warehouse & customer services
C · Consulted
Security
I · Informed

Target architecture

Operations director
I · Informed
Responsible Person
C · Consulted
Solutions architect
A/R · Accountable and Responsible
Technical PM
C · Consulted
Engineers
C · Consulted
Warehouse & customer services
I · Informed
Security
C · Consulted

Build and integration with warehouse and ERP

Operations director
I · Informed
Responsible Person
C · Consulted
Solutions architect
A · Accountable
Technical PM
R · Responsible
Engineers
R · Responsible
Warehouse & customer services
C · Consulted
Security
C · Consulted

Replay of last year's recalls

Operations director
I · Informed
Responsible Person
A · Accountable
Solutions architect
R · Responsible
Technical PM
C · Consulted
Engineers
R · Responsible
Warehouse & customer services
C · Consulted
Security
I · Informed

Mock recall before go-live

Operations director
I · Informed
Responsible Person
A · Accountable
Solutions architect
C · Consulted
Technical PM
R · Responsible
Engineers
R · Responsible
Warehouse & customer services
R · Responsible
Security
I · Informed

Go-live decision

Operations director
A · Accountable
Responsible Person
R · Responsible
Solutions architect
C · Consulted
Technical PM
R · Responsible
Engineers
I · Informed
Warehouse & customer services
C · Consulted
Security
C · Consulted

Run, monitor and improve

Operations director
I · Informed
Responsible Person
A · Accountable
Solutions architect
C · Consulted
Technical PM
C · Consulted
Engineers
R · Responsible
Warehouse & customer services
R · Responsible
Security
C · Consulted

R ResponsibleA AccountableC ConsultedI Informed· not involved

Where I'd fit

Option A

Lead the architecture

If there's no architect on the programme, I'd own the design end to end: the intake, the batch matching, the integration with your warehouse system and ERP, and the evidence trail. I'd build it around your recall procedure and your Responsible Person, not the other way round, and report to your programme board.

Option B

Support your architect

If your partner or your own team already has an architect, I'd take on the document reading, the agent and the warehouse integration under their lead, and give them a second senior opinion on the rest, especially the fallback when systems are down. They stay in charge of the design.

Where this goes wrong

  1. Goes wrong

    A batch number is misread from a PDF, so the wrong stock is held and the affected stock ships.

    How the design avoids it

    Exact matching against the source text, a side-by-side check by a person, and a hold on near-misses until someone has looked.

  2. Goes wrong

    The warehouse records batches at goods-in but not at dispatch, so nobody can say which customer got which batch.

    How the design avoids it

    Check batch traceability in discovery and fix it first. The AI can only match what was recorded.

  3. Goes wrong

    A notice lands in one person's inbox on a Friday evening and waits until Monday.

    How the design avoids it

    A shared, monitored mailbox, a backstop check of the MHRA alerts page, and an on-call page for Class 1.

  4. Goes wrong

    The team trusts the system and forgets how to run a recall by hand.

    How the design avoids it

    The manual procedure stays in the recall procedure, and mock recalls include a test with the AI switched off.

  5. Goes wrong

    The same recall arrives from the MHRA and the manufacturer, and customers get two different notices.

    How the design avoids it

    One recall record per product and batch set, matched across sources, with one approved notice.

On the horizon

Changes already announced or under way that affect this design. More in the UK horizon scan.

  1. No date yet
    A medicines verification scheme for Great Britain

    Great Britain has had no working verification system since the start of 2021, and 2D barcodes are no longer compulsory. The government has committed to consult on a future scheme, and the Royal Pharmaceutical Society called for mandatory 2D barcodes in February 2026. Scan batch and expiry wherever packs carry a code, and design the data model so serial numbers can be added later.

  2. Late 2026–2027
    DHSC's changes to the medicines information regulations

    Hub-and-spoke dispensing between different businesses has been allowed since 1 October 2025, and DHSC has consulted on giving hubs the same reporting duties as wholesalers. That adds a step between the wholesaler and the patient. Make sure dispatch records show exactly which site each delivery went to.

  3. Under way
    More structured reporting to the MHRA

    Since February 2026, licence holders report suspected defects to the MHRA's Defective Medicines Report Centre through an online form. Notices to wholesalers still arrive as emails and documents. Keep the intake modular, so a structured feed could replace email reading without a redesign.

Questions to ask your partner or vendor

Good answers are specific. Vague answers to any of these are worth following up.

Copy them into your next supplier meeting

  1. What happens to a recall if your system, or the cloud it runs on, is down?
  2. How will you prove no batch was missed, using our own past recalls?
  3. Which actions can the agent take without a person, and where is that enforced?
  4. How do you handle the same recall arriving from the MHRA and the manufacturer?
  5. What evidence will we have for the manufacturer's report and for a GDP inspection?
  6. Who owns the templates, prompts and procedure after you leave?

Planning something like this?

Whether you need someone to lead the design or to support the architect you already have, let's talk it through.

Sam Naseem
Sam NaseemBirmingham, UK · UK & Europe
Available now