HL7 ADT^A05 (Pre-admit a Patient)
ADT^A05 pre-admits a patient ahead of a scheduled admission or visit, letting downstream systems prepare records before the patient physically arrives.
When is ADT^A05 sent?
Sent during pre-registration / pre-admission workflows, typically before the actual A01/A04.
Key segments
The segments below are the ones most relevant to ADT^A05. Real messages may carry additional optional segments depending on the sending system’s configuration.
| Segment | Usage | Role |
|---|---|---|
| MSH | Required | Message header: sending/receiving application & facility, message type, control id, version. |
| EVN | Required | Event type: the trigger event code and the date/time the event occurred. |
| PID | Required | Patient identification: identifiers (MRN), name, date of birth, sex, address, phone. |
| PV1 | Optional | Patient visit: patient class, assigned location, attending provider, admit/discharge details. |
Full message structure (v2.8.2)
Every segment and group the standard defines for ADT^A05, in order, straight from the machine-readable specification. Indented rows sit inside the repeating group above them. R is required, O optional, C conditional; ∞ means the group or segment may repeat without a defined limit.
| Segment / group | Usage | Repeats |
|---|---|---|
| MSH | R | 1 |
| SFT | O | ∞ |
| UAC | O | 1 |
| EVN | R | 1 |
| PID | R | 1 |
| PD1 | O | 1 |
| ARV | O | ∞ |
| ROL | O | ∞ |
| NK1 | O | ∞ |
| PV1 | R | 1 |
| PV2 | O | 1 |
| ARV | O | ∞ |
| ROL | O | ∞ |
| DB1 | O | ∞ |
| OBX | O | ∞ |
| AL1 | O | ∞ |
| DG1 | O | ∞ |
| DRG | O | 1 |
| PROCEDURE (group) | O | ∞ |
| PR1 | R | 1 |
| ROL | O | ∞ |
| GT1 | O | ∞ |
| INSURANCE (group) | O | ∞ |
| IN1 | R | 1 |
| IN2 | O | 1 |
| IN3 | O | ∞ |
| ROL | O | ∞ |
| ACC | O | 1 |
| UB1 | O | 1 |
| UB2 | O | 1 |
Which HL7v2 versions changed ADT^A05?
ADT^A05 has been defined since v2.1. Consecutive versions sharing an identical structure are grouped, so a single row spanning several versions means nothing changed across them.
| Versions | What changed |
|---|---|
| v2.1 | First defined, with 6 segments and groups. |
| v2.2 | Added ACC, AL1, GT1, IN1, IN2, IN3, OBX, PR1, PV2, UB1, UB2. |
| v2.3 | Added DB1, DRG, PD1, ROL. |
| v2.3.1 | Same segments, but usage or repeat counts changed. |
| v2.4 | Same segments, but usage or repeat counts changed. |
| v2.5 - v2.5.1 | Added SFT. |
| v2.6 - v2.8.2 | Added ARV, UAC. |
Example ADT^A05 message
A realistic, well-formed example. Segments are separated by carriage returns; fields by the pipe (|) delimiter.
MSH|^~\&|EPIC|HOSP|REC|REC|20240114080000||ADT^A05|MSGCTRLA05|P|2.5.1
EVN|A05|20240114080000
PID|1||MRN12345^^^EPIC^MR||DOE^JOHN^A||19800101|M|||123 MAIN ST^^CITYTOWN^WA^98101||555-555-0100
PV1|1|I|ICU^101^AFrequently asked questions
What is an HL7 ADT^A05 message?
ADT^A05 is an ADT (Admit, Discharge, Transfer) message with trigger event for pre-admit a patient. It carries patient demographics (PID) and usually visit details (PV1) so downstream systems stay in sync with the patient's state.
Which segments does ADT^A05 contain?
At minimum MSH (header), EVN (event), and PID (patient identification). Most ADT^A05 messages also include PV1 (patient visit). Additional segments such as NK1, AL1, DG1 or IN1 may follow depending on the sending system's configuration.
How do I convert ADT^A05 to FHIR?
Map the PID demographics to a FHIR Patient (and PV1 to an Encounter). Identifiers need a real system URI, dates need ISO-8601 reformatting, and coded values like sex need a value-set lookup. You can do this with the Interoperall mapping tools.
How do I validate a ADT^A05 message?
Paste the raw message into the HL7v2 validator to parse each segment, check the structure, and get a compliance score. It runs entirely in your browser, so PHI never leaves your device.