HL7 BAR_P10 Transmit Ambulatory Payment Classification

HL7 message structure BAR_P10 groups and segments from HL7 v2.5.1 Hide structure

These are the generated groups and segments for the version selected at the top of the page. The article explains the workflow, and this panel follows the chosen HL7 version.

Message Structure

SegmentNameRequiredRepeatable
Message Header Yes No
Software Segment No Yes
Event Type Yes No
Patient Identification Yes No
Patient Visit Yes No
Diagnosis No Yes
Grouping/Reimbursement - Visit Yes No
BAR_P10.PROCEDURE
Procedure group No Yes
Procedures Yes No
Grouping/Reimbursement - Procedure Line Item No No

BAR_P10 communicates Ambulatory Payment Classification, or APC, grouping information. In the United States, APC grouping is tied to outpatient reimbursement, so this message sits at the intersection of coding, claims, and patient accounting rather than ordinary clinical workflow.

The message identifies the patient and visit, then carries diagnosis, visit-level grouping, and procedure-level grouping detail. It is not meant to be a general patient or visit update.

A small BAR_P10 example

MSH|^~\&|CODING|CITYHOSP|BILLING|CITYHOSP|20260715120000||BAR^P10^BAR_P10|BAR100001|P|2.5.1 EVN|P10|20260715115900 PID|1||123456^^^CITYHOSP^MR||Smith^Jane^Anne^^Ms^^L||19800314|F||||||||||ACC000789^^^CITYHOSP^AN PV1|1|O|DAYPROC^04^1^CITYHOSP||||12345^Careful^Clara|||||||||||VN000345^^^CITYHOSP^VN DG1|1||M17.11^Unilateral primary osteoarthritis, right knee^I10|||A GP1|1|APC5012^Clinic visit APC^L|A PR1|1||99213^Office outpatient visit^CPT|20260715103000 GP2|1|APC5012^Clinic visit APC^L

What systems do with it

The sender is usually a coding, grouping, patient accounting, or billing component. The receiver stores the APC grouping and procedure-line grouping detail for outpatient reimbursement workflows, claims preparation, or revenue reporting.

Because this is reimbursement data, a technically valid P10 still needs local policy and payer context. The interface should preserve the grouping status, codes, and line relationships rather than flattening them into a generic note.

How to read the structure

BAR_P10 contains MSH, EVN, PID, required PV1, optional repeating DG1, required GP1, and optional procedure groups. Each procedure group has required PR1 and optional GP2.

Implementation traps

Do not use P10 to change patient demographics or visit facts. The HL7 guidance says PID and PV1 are included for identification here. If patient or visit information changed, send the appropriate ADT update.

Also keep P10 separate from P05 in the interface design. P05 is for account updates, often inpatient coding context. P10 is specifically about APC grouping for outpatient reimbursement.

Reference notes

The HL7 v2+ BAR_P10 page describes P10 as communicating estimated or actual APC grouping, based on GP1-1, for outpatient reimbursement. CMS publishes current OPPS/APC guidance on its hospital outpatient payment pages.