P1 Prior Authorization Request & Billing Request (F6)

This is the standard NCPDP Telecommunication F6 spec, with 0 loops and 17 segment positions.

The OpenEDI JSON, the C# template and the ediFabric Native JSON are available for download by request. Open a support ticket to ask for them.

Standard spec
Loading the spec…

Use the P1 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 P1 files into TSP1 objects. See ediFabric .NET.

ediFabric Native

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

OpenEDI

The OpenEDI file for this transaction is available for download by request, with the C# template and the Native JSON. Read about OpenEDI.

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

The OpenEDI file describes each P1 as JSON. To work with P1 data as typed objects, generate classes from the OpenEDI file in your language; the root class is TSP1. 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.

P1 structure

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

IDNameUsageMax use
G1G1Mandatory1
AM04AM04Mandatory1
AM01AM01Optional1
AM07AM07Mandatory1
AM11AM11Mandatory1
AM12AM12Mandatory1
AM02AM02Optional1
AM03AM03Optional1
AM05AM05Optional1
AM06AM06Optional1
AM08AM08Optional1
AM10AM10Optional1
AM13AM13Optional1
AM14AM14Optional1
AM15AM15Optional1
AM16AM16Optional1
AM19AM19Optional1