Implementation guide for interoperable medicines

This guidance is under active development by NHS England and content may be added or updated on a regular basis.

Supply of Medication using ADCs

A number of examples have been provided to highlight how the FHIR MedicationRequest resource supports ADC use cases. A summary of the key data differences is provided in this table.

Example status intent category other elements
Medication unit dose active plan inpatient
Medication put on hold on-hold plan inpatient doNotPerform = true
dispenseRequest.validityPeriod
priorPrescription (optional)
Click and collect active order inpatient performer
dispenseRequest.quantity (optional)
TTO discharge/leave pack active plan discharge or leave
Whole pack dispense active plan inpatient dispenseRequest.quantity
STAT dose active plan inpatient priority = stat
PRN / As Required active plan inpatient dosage.asNeededBoolean = true
Multi-use products active plan inpatient The ADC uses local configuration to identify multi-use products
Multi-dose products active plan inpatient The ADC uses local configuration to identify multi-dose products
Multi-ingredient active plan inpatient References a Medication resource containing multiple ingredient data items

Medication unit dose

Atenolol 50mg tablets, 1 tablet, once day

{
  "fullUrl": "urn:uuid:34eb3c92-76e6-48c2-9691-aa1f0b58369b",
  "resource": {
    "resourceType": "MedicationRequest",
    "id": "34eb3c92-76e6-48c2-9691-aa1f0b58369b",
    "meta": {
      "profile": [
        "https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationRequest"
      ]
    },
    "status": "active",
    "intent": "plan",
    "category": "inpatient",
    "medicationCodeableConcept": {
      "coding": [
        {
          "system": "https://dmd.nhs.uk",
          "code": "42370711000001107",
          "display": "Atenolol 50mg tablets"
        }
      ]
    },
    "subject": {
      "reference": "Patient/UKCore-Patient-RichardSmith-Example"
    },
    "authoredOn": "2025-10-01T10:20:00+00:00",
    "encounter": {
        "reference": "Encounter/UKCore-Encounter-ABC123-Example"
        }
    },
    "dosageInstruction": [
      {
        "text": "1 tablet daily",
        "timing": {
          "repeat": {
            "frequency": 1,
            "period": 1,
            "periodUnit": "d"
          }
        },
        "doseAndRate": [
          {
            "doseQuantity": {
              "value": 1,
              "unit": "tablet",
              "system": "http://snomed.info/sct",
              "code": "428673006"
            }
          }
        ]
      }
    ],
    "substitution": {
      "allowedBoolean": false
    }
  }
}

Medication (VTM) unit dose

Atenolol, 50mg, oral, once a day

{
  "fullUrl": "urn:uuid:34eb3c92-76e6-48c2-9691-aa1f0b58369b",
  "resource": {
    "resourceType": "MedicationRequest",
    "id": "34eb3c92-76e6-48c2-9691-aa1f0b58369b",
    "meta": {
      "profile": [
        "https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationRequest"
      ]
    },
    "status": "active",
    "intent": "plan",
    "category": "inpatient",
    "medicationCodeableConcept": {
      "coding": [
        {
          "system": "https://dmd.nhs.uk",
          "code": "774685003",
          "display": "Atenolol"
        }
      ]
    },
    "subject": {
      "reference": "Patient/UKCore-Patient-RichardSmith-Example"
    },
    "authoredOn": "2025-10-01T10:20:00+00:00",
    "encounter": {
        "reference": "Encounter/UKCore-Encounter-ABC123-Example"
        }
    },
    "dosageInstruction": [
      {
        "text": "50mg daily, oral",
        "timing": {
          "repeat": {
            "frequency": 1,
            "period": 1,
            "periodUnit": "d"
          }
        },
        "route": {
          "coding": [
            {
              "system": "http://snomed.info/sct",
              "code": "26643006",
              "display": "Oral"
            }
          ]
        },
        "doseAndRate": [
          {
            "doseQuantity": {
              "value": 50,
              "unit": "milligram",
              "system": "http://unitsofmeasure.org",
              "code": "mg"
            }
          }
        ]
      }
    ],
    "substitution": {
      "allowedBoolean": false
    }
  }
}

Medication put on hold

Atenolol 50mg tablets - put on hold from 24th Sept 10:00 to 3rd Oct 15:00

