ORU^R01 (Observation Result - Unsolicited) is how labs send results back to ordering systems. One OBR identifies what was tested; multiple OBX segments carry individual result values such as hemoglobin, WBC count, or platelet count.
What is ORU^R01?
ORU = Observation Result Unsolicited. The message flows from the LIS to the EHR after results are verified. OBX-11 observation status is critical: F=Final, P=Preliminary, C=Corrected, X=Deleted. Each status requires different downstream handling.
- Final result verified by lab tech (OBX-11 = F)
- Preliminary result auto-released (OBX-11 = P)
- Corrected result replacing prior final (OBX-11 = C)
- Critical value — OBX-8 = HH or LL — triggers immediate alert
Message Flow
Segments in this Message
Cardinality: [X] optional · {X} repeating · [{X}] optional & repeating
| Segment | Name | Required | Description |
|---|---|---|---|
MSH | Message Header | Required | MSH-9 = ORU^R01^ORU_R01. |
PID | Patient Identification | Required | Links results to the patient record via MRN. |
OBR | Observation Request | Required | OBR-4 = LOINC test code. OBR-25 = result status (F/P/C/X). OBR-7 = specimen collection time. |
OBX | Observation / Result | Required | One OBX per result. OBX-3=LOINC code, OBX-5=value, OBX-6=units (UCUM), OBX-7=reference range, OBX-8=abnormal flags (H/L/HH/LL/N), OBX-11=status. |
NTE | Notes & Comments | Optional | Lab interpretive comments attached to OBR or OBX. Repeating. |
HL7 Message Example
MSH|^~&|LABSYS|MERCY|EPIC|MERCY|20240116143052||ORU^R01^ORU_R01|MSG20240116044|P|2.5.1
PID|1||MRN-78234^^^MERCY^MR||SMITH^JOHN^ROBERT^^MR||19800315|M
OBR|1|ORD-20240116-001|LAB-44523|58410-2^CBC W AUTOMATED DIFFERENTIAL^LN|||20240116130000|20240116130000||||||20240116130000||||F
OBX|1|NM|718-7^Hemoglobin [Mass/volume] in Blood^LN||14.2|g/dL|13.5-17.5||||F|||20240116143000
OBX|2|NM|4544-3^Hematocrit^LN||42.1|%|38.8-50.0||||F|||20240116143000
OBX|3|NM|6690-2^Leukocytes [#/volume] in Blood^LN||7.8|10*3/uL|4.5-11.0||||F|||20240116143000
OBX|4|NM|777-3^Platelets^LN||245|10*3/uL|150-400||||F|||20240116143000
NTE|1||Results reviewed by supervising pathologist Dr. Patel.FHIR Mapping
| HL7 | FHIR | Notes |
|---|---|---|
| OBR | DiagnosticReport | Official IG: ConceptMap-message-ORU_R01-to-bundle.json |
| OBX (each) | Observation | DiagnosticReport.result[] references Observation[] |
| OBX-3 LOINC | Observation.code | system: http://loinc.org |
| OBX-5 value | Observation.valueQuantity | value + unit from OBX-6 |
| OBX-8 flags | Observation.interpretation | H→high, L→low, HH→critical-high, LL→critical-low |
Common Errors & Pitfalls
- Missing LOINC in OBX-3 — always include LOINC as primary code. Proprietary codes alone are not portable.
- OBX-8 not set for critical values — HH/LL flags trigger downstream alerting. Missing flags suppress critical notifications.
- Missing OBX-6 units — use UCUM units (g/dL, 10*3/uL, %).
- Not handling OBX-11=C (corrected) — corrected results must replace prior results, not append.
Vorro normalizes OBX value types and maps proprietary lab codes to LOINC using the configurable code-mapping library. Enable critical value alerting to auto-escalate messages where OBX-8 contains HH or LL.
