HL7 ADT_A12 Cancel Transfer
ADT_A12 cancels a previous transfer event. It is usually sent when an A02 was sent in error, the patient did not move after all, or the movement was administratively backed out. Receivers use it to restore location state, census, routing, and sometimes bed availability.
This is a correction message, and correction messages deserve extra care. The hard part is not the segment list; it is agreeing what the receiver should restore when it has already processed later messages.
A small A12 example
What systems do with it
The sender is usually the system that originated the transfer. Receivers should identify the same patient and visit, then reverse or correct the prior location movement according to local rules. Some systems store both the cancelled movement and the current location; others simply restore the last valid location.
PID and PV1 are the practical core. EVN timing helps receivers decide whether the cancellation belongs before or after later events in the movement history.
Correction rules
Write down whether the message contains the location to restore, the location being cancelled, or both. HL7 gives you structures and event semantics, but local systems still need a deterministic rule. This is especially important when bed management, pharmacy, and clinical worklists all update from the same feed.
If another A02 has already arrived after the cancelled transfer, blindly rolling back to an older bed can be worse than ignoring the A12. Interface engines should log these cases clearly and, where possible, compare event times before applying location state.
Implementation traps
Do not confuse A12 with a new transfer back to the old location. A transfer-back creates a real movement history. A cancel-transfer says a previous movement should not have counted. Those are different stories, especially for bed occupancy and audit trails.
Reference notes
ADT cancel events exist so receivers can unwind earlier administrative state changes instead of receiving another ordinary movement. The local generated structure shows the smaller v2.5.1 A12 form, with MSH, EVN, PID, PV1, and selected optional context.