D1 Predetermination of Benefits Request (D.0)

This is the standard NCPDP Telecommunication D.0 spec, with 0 loops and 11 segment positions, as OpenEDI JSON, an ediFabric C# template and an ediFabric Native model. To change it for a trading partner, customize it in the EDI Spec Builder.

Loading the spec…
The spec as an OpenAPI 3 schema with x-openedi-* extensions, for ediFabric Native, ediFabric Cloud and the EDI Spec Builder. Download OpenEDI (32 KB) Generate classes
The ediFabric .NET template, class TSD1. It needs the common segments, composites and codes of NCPDP Telecommunication D.0, one download for every transaction in the version. Download C# (1 KB) Common files (14 KB)
The intermediary model ediFabric Native loads with set_map. Native supports X12 today, and NCPDP is coming. Download Native (1 KB)

Use the D1 spec in your code

ediFabric .NET

Add the C# template and its common files to your project, or reference the template NuGet package, and read D1 files into TSD1 objects. See ediFabric .NET.

ediFabric Native

Native supports X12 today, and NCPDP is coming. When it's available, map version D.0 to this Native model with set_map to parse D1 files to JSON from Python, Java, C or C#. See ediFabric Native.

OpenEDI

Select Customize in Spec Builder to copy the spec under your own name, change it for your partner, and parse files against it in EdiNation, ediFabric Native or ediFabric Cloud. Read about OpenEDI.

Generate D1 classes in Python, Java, Node.js, Go, Rust or C

The OpenEDI file describes each D1 as JSON. To work with D1 data as typed objects, generate classes from the OpenEDI file in your language; the root class is TSD1. The classes keep the loops, segments, lengths and code lists, but not the EDI data formats. Read more in Generate a class from OpenEDI.

Python: datamodel-code-generator. Node.js: openapi-typescript. Java, Go, Rust and C: OpenAPI Generator.

D1 structure

Loops and segments of the standard D1, with their usage and maximum repeats.

IDNameUsageMax use
G1G1Mandatory1
AM04AM04Mandatory1
AM01AM01Optional1
AM07AM07Mandatory1
AM11AM11Mandatory1
AM02AM02Optional1
AM03AM03Optional1
AM08AM08Optional1
AM10AM10Optional1
AM13AM13Optional1
AM15AM15Optional1