What is MLLP-HL7 MSH Message Header ?

Document created by anton_serbanescu Employee on Aug 10, 2015Last modified by dave_lesshafft on Mar 2, 2016
Version 2Show Document
  • View in full screen mode
What is MLLP-HL7 MSH Message Header ?

HL7 MSH – Message Header

The HL7 MSH (Message Header) segment is present in every HL7 message type and defines the message’s source, purpose, destination, and certain syntax specifics like delimiters (separator characters) and character sets. It is always the first segment in the HL7 message, with the only exception being HL7 batch messages.

There are 19 fields in the MSH segment, six of which (field separator, encoding characters, message type, message control ID, processing ID, and version ID) are required for all messages processed using the HL7 standard. The most important of the MSH fields, and perhaps the most important field in the entire message, is the MSH-9 (Message Type) field. This field specifies what type of message is being transmitted (ADT, ORM, ORU, ACK, etc.) and what the trigger event is. When a message is loaded, often the first field examined in order to determine processing is the value in this field.


Based on the following helpful link:





The fields in the MSH segment are as follows:

11STRField Separator
24STREncoding Characters
3180HDOSending Application
4180HDOSending Facility
5180HDOReceiving Application
6180HDOReceiving Facility
726TSODate/Time of Message
97CM_MSGRMessage Type
1020STRMessage Control Id
113PTRProcessing Id
128IDRVersion Id
1315NMOSequence Number
14180STOContinuation Pointer
152IDOAccept Acknowledgement Type
162IDOApplication Acknowledgement Type
172IDOCountry Code
186IDOCharacter Set
193CEOPrincipal Language of Message