This page is part of the Specialty Medication Enrollment (v2.0.0: STU2) based on FHIR R4. This is the current published version. For a full list of available versions, see the Directory of published versions
The Specialty Rx process supports two exchange patterns, which are described in Systematic Query Workflows:
Relating to both of those models, the sections below describe the Data Consumer system’s and Data Source system’s steps and responsibilities for:
In the solicited model, where a pharmacy or other party (Data Consumer system) requests patient information from an EHR or other responder (Data Source system), the Data Consumer system may either…
Pre-Match the Patient and include the Data Source’s Patient resource ID (Patient.id) in RESTful searches or Specialty Rx Query message.
or
Defer Patient Matching when using the Specialty Rx Query message, and include only the Data Consumer system’s Patient resource in the request. In this method, patient matching is performed by the Data Source system as a pre-step to creating its response.
Depending on the situation, the Data Consumer system may already have the Data Source’s Patient resource (for example, if it received it in a previous FHIR exchange), or it may be in a position to request it using the Patient/$match
operation.
In this scenario, the Data Consumer system submits a patient match operation against the Data Source’s server:
URL: [base]/Patient/$match
Input parameters. In the Specialty Rx process, this request SHALL contain three parameters:
resource
parameter containing a Patient resource representing the Data Consumer system’s patient recordonlyCertainMatches
parameter with the value set to true
. This prevents the Data Source from returning multiple possible Patient matches.count
parameter with the value set to 1Output parameter. The $match
operation returns a Bundle containing…
the single Patient resource that the Data Source has confidently matched to the Data Consumer system’s patient
or
an OperationOutcome resource if the Data Source is unable to return a patient, containing further advice regarding patient selection.
When retrieving information using RESTful searches…
patient
parameter in the search containing the retrieved patient ID (Patient.id).When retrieving information using a Specialty Rx Query message, the Data Consumer system…
requester-patient
parameter with a reference to the Data Consumer system’s Patient resourceresponder-patient
parameter with the Data Source’s Patient resource
responder-patient
Patient resource’s .meta.source
element with the Data Source system’s FHIR server URLquery-string
parameter. See Search ConventionsWhen retrieving information using RESTful searches…
When responding to a Specialty Rx Query message…
responder-patient
element.
In this approach, which applies only to the Specialty Rx Query message, the request contains only the Data Consumer system’s Patient resource. The Data Source’s Patient resource ID is not referenced in the request.
The Data Consumer system:
requester-patient
parameter with a reference to the Data Consumer system’s Patient resourcequery-string
parameter. See Search ConventionsThe Data Source system performs patient matching using the request’s patient identifying information before compiling the response. The system…
requester-patient
parameter.
query-string
parameter in the request.
"Condition"
to "Condition?patient=EHRPatient123"
.responder-patient
element with a reference to the Data Sources’s Patient resourcerequester-patient
parameter and SHALL populate this Patient resource’s .meta.source
element with the Data Consumer system’s FHIR server URLWhen the Data Consumer system processes a Specialty Rx Query Response or Query Response - Unsolicited message, it…
requester-patient
parameter contains a reference to the Data Consumer’s patient and that its .meta.source
= Data Consumer system’s FHIR server URLresponder-patient
parameter matches the Data Consumer system’s patientresponder-patient
parameterprescription
parameter (including referenced prescribing Practitioner and pharmacy Organization) to the related prescription. The receiving party can handle non-match situations according to their own rules, e.g., accept the message and add the patient to their system after a manual reviewThe NCPDP NewRx message typically used to transmit new prescriptions in the US does not support inclusion of the patient’s FHIR Patient resource ID.
However, it offers optional patient identifier elements including MedicalRecordIdentificationNumberEHR, which is used to convey the patient’s medical record number at the ordering practice.
When received in a NewRx prescription message, Data Consumer systems MAY include the MedicalRecordIdentificationNumberEHR with other patient information transmitted in the requester-patient
parameter of the Query message.
Because this identifier is not accompanied by a system URI in the NewRx, implementers SHOULD populate the value in the Patient resource as follows:
Patient.identifier.type.coding.system
= “http://terminology.hl7.org/CodeSystem/v2-0203”Patient.identifier.type.coding.code
= “MR”Patient.identifier.type.coding.code.display
= “Medical record number”Patient.identifier.type.text
= “MRN from prescription”Patient.identifier.value
= [the value received in MedicalRecordIdentificationNumberEHR ]Patient.identifier.system
= [data-absent-reason extension with value “unknown”]For example:
"identifier": [
{
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/v2-0203",
"code": "MR",
"display": "Medical record number",
}
],
"text": "MRN from prescription"
},
"_system": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/data-absent-reason",
"valueCode": "unknown"
}
]
},
"value": "30455"
}
]