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

HL7 GP2 Segment: Grouping/Reimbursement – Procedure Line Item

The GP2 segment carries procedure line-item grouping and reimbursement data used in DRG-based institutional billing under the Outpatient Prospective Payment System. It conveys the revenue code, service units, charge, reimbursement action, ambulatory payment classification (APC), outpatient code editor (OCE) edits, payment adjustment, packaging status, expected payment, co-pay, and pay rate for a single procedure line. GP2 details each procedure within a visit while its companion GP1 segment carries the visit-level summary; both relate to the DRG segment that conveys the diagnosis-related group assignment.

Purpose

GP2 provides the per-procedure grouping and reimbursement detail that a payer or grouper applies to an institutional claim line. It reports the revenue code and service units for the line, the charge, the reimbursement action and any denial, the assigned ambulatory payment classification, the OCE and modifier edits raised on the line, packaging status, and the expected payment, co-pay, and pay-rate amounts. GP2 lines roll up to the GP1 visit summary and the DRG assignment.

Used in

UB1 (UB-82 form data) and UB2 (UB-92 form data) carry institutional-billing form information, while GP1 and GP2 carry grouping and reimbursement (DRG-based) data. GP2 appears in BAR (billing and account) messages and in ADT institutional-billing contexts, typically following the PID, PV1, DRG, and GP1 segments that establish patient, visit, grouping, and visit-summary context.

Field-by-field reference

Source: HAPI HL7v2 v2.5.1 javadocs (GP2.html). Length is shown as ; Required and Table # are taken from the HL7 v2.5.1 standard where well-established.

SeqNameData TypeLengthReqRepeatTable #Description
GP2-1Revenue CodeisOHL70456Revenue code for the procedure line
GP2-2Number of Service UnitsnmOCount of service units on the line
GP2-3ChargecpOCharge amount for the procedure line
GP2-4Reimbursement Action CodeisOHL70459Reimbursement action applied to the line
GP2-5Denial or Rejection CodeisOHL70460Denial or rejection reason for the line
GP2-6OCE Edit CodeisOYHL70458Outpatient code editor edits on the line
GP2-7Ambulatory Payment Classification CodeceOAssigned APC for the procedure line
GP2-8Modifier Edit CodeisOYHL70467Modifier edits raised on the line
GP2-9Payment Adjustment CodeisOHL70468Payment adjustment applied to the line
GP2-10Packaging Status CodeisOHL70469Packaging status of the procedure line
GP2-11Expected CMS Payment AmountcpOExpected payment amount for the line
GP2-12Reimbursement Type CodeisOHL70470Reimbursement type for the line
GP2-13Co-Pay AmountcpOCo-pay amount due on the line
GP2-14Pay Rate per Service UnitnmOPay rate per service unit on the line

Most-used fields

  • GP2-1 Revenue Code: identifies the chargeable category for the procedure line.
  • GP2-3 Charge: composite price reporting the charge amount for the line.
  • GP2-6 OCE Edit Code: repeating outpatient code editor edits raised on the line.
  • GP2-7 Ambulatory Payment Classification Code: the assigned APC that drives line reimbursement.
  • GP2-11 Expected CMS Payment Amount: composite price for the expected payment on the line.

Version differences (2.3 to 2.8.2)

  • GP2 was introduced with the Outpatient Prospective Payment System grouping and reimbursement work and is present in v2.4 onward; it is not part of the earliest 2.3 message structures.
  • Through v2.5.1 GP2 retains its fourteen-field structure with repeating OCE edits (GP2-6) and modifier edits (GP2-8).
  • Composite-price refinements to the Charge (GP2-3), Expected CMS Payment Amount (GP2-11), and Co-Pay Amount (GP2-13) fields across the 2.4 to 2.8.2 range tightened component definitions without changing field order.
  • GP2 is paired with GP1 for visit-level summary throughout the 2.x range; confirm both segments' availability against the specific version in use.

Common mistakes

  • Confusing GP2 (procedure line item) with GP1 (visit level). GP2 details each procedure; GP1 summarizes the visit.
  • Collapsing repeating fields. GP2-6 OCE Edit Code and GP2-8 Modifier Edit Code both repeat; flattening them loses detail.
  • Sending money fields as plain numbers. Charge (GP2-3), Expected CMS Payment Amount (GP2-11), and Co-Pay Amount (GP2-13) are CP composite prices.
  • Treating GP2-1 as required. All GP2 fields are optional in the standard.
  • Omitting the related DRG and GP1 context. GP2 line items are most useful alongside the visit summary and grouping assignment.

Examples

Minimal GP2 (revenue code, units, and charge only):

GP2|0450|1|275.00^USD

Fully populated GP2:

GP2|0450|1|275.00^USD|1|0|E1~E2|0606^Level II^L|M1~M2|01|1|220.00^USD|2|55.00^USD|220.00

Annotated breakdown:

