HL7 RRG_O16 Pharmacy/Treatment Give Acknowledgment
RRG_O16 is the application response to an RGV_O15 pharmacy/treatment give message. RGV says what is to be given, often as a dose or supply instruction. RRG tells the sender whether the receiving application accepted that give message and, when useful, echoes the give detail that was processed.
This shows up around medication administration preparation, cart fill, automated dispensing, and systems that need a schedule or give instruction before the bedside administration record is created. It is not the same thing as recording that the patient actually received the medication. That is the RAS_O17 administration workflow.
A small RRG example
What systems do with it
The sender is usually the application that received the RGV. The receiver is the system that originated the give instruction, often pharmacy or pharmacy middleware. MSA tells whether the application accepted the message. ERR tells why it did not, ideally in terms the sending application can act on.
When the response includes detail, RXG is the give segment, TQ1 carries timing, RXR carries route, and RXC can carry component information. ORC is still the anchor that connects the response to the real order.
How to read the structure
The required core is MSH and MSA, with optional ERR, software, notes, and an optional response group. If the response group appears, it can include patient context and one or more order groups. The give group is optional, but when present it requires RXG, one or more timing-give groups, one or more RXR segments, and optional RXC components.
That optional detail lets a receiver be terse for simple success cases and more explicit when the sender needs to reconcile a schedule, dose, route, or component.
Implementation traps
The common misunderstanding is mixing "give" with "administered." RRG can acknowledge that a give instruction was accepted; it does not prove the patient took the dose. Use RRA/RAS around actual administration history.
Another trap is ignoring timing. A receiver may accept the medication but reject a schedule pattern, start time, or dependent timing relationship. If timing matters to downstream safety checks, put the rejection in ERR and do not bury it in a free-text note.
Reference notes
The HL7 v2+ RRG_O16 page lists this as the pharmacy/treatment give acknowledgment and shows the response, patient, order, timing, give, RXG, timing-give, RXR, and RXC structure.