Mediloop
PHARMACY NETWORK CONNECTORS

Dispensing, Fulfillment & Status Updates

6 of 7

Connect pharmacy systems, ePrescription networks, medication catalogues and fulfillment workflows across the medication pathway.

MedicationDispensePreparationPartial FillSubstitutionCollectionDeliveryStatus Events
End-to-End Dispensing

Track preparation through patient receipt.

Real-Time Status Sync

Synchronize statuses across PMS and Mediloop.

Flexible Fulfillment

Support collection and delivery workflows.

Safe & Compliant

Handle partial fills, substitutions and cancellations with traceability.

Pharmacy Dispensing & Fulfillment Workflow
1
Accept
Pharmacy accepts prescription
2
Prepare
Prepare items and verify stock
3
Validate
Pharmacist validation/substitution when permitted
4
Dispense
Full or partial dispense; update inventory
5
Fulfill
Collection or tracked delivery
6
Update
MedicationDispense and patient/source synchronization
Prescription & Order Statuses
StatusMeaningTypical event
receivedPrescription received by pharmacyprescription.received
acceptedAccepted for preparationprescription.accepted
preparingIn preparationprescription.preparing
ready_for_collectionReady for patientfulfillment.ready
out_for_deliveryHandoff to deliverydelivery.dispatched
dispensedFull dispense completeddispense.completed
partially_dispensedSome items remaindispense.partial
cancelledCancelled with reasonprescription.cancelled
Status Updates
Events are idempotent and include correlation/source identifiers
Map vendor status to stable Mediloop workflow while preserving original value
Reconcile missing/out-of-order callbacks
Expose status timestamps and actor/system provenance
Do not infer patient receipt from delivery dispatch
Substitution & Partial Fills
Validate substitution against prescription and applicable pharmacy rules
Record prescribed vs dispensed product
Include pharmacist decision/reason where required
Track remaining quantity/items after partial fill
Create additional dispense events rather than overwriting prior dispense
Notify patient/prescriber when policy requires
APIs & Examples
fhirCopy
{
  "resourceType":"MedicationDispense",
  "status":"completed",
  "subject":{"reference":"Patient/123"},
  "authorizingPrescription":[{"reference":"MedicationRequest/rx-456"}],
  "whenHandedOver":"2026-09-06T10:30:00Z"
}
Simplified example. Real dispense data, substitution, performer and national requirements must follow applicable profiles and PMS evidence.
Error Handling
ConditionHandling
Duplicate status eventIdempotent no-op/update evidence only
Out-of-order eventPreserve source event; reconcile state transition
Partial dispense conflictUse authoritative PMS dispense records
Delivery failureKeep dispense/fulfillment states distinct
Cancellation after dispenseDo not erase dispense; create correction/return workflow if applicable
Best Practices
PMS is authoritative for local dispense evidence
Use FHIR MedicationDispense for interoperable clinical record
Keep fulfillment logistics separate from clinical dispense status
Preserve substitution/partial-fill lineage
Reconcile inventory after each final dispense/cancellation
Monitor event delays and manual exceptions
Developer Integration Surface
SurfaceOperation / resourceUseStatus
FHIRMedicationDispenseClinical dispense recordFHIR
Status APIaccept / prepare / ready / dispenseMediloop workflowConnector-backed
Eventsstatus and fulfillment updatesAsync synchronizationEvolving
Delivery APIshipment / tracking / proof of deliveryFulfillment logisticsProvider-specific
Next Steps
Map PMS status model
Implement MedicationDispense mapping
Add partial/substitution rules
Connect collection/delivery status
Test out-of-order/duplicate/failure cases