This page is part of the FHIR Specification (v5.0.0: R5 - STU). This is the current published version. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2
Orders and Observations Work Group | Maturity Level: 1 | Trial Use | Security Category: Patient | Compartments: Device, Patient, Practitioner, RelatedPerson |
A record of a request to deliver a medication, substance or device used in the healthcare setting to a particular destination for a particular person or organization.
This resource is a request resource from a FHIR workflow perspective - see Workflow. It is the intent of the Orders and Observation Workgroup to align this resource with the workflow pattern for request resources.
The SupplyRequest resource expresses the need to deliver an item, while the SupplyDelivery tracks the actual delivery.
The SupplyRequest resource is meant for logistics functions only, not for associating a clinical use of the item, which would be done through the clinical resources such as ServiceRequest, DeviceRequest, MedicationRequest resources. The SupplyRequest relates to the Patient resource (in the deliverTo) but that is meant exclusively only for purposes of having a destination for delivery, not a clinical use.
The scope of the SupplyRequest resource is for recording the request of supplies used in the healthcare process to be delivered to a particular location. This includes supplies specifically used in the treatment of patients as well as supply movement within an institution (transport a set of supplies from materials management to a service unit (nurse station). This resource does not include the provisioning of transportation services.
The SupplyRequest resource allows requesting only a single item. If a workflow requires requesting multiple items simultaneously, this is done using multiple instances of this resource. These instances can be linked in different ways, depending on the needs of the workflow. For guidance, refer to the Request pattern
Note that the SupplyRequest records the fact that a request was made. To actually act on that request, additional workflow beyond simply the existence of a SupplyRequest is required. This can be achieved by using an Task resource, with the SupplyRequest referenced from the Task.focus, or by using the SupplyRequest resource in the context of a messaging or service workflow where the request is explicit or implicit. The SupplyDelivery resource represents the fulfillment as a result of SupplyRequest being acted upon.
The SupplyRequest resource is used for inventory management. When requesting medication, substances and devices when there is a patient focus or instructions regarding their use, DeviceRequest or MedicationRequest should be used instead.
For DeviceDispense, MedicationDispense, and BiologicallyDerivedProductDispense (planned), a SupplyRequest does not document the formal association of a device, medication, biologically derived product, or supply item to a patient. The DeviceDispense (or MedicationDispense or BiologicallyDerivceProductDispense) is used to formally document that the device, medication, biologically derived product or supply item is to be used by or for a patient in a medical activity.
To determine the purchase date, a search of DeviceRequest, SupplyRequest, DeviceDispense, or SupplyDelivery as defined in an implementation guide can be done , as the context of the use case actually determines which date of either resource is considered the purchase date.
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
SupplyRequest | TU | DomainResource | Request for a medication, substance or device Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | Σ | 0..* | Identifier | Business Identifier for SupplyRequest |
status | ?!Σ | 0..1 | code | draft | active | suspended + Binding: Supply Request Status (Required) |
basedOn | Σ | 0..* | Reference(Any) | What other request is fulfilled by this supply request |
category | Σ | 0..1 | CodeableConcept | The kind of supply (central, non-stock, etc.) Binding: Supply Type (Example) |
priority | Σ | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (Required) |
deliverFor | 0..1 | Reference(Patient) | The patient for who the supply request is for | |
item | Σ | 1..1 | CodeableReference(Medication | Substance | Device | DeviceDefinition | BiologicallyDerivedProduct | NutritionProduct | InventoryItem) | Medication, Substance, or Device requested to be supplied Binding: SNOMED CT Supply Item (Example) |
quantity | Σ | 1..1 | Quantity | The requested amount of the item indicated |
parameter | 0..* | BackboneElement | Ordered item details | |
code | 0..1 | CodeableConcept | Item detail Binding: ParameterCode (Example) | |
value[x] | 0..1 | Value of detail | ||
valueCodeableConcept | CodeableConcept | |||
valueQuantity | Quantity | |||
valueRange | Range | |||
valueBoolean | boolean | |||
occurrence[x] | Σ | 0..1 | When the request should be fulfilled | |
occurrenceDateTime | dateTime | |||
occurrencePeriod | Period | |||
occurrenceTiming | Timing | |||
authoredOn | Σ | 0..1 | dateTime | When the request was made |
requester | Σ | 0..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam) | Individual making the request |
supplier | Σ | 0..* | Reference(Organization | HealthcareService) | Who is intended to fulfill the request |
reason | 0..* | CodeableReference(Condition | Observation | DiagnosticReport | DocumentReference) | The reason why the supply item was requested Binding: Supply Request Reason (Example) | |
deliverFrom | 0..1 | Reference(Organization | Location) | The origin of the supply | |
deliverTo | 0..1 | Reference(Organization | Location | Patient | RelatedPerson) | The destination of the supply | |
Documentation for this format |
See the Extensions for this resource
UML Diagram (Legend)
XML Template
<SupplyRequest xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Business Identifier for SupplyRequest --></identifier> <status value="[code]"/><!-- 0..1 draft | active | suspended + --> <basedOn><!-- 0..* Reference(Any) What other request is fulfilled by this supply request --></basedOn> <category><!-- 0..1 CodeableConcept The kind of supply (central, non-stock, etc.) --></category> <priority value="[code]"/><!-- 0..1 routine | urgent | asap | stat --> <deliverFor><!-- 0..1 Reference(Patient) The patient for who the supply request is for --></deliverFor> <item><!-- 1..1 CodeableReference(BiologicallyDerivedProduct|Device| DeviceDefinition|InventoryItem|Medication|NutritionProduct|Substance) Medication, Substance, or Device requested to be supplied --></item> <quantity><!-- 1..1 Quantity The requested amount of the item indicated --></quantity> <parameter> <!-- 0..* Ordered item details --> <code><!-- 0..1 CodeableConcept Item detail --></code> <value[x]><!-- 0..1 CodeableConcept|Quantity|Range|boolean Value of detail --></value[x]> </parameter> <occurrence[x]><!-- 0..1 dateTime|Period|Timing When the request should be fulfilled --></occurrence[x]> <authoredOn value="[dateTime]"/><!-- 0..1 When the request was made --> <requester><!-- 0..1 Reference(CareTeam|Device|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) Individual making the request --></requester> <supplier><!-- 0..* Reference(HealthcareService|Organization) Who is intended to fulfill the request --></supplier> <reason><!-- 0..* CodeableReference(Condition|DiagnosticReport|DocumentReference| Observation) The reason why the supply item was requested --></reason> <deliverFrom><!-- 0..1 Reference(Location|Organization) The origin of the supply --></deliverFrom> <deliverTo><!-- 0..1 Reference(Location|Organization|Patient|RelatedPerson) The destination of the supply --></deliverTo> </SupplyRequest>
JSON Template
{ "resourceType" : "SupplyRequest", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Business Identifier for SupplyRequest "status" : "<code>", // draft | active | suspended + "basedOn" : [{ Reference(Any) }], // What other request is fulfilled by this supply request "category" : { CodeableConcept }, // The kind of supply (central, non-stock, etc.) "priority" : "<code>", // routine | urgent | asap | stat "deliverFor" : { Reference(Patient) }, // The patient for who the supply request is for "item" : { CodeableReference(BiologicallyDerivedProduct|Device| DeviceDefinition|InventoryItem|Medication|NutritionProduct|Substance) }, // R! Medication, Substance, or Device requested to be supplied "quantity" : { Quantity }, // R! The requested amount of the item indicated "parameter" : [{ // Ordered item details "code" : { CodeableConcept }, // Item detail // value[x]: Value of detail. One of these 4: "valueCodeableConcept" : { CodeableConcept }, "valueQuantity" : { Quantity }, "valueRange" : { Range }, "valueBoolean" : <boolean> }], // occurrence[x]: When the request should be fulfilled. One of these 3: "occurrenceDateTime" : "<dateTime>", "occurrencePeriod" : { Period }, "occurrenceTiming" : { Timing }, "authoredOn" : "<dateTime>", // When the request was made "requester" : { Reference(CareTeam|Device|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) }, // Individual making the request "supplier" : [{ Reference(HealthcareService|Organization) }], // Who is intended to fulfill the request "reason" : [{ CodeableReference(Condition|DiagnosticReport|DocumentReference| Observation) }], // The reason why the supply item was requested "deliverFrom" : { Reference(Location|Organization) }, // The origin of the supply "deliverTo" : { Reference(Location|Organization|Patient|RelatedPerson) } // The destination of the supply }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:SupplyRequest; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:identifier ( [ Identifier ] ... ) ; # 0..* Business Identifier for SupplyRequest fhir:status [ code ] ; # 0..1 draft | active | suspended + fhir:basedOn ( [ Reference(Any) ] ... ) ; # 0..* What other request is fulfilled by this supply request fhir:category [ CodeableConcept ] ; # 0..1 The kind of supply (central, non-stock, etc.) fhir:priority [ code ] ; # 0..1 routine | urgent | asap | stat fhir:deliverFor [ Reference(Patient) ] ; # 0..1 The patient for who the supply request is for fhir:item [ CodeableReference(BiologicallyDerivedProduct|Device|DeviceDefinition|InventoryItem|Medication| NutritionProduct|Substance) ] ; # 1..1 Medication, Substance, or Device requested to be supplied fhir:quantity [ Quantity ] ; # 1..1 The requested amount of the item indicated fhir:parameter ( [ # 0..* Ordered item details fhir:code [ CodeableConcept ] ; # 0..1 Item detail # value[x] : 0..1 Value of detail. One of these 4 fhir:value [ a fhir:CodeableConcept ; CodeableConcept ] fhir:value [ a fhir:Quantity ; Quantity ] fhir:value [ a fhir:Range ; Range ] fhir:value [ a fhir:boolean ; boolean ] ] ... ) ; # occurrence[x] : 0..1 When the request should be fulfilled. One of these 3 fhir:occurrence [ a fhir:dateTime ; dateTime ] fhir:occurrence [ a fhir:Period ; Period ] fhir:occurrence [ a fhir:Timing ; Timing ] fhir:authoredOn [ dateTime ] ; # 0..1 When the request was made fhir:requester [ Reference(CareTeam|Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ; # 0..1 Individual making the request fhir:supplier ( [ Reference(HealthcareService|Organization) ] ... ) ; # 0..* Who is intended to fulfill the request fhir:reason ( [ CodeableReference(Condition|DiagnosticReport|DocumentReference|Observation) ] ... ) ; # 0..* The reason why the supply item was requested fhir:deliverFrom [ Reference(Location|Organization) ] ; # 0..1 The origin of the supply fhir:deliverTo [ Reference(Location|Organization|Patient|RelatedPerson) ] ; # 0..1 The destination of the supply ]
Changes from both R4 and R4B
SupplyRequest | |
SupplyRequest.basedOn |
|
SupplyRequest.deliverFor |
|
SupplyRequest.item |
|
SupplyRequest.requester |
|
SupplyRequest.reason |
|
SupplyRequest.deliverTo |
|
SupplyRequest.reasonCode |
|
SupplyRequest.reasonReference |
|
See the Full Difference for further information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.
See R4 <--> R5 Conversion Maps (status = See Conversions Summary.)
Structure
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
SupplyRequest | TU | DomainResource | Request for a medication, substance or device Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension | |
identifier | Σ | 0..* | Identifier | Business Identifier for SupplyRequest |
status | ?!Σ | 0..1 | code | draft | active | suspended + Binding: Supply Request Status (Required) |
basedOn | Σ | 0..* | Reference(Any) | What other request is fulfilled by this supply request |
category | Σ | 0..1 | CodeableConcept | The kind of supply (central, non-stock, etc.) Binding: Supply Type (Example) |
priority | Σ | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (Required) |
deliverFor | 0..1 | Reference(Patient) | The patient for who the supply request is for | |
item | Σ | 1..1 | CodeableReference(Medication | Substance | Device | DeviceDefinition | BiologicallyDerivedProduct | NutritionProduct | InventoryItem) | Medication, Substance, or Device requested to be supplied Binding: SNOMED CT Supply Item (Example) |
quantity | Σ | 1..1 | Quantity | The requested amount of the item indicated |
parameter | 0..* | BackboneElement | Ordered item details | |
code | 0..1 | CodeableConcept | Item detail Binding: ParameterCode (Example) | |
value[x] | 0..1 | Value of detail | ||
valueCodeableConcept | CodeableConcept | |||
valueQuantity | Quantity | |||
valueRange | Range | |||
valueBoolean | boolean | |||
occurrence[x] | Σ | 0..1 | When the request should be fulfilled | |
occurrenceDateTime | dateTime | |||
occurrencePeriod | Period | |||
occurrenceTiming | Timing | |||
authoredOn | Σ | 0..1 | dateTime | When the request was made |
requester | Σ | 0..1 | Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device | CareTeam) | Individual making the request |
supplier | Σ | 0..* | Reference(Organization | HealthcareService) | Who is intended to fulfill the request |
reason | 0..* | CodeableReference(Condition | Observation | DiagnosticReport | DocumentReference) | The reason why the supply item was requested Binding: Supply Request Reason (Example) | |
deliverFrom | 0..1 | Reference(Organization | Location) | The origin of the supply | |
deliverTo | 0..1 | Reference(Organization | Location | Patient | RelatedPerson) | The destination of the supply | |
Documentation for this format |
See the Extensions for this resource
XML Template
<SupplyRequest xmlns="http://hl7.org/fhir"> <!-- from Resource: id, meta, implicitRules, and language --> <!-- from DomainResource: text, contained, extension, and modifierExtension --> <identifier><!-- 0..* Identifier Business Identifier for SupplyRequest --></identifier> <status value="[code]"/><!-- 0..1 draft | active | suspended + --> <basedOn><!-- 0..* Reference(Any) What other request is fulfilled by this supply request --></basedOn> <category><!-- 0..1 CodeableConcept The kind of supply (central, non-stock, etc.) --></category> <priority value="[code]"/><!-- 0..1 routine | urgent | asap | stat --> <deliverFor><!-- 0..1 Reference(Patient) The patient for who the supply request is for --></deliverFor> <item><!-- 1..1 CodeableReference(BiologicallyDerivedProduct|Device| DeviceDefinition|InventoryItem|Medication|NutritionProduct|Substance) Medication, Substance, or Device requested to be supplied --></item> <quantity><!-- 1..1 Quantity The requested amount of the item indicated --></quantity> <parameter> <!-- 0..* Ordered item details --> <code><!-- 0..1 CodeableConcept Item detail --></code> <value[x]><!-- 0..1 CodeableConcept|Quantity|Range|boolean Value of detail --></value[x]> </parameter> <occurrence[x]><!-- 0..1 dateTime|Period|Timing When the request should be fulfilled --></occurrence[x]> <authoredOn value="[dateTime]"/><!-- 0..1 When the request was made --> <requester><!-- 0..1 Reference(CareTeam|Device|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) Individual making the request --></requester> <supplier><!-- 0..* Reference(HealthcareService|Organization) Who is intended to fulfill the request --></supplier> <reason><!-- 0..* CodeableReference(Condition|DiagnosticReport|DocumentReference| Observation) The reason why the supply item was requested --></reason> <deliverFrom><!-- 0..1 Reference(Location|Organization) The origin of the supply --></deliverFrom> <deliverTo><!-- 0..1 Reference(Location|Organization|Patient|RelatedPerson) The destination of the supply --></deliverTo> </SupplyRequest>
JSON Template
{ "resourceType" : "SupplyRequest", // from Resource: id, meta, implicitRules, and language // from DomainResource: text, contained, extension, and modifierExtension "identifier" : [{ Identifier }], // Business Identifier for SupplyRequest "status" : "<code>", // draft | active | suspended + "basedOn" : [{ Reference(Any) }], // What other request is fulfilled by this supply request "category" : { CodeableConcept }, // The kind of supply (central, non-stock, etc.) "priority" : "<code>", // routine | urgent | asap | stat "deliverFor" : { Reference(Patient) }, // The patient for who the supply request is for "item" : { CodeableReference(BiologicallyDerivedProduct|Device| DeviceDefinition|InventoryItem|Medication|NutritionProduct|Substance) }, // R! Medication, Substance, or Device requested to be supplied "quantity" : { Quantity }, // R! The requested amount of the item indicated "parameter" : [{ // Ordered item details "code" : { CodeableConcept }, // Item detail // value[x]: Value of detail. One of these 4: "valueCodeableConcept" : { CodeableConcept }, "valueQuantity" : { Quantity }, "valueRange" : { Range }, "valueBoolean" : <boolean> }], // occurrence[x]: When the request should be fulfilled. One of these 3: "occurrenceDateTime" : "<dateTime>", "occurrencePeriod" : { Period }, "occurrenceTiming" : { Timing }, "authoredOn" : "<dateTime>", // When the request was made "requester" : { Reference(CareTeam|Device|Organization|Patient|Practitioner| PractitionerRole|RelatedPerson) }, // Individual making the request "supplier" : [{ Reference(HealthcareService|Organization) }], // Who is intended to fulfill the request "reason" : [{ CodeableReference(Condition|DiagnosticReport|DocumentReference| Observation) }], // The reason why the supply item was requested "deliverFrom" : { Reference(Location|Organization) }, // The origin of the supply "deliverTo" : { Reference(Location|Organization|Patient|RelatedPerson) } // The destination of the supply }
Turtle Template
@prefix fhir: <http://hl7.org/fhir/> . [ a fhir:SupplyRequest; fhir:nodeRole fhir:treeRoot; # if this is the parser root # from Resource: .id, .meta, .implicitRules, and .language # from DomainResource: .text, .contained, .extension, and .modifierExtension fhir:identifier ( [ Identifier ] ... ) ; # 0..* Business Identifier for SupplyRequest fhir:status [ code ] ; # 0..1 draft | active | suspended + fhir:basedOn ( [ Reference(Any) ] ... ) ; # 0..* What other request is fulfilled by this supply request fhir:category [ CodeableConcept ] ; # 0..1 The kind of supply (central, non-stock, etc.) fhir:priority [ code ] ; # 0..1 routine | urgent | asap | stat fhir:deliverFor [ Reference(Patient) ] ; # 0..1 The patient for who the supply request is for fhir:item [ CodeableReference(BiologicallyDerivedProduct|Device|DeviceDefinition|InventoryItem|Medication| NutritionProduct|Substance) ] ; # 1..1 Medication, Substance, or Device requested to be supplied fhir:quantity [ Quantity ] ; # 1..1 The requested amount of the item indicated fhir:parameter ( [ # 0..* Ordered item details fhir:code [ CodeableConcept ] ; # 0..1 Item detail # value[x] : 0..1 Value of detail. One of these 4 fhir:value [ a fhir:CodeableConcept ; CodeableConcept ] fhir:value [ a fhir:Quantity ; Quantity ] fhir:value [ a fhir:Range ; Range ] fhir:value [ a fhir:boolean ; boolean ] ] ... ) ; # occurrence[x] : 0..1 When the request should be fulfilled. One of these 3 fhir:occurrence [ a fhir:dateTime ; dateTime ] fhir:occurrence [ a fhir:Period ; Period ] fhir:occurrence [ a fhir:Timing ; Timing ] fhir:authoredOn [ dateTime ] ; # 0..1 When the request was made fhir:requester [ Reference(CareTeam|Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ] ; # 0..1 Individual making the request fhir:supplier ( [ Reference(HealthcareService|Organization) ] ... ) ; # 0..* Who is intended to fulfill the request fhir:reason ( [ CodeableReference(Condition|DiagnosticReport|DocumentReference|Observation) ] ... ) ; # 0..* The reason why the supply item was requested fhir:deliverFrom [ Reference(Location|Organization) ] ; # 0..1 The origin of the supply fhir:deliverTo [ Reference(Location|Organization|Patient|RelatedPerson) ] ; # 0..1 The destination of the supply ]
Changes from both R4 and R4B
SupplyRequest | |
SupplyRequest.basedOn |
|
SupplyRequest.deliverFor |
|
SupplyRequest.item |
|
SupplyRequest.requester |
|
SupplyRequest.reason |
|
SupplyRequest.deliverTo |
|
SupplyRequest.reasonCode |
|
SupplyRequest.reasonReference |
|
See the Full Difference for further information
This analysis is available for R4 as XML or JSON and for R4B as XML or JSON.
See R4 <--> R5 Conversion Maps (status = See Conversions Summary.)
Additional definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions, the spreadsheet version & the dependency analysis
Path | ValueSet | Type | Documentation |
---|---|---|---|
SupplyRequest.status | SupplyRequestStatus | Required | Status of the supply request. |
SupplyRequest.category | SupplyType | Example | This value sets refers to a Category of supply. |
SupplyRequest.priority | RequestPriority | Required | Identifies the level of importance to be assigned to actioning the request. |
SupplyRequest.item | SNOMEDCTSupplyItem | Example | This value set includes SNOMED CT where concept is-a 105590001 (Substance (substance)) or concept is-a 260787004 (Physical object) and provided as an example value set. |
SupplyRequest.parameter.code | ?? | Example | |
SupplyRequest.reason | SupplyRequestReason | Example | The reason why the supply item was requested. |
Search parameters for this resource. See also the full list of search parameters for this resource, and check the Extensions registry for search parameters on extensions related to this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.
Name | Type | Description | Expression | In Common |
category | token | The kind of supply (central, non-stock, etc.) | SupplyRequest.category | |
date | date | When the request was made | SupplyRequest.authoredOn | 27 Resources |
identifier | token | Business Identifier for SupplyRequest | SupplyRequest.identifier | 65 Resources |
patient | reference | The patient or subject for whom the supply is destined | SupplyRequest.deliverFor (Patient) | 66 Resources |
requester | reference | Individual making the request | SupplyRequest.requester (Practitioner, Organization, CareTeam, Device, Patient, PractitionerRole, RelatedPerson) | |
status | token | draft | active | suspended + | SupplyRequest.status | |
subject | reference | The destination of the supply | SupplyRequest.deliverTo (Organization, Patient, RelatedPerson, Location) | |
supplier | reference | Who is intended to fulfill the request | SupplyRequest.supplier (Organization, HealthcareService) |