About EDIFACT
What is EDIFACT?
EDIFACT is the acronym for Electronic Data Interchange for Administration, Commerce and Transport.
It is the international standard for Electronic Data Interchange (EDI), which was developed by the United Nations (UN). The standard was approved as the ISO 9735 standard by the International Organization for Standardization (ISO) in 1987. The EDIFACT standard provides rules on how to structure data and standardize messages for multi-industry and multi-country exchange.
EDIFACT is also known as United Nations/Electronic Data Interchange For Administration, Commerce and Transport (UN/EDIFACT).
The work of maintenance and further development of this standard is done through the United Nations Center for Trade Facilitation and Electronic Business (UN/CEFACT) under the UN Economic Commission for Europe (UN/ECE).
EDIFACT Directory
An EDIFACT Directory contains all EDIFACT messages for a certain release, e.g. Directory D01B. EDIFACT Directories are released twice every year from the United Nations (UN). The EDIFACT Direcories of older versions are still valid, a new EDIFACT Directory does not make the Directories of previous years invalid. There is no issue, if you e.g. use a Directory like D96.A, if you have agreed this with your trading partner, but the latest Directory is D17B.
Please find here all EDIFACT Directories, which we actually have in our database.
EDIFACT Structure
EDIFACT has a hierarchical structure where the top level is referred to as an interchange, and lower levels contain multiple messages which consist of segments, which in turn consist of composites. The final iteration is an element which is derived from the United Nations Trade Data Element Directory (UNTDED); these are normalised throughout the EDIFACT standard.
All EDIFACT messages are based on the ISO9735, in which the syntax units are described in detail, and have the following structure:
Service String Advice UNA Conditional +----- Interchange Header UNB Mandatory | +--- Functional Group Header UNG Conditional | | +- Message Header UNH Mandatory | | | User Data Segments As required | | +- Message Trailer UNT Mandatory | +--- Functional Group Trailer UNE Conditional +----- Interchange Trailer UNZ Mandatory
What is an EDIFACT message?
An EDIFACT message is a single business document. Each EDIFACT message is always identified by a six character name.
Typical EDIFACT messages are the following:
ORDERS - Purchase Order Message
ORDCHG - Purchase Order Change Request Message
ORDRSP - Purchase Order Response Message
DESADV - Despatch Advice Message
INVOIC - Invoice Message
EDIFACT messages are made up of a collection of sequenced segments within defined areas. Some segments may be used in more than one area. Messages begin with the Message Header Segment (UNH) and end with the Message Trailer Segment (UNT).
Please find here all EDIFACT Messages, based on the different Directories which we actually have in our database.
What is an EDIFACT Segment?
An EDIFACT segment is a collection of logically-related data elements in a fixed, defined sequence. EDIFACT segments contain:
- a three-character alphanumeric code that identifies the segment. This is called the segment tag.
- Variable length data elements. These can be either simple or composite.
EDIFACT segments must be separated by a data element separator (data element delimeter), which is normally "+" and ":", and terminated by a segment terminator, normally "‘".
All segments are fully documented in the United Nations Trade Data Interchange Directory (UNTDID). These tables list the segment position, segment tag and segment name. Segment tables also specify if a segment must appear in a message using the requirements designator "M" (Mandatory) or "C" (Conditional), and how many times a particular segment may repeat (repetition field).
In EDIFACT, there are two kinds of segments: Service Segments and Generic Segments.
Service Segments are:
- Envelopes (UNB-UNZ, UNG-UNE, UNH-UNT)
- Delimiter String Advice (UNA)
- Section Separator (UNS)
Generic Segments are for example:
- BGM for the beginning of a message, which contains the document number
- DTM for dates and times
- NAD for name and address data
- MOA for monetary amounts
Please find here all EDIFACT Segments, based on the different Directories which we actually have in our database.
What is an EDIFACT Data Element?
A simple data element contains one piece of information.
The composite data element contains more than one piece of information, usually containing qualifiers.
In EDIFACT, all mandatory data elements must contain data. Conditional data elements may or may not contain data, depending on the requirements of the particular transmission.
Since data elements must be accounted for by their position in the segment, if an optional or conditional data element does not have data, that data element must still be accounted for in its position within the segment by using the appropriate number of data element separators to ‘skip over’ the empty field.
Data Elements can have different types: numeric, alphabetical and alphanumeric.
Please find here all EDIFACT Data Elements, based on the different Directories which we actually have in our database.
What is an EDIFACT Qualifier?
A Composite Data Element is made up of two or more pieces of data (known as components) which form a single data unit. Typically the first data element is the value, which is being qualified. The second data element is typically the qualifier. These are typically ID (code values) fields. The qualifier gives additional definition to the value.
EDIFACT Delimiters
EDIFACT is using the following delimeters:
Segment delimiter ' apostrophe Hex: 0x27 Element delimiter + plus sign Hex: 0x2B Subelement delimiter : colon Hex: 0x3A Decimal Separator . period Hex: 0x2E Release character ? question mark Hex: 0x3F
Example for EDIFACT ORDERS
The following data is a very simple example of an EDIFACT (Purchase) ORDERS:
UNH+1+ORDERS:D:96A:UN' Message Header EDIFACT ORDERS D.96A BGM+220+PO123456+9' Beginning of message PO Number DTM+137:20171129:102' Date/Time Document Date DTM+2:20171201:102' Date/Time Requested Delivery Date RFF+CR:ABC' Reference Customer Reference Number NAD+BY+1234567890123::9' Name and address GLN Buyer NAD+SU+9876543210987::9' Name and address GLN Supplier NAD+DP+4567890123456::9' Name and address GLN Ship-to LIN+1++4123456789012:EN' Line Item Details GTIN QTY+21:10:PCE' Quantity Ordered quantity PRI+AAA:9.99' Price details Net price UNS+S' Section control Start of the summary section CNT+2:1' Control total Number of line items in message UNT+14+1' Message Trailer Total number of segments, control reference number from UNH