Reference·TRN Segment·TRN03
X12 820 Reference

X12 820 TRN03 Field Guide: Originating Company Identifier Values and Common Mistakes

Jul 28, 2026 · 4 min read
← TRN02

TRN03 and BPR10 often carry the same value, which makes it tempting to treat them as one field with two names. They're not, and a test suite that always keeps them in sync never proves out what happens when a real payer's file doesn't.

Quick answer

TRN03 identifies whose numbering scheme the trace number in TRN02 belongs to — typically a company identifier for the payer or employer that assigned it. It plays a similar role to BPR10 elsewhere in the 820, and the two frequently carry the same value, but nothing in the standard requires them to match.

The elements that actually matter in practice

TRN03
Originating Company Identifier — identifies the entity that assigned the trace number in TRN02, usually via a company ID format similar to what appears in BPR10

Example

Synthetic example Generated by Synthibase
TRN*1*8842910076*1998765432

A synthetic TRN segment where TRN03=1998765432 identifies the payer's company ID as the source of the trace number in TRN02.

Where this trips people up

Test data generators frequently copy the BPR10 value directly into TRN03 on the assumption the two are always identical, and a reconciliation routine built against synthetic data that always aligns them will break the first time a real file legitimately uses different identifiers for the two fields — for instance, when a TPA's company ID assigns the trace number but the employer's ID appears in BPR10. Synthetic files should vary the two independently at least some of the time to catch that assumption before it reaches production.

X12 820 TRN Segment Guide: Fields, Format, and Testing Gotchas
EDI 835 Remittance Advice: Complete Guide for Healthcare IT
How to Write EDI Test Cases That Actually Catch Go-Live Failures
Test TRN03 and BPR10 as independent fields
Synthibase produces synthetic X12 820 files that vary TRN03 and BPR10 independently, so your reconciliation logic gets tested against real-world mismatches instead of an always-aligned assumption.
Start free trial →
This page is written independently by Synthibase for testing and informational purposes. It is not an official publication of HL7 International or X12/Washington Publishing Company, and is not a substitute for reviewing the official standard or your trading partner's companion guide. See our Terms of Service for full legal terms.