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

HL7 RXO Segment: Pharmacy / Treatment Order

The RXO segment carries the original pharmacy or treatment order as the prescriber wrote it: what to give, how much, in what form, whether substitutions are allowed, and how much to dispense. It is the prescriber's intent — the unverified, un-encoded request that a pharmacist later turns into an encoded RXE. Where ORC says this is an order, RXO says what the medication order actually is.

Purpose

RXO records the requested give code (the drug), the give amount range and units, the dosage form, provider instructions, substitution permission, and the requested dispense quantity, units, and refills. It represents the order as authored, before pharmacy verification or encoding. Strength, indication, and rate fields let the prescriber describe the medication in clinical terms rather than dispensing terms.

Used in

RXO appears in pharmacy/treatment order messages — RDE (pharmacy/treatment encoded order), OMP (pharmacy/treatment order), and the general order message ORM. It is the order detail that follows an ORC and is typically paired with an RXR route segment. See 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
RXO-1Requested Give CodeCWEOThe drug or treatment ordered; the core item.
RXO-2Requested Give Amount - MinimumNMOMinimum dose to give per administration.
RXO-3Requested Give Amount - MaximumNMOMaximum dose, for a range order.
RXO-4Requested Give UnitsCWEOUnits for the give amount (mg, mL).
RXO-5Requested Dosage FormCWEOPhysical form: tablet, capsule, solution.
RXO-6Provider's Pharmacy/Treatment InstructionsCWEOYCoded instructions to the pharmacy.
RXO-7Provider's Administration InstructionsCWEOYCoded instructions for administration.
RXO-8Deliver-To LocationCMOWhere the medication should be delivered.
RXO-9Allow SubstitutionsIDOHL70161Whether generic substitution is permitted.
RXO-10Requested Dispense CodeCWEOCoded item to dispense, if different.
RXO-11Requested Dispense AmountNMOQuantity to dispense.
RXO-12Requested Dispense UnitsCWEOUnits for the dispense quantity.
RXO-13Number Of RefillsNMOAuthorized number of refills.
RXO-14Ordering Provider's DEA NumberXCNOYPrescriber's DEA number for controlled drugs.
RXO-15Pharmacist/Treatment Supplier's Verifier IDXCNOYVerifying pharmacist or supplier identifier.
RXO-16Needs Human ReviewIDOFlags the order for manual review.
RXO-17Requested Give Per (Time Unit)STOTime unit the give amount applies to.
RXO-18Requested Give StrengthNMOStrength value of the medication.
RXO-19Requested Give Strength UnitsCWEOUnits for the give strength.
RXO-20IndicationCWEOYClinical reason the medication is ordered.
RXO-21Requested Give Rate AmountSTORate at which to administer.
RXO-22Requested Give Rate UnitsCWEOUnits for the give rate.
RXO-23Total Daily DoseCQOTotal dose per day (carried as RXE-19).
RXO-24Supplementary CodeCWEOYAdditional codes such as billing or NDC.
RXO-25Requested Drug Strength VolumeNMOVolume the strength is expressed per.
RXO-26Requested Drug Strength Volume UnitsCWEOUnits for the strength volume.
RXO-27Pharmacy Order TypeIDOHL70480Medication, IV, or supply order type.
RXO-28Dispensing IntervalNMOMinimum interval between dispenses.
RXO-29Medication Instance IdentifierEIOIdentifier for this medication instance.
RXO-30Segment Instance IdentifierEIOIdentifier for this segment instance.
RXO-31Mood CodeCNEOHL70725Mood of the order (e.g. request).
RXO-32Dispensing PharmacyCWEOPharmacy responsible for dispensing.
RXO-33Dispensing Pharmacy AddressXADOAddress of the dispensing pharmacy.
RXO-34Deliver-to Patient LocationPLOPatient location for delivery.
RXO-35Deliver-to AddressXADOAddress to deliver the medication to.
RXO-36Pharmacy Phone NumberXTNOYContact phone number for the pharmacy.

