The BUI (Blood Unit Information) segment was introduced in HL7 v2.7 and carries the physical and identifying attributes of a blood-bank unit — the unit identifier, product type, weight, volume, container catalog and lot numbers, manufacturer, and transport temperature. It travels in blood-bank product status and dispense messages alongside BPO and BPX.
Purpose
BUI describes a single physical blood unit as it moves through the blood-bank workflow. It is distinct from BPO (the product order) and BPX (the dispense event): BUI specifies the unit's intrinsic properties (what it weighs, what it contains, how it must be transported) so a downstream system can validate, label, and track the unit.
Used in
- BPS — Blood Product Dispense Status — the primary carrier message for BUI, where one or more BUI segments accompany each product group.
- Blood-bank product status update messages (BRP, BRT).
- Custom blood-bank workflows that exchange unit-level attributes between LIS, transfusion service, and EHR.
Field-by-field reference
Source: HAPI HL7v2 v2.8.1 javadocs (BUI) for sequence, name, data type, and repetition. Length is not published in the javadocs (—); Required and Table # are filled from the HL7 v2 standard where well-established.
| Seq | Name | Data Type | Length | Req | Repeat | Table # | Description |
|---|---|---|---|---|---|---|---|
| BUI-1 | Set ID – BUI | si | — | R | — | — | Sequence number for BUI repetitions. |
| BUI-2 | Blood Unit Identifier | ei | — | O | — | — | Unique identifier assigned to the blood unit. |
| BUI-3 | Blood Unit Type | cwe | — | O | — | — | Coded product type, e.g. red blood cells. |
| BUI-4 | Blood Unit Weight | nm | — | O | — | — | Numeric weight of the unit. |
| BUI-5 | Weight Units | cne | — | O | — | — | Units of measure for the weight. |
| BUI-6 | Blood Unit Volume | nm | — | O | — | — | Numeric volume of the unit. |
| BUI-7 | Volume Units | cne | — | O | — | — | Units of measure for the volume. |
| BUI-8 | Container Catalog Number | st | — | O | — | — | Manufacturer catalog number for the container. |
| BUI-9 | Container Lot Number | st | — | O | — | — | Container lot number for traceability. |
| BUI-10 | Container Manufacturer | xon | — | O | — | — | Organization that produced the container. |
| BUI-11 | Transport Temperature | nr | — | O | — | — | Allowed transport temperature range. |
| BUI-12 | Transport Temperature Units | cne | — | O | — | — | Units of measure for the temperature range. |
Most-used fields
- BUI-1 Set ID — required, increments when multiple BUI segments accompany one product.
- BUI-2 Blood Unit Identifier — the DIN-derived or facility-assigned unit ID used downstream.
- BUI-3 Blood Unit Type — coded product type that drives compatibility and labeling.
- BUI-6 / BUI-7 Volume + Units — the most-validated physical attribute downstream of dispense.
- BUI-11 / BUI-12 Transport Temperature + Units — cold-chain validation at receipt.
Version differences
- HL7 v2.7 — BUI introduced. All twelve fields defined as listed above.
- HL7 v2.7.1, v2.8, v2.8.1, v2.8.2 — no structural changes; field list and data types remain stable per the HAPI v2.8.1 javadocs.
Common mistakes
- Sending volume in BUI-6 without populating BUI-7 Volume Units — downstream validators reject the unit because units are ambiguous.
- Reusing BPO-3 Blood Product Identifier in BUI-2 — BUI-2 is the unit identifier (often the DIN), not the product order ID.
- Free-text product names in BUI-3 instead of a coded value from a recognized blood-product code system.
- Omitting BUI-1 Set ID when more than one BUI accompanies a product group.
- Sending a single point temperature in BUI-11 — the field is NR (numeric range), so send low^high.
Examples
Minimal:
BUI|1|W123426789012^^^RedCrossBB^DIN|E0336^RBC LR^HL70435
Fully populated:
BUI|1|W123426789012^^^RedCrossBB^DIN|E0336^RBC LR^HL70435|312|g^gram^UCUM|285|mL^milliliter^UCUM|REF-4R5400|LOT-88241A|Acme BioContainers Inc.^^^^^FDA^XX^^^1188291|1^6|Cel^degree Celsius^UCUM
Annotated breakdown:
BUI Segment ID
|1 BUI-1 Set ID
|W123426789012^^^RedCrossBB^DIN BUI-2 Blood Unit Identifier (EI; DIN)
|E0336^RBC LR^HL70435 BUI-3 Blood Unit Type (CWE; ISBT 128 product code)
|312 BUI-4 Blood Unit Weight (NM)
|g^gram^UCUM BUI-5 Weight Units (CNE)
|285 BUI-6 Blood Unit Volume (NM)
|mL^milliliter^UCUM BUI-7 Volume Units (CNE)
|REF-4R5400 BUI-8 Container Catalog Number (ST)
|LOT-88241A BUI-9 Container Lot Number (ST)
|Acme BioContainers Inc.^... BUI-10 Container Manufacturer (XON)
|1^6 BUI-11 Transport Temperature (NR; low^high)
|Cel^degree Celsius^UCUM BUI-12 Transport Temperature Units (CNE)
In context — BPS^O29 blood-bank product dispense status:
MSH|^~&|TXM|MERCY^2.16.840.1.113883.19.5.99999.1^ISO|LIS|MERCY|20260610091500||BPS^O29^BPS_O29|MSG00041|P|2.8.1
PID|1||MR884412^^^MERCY^MR||TESTPATIENT^ALEX^Q||19720508|F
ORC|SC|TR-7741|||CM
BPO|1|E0336^RBC LR^HL70435|1|U^unit^UCUM
BPX|1|DI|W123426789012^^^RedCrossBB^DIN|RC|||20260610092200
BUI|1|W123426789012^^^RedCrossBB^DIN|E0336^RBC LR^HL70435|312|g^gram^UCUM|285|mL^milliliter^UCUM|REF-4R5400|LOT-88241A|Acme BioContainers Inc.|1^6|Cel^degree Celsius^UCUM
In context — multiple BUI repetitions for a split unit:
MSH|^~&|BB|MERCY|EHR|MERCY|20260610100300||BPS^O29^BPS_O29|MSG00042|P|2.8.1
ORC|SC|TR-7742|||CM
BPO|1|E0336^RBC LR^HL70435|2|U^unit^UCUM
BPX|1|DI|W123426789012001^^^RedCrossBB^DIN|RC
BPX|2|DI|W123426789012002^^^RedCrossBB^DIN|RC
BUI|1|W123426789012001^^^RedCrossBB^DIN|E0336^RBC LR^HL70435|158|g^gram^UCUM|142|mL^milliliter^UCUM
BUI|2|W123426789012002^^^RedCrossBB^DIN|E0336^RBC LR^HL70435|154|g^gram^UCUM|143|mL^milliliter^UCUM
FHIR mapping
No segment-level ConceptMap is published in the v2-to-FHIR IG for BUI. Conceptually, BUI attributes map to BiologicallyDerivedProduct:
- BUI-2 →
BiologicallyDerivedProduct.identifier - BUI-3 →
BiologicallyDerivedProduct.productCode - BUI-4 / BUI-5 →
BiologicallyDerivedProduct.weight - BUI-6 / BUI-7 →
BiologicallyDerivedProduct.volume(typically a custom extension orquantity) - BUI-8 / BUI-9 / BUI-10 →
BiologicallyDerivedProduct.collectionand container extensions - BUI-11 / BUI-12 →
BiologicallyDerivedProduct.storage/ processing-temperature extension
Mapping at the resource level rather than the segment level is consistent with how blood-bank workflows are modeled in FHIR R4/R5.
Engine considerations
- Routing engines that pre-date v2.7 (Mirth Connect ≤ 2.x, older Cloverleaf table sets) will parse BUI as an unknown Z-segment unless the schema is upgraded — load a v2.7+ profile before brokering.
- HAPI HL7v2 v2.8.1 generates
ca.uhn.hl7v2.model.v281.segment.BUIwith strongly-typed accessors; lower-version structures must use HAPI'sGenericSegment. - BUI-11 is an NR (numeric range) — many engines stringify it as
low^high; ensure schema validation accepts the caret without flagging it as a component delimiter error. - BUI repetitions accompany product-group repetitions inside the BPS_O29 structure; engines that flatten product groups risk losing the BUI ↔ BPX correlation.
How Vorro parses and produces BUI
Vorro's blood-bank pipeline treats BUI as a unit-attribute carrier bound to the surrounding BPX dispense. On inbound:
- BUI-1 Set ID is used to align each BUI to its sibling BPX within the same product group; we do not assume a 1:1 ordering and instead match on BUI-2 ↔ BPX-3 (the DIN).
- BUI-3 is normalized against ISBT 128 product-code and HL70435 tables; unmapped codes are routed to a curation queue rather than silently dropped.
- BUI-4 / BUI-5 and BUI-6 / BUI-7 are validated for unit consistency (UCUM
g,mL) and converted to primary UCUM internally. - BUI-11 is parsed as low^high; a single point value is accepted but flagged as a soft warning.
On outbound, Vorro emits BUI with stable Set IDs starting at 1, always pairs values with explicit UCUM units, and renders manufacturer identifiers as XON with an FDA-issued organization ID where available.
Related pages
- BPO segment — Blood Product Order
- BPX segment — Blood Product Dispense Status
- BPS message — Blood Product Dispense Status
