NEWFree ROI Calculators — quantify what prior auth and siloed data are costing your organization.Prior Auth ROI Siloed Data ROI
HL7 v2Segment11 min read

HL7 OBR Segment: Observation Request

The OBR segment is the detail header for an observation order or result. It names what was ordered or reported (OBR-4, the Universal Service Identifier — usually a battery or panel code), carries the placer and filler order numbers, the collection and observation timestamps, the providers involved, and the overall result status. In a result message the OBR groups the OBX result lines that follow it.

Purpose

OBR describes a single observation request or report: the service ordered (OBR-4), order identifiers shared with ORC, specimen and timing details, the ordering provider and result interpreters, and the report-level status (OBR-25). It is the parent of the OBX observations beneath it.

Used in

OBR appears in order and result messages: ORU (results — its most common home, grouping OBX segments), ORM/OML/OMG (orders), OMI (imaging), and DFT (charges derived from orders). See ORU and ORM.

Field-by-field reference

Source: the Vorro HL7 segment database (extracted from the official v2-to-FHIR IG). R = required (cardinality min ≥ 1). Repeat = field may repeat. Length is not carried by the FHIR source and is shown as .

SeqNameData TypeLengthReqRepeatTable #Description
OBR-1Set ID - OBRSIOSequence number within the message.
OBR-2Placer Order NumberEIOPlacing system's order id; matches ORC-2.
OBR-3Filler Order NumberEIOFilling system's order id; matches ORC-3.
OBR-4Universal Service IdentifierCWERWhat was ordered/reported (battery/panel code, often LOINC). The one required field.
OBR-5PriorityIDOOrder priority (legacy; usually in TQ1).
OBR-6Requested Date/TimeTSOWhen the service was requested (legacy).
OBR-7Observation Date/TimeDTMOWhen the observation/specimen applies.
OBR-8Observation End Date/TimeDTMOEnd of an observation period.
OBR-9Collection VolumeCQOSpecimen volume collected.
OBR-10Collector IdentifierXCNOYWho collected the specimen.
OBR-11Specimen Action CodeIDOHL70065Action on the specimen (add-on, reflex, etc.).
OBR-12Danger CodeCWEOHazard associated with the specimen.
OBR-13Relevant Clinical InformationCWEOYHL70916Clinical context (e.g. fasting status).
OBR-14Specimen Received Date/TimeTSOWhen the lab received the specimen.
OBR-15Specimen SourceCMODeprecated; superseded by the SPM segment in v2.5.
OBR-16Ordering ProviderXCNOYClinician who placed the order.
OBR-17Order Callback Phone NumberXTNOYPhone for result callback.
OBR-18Placer Field 1STOPlacer-defined value.
OBR-19Placer Field 2STOPlacer-defined value.
OBR-20Filler Field 1STOFiller-defined value.
OBR-21Filler Field 2STOFiller-defined value.
OBR-22Results Rpt/Status Chng - Date/TimeDTMOWhen results were reported / status changed.
OBR-23Charge to PracticeMOCOCharge associated with the order.
OBR-24Diagnostic Serv Sect IDIDOHL70074Section that performed the service (e.g. CH, HM).
OBR-25Result StatusIDOHL70123Report-level status: F final, P preliminary, C corrected.
OBR-26Parent ResultPRLOLink to a parent result (reflex testing).
OBR-27Quantity/TimingTQOYDeprecated; superseded by TQ1/TQ2 in v2.5.
OBR-28Result Copies ToXCNOYWho receives result copies.
OBR-29Parent Results Observation IdentifierEIPOParent order for reflex/child results.
OBR-30Transportation ModeIDOHL70124How the patient travels for the study.
OBR-31Reason for StudyCWEOYHL70951Clinical reason for the order.
OBR-32Principal Result InterpreterNDLOLead interpreter of the result.
OBR-33Assistant Result InterpreterNDLOYAssisting interpreter(s).
OBR-34TechnicianNDLOYTechnician(s) who performed the test.
OBR-35TranscriptionistNDLOYWho transcribed the report.
OBR-36Scheduled Date/TimeDTMOWhen the service is scheduled.
OBR-37Number of Sample ContainersNMOCount of specimen containers.
OBR-38Transport Logistics of Collected SampleCWEOYHow the sample is transported.
OBR-39Collector's CommentCWEOYFree-text collection comment.
OBR-40Transport Arrangement ResponsibilityCWEOWho arranges transport.
OBR-41Transport ArrangedIDOHL70224Whether transport is arranged.
OBR-42Escort RequiredIDOHL70225Whether an escort is needed.
OBR-43Planned Patient Transport CommentCWEOYTransport notes.
OBR-44Procedure CodeCNEOProcedure/CPT code for the order.
OBR-45Procedure Code ModifierCNEOYModifier(s) for the procedure code.
OBR-46Placer Supplemental Service InformationCWEOYHL70411Extra placer service info.
OBR-47Filler Supplemental Service InformationCWEOYExtra filler service info.
OBR-48Medically Necessary Duplicate Procedure ReasonCWEOHL70476Why a duplicate procedure is needed.
OBR-49Result HandlingCWEOHL70507How results should be handled.
OBR-50Parent Universal Service IdentifierCWEOParent order's service id.
OBR-51Observation Group IDEIOGroups related observations.
OBR-52Parent Observation Group IDEIOParent observation group.
OBR-53Alternate Placer Order NumberCXOYAlternate placer id.
OBR-54Parent OrderEIPOLink to the parent order.

