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

HL7 PR1 Segment: Procedures

The PR1 segment carries the procedures performed during a patient's visit: what was done, when, and by whom. Where DG1 records the diagnoses, PR1 records the interventions — the coded procedure, its date and time, the surgeon and anesthesiologist, and the supporting clinical and billing context. One PR1 segment is sent per procedure, each with its own Set ID.

Purpose

PR1 conveys one procedure per repetition: the procedure code and coding method, a free-text description, the procedure date/time, the functional type (surgical, diagnostic, etc.), and the practitioners involved (surgeon, anesthesiologist, other practitioner). It also carries billing and grouping context such as the associated diagnosis, code modifiers, DRG type, and consent. Procedures are used by clinical, financial, and reporting systems downstream.

Used in

PR1 appears wherever procedures are reported against a visit: ADT (admit/update events that include procedure history), DFT (detail financial transactions, where procedures drive charges), and BAR (billing/account maintenance). It repeats — multiple PR1 segments, each with an incrementing Set ID, list every procedure for the encounter.

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
PR1-1Set ID - PR1SIRSequence number; increments per procedure, starting at 1.
PR1-2Procedure Coding MethodISRYCoding system used for the procedure code.
PR1-3Procedure CodeCNERYThe coded procedure (e.g. ICD, CPT, SNOMED).
PR1-4Procedure DescriptionSTOYHuman-readable text for the procedure.
PR1-5Procedure Date/TimeDTMRWhen the procedure was performed.
PR1-6Procedure Functional TypeCWEOHL70230Surgical, diagnostic, anesthesia, etc.
PR1-7Procedure MinutesNMODuration of the procedure in minutes.
PR1-8AnesthesiologistXCNOYThe anesthesiologist(s) for the procedure.
PR1-9Anesthesia CodeCWEOHL70019Type of anesthesia administered.
PR1-10Anesthesia MinutesNMODuration of anesthesia in minutes.
PR1-11SurgeonXCNOYThe surgeon(s) who performed the procedure.
PR1-12Procedure PractitionerXCNOYOther practitioner(s) involved in the procedure.
PR1-13Consent CodeCWEOHL70059Type of consent obtained.
PR1-14Procedure PriorityNMOHL70418Ranking of this procedure (e.g. primary).
PR1-15Associated Diagnosis CodeCWEODiagnosis that justifies the procedure.
PR1-16Procedure Code ModifierCNEOYModifier(s) refining the procedure code.
PR1-17Procedure DRG TypeCWEOHL70416DRG grouping type for the procedure.
PR1-18Tissue Type CodeCWEOYHL70417Tissue type associated with the procedure.
PR1-19Procedure IdentifierEIOUnique identifier for this procedure.
PR1-20Procedure Action CodeIDOAdd, update, or delete this procedure.
PR1-21DRG Procedure Determination StatusCWEOHL70761Status of DRG procedure determination.
PR1-22DRG Procedure RelevanceCWEOHL70763Relevance of the procedure to the DRG.
PR1-23Treating Organizational UnitPLOYUnit/location that performed the procedure.
PR1-24Respiratory Within SurgeryIDOWhether a respiratory procedure occurred in surgery.
PR1-25Parent Procedure IDEIOIdentifier of a parent procedure this belongs to.

Most-used fields

  • PR1-3 Procedure Code is the core of the segment — the coded intervention (CPT/ICD/SNOMED) that everything else describes.
  • PR1-5 Procedure Date/Time anchors the procedure on the visit timeline and drives ordering and charge timing.
  • PR1-2 Procedure Coding Method tells receivers how to interpret PR1-3; mismatches here cause silent code misreads.
  • PR1-11 Surgeon and PR1-8 Anesthesiologist drive care-team attribution and billing.
  • PR1-14 Procedure Priority distinguishes the principal procedure from secondary ones for DRG grouping.

Version differences (2.3 to 2.8.2)

  • 2.3/2.4: PR1 carried fewer trailing fields; PR1-19 Procedure Identifier and PR1-20 Procedure Action Code were added for update semantics.
  • 2.5: coded fields move toward CWE/CNE; PR1-16 Procedure Code Modifier repetition clarified.
  • 2.7+: PR1-21/22 DRG Procedure Determination Status/Relevance, PR1-23 Treating Organizational Unit, PR1-24 Respiratory Within Surgery, and PR1-25 Parent Procedure ID added.
  • Receivers built for 2.3 ignore the trailing fields they do not recognize.

Common mistakes

  • Sending the procedure code in PR1-3 without setting PR1-2 Procedure Coding Method, so the receiver guesses the code system.
  • Reusing or omitting Set IDs (PR1-1) across repeated PR1 segments, breaking de-duplication.
  • Reading only the first repetition of PR1-8/PR1-11/PR1-12 when several practitioners are listed.
  • Treating PR1-4 Procedure Description as authoritative instead of the coded PR1-3 value.

Examples

Minimal valid PR1 (required fields only — Set ID, coding method, code, date/time):

PR1|1|CPT4|47562^Laparoscopic cholecystectomy^CPT4|||20260609103000

Fully-populated PR1 (with practitioners and billing context):

PR1|1|CPT4|47562^Laparoscopic cholecystectomy^CPT4|Laparoscopic cholecystectomy|20260609103000|S|95|7788^PATEL^RAVI^^^^MD|G^General^HL70019|110|4455^NGUYEN^LINH^^^^MD|6677^CHEN^WEI^^^^RN|1^Signed^HL70059|1|K80.20^Calculus of gallbladder^I10||DRG1|||PROC0001^^MERCYGEN|A

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

