ITPRES Itinerary Pricing Response (12.1)

This is the standard IATA PADIS 12.1 spec, with 37 loops and 129 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 (140 KB) Generate classes
The ediFabric .NET template, class TSITPRES. It needs the common segments, composites and codes of IATA PADIS 12.1, one download for every transaction in the version. Download C# (2 KB) Common files (55 KB)
The intermediary model ediFabric Native loads with set_map. Native supports X12 today, and IATA is coming. Download Native (1 KB)

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

ediFabric Native

Native supports X12 today, and IATA is coming. When it's available, map version 12.1 to this Native model with set_map to parse ITPRES 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 ITPRES classes in Python, Java, Node.js, Go, Rust or C

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

ITPRES structure

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

IDNameUsageMax use
UNHUNHMandatory1
STXSTXOptional1
RCIRCIOptional1
EQNEQNOptional1
MSGMSGMandatory5
Loop TIFTIFOptional999
TIFTIFMandatory1
TKTTKTOptional9
Loop ERCERCOptional1
ERCERCMandatory1
IFTIFTOptional1
Loop PTKPTKOptional99
PTKPTKMandatory1
FQUFQUOptional1
Loop PTSPTSOptional99
PTSPTSMandatory1
ITMITMOptional1
Loop FQUFQUOptional99
FQUFQUMandatory1
ODIODIOptional1
TRATRAOptional1
Loop SRCSRCOptional9
SRCSRCMandatory1
PTKPTKOptional1
Loop TKTTKTMandatory9
TKTTKTMandatory1
CPNCPNOptional1
Loop DUMDUMOptional99
DUMDUMMandatory1
IFTIFTOptional99
CVRCVROptional1
MONMONOptional1
CFICFIOptional1
Loop TXDTXDOptional99
TXDTXDMandatory1
DPIDPIOptional1
MONMONOptional5
Loop PTKPTKOptional1
PTKPTKMandatory1
FQUFQUOptional1
Loop TVLTVLOptional99
TVLTVLMandatory1
MSGMSGOptional1
RPIRPIOptional1
APDAPDOptional1
FQUFQUOptional1
TIFTIFOptional99
Loop TIITIIOptional3
TIITIIMandatory1
APDAPDOptional1
Loop PDIPDIOptional3
PDIPDIMandatory1
SRPSRPOptional1
Loop EQNEQNOptional99
EQNEQNMandatory1
QTYQTYOptional1
ITMITMOptional1
Loop TVLTVLOptional99
TVLTVLMandatory1
MSGMSGOptional1
RPIRPIOptional1
APDAPDOptional1
PTKPTKOptional1
FQUFQUOptional1
Loop TIITIIOptional3
TIITIIMandatory1
APDAPDOptional1
Loop PDIPDIOptional99
PDIPDIMandatory1
SRPSRPOptional1
SDTSDTOptional1
Loop SRCSRCOptional999
SRCSRCMandatory1
STDSTDOptional99
Loop FARFAROptional4
FARFARMandatory1
DATDATOptional1
EQNEQNOptional1
PTKPTKOptional1
CVRCVROptional1
MONMONOptional99
DPIDPIOptional1
EBDEBDOptional1
IFTIFTOptional99
STXSTXOptional1
Loop TXDTXDOptional99
TXDTXDMandatory1
DPIDPIOptional1
MONMONOptional5
Loop FCCFCCOptional99
FCCFCCMandatory1
MONMONOptional1
Loop TIITIIOptional99
TIITIIMandatory1
MONMONOptional1
FQUFQUOptional1
EQNEQNOptional1
TRATRAOptional1
FRIFRIOptional1
EBDEBDOptional1
DATDATOptional1
DPIDPIOptional1
PTKPTKOptional1
Loop FCCFCCOptional99
FCCFCCMandatory1
MONMONOptional1
Loop QTYQTYOptional1
QTYQTYMandatory1
FQUFQUOptional1
Loop PDIPDIOptional99
PDIPDIMandatory1
SRPSRPOptional1
Loop IFTIFTOptional1
IFTIFTMandatory1
Loop PTSPTSOptional99
PTSPTSMandatory1
FQUFQUOptional1
DPIDPIOptional1
IFTIFTOptional1
Loop TVLTVLOptional99
TVLTVLMandatory1
MSGMSGOptional1
RPIRPIOptional1
APDAPDOptional1
PTKPTKOptional1
FQUFQUOptional1
Loop PDIPDIOptional99
PDIPDIMandatory1
SRPSRPOptional1
EBDEBDOptional1
EQNEQNOptional1
MONMONOptional1
QTYQTYOptional1
Loop FCIFCIOptional1
FCIFCIMandatory1
Loop EQNEQNOptional99
EQNEQNMandatory1
Loop ITMITMOptional99
ITMITMMandatory1
Loop ADTADTOptional99
ADTADTMandatory1
TVLTVLOptional1
MONMONOptional1
PTSPTSOptional1
FCCFCCOptional1
PTKPTKOptional1
FRUFRUOptional1
MONMONOptional1
TXDTXDOptional99
CVRCVROptional1
Loop IFTIFTOptional99
IFTIFTMandatory1
TKTTKTOptional99
Loop SDTSDTOptional2
SDTSDTMandatory1
Loop SPISPIOptional99
SPISPIMandatory1
MONMONOptional1
FOPFOPOptional1
TXDTXDOptional1
IFTIFTOptional1
Loop FRUFRUOptional999
FRUFRUMandatory1
IFTIFTOptional1
PTKPTKOptional1
UNTUNTMandatory1