Skip to content

Adapter - Health Level Seven (HL7)

This page describes version 2.0.12 of the adapter.

Overview

This external adapter can be used in Medical markets to connect to HL7 systems using the HL7 v2 protocol (also known as ER7 or Pipehat) and it can be used to:

  • process the events generated by the HL7 system when patients are admitted, discharged, or when the patient data is updated.
  • send specific HL7 commands (such as Admit Patient, Discharge Patient, Update Patient etc.) to the HL7 system.

Installation

The HL7 adapter is an adapter that can only run as an external adapter installed on an Adapterhub due to the need for opening and using listening ports for event triggers. Reference documentation for installing an adapter on an adapterhub for more information.

Refer to HL7 Messages, events and commands for details about HL7 messages, event types and operation types. Refer to Patient Properties for details about patient properties.

HL7 Messages, events and commands

There is an 1:1:1 relation between a HL7 message, an event type and a command type:

  • A HL7 message that is received by the adapter can be translated into one and only one event type. For example, an ADT_A03 message is always translated into a PatientDischarge event type. There is no situation where it could be translated otherwise.
  • Similarly, a command with a certain command type can be translated into one and only one HL7 message type. For example, an UpdatePatientInformation command type is always translated into an ADT_A08 message. There is no situation where it could be translated otherwise.

The table below provides a complete list of how the HL7 messages / event types / command types are mapped.

HL7 Message Type Event or Operation Type
ADT_A01 AdmitPatient
ADT_A02 TransferPatient
ADT_A03 DischargePatient
ADT_A04 RegisterPatient
ADT_A05 PreAdmitPatient
ADT_A06 ChangeOutpatientToInpatient
ADT_A07 ChangeInpatientToOutpatient
ADT_A08 UpdatePatientInformation
ADT_A09 PatientDepartingTracking
ADT_A10 PatientArrivingTracking
ADT_A11 CancelAdmit
ADT_A12 CancelTransfer
ADT_A13 CancelDischarge
ADT_A14 PendingAdmit
ADT_A15 PendingTransfer
ADT_A16 PendingDischarge
ADT_A17 SwapPatients
ADT_A18 MergePatientInformation
ADT_A19 PatientQuery
ADT_A20 BedStatusUpdate
ADT_A21 PatientGoesonLeaveOfAbsence
ADT_A22 PatientReturnsFromLeaveOfAbsence
ADT_A23 DeletePatientRecord
ADT_A24 LinkPatientInformation
ADT_A25 CancelPendingDischarge
ADT_A26 CancelPendingTransfer
ADT_A27 CancelPendingAdmit
ADT_A28 AddPersonorPatientInformation
ADT_A29 DeletePersonInformation
ADT_A30 MergePersonInformation
ADT_A31 UpdatePersonInformation
ADT_A32 CancelPatientArrivingTracking
ADT_A33 CancelPatientDepartingTracking
ADT_A34 MergePatientDataPatientIDOnly
ADT_A35 MergePatientDataAccountNumberOnly
ADT_A36 MergePatientDataPatientIDAndAccount
ADT_A37 UnlinkPatientInformation
ADT_A38 CancelPreAdmit
ADT_A39 MergePersonPatientID
ADT_A40 MergePatientPatientIdentifierList
ADT_A41 MergeAccountPatientAccountNumber
ADT_A42 MergeVisitVisitNumber
ADT_A43 MovePatientDataPatientIdentifierList
ADT_A44 MoveAccountDataPatientAccountNumber
ADT_A45 MoveVisitDataVisitNumber
ADT_A46 ChangePatientID
ADT_A47 ChangePatientIdentifierList
ADT_A48 ChangeAlternatePatientID
ADT_A49 ChangePatientAccountNumber
ADT_A50 ChangeVisitNumber
ADT_A51 ChangeAlternateVisitID
ADT_A52 CancelLeaveofAbsenceforPatient
ADT_A53 CancelPatientReturnsfromLeaveofAbsence
ADT_A54 ChangeAttendingDoctor
ADT_A55 CancelChangeAttendingDoctor

Patient Properties

All patient properties are of type string.

Some of them need to be specified in a certain format or to meet certain constraints.

PID-xyz, PV1-xyz, ZBX-xyz refer to the respective HL7 message segments as defined in the HL7 v2 protocol standard.

Name Description Format/constraints Is Required
FirstName Patient's first name (Given name) as found in PID-05
MiddleName Patient's middle name as found in PID-05
LastName Patient's last name (Surname / Family name) as found in PID-05 YES
BirthDate Patient's birth date as found in PID-07
Gender Patient's gender as found in PID-08 Typical values are M/F
StreetAddress Street address as found in PID-11-01
City City name as found in PID-11-03
County State or Province name as found in PID-11-04
ZipCode ZIP or Postal Code as found in PID-11-05
HomePhone Home phone number as found in PID-13
WorkPhone Work phone number as found in PID-14
PatientNumber Patient internal ID as found in PID-03
Account Patient visit account as found in PID-18
AdmitDate Patient admit date/time as found in PV1-44 Date/time must be specified in one of these formats:
  • YYYY-MM-DD (ex: 2019-05-08)
  • YYYY-MM-DD HH:mm:ss (ex: 2019-05-08 16:22:00)
  • YYYY-MM-DDTHH:mm:ss (ex: 2019-05-08T16:10:12)
  • YES
    DischargeDate Patient discharge date as found in PV1-45 Date/time must be specified in one of these formats:
  • YYYY-MM-DD (ex: 2019-05-08)
  • YYYY-MM-DD HH:mm:ss (ex: 2019-05-08 16:22:00)
  • YYYY-MM-DDTHH:mm:ss (ex: 2019-05-08T16:10:12)
  • AssignedLocation Patient location as found in PV1-03
    PatientVisitID Patient Visit ID as defined by ZBX-1
    Confidentiality Patient confidentiality flag as defined by ZBX-2
    Visitors Allow visitors flag as defined by ZBX-3
    PhoneService Phone Service data as defined in ZBX-4 Can have values Y/N or 1-15
    DIDNumber DID phone number as defined in ZBX-5

    How to use the input property fields in a workflow

    The Patient Fields input property is a configurable list of name-value pairs with the Patient Field Name corresponding to one of the listed patient field properties and the Patient Field Value corresponding with the data value being sent for that particular patient field property. AdmitDate and LastName are the minimal required patient field properties that must be defined in order for the HL7 Patient Operation command to work. In a real world configuration the Patient Field Value will most likely be enclosed in curly brackets {} to indicate a variable of that name containing the associated piece of patient data sent to the workflow from an upstream process that is needing to send patient information to the HL7 system.

    The Operation Type Input is also a required field and will need to be defined as one of the Operation Types listed above in order for the command to communicate with the HL7 system as intended.

    Release History

    Version Type Description Tracking # Date
    2.0.1 Initial First release in the Adapter Type store.
    2.0.11 Maintenance Updated third-party components and improved maintainability. NAP-11518
    2.0.12 Maintenance Updated third-party components and improved maintainability. NAP-23945 2022-11-29

    Categories