{
  "fullUrl": "urn:uuid:643d2f30-f911-4914-bd73-abddea9b9e9f",
  "resource": {
    "resourceType": "MedicationRequest",
    "id": "643d2f30-f911-4914-bd73-abddea9b9e9f",
    "meta": {
      "profile": [
        "https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationRequest"
      ]
    },
    "status": "on-hold",
    "intent": "plan",
    "category": "inpatient",
    "doNotPerform": true,
    "medicationCodeableConcept": {
      "coding": [
        {
          "system": "https://dmd.nhs.uk",
          "code": "42370711000001107",
          "display": "Atenolol 50mg tablets"
        }
      ]
    },
    "subject": {
      "reference": "Patient/UKCore-Patient-RichardSmith-Example"
    },
    "authoredOn": "2025-10-01T10:20:00+00:00",
    "encounter": {
        "reference": "Encounter/UKCore-Encounter-ABC123-Example"
        }
    },
    "dispenseRequest": {
      "validityPeriod": {
        "start": "2026-09-24T10:00:00",
        "end": "2026-10-03T15:00:00"
      }
    },
    "substitution": {
      "allowedBoolean": false
    },
    "priorPrescription": {
      "reference": "MedicationRequest/34eb3c92-76e6-48c2-9691-aa1f0b58369b"
    }
  }
}

An EPMA to ADC implementation may handle the on-hold use case via two interactions. The first to put the medication on-hold from a given date/time. The second to put the medication back to active from a given date/time.

"status": "on-hold",
"dispenseRequest": {
      "validityPeriod": {
        "start": "2026-09-24T10:00:00"
      }
    }

followed by

"status": "active",
"dispenseRequest": {
      "validityPeriod": {
        "start": "2026-10-03T15:00:00"
      }
    }

Click and Collect order

Paracetamol 500mg tablets, 1 tablet, four times a day, pack of 28 tablets ordered by Chris Boland

{
  "fullUrl": "urn:uuid:34eb3c92-76e6-48c2-9691-aa1f0b58369b",
  "resource": {
    "resourceType": "MedicationRequest",
    "id": "34eb3c92-76e6-48c2-9691-aa1f0b58369b",
    "meta": {
      "profile": [
        "https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationRequest"
      ]
    },
    "status": "active",
    "intent": "order",
    "category": "inpatient",
    "medicationCodeableConcept": {
      "coding": [
        {
          "system": "https://dmd.nhs.uk",
          "code": "42109611000001109",
          "display": "Paracetamol 500mg tablets"
        }
      ]
    },
    "subject": {
      "reference": "Patient/UKCore-Patient-RichardSmith-Example"
    },
    "authoredOn": "2025-10-01T10:20:00+00:00",
    "encounter": {
        "reference": "Encounter/UKCore-Encounter-ABC123-Example"
        }
    },
    "performer": {
        "reference": "Patient/UKCore-Practitioner-ChrisBoland-Example"
        }
    },
    "dosageInstruction": [
      {
        "text": "1 tablet, 4 times a day",
        "timing": {
          "repeat": {
            "frequency": 4,
            "period": 1,
            "periodUnit": "d"
          }
        },
        "doseAndRate": [
          {
            "doseQuantity": {
              "value": 1,
              "unit": "tablet",
              "system": "http://snomed.info/sct",
              "code": "428673006"
            }
          }
        ]
      }
    ],
    "dispenseRequest": {
      "quantity": {
        "value": 28,
        "unit": "tablet",
        "system": "http://snomed.info/sct",
        "code": "428673006"
      }
    },
    "substitution": {
      "allowedBoolean": false
    }
  }
}

TTO pack for Discharge

Paracetamol 500mg tablets, 1 tablet, four times a day, for 7 days. Optionally a dispenseRequest.quantity for 28 tablets could be included.

{
  "fullUrl": "urn:uuid:34eb3c92-76e6-48c2-9691-aa1f0b58369b",
  "resource": {
    "resourceType": "MedicationRequest",
    "id": "34eb3c92-76e6-48c2-9691-aa1f0b58369b",
    "meta": {
      "profile": [
        "https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationRequest"
      ]
    },
    "status": "active",
    "intent": "plan",
    "category": "discharge",
    "medicationCodeableConcept": {
      "coding": [
        {
          "system": "https://dmd.nhs.uk",
          "code": "42109611000001109",
          "display": "Paracetamol 500mg tablets"
        }
      ]
    },
    "subject": {
      "reference": "Patient/UKCore-Patient-RichardSmith-Example"
    },
    "authoredOn": "2025-10-01T10:20:00+00:00",
    "encounter": {
        "reference": "Encounter/UKCore-Encounter-ABC123-Example"
        }
    },
    "dosageInstruction": [
      {
        "text": "1 tablet, 4 times a day, for 7 days",
        "timing": {
          "repeat": {
            "frequency": 4,
            "period": 1,
            "periodUnit": "d",
            "boundsDuration": {
              "value": 7,
              "unit": "day",
              "system": "http://unitsofmeasure.org",
              "code": "d"
            }
          }
        },
        "doseAndRate": [
          {
            "doseQuantity": {
              "value": 1,
              "unit": "tablet",
              "system": "http://snomed.info/sct",
              "code": "428673006"
            }
          }
        ]
      }
    ],
    "substitution": {
      "allowedBoolean": false
    }
  }
}

