DESADV DESPATCH ADVICE MESSAGE (D94A)
This is the standard EDIFACT D94A spec, with 23 loops and 74 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.
Use the DESADV 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 DESADV files into TSDESADV objects. See ediFabric .NET.
ediFabric Native
Native supports X12 today, and EDIFACT is coming. When it's available, map version D94A to this Native model with set_map to parse DESADV 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 DESADV classes in Python, Java, Node.js, Go, Rust or C
The OpenEDI file describes each DESADV as JSON. To work with DESADV data as typed objects, generate classes from the OpenEDI file in your language; the root class is TSDESADV. 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.
DESADV structure
Loops and segments of the standard DESADV, with their usage and maximum repeats.
| ID | Name | Usage | Max use |
|---|---|---|---|
| UNH | Message Header | Optional | 1 |
| BGM | BEGINNING OF MESSAGE | Mandatory | 1 |
| DTM | DATE/TIME/PERIOD | Optional | 10 |
| ALI | ADDITIONAL INFORMATION | Optional | 5 |
| MEA | MEASUREMENTS | Optional | 5 |
| Loop RFF | REFERENCE | Optional | 10 |
| RFF | REFERENCE | Mandatory | 1 |
| DTM | DATE/TIME/PERIOD | Optional | 1 |
| Loop NAD | NAME AND ADDRESS | Optional | 10 |
| NAD | NAME AND ADDRESS | Mandatory | 1 |
| LOC | PLACE/LOCATION IDENTIFICATION | Optional | 10 |
| Loop RFF | REFERENCE | Optional | 10 |
| RFF | REFERENCE | Mandatory | 1 |
| DTM | DATE/TIME/PERIOD | Optional | 1 |
| Loop CTA | CONTACT INFORMATION | Optional | 10 |
| CTA | CONTACT INFORMATION | Mandatory | 1 |
| COM | COMMUNICATION CONTACT | Optional | 5 |
| Loop TOD | TERMS OF DELIVERY | Optional | 10 |
| TOD | TERMS OF DELIVERY | Mandatory | 1 |
| LOC | PLACE/LOCATION IDENTIFICATION | Optional | 5 |
| FTX | FREE TEXT | Optional | 5 |
| Loop TDT | DETAILS OF TRANSPORT | Optional | 10 |
| TDT | DETAILS OF TRANSPORT | Mandatory | 1 |
| PCD | PERCENTAGE DETAILS | Optional | 6 |
| Loop LOC | PLACE/LOCATION IDENTIFICATION | Optional | 10 |
| LOC | PLACE/LOCATION IDENTIFICATION | Mandatory | 1 |
| DTM | DATE/TIME/PERIOD | Optional | 10 |
| Loop EQD | EQUIPMENT DETAILS | Optional | 10 |
| EQD | EQUIPMENT DETAILS | Mandatory | 1 |
| MEA | MEASUREMENTS | Optional | 5 |
| SEL | SEAL NUMBER | Optional | 25 |
| EQA | ATTACHED EQUIPMENT | Optional | 5 |
| Loop HAN | HANDLING INSTRUCTIONS | Optional | 10 |
| HAN | HANDLING INSTRUCTIONS | Mandatory | 1 |
| FTX | FREE TEXT | Optional | 10 |
| Loop CPS | CONSIGNMENT PACKING SEQUENCE | Optional | 9999 |
| CPS | CONSIGNMENT PACKING SEQUENCE | Mandatory | 1 |
| FTX | FREE TEXT | Optional | 5 |
| Loop PAC | PACKAGE | Optional | 9999 |
| PAC | PACKAGE | Mandatory | 1 |
| MEA | MEASUREMENTS | Optional | 10 |
| QTY | QUANTITY | Optional | 10 |
| Loop HAN | HANDLING INSTRUCTIONS | Optional | 10 |
| HAN | HANDLING INSTRUCTIONS | Mandatory | 1 |
| FTX | FREE TEXT | Optional | 10 |
| Loop PCI | PACKAGE IDENTIFICATION | Optional | 1000 |
| PCI | PACKAGE IDENTIFICATION | Mandatory | 1 |
| RFF | REFERENCE | Optional | 1 |
| DTM | DATE/TIME/PERIOD | Optional | 5 |
| GIR | RELATED IDENTIFICATION NUMBERS | Optional | 10 |
| Loop GIN | GOODS IDENTITY NUMBER | Optional | 10 |
| GIN | GOODS IDENTITY NUMBER | Mandatory | 1 |
| DLM | DELIVERY LIMITATIONS | Optional | 10 |
| Loop LIN | LINE ITEM | Optional | 9999 |
| LIN | LINE ITEM | Mandatory | 1 |
| PIA | ADDITIONAL PRODUCT ID | Optional | 10 |
| IMD | ITEM DESCRIPTION | Optional | 25 |
| MEA | MEASUREMENTS | Optional | 10 |
| QTY | QUANTITY | Optional | 10 |
| ALI | ADDITIONAL INFORMATION | Optional | 10 |
| GIN | GOODS IDENTITY NUMBER | Optional | 100 |
| GIR | RELATED IDENTIFICATION NUMBERS | Optional | 100 |
| DLM | DELIVERY LIMITATIONS | Optional | 100 |
| DTM | DATE/TIME/PERIOD | Optional | 5 |
| FTX | FREE TEXT | Optional | 5 |
| Loop RFF | REFERENCE | Optional | 10 |
| RFF | REFERENCE | Mandatory | 1 |
| DTM | DATE/TIME/PERIOD | Optional | 1 |
| Loop DGS | DANGEROUS GOODS | Optional | 10 |
| DGS | DANGEROUS GOODS | Mandatory | 1 |
| QTY | QUANTITY | Optional | 1 |
| FTX | FREE TEXT | Optional | 5 |
| Loop LOC | PLACE/LOCATION IDENTIFICATION | Optional | 100 |
| LOC | PLACE/LOCATION IDENTIFICATION | Mandatory | 1 |
| NAD | NAME AND ADDRESS | Optional | 1 |
| DTM | DATE/TIME/PERIOD | Optional | 1 |
| QTY | QUANTITY | Optional | 10 |
| Loop SGP | SPLIT GOODS PLACEMENT | Optional | 1000 |
| SGP | SPLIT GOODS PLACEMENT | Mandatory | 1 |
| QTY | QUANTITY | Optional | 10 |
| Loop PCI | PACKAGE IDENTIFICATION | Optional | 9999 |
| PCI | PACKAGE IDENTIFICATION | Mandatory | 1 |
| DTM | DATE/TIME/PERIOD | Optional | 5 |
| MEA | MEASUREMENTS | Optional | 10 |
| QTY | QUANTITY | Optional | 1 |
| Loop GIN | GOODS IDENTITY NUMBER | Optional | 10 |
| GIN | GOODS IDENTITY NUMBER | Mandatory | 1 |
| DLM | DELIVERY LIMITATIONS | Optional | 10 |
| Loop HAN | HANDLING INSTRUCTIONS | Optional | 10 |
| HAN | HANDLING INSTRUCTIONS | Mandatory | 1 |
| FTX | FREE TEXT | Optional | 5 |
| GIN | GOODS IDENTITY NUMBER | Optional | 1000 |
| Loop QVA | QUANTITY VARIANCES | Optional | 10 |
| QVA | QUANTITY VARIANCES | Mandatory | 1 |
| DTM | DATE/TIME/PERIOD | Optional | 5 |
| CNT | CONTROL TOTAL | Optional | 1 |
| UNT | Message Trailer | Optional | 1 |