HL7 v2 Message Type Reference

This reference covers the most commonly implemented HL7 v2 message types and trigger events. Message types are identified by their three-letter code in MSH-9.1, and trigger events are identified by the event code in MSH-9.2. Segment notation uses brackets for optional segments and braces for repeating groups.

Segment Notation Key

MSH -- Required segment[NK1] -- Optional segment{OBX} -- Repeating segment group

ADT -- Admit/Discharge/Transfer

ADT messages communicate patient movement events throughout the healthcare facility. These are typically the highest-volume message type in a hospital interface engine, driving census systems, downstream notifications, and patient tracking.

EventNameDescriptionKey Segments
ADT^A01Admit/Visit NotificationPatient is admitted as inpatient or begins a visit. Triggers bed assignment, census update, and downstream notifications.MSH, EVN, PID, PV1, [PV2], [NK1], [DG1], [IN1]
ADT^A02Transfer a PatientPatient is transferred from one nursing unit or location to another within the facility.MSH, EVN, PID, PV1
ADT^A03Discharge/End VisitPatient is discharged from the facility or the visit ends.MSH, EVN, PID, PV1, [DG1]
ADT^A04Register a PatientOutpatient or emergency registration. No bed assignment. Used for clinic visits, ED arrivals.MSH, EVN, PID, PV1, [NK1], [IN1]
ADT^A05Pre-Admit a PatientReservation of a bed or service in advance of patient arrival.MSH, EVN, PID, PV1, [NK1], [IN1]
ADT^A06Change Outpatient to InpatientPatient status changes from outpatient to inpatient (e.g., ED to admit).MSH, EVN, PID, PV1
ADT^A07Change Inpatient to OutpatientPatient status changes from inpatient to outpatient (e.g., observation to discharge).MSH, EVN, PID, PV1
ADT^A08Update Patient InformationDemographics or visit information updated. Most commonly sent ADT event in many systems.MSH, EVN, PID, PV1, [NK1], [IN1], [DG1]
ADT^A11Cancel AdmitReversal of a previously sent A01 admit event.MSH, EVN, PID, PV1
ADT^A12Cancel TransferReversal of a previously sent A02 transfer event.MSH, EVN, PID, PV1
ADT^A13Cancel DischargeReversal of a previously sent A03 discharge event.MSH, EVN, PID, PV1
ADT^A17Swap PatientsTwo patients swap bed assignments (room/bed exchange).MSH, EVN, PID, PV1, PID, PV1
ADT^A18Merge Patient InformationMerge two patient records into one (deprecated; use A40 instead).MSH, EVN, PID, PV1, MRG
ADT^A28Add Person InformationNew patient record created in the MPI (no visit context).MSH, EVN, PID, [NK1], [IN1]
ADT^A31Update Person InformationUpdate patient demographics in the MPI (no visit context).MSH, EVN, PID, [NK1], [IN1]
ADT^A34Merge Patient ID OnlyMerge patient identifiers from one record to another (MRN merge).MSH, EVN, PID, MRG
ADT^A40Merge Patient - Patient ID ListPrimary patient merge event. Merges one patient into another, combining all identifiers and history.MSH, EVN, {PID, MRG, PV1}

Orders and Results

Order and result messages drive the clinical workflow between ordering systems (CPOE, EHR), departmental systems (LIS, RIS, Pharmacy), and results repositories. ORM/ORU are the most widely deployed; newer message types (OML, OUL, RDE) provide more structured encoding.

EventNameDescriptionKey Segments
ORM^O01General Order MessageNew order, order update, or order cancellation for lab, radiology, pharmacy, or other departments.MSH, PID, PV1, {ORC, OBR, [OBX], [NTE]}
ORU^R01Unsolicited Observation ResultLab results, radiology reports, or other observation results sent from the performing system to the ordering system.MSH, PID, PV1, {OBR, {OBX}, [NTE]}
OML^O21Laboratory OrderLaboratory-specific order message (newer alternative to ORM for lab orders).MSH, PID, PV1, {ORC, OBR, [SPM]}
OUL^R22Unsolicited Lab Result (Specimen)Lab results organized by specimen (newer alternative to ORU for lab results).MSH, PID, {SPM, {OBR, {OBX}}}
OMG^O19General Clinical OrderRadiology-specific and general clinical orders.MSH, PID, PV1, {ORC, OBR}
RDE^O11Pharmacy/Treatment Encoded OrderPharmacy order with full medication encoding (drug, dose, route, frequency).MSH, PID, PV1, {ORC, RXO, RXE, {RXR}, {RXC}}
RDS^O13Pharmacy/Treatment DispensePharmacy dispense notification including dispensed medication and quantity.MSH, PID, PV1, {ORC, RXD, {RXR}, {RXC}}
RAS^O17Pharmacy/Treatment AdministrationMedication administration record from nursing or pharmacy.MSH, PID, PV1, {ORC, RXA, RXR}

Scheduling, Documents, Financial, and Other

Additional message types support scheduling workflows, clinical document management, financial transactions, master file updates, and immunization registry reporting.

EventNameDescriptionKey Segments
SIU^S12Notification of New Appointment BookingNew appointment has been booked in the scheduling system.MSH, SCH, PID, PV1, {RGS, {AIG}, {AIL}, {AIP}}
SIU^S13Notification of Appointment ReschedulingExisting appointment has been rescheduled to a new date/time.MSH, SCH, PID, PV1, {RGS}
SIU^S14Notification of Appointment ModificationAppointment details modified without changing the date/time.MSH, SCH, PID, PV1, {RGS}
SIU^S15Notification of Appointment CancellationPreviously booked appointment has been cancelled.MSH, SCH, PID, PV1
SIU^S26Notification that Patient Did Not ShowPatient did not arrive for a scheduled appointment.MSH, SCH, PID, PV1
MDM^T02Original Document Notification and ContentNew clinical document created with full content (narrative text).MSH, EVN, PID, PV1, TXA, {OBX}
MDM^T06Document Addendum Notification and ContentAddendum added to an existing document.MSH, EVN, PID, PV1, TXA, {OBX}
MDM^T08Document Edit Notification and ContentExisting document has been edited/replaced.MSH, EVN, PID, PV1, TXA, {OBX}
DFT^P03Post Detail Financial TransactionCharge posting from clinical system to billing/financial system.MSH, EVN, PID, PV1, {FT1}, [DG1], [IN1]
BAR^P01Add Patient AccountsNew patient account creation for billing purposes.MSH, EVN, PID, PV1, [DG1], [IN1], [GT1]
MFN^M02Master File - Staff/PractitionerMaster file notification for practitioner/staff directory updates.MSH, MFI, {MFE, STF, PRA}
VXU^V04Unsolicited Vaccination Record UpdateImmunization record sent to an immunization registry.MSH, PID, [NK1], {ORC, RXA, [RXR], {OBX}}

Implementation Notes

Actual segment usage varies by implementation. Interface specifications (IHE profiles, vendor documentation, and site-specific interface agreements) define which optional segments and fields are populated for a given integration. The message structures shown here reflect the standard definitions; consult your interface engine documentation for site-specific variations. Z-segments (custom segments starting with Z) are commonly used for site-specific extensions not covered by the standard.