An EPMA to ADC implementation will likely support the definition of the duration for medication in three different ways; as a duration of time, between two dates (or times), or as a number of doses.

// for a duration of time

"repeat": {
  "boundsDuration": {
    "value": 7,
    "unit": "day",
    "system": "http://unitsofmeasure.org",
    "code": "d"
  }
}

// between two dates

"repeat": {
  "boundsPeriod": {
    "start": "2026-10-01",
    "end": "2026-10-07"
  }
}

// for a number of doses

"repeat": {
  "count": 7
}

Whole pack PRN for inpatient use

Paracetamol 500mg tablets, 1 tablet, PRN, maximum 8 tablets in 24 hours. If labelled for the patient, the medication could be kept in a patient bedside locker for either nurse or self administration.

{
  "fullUrl": "urn:uuid:34eb3c92-76e6-48c2-9691-aa1f0b58369b",
  "resource": {
    "resourceType": "MedicationRequest",
    "id": "34eb3c92-76e6-48c2-9691-aa1f0b58369b",
    "meta": {
      "profile": [
        "https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationRequest"
      ]
    },
    "status": "active",
    "intent": "order",
    "category": "inpatient",
    "medicationCodeableConcept": {
      "coding": [
        {
          "system": "https://dmd.nhs.uk",
          "code": "42109611000001109",
          "display": "Paracetamol 500mg tablets"
        }
      ]
    },
    "subject": {
      "reference": "Patient/UKCore-Patient-RichardSmith-Example"
    },
    "authoredOn": "2025-10-01T10:20:00+00:00",
    "encounter": {
        "reference": "Encounter/UKCore-Encounter-ABC123-Example"
        }
    },
    "dosageInstruction": [
      {
        "text": "1 tablet, PRN, maximum 8 tablets in 24 hours",
        "asNeededBoolean": true,
        "doseAndRate": [
          {
            "doseQuantity": {
              "value": 1,
              "unit": "tablet",
              "system": "http://snomed.info/sct",
              "code": "428673006"
            }
          }
        ],
        "maxDosePerPeriod": {
          "numerator": {
            "value": 8,
            "unit": "tablet",
            "system": "http://snomed.info/sct",
            "code": "428673006"
          },
          "denominator": {
            "value": 24,
            "unit": "hour",
            "system": "http://unitsofmeasure.org",
            "code": "h"
          }
        }
      }
    ],
    "dispenseRequest": {
      "quantity": {
        "value": 28,
        "unit": "tablet",
        "system": "http://snomed.info/sct",
        "code": "428673006"
      }
    },
    "substitution": {
      "allowedBoolean": false
    }
  }
}

STAT dose example

Morphine sulfate 1mg/1ml solution for injection ampoules, 1 ampoule, Bolus, Intravenous, stat

{
  "fullUrl": "urn:uuid:34eb3c92-76e6-48c2-9691-aa1f0b58369b",
  "resource": {
    "resourceType": "MedicationRequest",
    "id": "34eb3c92-76e6-48c2-9691-aa1f0b58369b",
    "meta": {
      "profile": [
        "https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationRequest"
      ]
    },
    "status": "active",
    "intent": "plan",
    "category": "inpatient",
    "priority": "stat",
    "medicationCodeableConcept": {
      "coding": [
        {
          "system": "https://dmd.nhs.uk",
          "code": "22401911000001100",
          "display": "Morphine sulfate 1mg/1ml solution for injection ampoules"
        }
      ]
    },
    "subject": {
      "reference": "Patient/UKCore-Patient-RichardSmith-Example"
    },
    "authoredOn": "2025-10-01T10:20:00+00:00",
    "encounter": {
        "reference": "Encounter/UKCore-Encounter-ABC123-Example"
        }
    },
    "dosageInstruction": [
      {
        "text": "Bolus - Intravenous - stat",
        "timing": {
          "repeat": {
            "frequency": 2,
            "period": 1,
            "periodUnit": "d"
          }
        },
        "method": {
          "coding": [
            {
              "system": "http://snomed.info/sct",
              "code": "13283801000001100",
              "display": "Bolus"
            }
          ]
        },
        "route": {
          "coding": [
            {
              "system": "http://snomed.info/sct",
              "code": "47625008",
              "display": "Intravenous"
            }
          ]
        },
        "doseAndRate": [
          {
            "doseQuantity": {
              "value": 1,
              "unit": "ampoule",
              "system": "http://snomed.info/sct",
              "code": "413516001"
            }
          }
        ]
      }
    ],
    "substitution": {
      "allowedBoolean": false
    }
  }
}

