Reference·X12 834·DTP
X12 834 Reference

X12 834 DTP Segment Guide: Fields, Format, and Testing Gotchas

Jul 28, 2026 · 5 min read

Everything else in an 834 member loop can be perfect, but if DTP carries the wrong date, a member shows up covered on a day they aren't — or gets bounced from an eligibility check on a day they should still be active.

Quick answer

DTP (Date or Time or Period) is a repeating segment inside the 834 member loop that stamps a specific date onto a specific meaning, using a qualifier code to say which date it is. The two occurrences testers see most often carry the day coverage begins and the day it ends, but the same segment shape is reused for other dates in the loop as well, so the qualifier in DTP01 is what actually tells a parser what it's looking at.

The elements that actually matter in practice

DTP01 →
Date/Time Qualifier — identifies which date this occurrence represents — coverage begins, coverage ends, and more — see the dedicated page below
DTP02 →
Date Time Period Format Qualifier — tells the parser whether DTP03 is a single date or something else — see the dedicated page below
DTP03 →
Date Time Period — the actual date value, formatted according to DTP02 — see the dedicated page below

Example

Synthetic example Generated by Synthibase
DTP*348*D8*20260901

A synthetic DTP marking coverage as beginning on 2026-09-01: DTP01=348 identifies this as a coverage-begins date, and DTP02=D8 means DTP03 is a single eight-digit calendar date.

Where this trips people up

Test fixtures tend to include exactly one DTP per member — usually just the effective date — because that's enough to make a happy-path enrollment look complete. Real files routinely carry both a coverage-begins and a coverage-ends DTP in the same loop, sometimes with the termination date sitting in the future as advance notice of an upcoming drop. A parser that was only ever tested against a single DTP occurrence can end up overwriting the effective date with the termination date, or vice versa, if it isn't keying strictly off DTP01. Build synthetic files with multiple DTP segments per member and mixed qualifier ordering, not just one date in one position.

EDI 834 Enrollment File: Format and Testing Guide
How to Write EDI Test Cases That Actually Catch Go-Live Failures
Generate every DTP date scenario your enrollment files need
Synthibase generates synthetic 834 files with realistic combinations of coverage-begin and coverage-end dates — including future-dated terminations — so your eligibility logic gets tested against more than a single happy-path date.
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.