Most-used fields

  • RXO-1 Requested Give Code is the heart of the order — the drug or treatment being requested, and the field every downstream system reads first.
  • RXO-2/RXO-3 Requested Give Amount Minimum/Maximum with RXO-4 Requested Give Units express the dose (a single value or a range).
  • RXO-5 Requested Dosage Form distinguishes tablet, capsule, or solution and drives the referenced Medication.doseForm.
  • RXO-9 Allow Substitutions tells the pharmacy whether a generic may be dispensed.
  • RXO-11/RXO-12 Requested Dispense Amount and Units plus RXO-13 Number Of Refills define what and how much to dispense.

Version differences (2.3 to 2.8.2)

  • 2.3/2.4: core give/dispense fields (RXO-1 through RXO-13) are stable; coded fields use CE.
  • 2.5: coded fields move from CE toward CWE; strength and rate fields (RXO-18 through RXO-22) clarified.
  • 2.7+: trailing fields RXO-25 through RXO-36 (strength volume, pharmacy order type, mood code, dispensing pharmacy and delivery details) were added.
  • Receivers built for 2.3 ignore the trailing fields they do not recognize.

Common mistakes

  • Confusing the give amount (RXO-2/3, per administration) with the dispense amount (RXO-11, total to supply).
  • Treating RXO-1 as free text and losing the coding system that identifies the drug.
  • Dropping RXO-9 Allow Substitutions, forcing the pharmacy to guess substitution permission.
  • Reading only the first repetition of RXO-6/RXO-7 when several instruction lines are present.
  • Putting strength in the give units field instead of RXO-18/RXO-19.

Examples

Minimal valid RXO (just the requested give code):

RXO|0009-0058-01^Lisinopril 10 mg tablet^NDC

Fully-populated RXO (oral medication order):

RXO|0009-0058-01^Lisinopril 10 mg tablet^NDC|10|10|mg^milligram^UCUM|TAB^tablet^HL70484||||N^No substitution^HL70161|0009-0058-01^Lisinopril 10 mg tablet^NDC|30|TAB^tablet^HL70484|3|AA1234567^SMITH^JANE^A^^^MD||||10|mg^milligram^UCUM|I10^Essential hypertension^ICD10

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

RXO                                       ← segment ID
0009-0058-01^Lisinopril 10 mg tablet^NDC  ← RXO-1  Requested Give Code
10                                        ← RXO-2  Requested Give Amount - Minimum
10                                        ← RXO-3  Requested Give Amount - Maximum
mg^milligram^UCUM                         ← RXO-4  Requested Give Units
TAB^tablet^HL70484                        ← RXO-5  Requested Dosage Form
N^No substitution^HL70161                 ← RXO-9  Allow Substitutions
30                                        ← RXO-11 Requested Dispense Amount
TAB^tablet^HL70484                        ← RXO-12 Requested Dispense Units
3                                         ← RXO-13 Number Of Refills
AA1234567^SMITH^JANE^A^^^MD               ← RXO-14 Ordering Provider's DEA Number
10                                        ← RXO-18 Requested Give Strength
mg^milligram^UCUM                         ← RXO-19 Requested Give Strength Units
I10^Essential hypertension^ICD10          ← RXO-20 Indication

In-context inside an ORM^O01 (new pharmacy order, RXO with ORC and RXR):

MSH|^~&|CPOE|MERCYGEN|PHARM|MERCYGEN|20260609120000||ORM^O01^ORM_O01|MSG201|P|2.5.1
PID|1||MR12345^^^MERCYGEN^MR||DOE^JOHN^Q||19800101|M
ORC|NW|ORD5001^CPOE|||||||20260609120000|||1234^SMITH^JANE^A^^^MD
RXO|0009-0058-01^Lisinopril 10 mg tablet^NDC|10|10|mg^milligram^UCUM|TAB^tablet^HL70484||||N^No substitution^HL70161|||30|TAB^tablet^HL70484|3
RXR|PO^Oral^HL70162

In-context inside an RDE^O11 (encoded order, original RXO retained with ORC and RXR):