PRN / As Required example

Paracetamol 500mg tablets, 1 tablet, As Required

{
  "fullUrl": "urn:uuid:34eb3c92-76e6-48c2-9691-aa1f0b58369b",
  "resource": {
    "resourceType": "MedicationRequest",
    "id": "34eb3c92-76e6-48c2-9691-aa1f0b58369b",
    "meta": {
      "profile": [
        "https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationRequest"
      ]
    },
    "status": "active",
    "intent": "plan",
    "category": "inpatient",
    "medicationCodeableConcept": {
      "coding": [
        {
          "system": "https://dmd.nhs.uk",
          "code": "42109611000001109",
          "display": "Paracetamol 500mg tablets"
        }
      ]
    },
    "subject": {
      "reference": "Patient/UKCore-Patient-RichardSmith-Example"
    },
    "authoredOn": "2025-10-01T10:20:00+00:00",
    "encounter": {
        "reference": "Encounter/UKCore-Encounter-ABC123-Example"
        }
    },
    "dosageInstruction": [
      {
        "text": "1 tablet - As Required",
        "asNeededBoolean": true,
        "doseAndRate": [
          {
            "doseQuantity": {
              "value": 1,
              "unit": "tablet",
              "system": "http://snomed.info/sct",
              "code": "428673006"
            }
          }
        ]
      }
    ],
    "substitution": {
      "allowedBoolean": false
    }
  }
}

Multi-use products

Beclometasone 100micrograms/dose inhaler CFC free, 2 puffs, twice a day. The ADC will have this type of product configured as a "multi-use" product retained for use by this patient, often stored in a bedside locker.

{
  "fullUrl": "urn:uuid:34eb3c92-76e6-48c2-9691-aa1f0b58369b",
  "resource": {
    "resourceType": "MedicationRequest",
    "id": "34eb3c92-76e6-48c2-9691-aa1f0b58369b",
    "meta": {
      "profile": [
        "https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationRequest"
      ]
    },
    "status": "active",
    "intent": "plan",
    "category": "inpatient",
    "medicationCodeableConcept": {
      "coding": [
        {
          "system": "https://dmd.nhs.uk",
          "code": "35908111000001105",
          "display": "Beclometasone 100micrograms/dose inhaler CFC free"
        }
      ]
    },
    "subject": {
      "reference": "Patient/UKCore-Patient-RichardSmith-Example"
    },
    "authoredOn": "2025-10-01T10:20:00+00:00",
    "encounter": {
        "reference": "Encounter/UKCore-Encounter-ABC123-Example"
        }
    },
    "dosageInstruction": [
      {
        "text": "2 puffs, twice a day",
        "timing": {
          "repeat": {
            "frequency": 2,
            "period": 1,
            "periodUnit": "d"
          }
        },
        "doseAndRate": [
          {
            "doseQuantity": {
              "value": 2,
              "unit": "puff",
              "system": "http://snomed.info/sct",
              "code": "415215001"
            }
          }
        ]
      }
    ],
    "substitution": {
      "allowedBoolean": false
    }
  }
}

Multi-dose products

Paracetamol 500mg/5ml oral solution sugar free, 5ml, twice a day. The ADC will have this type of product configured as a "multi-dose" product so that it can be returned to the ADC for another patient use.

