HL7 ADT_A20 Bed Status Update
ADT_A20 is unusual for an ADT message because it is about a bed, not a patient. Certain nursing, census, or bed management applications use it to tell the Patient Administration system that a bed is occupied, unoccupied, cleaning, blocked, or otherwise unavailable according to local codes.
That makes A20 useful for bed boards and census operations, but easy to mishandle in patient-centered interfaces. There may be no PID, no PV1, and no visit context at all.
A small A20 example
What systems do with it
The sender is often a nursing census or bed board application. The receiver updates the bed's operational status so admissions, transfers, housekeeping, and ward staff have a more accurate capacity picture.
A20 can be valuable in an interface engine because it lets a bed-state feed run separately from the patient ADT feed. That separation also means your routing, validation, and logging should not assume every ADT message has PID.
How to read the structure
The structure is only MSH, optional SFT, EVN, and NPU. NPU-1 identifies the bed location, and NPU-2 carries the bed status using the local table agreed by the interface profile.
Implementation traps
Do not reject A20 just because it has no patient. Also do not use it to infer who is in the bed. A20 changes bed state; patient occupancy still needs patient/visit events such as admit, transfer, discharge, or local bed assignment messages.
Reference notes
The HL7 v2+ ADT_A20 page describes bed status updates from nursing or census applications to the Patient Administration system, with NPU as the required segment.