eReferral Implementation Guide
0.1.0 - ci-build
eReferral Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
The interfaces and FHIR Profiles described in this document are intended to satisfy eReferral workflows. What follows is a description of common workflows, indicating as well, the various status changes the FHIR Resources transition through. The events may be combined in other ways to create workflows not defined in this guide.
The workflow step can be derived, by the Requester, Performer or Intermediary, by examining the MessageHeader.eventCoding and focus and various status codes.
This guide does not specify how Requester, Performer or Intermediary systems react to message received beyond sending the acknowledgment or notifications. For example, a Performer system that received a referral request should contact the healthcare worker and present them with a user interface to review the referral, look up additional information (say documents or clinical history of patients) and either accept or reject the referral.
| Event | Business Event | ServiceRequest Status | Task Status | Appointment Status |
|---|---|---|---|---|
| create-referral | Initial submission by Requester | active | requested | booked |
| notify-referral | The Intermediary notifies the Performer that there is a referral assigned to them. | active | requested | booked |
| accept-referral | Performer accepts the referral. | active | accepted | booked |
| notify-referral | The Intermediary notifies the Requester that there is a significant referral status change. | active | requested | booked |
| complete-referral | Performer has completed | completed | completed | fulfilled |
| notify-referral | The Intermediary notifies the Requester that there is a significant referral status change. | completed | completed | fulfilled |
Consideration 🔎 Notifications (notify-referral) in some cases may be omitted. I.e. if there is no requirement to inform the Requester that the Performer has accepted, that message may be omitted.
Consideration 🔎 The events may be extended by adding more granular events such as appointment-complete or appointment-booked (if the Requester doesn't book the appointment but it is booked by the Patient or Performer), or appointment-noshow (if the Patient does not show up for the appointment).
| Event | Business Event | ServiceRequest Status | Task Status | Appointment Status |
|---|---|---|---|---|
| create-referral | Initial submission by Requester | active | requested | n/a |
| notify-referral | The Intermediary notifies the Performer that there is a referral assigned to them. | active | requested | n/a |
| rejected-referral | Performer rejects the referral. | active | rejected | n/a |
| notify-referral | The Intermediary notifies the Requester that there is a significant referral status change. | active | rejected | n/a |
| Event | Business Event | ServiceRequest Status | Task Status | Appointment Status |
|---|---|---|---|---|
| create-referral | Initial submission by Requester | active | requested | n/a |
| notify-referral | The Intermediary notifies the Performer that there is a referral assigned to them. | active | requested | n/a |
| accept-referral | Performer accepts the referral. | active | accepted | n/a |
| notify-referral | The Intermediary notifies the Requester that there is a significant referral status change. | active | accepted | n/a |
| cancel-referral | Requester cancels the referral. | revoked or entered-in-error | cancelled | n/a |
| notify-referral | The Intermediary notifies the Performer that there is a significant referral status change. | revoked or entered-in-error | cancelled | n/a |
| Event | Business Event | ServiceRequest Status | Task Status | Appointment Status |
|---|---|---|---|---|
| create-referral | Initial submission by Requester. | active | requested | booked |
| notify-referral | The Intermediary notifies the Performer that there is a referral assigned to them. | active | requested | booked |
| accept-referral | Performer accepts the referral. | active | accepted | booked |
| notify-referral | The Intermediary notifies the Requester that there is a significant referral status change. | active | accepted | booked |
| update-referral | Requester adds a DocumentReference to the referral. | active | accepted | booked |
| notify-referral | The Intermediary notifies the Performer that there is a significant referral change. | active | accepted | booked |
| complete-referral | Performer has completed. | completed | completed | fulfilled |
| notify-referral | The Intermediary notifies the Requester that there is a significant referral status change. | completed | completed | fulfilled |
This is not a workflow and therefore has no steps, like above, defined. The FHIR search and read interactions are suitable. For instance, to find all referrals based on Patient, that are active, one could use the following:
GET [base]/ServiceRequest?subject=Patient/324&status=active&_revinclude=Appointment:based-on&_revinclude=Task:based-on
Besides returning the ServiceRequest the Appointment and Task are also returned.
The Intermediary is expected to store Resources recieved in the FHIR Repository, updating them as necessary. The Requestor or Performer is permitted (in general, subject to security configurations) access to these Resource instances through standard FHIR search and read interactions. This is permitted as the Performer or Requestor may not have their own FHIR repositories to store FHIR Resources, instead only storing References or elements normalized to suite their custom data models. Updates outside of the FHIR Message workflows defined in this guide SHALL not be permitted.
This guide describes the FHIR Resources and their structure to transport messages regarding the referral but how the systems contacts the recipients (the recipients being the administrative staff or other healthcare workers responsible to fulfill the service) is not in scope. This could be an email or SMS, and the recipient's system will need to implement this functionality. E.g. when the Intermediary receives a create-referral Message it notifies the Performer's system with a notify-referral Message indicating there is a eReferral submitted for the Performer to accept or reject. How the Performer's system communicates to the Performer is not defined in this guide.