PR1                                  ← segment ID
1                                    ← PR1-1  Set ID
CPT4                                 ← PR1-2  Procedure Coding Method
47562^Laparoscopic cholecystectomy   ← PR1-3  Procedure Code
Laparoscopic cholecystectomy         ← PR1-4  Procedure Description
20260609103000                       ← PR1-5  Procedure Date/Time
S                                    ← PR1-6  Procedure Functional Type (Surgical)
95                                   ← PR1-7  Procedure Minutes
7788^PATEL^RAVI^^^^MD                ← PR1-8  Anesthesiologist
4455^NGUYEN^LINH^^^^MD               ← PR1-11 Surgeon
K80.20^Calculus of gallbladder^I10   ← PR1-15 Associated Diagnosis Code
PROC0001^^MERCYGEN                   ← PR1-19 Procedure Identifier

In-context inside an ADT^A08 (update with procedure history):

MSH|^~&|REG|MERCYGEN|EHR|MERCYGEN|20260609140000||ADT^A08^ADT_A08|MSG112|P|2.5.1
EVN|A08|20260609140000
PID|1||MR12345^^^MERCYGEN^MR||DOE^JOHN^Q||19800101|M
PV1|1|I|3WEST^301^A||||1234^SMITH^JANE^A^^^MD|||SUR|||||||||V0001|||||||||||||||||||||||20260609080000
PR1|1|CPT4|47562^Laparoscopic cholecystectomy^CPT4|Laparoscopic cholecystectomy|20260609103000|S|95||||4455^NGUYEN^LINH^^^^MD

In-context inside a DFT^P03 (post detail financial transaction):

MSH|^~&|BILL|MERCYGEN|FIN|MERCYGEN|20260609150000||DFT^P03^DFT_P03|MSG220|P|2.5.1
EVN|P03|20260609150000
PID|1||MR12345^^^MERCYGEN^MR||DOE^JOHN^Q||19800101|M
PR1|1|CPT4|47562^Laparoscopic cholecystectomy^CPT4||20260609103000|S|95||||4455^NGUYEN^LINH^^^^MD||||1|K80.20^Calculus of gallbladder^I10
FT1|1|||20260609103000||CG|47562^Laparoscopic cholecystectomy^CPT4|||1|||SUR

FHIR mapping

Primary target resource: Procedure. The procedure code maps to Procedure.code, the date/time to Procedure.performed[x], and the surgeon/anesthesiologist/practitioner fields to Procedure.performer with SNOMED-coded functions. Official ConceptMap: Procedure.

Key Procedure mappings:

PR1 fieldFHIR target (Procedure)
PR1 (segment)Procedure.status
PR1-3 Procedure CodeProcedure.code
PR1-4 Procedure DescriptionProcedure.code.text
PR1-5 Procedure Date/TimeProcedure.performedDateTime / Procedure.performedPeriod.start
PR1-6 Procedure Functional TypeProcedure.category
PR1-7 Procedure MinutesProcedure.performedPeriod.end (start + minutes)
PR1-8 AnesthesiologistProcedure.performer[1].actor (Practitioner), function 88189002
PR1-11 SurgeonProcedure.performer[2].actor (Practitioner), function 304292004
PR1-12 Procedure PractitionerProcedure.performer[3].actor (Practitioner)
PR1-15 Associated Diagnosis CodeProcedure.reasonCode
PR1-16 Procedure Code ModifierProcedure.code (PR1-3.1 + ":" + PR1-16.1)
PR1-19 Procedure IdentifierProcedure.identifier
PR1-23 Treating Organizational UnitProcedure.location (Location)
PR1-25 Parent Procedure IDProcedure.partOf (Procedure)

Fields without a published Procedure mapping (PR1-2 coding method, PR1-9/PR1-10 anesthesia code/minutes, PR1-13 consent, PR1-14 priority, PR1-17 DRG type, PR1-18 tissue type, PR1-20 action code, PR1-21/22 DRG determination, PR1-24 respiratory within surgery) are coding-system, anesthesia, or DRG/billing details not represented directly on Procedure.

Engine considerations

  • Required in practice: PR1-1, PR1-2, PR1-3, and PR1-5 are standard-required; receivers should reject a PR1 missing the code or date/time.
  • Preserve Set IDs (PR1-1) so repeated PR1 segments stay distinct and ordered.
  • Parse PR1-2 alongside PR1-3 so the procedure code is interpreted in the correct code system.
  • Repeating practitioner fields (PR1-8/PR1-11/PR1-12) and modifiers (PR1-16) must be preserved as arrays.

How Vorro parses and produces PR1

Vorro maps PR1-3 to Procedure.code and PR1-5 to Procedure.performed[x], deriving performedPeriod.end from PR1-7 when minutes are supplied. Repeating practitioner fields are emitted as Procedure.performer entries with SNOMED-coded functions per the official ConceptMap (anesthesiologist 88189002, surgeon 304292004), PR1-15 becomes reasonCode, and PR1-25 links child procedures via Procedure.partOf.

  • DG1 — the diagnoses the procedures address.
  • DRG — diagnosis-related grouping that procedures feed into.
  • ADT messages — where PR1 reports procedure history against a visit.

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 PR1 Segment: Procedures | Vorro Academy | Vorro