HL7 BPS_O29 Blood Product Dispense Status
BPS_O29 reports the dispense status of blood products. It sits after the blood product order workflow and before final transfusion or disposition. The blood bank or transfusion service uses it to tell the placer what has been crossmatched, prepared, issued, dispensed, returned, or otherwise changed in pre-transfusion handling.
This message exists because ordinary order and observation messages do not carry enough blood product detail. A receiver often needs the donation ID, component code, blood group, expiration, product status, dispensing location, and person-to-person handoff details. That detail lives mostly in BPX.
A small BPS O29 example
What workflow it represents
The sender is usually the blood bank or transfusion service. The receiver is the ordering system, transfusion documentation system, ward application, or integration engine that needs current product status. A BPS can follow an OMB_O27 order and ORB_O28 acknowledgment, but it is not just another order response. It reports product state.
Pre-transfusion status is operational. Crossmatch complete, product reserved, product issued, product dispensed, and product returned are different states with different safety and inventory consequences.
How to read the structure
MSH identifies the message. Optional patient and visit context ties the status to the right patient and encounter. The required ORDER group starts with ORC, may include TQ1/TQ2, and requires BPO so the status is anchored to the original blood product request.
The optional PRODUCT group repeats for each product status. BPX is the key segment. It carries dispense status, observation/message status, status time, donation ID, component, blood group, special testing, expiration, quantity, unique product ID, location, receiver, and dispensing individual.
Implementation traps
Do not collapse product identity into the order number. One order can involve multiple units, and one unit can have a donation ID, component, local unique ID, and blood bank tracking number. Keep those identifiers distinct.
Also be careful with finality. BPX status can change as the product moves through crossmatch, issue, and dispense. Downstream systems should know whether they are seeing a preliminary status update or a final state for that product movement.
Reference notes
The HL7 v2+ BPS_O29 page describes blood product dispense status messages as carrying detail not available in the general order/observation model, including donation ID, product code, blood type, expiration, and current status. HL7 terminology for blood product dispense status notes that status changes can begin when a product becomes linked to a patient and continue through dispense.