Most-used fields

  • OBR-4 Universal Service Identifier is the what — the battery/panel ordered or reported (e.g. CBC^Complete Blood Count^L, or a LOINC code). It is the only required field and the anchor for the whole order.
  • OBR-2 Placer Order Number and OBR-3 Filler Order Number tie the OBR to its ORC and across systems.
  • OBR-25 Result Status reports whether the report is preliminary, final, or corrected — distinct from each OBX's own status.
  • OBR-7 Observation Date/Time and OBR-14 Specimen Received Date/Time anchor result timing.
  • OBR-16 Ordering Provider and OBR-28 Result Copies To drive result distribution.

Version differences (2.3 to 2.8.2)

  • 2.5: OBR-15 Specimen Source (CM) deprecated in favor of the SPM segment; OBR-27 Quantity/Timing deprecated in favor of TQ1/TQ2.
  • 2.5/2.6: OBR-49 Result Handling, OBR-50 Parent Universal Service Identifier added.
  • 2.7+: OBR-51 Observation Group ID, OBR-52 Parent Observation Group ID, OBR-53 Alternate Placer Order Number, OBR-54 Parent Order added.
  • Coded fields migrate from CE to CWE across versions; older receivers ignore trailing fields.

Common mistakes

  • Continuing to send specimen data in OBR-15 instead of the SPM segment in v2.5+ feeds.
  • Confusing OBR-25 (report status) with the per-result OBX-11 status; both must be honored.
  • Reading timing from the deprecated OBR-27 rather than TQ1/TQ2.
  • Assuming OBR-4 is always a LOINC code — many feeds use local battery codes in the first component.

Examples

Minimal valid OBR (only the required service id):

OBR|1|||CBC^Complete Blood Count^L

Fully-populated OBR:

OBR|1|PON12345^MERCYGEN|FON98765^LAB|CBC^Complete Blood Count^L|||20260609130000|||COLL01^COLLECTOR^A|||||20260609131500||1234^SMITH^JANE^A^^^MD||||||20260609150000||CH|F

Annotated breakdown of the fully-populated example (selected fields):

OBR                              ← segment ID
1                                ← OBR-1  Set ID
PON12345^MERCYGEN                ← OBR-2  Placer Order Number
FON98765^LAB                     ← OBR-3  Filler Order Number
CBC^Complete Blood Count^L       ← OBR-4  Universal Service Identifier
20260609130000                   ← OBR-7  Observation Date/Time
COLL01^COLLECTOR^A               ← OBR-10 Collector Identifier
20260609131500                   ← OBR-14 Specimen Received Date/Time
1234^SMITH^JANE^A^^^MD           ← OBR-16 Ordering Provider
20260609150000                   ← OBR-22 Results Rpt/Status Chng Date/Time
CH                               ← OBR-24 Diagnostic Serv Sect ID (Chemistry)
F                                ← OBR-25 Result Status (Final)

In-context inside an ORU^R01 (result, OBR grouping OBX lines):