{
  "fullUrl": "urn:uuid:34eb3c92-76e6-48c2-9691-aa1f0b58369b",
  "resource": {
    "resourceType": "MedicationRequest",
    "id": "34eb3c92-76e6-48c2-9691-aa1f0b58369b",
    "meta": {
      "profile": [
        "https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationRequest"
      ]
    },
    "status": "active",
    "intent": "plan",
    "category": "inpatient",
    "medicationCodeableConcept": {
      "coding": [
        {
          "system": "https://dmd.nhs.uk",
          "code": "24014911000001102",
          "display": "Paracetamol 500mg/5ml oral solution sugar free"
        }
      ]
    },
    "subject": {
      "reference": "Patient/UKCore-Patient-RichardSmith-Example"
    },
    "authoredOn": "2025-10-01T10:20:00+00:00",
    "encounter": {
        "reference": "Encounter/UKCore-Encounter-ABC123-Example"
        }
    },
    "dosageInstruction": [
      {
        "text": "5 millilitres, twice a day",
        "timing": {
          "repeat": {
            "frequency": 2,
            "period": 1,
            "periodUnit": "d"
          }
        },
        "doseAndRate": [
          {
            "doseQuantity": {
              "value": 5,
              "unit": "millilitre",
              "system": "http://unitsofmeasure.org",
              "code": "ml"
            }
          }
        ]
      }
    ],
    "substitution": {
      "allowedBoolean": false
    }
  }
}

Multi-ingredient

Gentamicin 400mg in 100ml sodium chloride 0.9% infusion bags, for a total quantity of 200ml infusion fluid, for continuous infusion over 60 minutes, 3 times a day, intravenous. The instruction for the ADC is to dispense Gentamicin in a suitable form as the active ingredient along with 2 x 100ml infusion bags.

The MedicationRequest resource.

{
  "fullUrl": "urn:uuid:34eb3c92-76e6-48c2-9691-aa1f0b58369b",
  "resource": {
    "resourceType": "MedicationRequest",
    "id": "34eb3c92-76e6-48c2-9691-aa1f0b58369b",
    "meta": {
      "profile": [
        "https://fhir.hl7.org.uk/StructureDefinition/UKCore-MedicationRequest"
      ]
    },
    "status": "active",
    "intent": "plan",
    "category": "inpatient",
    "medicationReference": {
      "reference": "11dc9519-b6e8-41bb-bce5-f6f724b743bc",
      "type": "Medication"
    },
    "subject": {
      "reference": "Patient/UKCore-Patient-RichardSmith-Example"
    },
    "authoredOn": "2025-10-01T10:20:00+00:00",
    "encounter": {
        "reference": "Encounter/UKCore-Encounter-ABC123-Example"
        }
    },
    "dosageInstruction": [
      {
        "text": "Continuous infusion 200 millilitre - over 60 minutes - 3 times a day - Intravenous",
        "timing": {
          "repeat": {
            "duration": 60,
            "durationUnit": "min",
            "frequency": 3,
            "period": 1,
            "periodUnit": "d"
          }
        },
        "route": {
          "coding": [
            {
              "system": "http://snomed.info/sct",
              "code": "47625008",
              "display": "Intravenous"
            }
          ]
        },
        "method": {
          "coding": [
            {
              "system": "http://snomed.info/sct",
              "code": "261754007",
              "display": "Continuous infusion"
            }
          ]
        },
        "doseAndRate": [
          {
            "doseQuantity": {
              "value": 200,
              "unit": "millilitre",
              "system": "http://unitsofmeasure.org",
              "code": "ml"
            }
          }
        ]
      }
    ],
    "substitution": {
      "allowedBoolean": false
    }
  }
}

The referenced Medication resource.

{
  "fullUrl": "urn:uuid:11dc9519-b6e8-41bb-bce5-f6f724b743bc",
  "resource": {
    "resourceType": "Medication",
    "id": "11dc9519-b6e8-41bb-bce5-f6f724b743bc",
    "meta": {
      "profile": [
        "https://fhir.hl7.org.uk/StructureDefinition/UKCore-Medication"
      ]
    },
    "code": {
      "text": "Gentamicin 400 milligram in Sodium chloride 0.9% infusion 100ml bags - Solution for infusion"
    },
    "form": {
      "coding": [
        {
          "system": "http://snomed.info/sct",
          "code": "385229008",
          "display": "Solution for infusion"
        }
      ]
    },
    "ingredient": [
      {
        "itemCodeableConcept": {
          "coding": [
            {
              "system": "https://dmd.nhs.uk",
              "code": "387321007",
              "display": "Gentamicin"
            }
          ]
        },
        "strength": {
          "numerator": {
            "value": 400,
            "unit": "milligram",
            "system": "http://unitsofmeasure.org",
            "code": "mg"
          },
          "denominator": {
            "value": 1
          }
        }
      },
      {
        "itemCodeableConcept": {
          "coding": [
            {
              "system": "https://dmd.nhs.uk",
              "code": "4898311000001108",
              "display": "Sodium chloride 0.9% infusion 100ml bags"
            }
          ]
        }
      }
    ]
  }
}

back to top