HL7 ORD_O04 Diet Order Acknowledgment
ORD_O04 is the acknowledgment response for a diet order. A dietary system receives an OMD_O03 and returns ORD_O04 to say whether the message was accepted, rejected, or accepted with order-level details.
This is more useful than a bare ACK when the sender needs dietary-order context back. MSA acknowledges the message. ERR explains problems. The response group can echo patient and order detail so the sender can reconcile which diet or tray order was accepted.
A small ORD O04 example
What systems do with it
The original sender uses ORD_O04 to close or update the order state. If the dietary application assigns filler order numbers, this response is where those identifiers should become visible. After that, future change or cancel messages should carry both placer and filler identifiers when possible.
If the order is rejected, ERR should be specific enough for a user or support analyst to fix the problem. "Invalid diet" is less useful than identifying the bad ODS code, unavailable service period, or missing patient location.
How to read the structure
MSH, MSA, optional ERR, software details, and notes form the response header. The optional RESPONSE group can include a patient group and one or more ORDER_DIET groups. ORDER_TRAY can repeat when tray handling is acknowledged separately.
ORC is the state line. OK, reject-style controls, filler numbers, and timestamps tell the sending side what changed. ODS and ODT identify the diet and tray content being acknowledged.
Implementation traps
Do not treat ORD_O04 as a second application acknowledgment that needs another application acknowledgment in return. The HL7 acknowledgment choreography for these response messages is meant to stop the loop.
Also do not discard the filler number. If dietary services accepts the order and assigns its own ID, that value is what later support calls and cancel requests will need.
Reference notes
The HL7 v2+ ORD_O04 page shows MSA, ERR, an optional response group, patient detail, diet order detail, and tray order detail. Its acknowledgment notes caution that an application-level acknowledgment message should not itself require another application-level acknowledgment.