MSH|^~&|LAB|MERCYGEN|EHR|MERCYGEN|20260609150000||ORU^R01^ORU_R01|MSG305|P|2.5.1
PID|1||MR12345^^^MERCYGEN^MR||DOE^JOHN^Q||19800101|M
ORC|RE|PON12345^MERCYGEN|FON98765^LAB
OBR|1|PON12345^MERCYGEN|FON98765^LAB|CBC^Complete Blood Count^L|||20260609130000|||||||||1234^SMITH^JANE^A^^^MD|||||||20260609150000||CH|F
OBX|1|NM|718-7^Hemoglobin^LN||13.5|g/dL|13.0-17.0|N|||F
OBX|2|NM|4544-3^Hematocrit^LN||40.1|%|38.0-50.0|N|||F

In-context inside an ORM^O01 (order):

MSH|^~&|CPOE|MERCYGEN|LAB|MERCYGEN|20260609130000||ORM^O01^ORM_O01|MSG201|P|2.5.1
PID|1||MR12345^^^MERCYGEN^MR||DOE^JOHN^Q||19800101|M
ORC|NW|PON12345^MERCYGEN|||IP||||20260609130000||1234^SMITH^JANE^A^^^MD
OBR|1|PON12345^MERCYGEN||CBC^Complete Blood Count^L

FHIR mapping

OBR maps to three resources depending on context: ServiceRequest (the order), DiagnosticReport (the report header in a result), and Specimen (collection details). Official ConceptMaps: ServiceRequest, DiagnosticReport, Specimen.

Key mappings by target:

OBR fieldFHIR target
OBR-2 Placer Order NumberServiceRequest.identifier (PLAC) · Specimen.accessionIdentifier
OBR-3 Filler Order NumberServiceRequest.identifier (FILL)
OBR-4 Universal Service IdentifierServiceRequest.code · DiagnosticReport.code
OBR-5 PriorityServiceRequest.priority
OBR-6 Requested Date/TimeServiceRequest.occurrenceDateTime
OBR-7 Observation Date/TimeDiagnosticReport.effective[x] · Specimen.collection.collected[x]
OBR-11 Specimen Action CodeServiceRequest.intent (reflex/add-on/order)
OBR-14 Specimen Received Date/TimeSpecimen.receivedTime
OBR-16 Ordering ProviderServiceRequest.requester (Practitioner)
OBR-22 Results Rpt/Status ChngDiagnosticReport.issued
OBR-24 Diagnostic Serv Sect IDDiagnosticReport.category
OBR-25 Result StatusDiagnosticReport.status
OBR-31 Reason for StudyServiceRequest.reasonCode
OBR-32 Principal Result InterpreterDiagnosticReport.resultsInterpreter
OBR-34/35 Technician/TranscriptionistDiagnosticReport.performer (with function)
OBR-39 Collector's CommentSpecimen.note

Fields without a published target (OBR-18 through OBR-21 placer/filler fields, OBR-30, OBR-36 through OBR-38, OBR-40 through OBR-43, OBR-46 through OBR-52) are workflow/transport details not represented in these resources.

Engine considerations

  • Required in practice: OBR-4 is required; result interfaces also require OBR-2/3 (correlation), OBR-7, and OBR-25.
  • Keep OBR-25 (report status) and OBX-11 (per-result status) in sync — a corrected report should update both.
  • In v2.5+ read specimen detail from SPM and timing from TQ1, not the deprecated OBR-15/OBR-27.
  • Preserve the OBR→OBX grouping: every OBX belongs to the OBR that precedes it.

How Vorro parses and produces OBR

Vorro treats OBR as the parent of its OBX group, correlates it to the ORC by placer/filler numbers, and reads OBR-25 for report-level status transitions. Specimen and timing are taken from SPM/TQ1 in modern feeds. On the FHIR side Vorro emits a ServiceRequest for the order, a DiagnosticReport for the result header (linking the OBX-derived Observations), and a Specimen when collection data is present.

  • ORC — the common-order header OBR pairs with.
  • OBX — the result observations grouped under OBR.
  • ORU messages — the result message where OBR lives.

Sources

← Back to HL7 v2 Guide

Ready to Integrate This Into Your Workflow?

Talk to a Vorro expert about implementing HL7 v2 in your specific environment.

Browse HL7 v2 Guides
HL7 OBR Segment: Observation Request | Vorro Academy | Vorro