GP2|0450|1|275.00^USD|1|0|E1~E2|0606^Level II^L|M1~M2|01|1|220.00^USD|2|55.00^USD|220.00
    |    | |          | | |     |               |     |  |  |          |  |          |
    |    | |          | | |     |               |     |  |  |          |  |          +-> GP2-14 Pay Rate per Service Unit = 220.00
    |    | |          | | |     |               |     |  |  |          |  +------------> GP2-13 Co-Pay Amount = 55.00 USD (CP)
    |    | |          | | |     |               |     |  |  |          +---------------> GP2-12 Reimbursement Type Code = 2
    |    | |          | | |     |               |     |  |  +--------------------------> GP2-11 Expected CMS Payment Amount = 220.00 USD (CP)
    |    | |          | | |     |               |     |  +-----------------------------> GP2-10 Packaging Status Code = 1
    |    | |          | | |     |               |     +--------------------------------> GP2-9  Payment Adjustment Code = 01
    |    | |          | | |     |               +--------------------------------------> GP2-8  Modifier Edit Code = M1, M2 (repeating)
    |    | |          | | |     +------------------------------------------------------> GP2-7  APC Code = 0606 (Level II)
    |    | |          | | +------------------------------------------------------------> GP2-6  OCE Edit Code = E1, E2 (repeating)
    |    | |          | +--------------------------------------------------------------> GP2-5  Denial or Rejection Code = 0
    |    | |          +----------------------------------------------------------------> GP2-4  Reimbursement Action Code = 1
    |    | +---------------------------------------------------------------------------> GP2-3  Charge = 275.00 USD (CP)
    |    +-----------------------------------------------------------------------------> GP2-2  Number of Service Units = 1
    +----------------------------------------------------------------------------------> GP2-1  Revenue Code = 0450

In-context excerpt inside a BAR^P01 (billing account) message, after PID, PV1, DRG, and GP1:

MSH|^~&|REGISTRATION|MERCYGEN|BILLING|MERCYGEN|20260610113000||BAR^P01^BAR_P01|MSG10244|P|2.5.1
EVN|P01|20260610113000
PID|1||MRN884412^^^MERCYGEN^MR||DOE^JANE^Q||19710204|F
PV1|1|O|EDOP^^^MERCYGEN||||1023^WELBY^MARCUS|||EMR||||A|||1023^WELBY^MARCUS|OP|ACC778901|||||||||||||||||||||||||20260601|20260601
DRG|470^Major Joint Replacement^MS-DRG|20260601|Y
GP1|131|0450~0636|03|E1~E2|1850.00^USD
GP2|0450|1|275.00^USD|1|0|E1|0606^Level II^L|M1|01|1|220.00^USD|2|55.00^USD|220.00

Second in-context excerpt (a shorter procedure line following GP1):

MSH|^~&|REGISTRATION|RIVEROAKS|BILLING|RIVEROAKS|20260609090000||BAR^P01^BAR_P01|MSG55015|P|2.5.1
EVN|P01|20260609090000
PID|1||MRN200337^^^RIVEROAKS^MR||SMITH^ROBERT^A||19640812|M
PV1|1|O|CLINIC^^^RIVEROAKS||||2210^HOUSE^GREGORY|||OUT||||A|||2210^HOUSE^GREGORY|OP|ACC661204|||||||||||||||||||||||||20260520|20260520
DRG|313^Chest Pain^MS-DRG|20260520|N
GP1|131|0510|01||
GP2|0510|1|130.00^USD|1||||||||95.00^USD|

FHIR mapping

  • Source: GP2.
  • Target: Not mapped at the segment level.
  • Notes: No segment-level ConceptMap is published in the v2-to-FHIR IG for GP2. Institutional-billing data maps conceptually to the FHIR Claim resource (UB-04/837I billing). Revenue code, charge, APC, expected payment, and co-pay align with Claim.item and Claim.item.adjudication rather than a single normalized field.

Engine considerations

  • GP2 fields are optional; a conformant engine should accept a sparsely populated GP2 line.
  • Preserve repetitions in GP2-6 OCE Edit Code and GP2-8 Modifier Edit Code using repetition-aware accessors.
  • Validate the money fields (GP2-3, GP2-11, GP2-13) as CP composites, retaining price and currency components.
  • Treat GP2 as procedure-level detail that rolls up to the GP1 visit summary and the DRG assignment; keep the segments associated when routing.
  • Apply the established tables (HL70456 revenue code, HL70458 OCE edits, and the related reimbursement and adjustment tables) for validation where configured.

How Vorro parses and produces GP2

Vorro parses GP2 into a normalized procedure line-item model that keeps the repeating OCE edits (GP2-6) and modifier edits (GP2-8) as lists and reads the charge (GP2-3), expected payment (GP2-11), and co-pay (GP2-13) as typed composite prices with their currency components. When producing GP2, Vorro emits fields in standard sequence, populates only the elements present in the source claim line, and preserves the coded values against the established revenue, OCE-edit, and reimbursement tables. Each GP2 line is kept associated with its parent GP1 visit summary and the related DRG assignment so the procedure-level reimbursement detail stays connected to the visit picture.

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 GP2 Segment: Grouping/Reimbursement – Procedure Line Item | Vorro Academy | Vorro