Electronic Prescription Service (EPS) Implementation Guide

NHSDigital-Task

Profile url
https://fhir.nhs.uk/StructureDefinition/NHSDigital-Task

The NHSDigital-Task resource is used by EPS dispensing (pharmacy) systems to perform two RESTful operations.

  1. Withdraw: Withdraw (delete) a submitted dispensing notification - see Dispense Notification Withdraw.
  2. Return: Return a downloaded prescription to the EPS, so it can be downloaded by another pharmacy - see Prescription Return.
idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
prescriptionS C0..1Extension(Complex)
repeatInformationS C0..1Extension(Complex)
modifierExtension?! C0..*Extension
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
instantiatesCanonicalΣ0..1canonical(ActivityDefinition)
instantiatesUriΣ0..1uri
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
groupIdentifierS Σ0..1Identifier
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
statusS Σ ?!1..1codeBinding
statusReasonΣ0..1CodeableConcept
businessStatusΣ0..1CodeableConceptBinding
intentS Σ1..1codeBinding
priority0..1codeBinding
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemΣ1..1uri
versionΣ0..1string
codeΣ1..1code
displayΣ0..1string
userSelectedΣ0..1boolean
id0..1string
extensionC0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ1..1code
displayΣ0..1string
userSelectedΣ0..1boolean
id0..1string
extensionC0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ1..1code
displayΣ0..1string
userSelectedΣ0..1boolean
id0..1string
extensionC0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ1..1code
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
descriptionΣ0..1string
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ1..1uriFixed Value
valueΣ1..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
executionPeriodΣ C0..1Period
authoredOnS C0..1dateTime
lastModifiedΣ C0..1dateTime
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ1..1uri
valueΣ1..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
performerType0..*CodeableConceptBinding
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ1..1uri
valueΣ1..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemΣ1..1uri
versionΣ0..1string
codeΣ1..1code
displayΣ1..1string
userSelectedΣ0..1boolean
id0..1string
extensionC0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ1..1code
displayΣ1..1string
userSelectedΣ0..1boolean
textΣ0..1string
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
noteS0..*Annotation
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
repetitions0..1positiveInt
id0..1string
extensionC0..*Extension
startΣ C0..1dateTime
endS Σ C0..1dateTime
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
type1..1CodeableConcept
valueAddressAddress
valueAgeAge
valueAnnotationAnnotation
valueAttachmentAttachment
valueBase64Binarybase64Binary
valueBooleanboolean
valueCanonicalcanonical
valueCodecode
valueCodeableConceptCodeableConcept
valueCodingCoding
valueContactDetailContactDetail
valueContactPointContactPoint
valueContributorContributor
valueCountCount
valueDataRequirementDataRequirement
valueDatedate
valueDateTimedateTime
valueDecimaldecimal
valueDistanceDistance
valueDosageDosage
valueDurationDuration
valueExpressionExpression
valueHumanNameHumanName
valueIdid
valueIdentifierIdentifier
valueInstantinstant
valueIntegerinteger
valueMarkdownmarkdown
valueMetaMeta
valueMoneyMoney
valueOidoid
valueParameterDefinitionParameterDefinition
valuePeriodPeriod
valuePositiveIntpositiveInt
valueQuantityQuantity
valueRangeRange
valueRatioRatio
valueReferenceReference
valueRelatedArtifactRelatedArtifact
valueSampledDataSampledData
valueSignatureSignature
valueStringstring
valueTimetime
valueTimingTiming
valueTriggerDefinitionTriggerDefinition
valueUnsignedIntunsignedInt
valueUriuri
valueUrlurl
valueUsageContextUsageContext
valueUuiduuid
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
type1..1CodeableConcept
valueAddressAddress
valueAgeAge
valueAnnotationAnnotation
valueAttachmentAttachment
valueBase64Binarybase64Binary
valueBooleanboolean
valueCanonicalcanonical
valueCodecode
valueCodeableConceptCodeableConcept
valueCodingCoding
valueContactDetailContactDetail
valueContactPointContactPoint
valueContributorContributor
valueCountCount
valueDataRequirementDataRequirement
valueDatedate
valueDateTimedateTime
valueDecimaldecimal
valueDistanceDistance
valueDosageDosage
valueDurationDuration
valueExpressionExpression
valueHumanNameHumanName
valueIdid
valueIdentifierIdentifier
valueInstantinstant
valueIntegerinteger
valueMarkdownmarkdown
valueMetaMeta
valueMoneyMoney
valueOidoid
valueParameterDefinitionParameterDefinition
valuePeriodPeriod
valuePositiveIntpositiveInt
valueQuantityQuantity
valueRangeRange
valueRatioRatio
valueReferenceReference
valueRelatedArtifactRelatedArtifact
valueSampledDataSampledData
valueSignatureSignature
valueStringstring
valueTimetime
valueTimingTiming
valueTriggerDefinitionTriggerDefinition
valueUnsignedIntunsignedInt
valueUriuri
valueUrlurl
valueUsageContextUsageContext
valueUuiduuid
idΣ0..1string
metaΣ0..1Meta
implicitRulesΣ ?!0..1uri
language0..1codeBinding
text0..1Narrative
contained0..*Resource
prescriptionS C0..1Extension(Complex)
repeatInformationS C0..1Extension(Complex)
modifierExtension?! C0..*Extension
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
instantiatesCanonicalΣ0..1canonical(ActivityDefinition)
instantiatesUriΣ0..1uri
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
groupIdentifierS Σ0..1Identifier
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
statusS Σ ?!1..1codeBinding
statusReasonΣ0..1CodeableConcept
businessStatusΣ0..1CodeableConceptBinding
intentS Σ1..1codeBinding
priority0..1codeBinding
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemΣ1..1uri
versionΣ0..1string
codeΣ1..1code
displayΣ0..1string
userSelectedΣ0..1boolean
id0..1string
extensionC0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ1..1code
displayΣ0..1string
userSelectedΣ0..1boolean
id0..1string
extensionC0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ1..1code
displayΣ0..1string
userSelectedΣ0..1boolean
id0..1string
extensionC0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ1..1code
displayΣ0..1string
userSelectedΣ0..1boolean
textΣ0..1string
descriptionΣ0..1string
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ1..1uriFixed Value
valueΣ1..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
executionPeriodΣ C0..1Period
authoredOnS C0..1dateTime
lastModifiedΣ C0..1dateTime
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ1..1uri
valueΣ1..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
performerType0..*CodeableConceptBinding
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ1..1uri
valueΣ1..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
id0..1string
extensionC0..*Extension
id0..1string
extensionC0..*Extension
systemΣ1..1uri
versionΣ0..1string
codeΣ1..1code
displayΣ1..1string
userSelectedΣ0..1boolean
id0..1string
extensionC0..*Extension
systemΣ1..1uriFixed Value
versionΣ0..1string
codeΣ1..1code
displayΣ1..1string
userSelectedΣ0..1boolean
textΣ0..1string
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
noteS0..*Annotation
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
repetitions0..1positiveInt
id0..1string
extensionC0..*Extension
startΣ C0..1dateTime
endS Σ C0..1dateTime
id0..1string
extensionC0..*Extension
referenceΣ C0..1string
typeΣ0..1uriBinding
id0..1string
extensionC0..*Extension
useΣ ?!0..1codeBinding
typeΣ0..1CodeableConceptBinding
systemΣ0..1uri
valueΣ0..1string
periodΣ C0..1Period
assignerΣ C0..1Reference()
displayΣ0..1string
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
type1..1CodeableConcept
valueAddressAddress
valueAgeAge
valueAnnotationAnnotation
valueAttachmentAttachment
valueBase64Binarybase64Binary
valueBooleanboolean
valueCanonicalcanonical
valueCodecode
valueCodeableConceptCodeableConcept
valueCodingCoding
valueContactDetailContactDetail
valueContactPointContactPoint
valueContributorContributor
valueCountCount
valueDataRequirementDataRequirement
valueDatedate
valueDateTimedateTime
valueDecimaldecimal
valueDistanceDistance
valueDosageDosage
valueDurationDuration
valueExpressionExpression
valueHumanNameHumanName
valueIdid
valueIdentifierIdentifier
valueInstantinstant
valueIntegerinteger
valueMarkdownmarkdown
valueMetaMeta
valueMoneyMoney
valueOidoid
valueParameterDefinitionParameterDefinition
valuePeriodPeriod
valuePositiveIntpositiveInt
valueQuantityQuantity
valueRangeRange
valueRatioRatio
valueReferenceReference
valueRelatedArtifactRelatedArtifact
valueSampledDataSampledData
valueSignatureSignature
valueStringstring
valueTimetime
valueTimingTiming
valueTriggerDefinitionTriggerDefinition
valueUnsignedIntunsignedInt
valueUriuri
valueUrlurl
valueUsageContextUsageContext
valueUuiduuid
id0..1string
extensionC0..*Extension
modifierExtensionΣ ?! C0..*Extension
type1..1CodeableConcept
valueAddressAddress
valueAgeAge
valueAnnotationAnnotation
valueAttachmentAttachment
valueBase64Binarybase64Binary
valueBooleanboolean
valueCanonicalcanonical
valueCodecode
valueCodeableConceptCodeableConcept
valueCodingCoding
valueContactDetailContactDetail
valueContactPointContactPoint
valueContributorContributor
valueCountCount
valueDataRequirementDataRequirement
valueDatedate
valueDateTimedateTime
valueDecimaldecimal
valueDistanceDistance
valueDosageDosage
valueDurationDuration
valueExpressionExpression
valueHumanNameHumanName
valueIdid
valueIdentifierIdentifier
valueInstantinstant
valueIntegerinteger
valueMarkdownmarkdown
valueMetaMeta
valueMoneyMoney
valueOidoid
valueParameterDefinitionParameterDefinition
valuePeriodPeriod
valuePositiveIntpositiveInt
valueQuantityQuantity
valueRangeRange
valueRatioRatio
valueReferenceReference
valueRelatedArtifactRelatedArtifact
valueSampledDataSampledData
valueSignatureSignature
valueStringstring
valueTimetime
valueTimingTiming
valueTriggerDefinitionTriggerDefinition
valueUnsignedIntunsignedInt
valueUriuri
valueUrlurl
valueUsageContextUsageContext
valueUuiduuid