MSH|^~&|PHARM|MERCYGEN|EHR|MERCYGEN|20260609123000||RDE^O11^RDE_O11|MSG202|P|2.5.1
PID|1||MR12345^^^MERCYGEN^MR||DOE^JOHN^Q||19800101|M
ORC|NW|ORD5001^CPOE|RX9001^PHARM||||||20260609123000|||1234^SMITH^JANE^A^^^MD
RXO|0009-0058-01^Lisinopril 10 mg tablet^NDC|10|10|mg^milligram^UCUM|TAB^tablet^HL70484||||N^No substitution^HL70161|||30|TAB^tablet^HL70484|3
RXR|PO^Oral^HL70162

FHIR mapping

Primary target resource: MedicationRequest. RXO also populates the referenced Medication resource (code, dose form, ingredient strength) and the request's dispenseRequest. The order itself maps to MedicationRequest.intent = "original-order". Official ConceptMap: RXO to MedicationRequest.

Key MedicationRequest mappings:

RXO fieldFHIR target (MedicationRequest)
RXO (segment)intent = original-order
RXO-1 Requested Give Codemedication (Medication.code)
RXO-2 Give Amount MinimumdosageInstruction.doseAndRate[1].doseRange.low.value (type ordered)
RXO-3 Give Amount MaximumdosageInstruction.doseAndRate[1].doseRange.high.value
RXO-4 Give UnitsdosageInstruction.doseAndRate[1].doseRange.low/high.code + .unit
RXO-5 Requested Dosage Formmedication (Medication.doseForm)
RXO-9 Allow Substitutionssubstitution.allowedCodeableConcept
RXO-11 Requested Dispense AmountdispenseRequest.quantity.value
RXO-12 Requested Dispense UnitsdispenseRequest.quantity.code + .unit
RXO-13 Number Of RefillsdispenseRequest.numberOfRepeatsAllowed
RXO-14 Ordering Provider's DEA Numberrequester (Practitioner)
RXO-18 Requested Give StrengthmedicationReference (Medication.ingredient.strength.numerator.value)
RXO-19 Give Strength UnitsmedicationReference (Medication.ingredient.strength.numerator.code + .unit)
RXO-23 Total Daily Dose (RXE-19)dosageInstruction.maxDosePerPeriod (numerator + denominator 1/d)
RXO-25 Drug Strength VolumemedicationReference (Medication.ingredient.strength.denominator.value)
RXO-26 Drug Strength Volume UnitsmedicationReference (Medication.ingredient.strength.denominator.code + .unit)

Fields without a published MedicationRequest mapping in the source — RXO-6, RXO-7, RXO-8, RXO-10, RXO-15, RXO-16, RXO-17, RXO-20, RXO-21, RXO-22, RXO-24, and RXO-27 through RXO-36 — are instructions, delivery, and administrative details not represented on the curated ConceptMap rows.

Engine considerations

  • RXO has no standard-required fields, but real pharmacy interfaces require RXO-1 plus the give amount/units and dispense amount/units for a usable order.
  • Keep the give amount (RXO-2/3) and dispense amount (RXO-11) distinct — they map to different FHIR structures (doseRange vs dispenseRequest.quantity).
  • Preserve the coding system component of RXO-1, RXO-4, RXO-5, and RXO-12 so units and drugs round-trip to UCUM/NDC.
  • Repeating fields (RXO-6/7/14/15/20/24/36) must be preserved as arrays.

How Vorro parses and produces RXO

Vorro maps RXO-1 to the referenced Medication.code and builds MedicationRequest with intent = original-order, decomposing give amount/units into dosageInstruction.doseAndRate and dispense amount/units/refills into dispenseRequest. Strength fields (RXO-18/19/25/26) populate Medication.ingredient.strength, substitution permission (RXO-9) maps to substitution.allowedCodeableConcept, and the DEA prescriber (RXO-14) becomes the requester per the official ConceptMap. Repeating instruction and indication fields are preserved as arrays.

  • RXR — the route segment that pairs with RXO.
  • RXE — the pharmacy-encoded order RXO is turned into.
  • ORM messages — where RXO carries the pharmacy/treatment order detail.

Sources

</invoke>
← 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 RXO Segment: Pharmacy / Treatment Order | Vorro Academy | Vorro