EDIFACT: The universal message standard
EDIFACT is the abbreviation for "Electronic Data Interchange for Administration, Commerce and Transport". This is a global set of rules defined by the UN for the inter-company electronic data exchange between two or more business partners via EDI.
The goal of EDIFACT is the optimization and standardization of the data flow between business partners. By defining uniform segments and elements that describe the information in the electronic file and which are used for a wide variety of document types (such as invoices, purchase orders, delivery notes, etc.) merely by means of a differentiated arrangement, a worldwide standard was created.
However, since the EDIFACT standard was very comprehensive and created for almost every business transaction and every industry, subgroups (the so-called subsets) soon emerged. The subset EANCOM was created for the retail sector, which contains the mandatory fields of the EDIFACT standard and the industry-specific optional fields. By creating so-called subsets, the messages are better handled and easier to understand. The following table provides an overview of the EDIFACT messages.
|DESADV||despatch advice message|
|IFTMIN||instructions of transport|
|IFTMBF||transport booking request|
|IFTMBC||transport booking confirmation|
|ORDERS||purchase order message|
|PAYORD||payment order message|
|PRICAT||price catalogue message|
|PRODAT||product data message|
|MSCONS||Metered Services CONsumption report message|
|UTILMD||UTILities Master Data message|
Structure of an EDIFACT message
Like any language, the EDIFACT rules are based on a character set to be used, the vocabulary (data elements) and grammar (syntax).
Based on the data elements, data element groups / segments of the syntax and the guidelines for the development of message types, globally applicable uniform messages are created. The syntax contains rules according to which the messages exchanged between the communication partners can be structured uniformly, i.e. equally well understandable for all participants, regardless of the hardware and software used. In addition, the syntax allows the user to optimise the transfer files so that only the content actually required is transferred.
The segments and data elements are variable in length. Unlike fixed-length data records, their contents do not have to be filled with blanks or zeros. Only the segments, data element groups and data elements for which content exists in the current message are transferred. This leads to significant savings in data transmission overhead.
|UN/EDIFACT syntax/ISO 9735|
United Nations trade data in the business directory
|Functional grouping of data elements |
NAD = name & address
= variable segment length
|Grouping of segments to describe business processes |
The EDIFACT syntax
The EDIFACT Syntax defines the following facts:
A) Usable character sets
Two character sets are currently defined to display the message contents:
- Typ A: printable characters only
- Typ B: printable characters and all characters of the 7- and 8-bit code permitted in data communication.
B) Data elements
This is the basic module that represents information, e.g. the article number. A data element is comparable to a data field. The data elements are always in a defined sequence within a segment. They can be identified in the segment by their position.
This is a summary of logically related data elements. It is comparable to a data set. The segments within a message are always in the sequence defined in the message structure diagram.
|NAD||Name and address|
To specify the name, address and function of a partner, either as a code only by C082 or (if necessary also additionally) unstructured by C058 or structured by C080 to 3207
|M||an..3||BY = purchaser|
DP = delivery address
|C082||Identification of the participant||K|
|3039||Identification of the participant||M||an..17|
|1131||Code list, qualifier||K||an..3|
|3055||Responsible for code maintenance||K||an..3|
|C058||Name and address||K|
|3124#1||Line for name and address||M||an..35|
|3124#2||Line for name and address||K||an..35|
|C080||Name of the participant||K|
The message is a summary of all EDIFACT segments that are required to represent a business transaction, such as an invoice. The message is identified by the specifications in the message header segment (UNH). It is closed with the message end segment (UNT). Only those segments whose data elements contain content are transferred. Segments for which no information is available are omitted completely.
The EDIFACT message name "ORDERS D96 A" indicates:
An order is "ORDERS"
The letter "D" stands for draft
"96" is the year on which a change was made to this message, and
"A" means in the first half of 1996
A message group is a group of messages of the same message type, for example, several delivery notes, for the same recipient.
Since each message is identified by the message reference number, the sequence of messages within the message group is arbitrary. The message group is identified by the specifications in the header segment UNG. The end of a message group is described with the end segment UNE.
E) Transmission file
This is a summary of messages or message groups. The transfer file is sent directly to a recipient or forwarded to several recipients via a clearing center. Since each message group is unique due to sender and recipient information and the message reference number, the sequence of the message group within the transfer file can be arbitrary. It is identified by the specifications in the user data header segment (UNB) and ends with the user data end segment (UNZ). The transmission file of an EDIFACT message looks like this:
|The following is an example of an invoice in EDIFACT format:|
NAD+BT+VAUXHALL MOTORS LTD::91'
The basic structure of an EDIFACT message is always the same and consists of certain frame segments:
UNA segment (optional): here you can rename separators and special characters
UNB segment: file header; forms the envelope with the UNZ, which contains general information
UNG segment: group start; messages can be combined into message groups
UNH segment: message header; this is where the actual message is located
UNT segment: end of message
UNE segment: group end
UNZ segment: end of file
More about EDIFACT and the SEEBURGER EDI/EDIFACT solutions