Implementation Guidance

Element Implementation Guidance
Extension-EPS-Prescription Required only for eRD prescriptions. Use the value continuous-repeat-dispensing.
Extension-EPS-RepeatInformation Required only for eRD prescriptions.
identifier A single UUID identifier MUST be present
status Use case: Withdraw - Acceptable values rejected, cancelled or failed
Use case: Return - Acceptable value in-progress
statusReason Use case: Withdraw - EPS Dispense Withdraw Reason
Use case Return - EPS Dispense Return Reason
intent Fixed value of order
groupIdentifier The short form identifier (prescription id) to the original prescription-order MUST be present.
code A code from TaskCode to indicate the action to perform on the focus resource.
Use case: Withdraw - Use the code fulfill
Use case: Return - Use the code abort
focus Use case: Withdraw - Bundle identifier to a dispense-notification message
Use case: Return - Bundle identifier to a prescription-order message
for Identifier reference for the patient's NHS Number
requester Reference to a CONTAINED NHSDigital-PractitionerRole resource for the authenticated user requesting the action. This will in turn reference a CONTAINED Organization resource.
authoredOn Date and time the task was created.
owner Use case: Withdraw - The dispensing site ODS code
Use case: Return - Not required
reasonCode Use case: Withdraw - must be 373784005 | Dispensing medication
Use case: Return - must be 33633005 | Prescription of drug
back to top