EDIFACT кодирование
EDIFACT (Electronic Data Interchange For Administration, Commerce and Transport — электронный обмен данными для управления, торговли и транспорта) — это международный стандарт электронного обмена данными (EDI), разработанный Европейской экономической комиссией ООН (ЕЭК ООН). EDIFACT представляет собой набор согласованных синтаксических правил, форматов сообщений и процедур для структурированной передачи деловых документов между компьютерными системами разных организаций в машиночитаемом виде.
EDIFACT был разработан в 1980-х годах в рамках усилий по унификации электронного документооборота в международной торговле, логистике, финансах и государственном управлении. В 1987 году он был принят в качестве стандарта ISO 9735. Стандарт широко используется в Европе, Азии, Австралии и других регионах мира, особенно в цепочках поставок, розничной торговле, таможенном декларировании и банковском деле.
История создания
Предпосылки появления
До появления EDIFACT организации использовали проприетарные форматы EDI (например, ANSI X12 в США) или отраслевые стандарты. Это создавало проблемы при международном обмене данными, так как требовалось преобразование форматов.
В 1975 году ЕЭК ООН учредила Группу экспертов по упрощению процедур международной торговли (UN/CEFACT). Основной задачей стало создание универсального стандарта, который бы объединил национальные и отраслевые спецификации.
Разработка и принятие
- 1986 год — опубликована первая версия спецификации EDIFACT.
- 1987 год — стандарт утвержден ISO как ISO 9735.
- 1990-е годы — EDIFACT активно внедряется в Европейском союзе для таможенного оформления (система NCTS) и в розничной торговле (стандарт GS1).
- 2000-е годы — с развитием XML и веб-сервисов популярность EDIFACT снижается, однако он сохраняет доминирующее положение в некоторых отраслях, таких как авиаперевозки и фармацевтика.
Кодирование и синтаксис EDIFACT
EDIFACT определяет строгую иерархическую структуру передачи данных. Кодирование осуществляется в виде последовательности символов, разделенных специальными знаками-разделителями. Основные элементы синтаксиса:
Структура сообщения
Каждое сообщение EDIFACT состоит из следующих уровней:
- Служебная часть (UNB — Interchange Header) — идентифицирует отправителя, получателя, дату и время передачи, номер обмена.
- Группы сообщений (UNG — Functional Group Header) — объединяет функционально родственные сообщения (опционально).
- Сообщение (UNH — Message Header) — содержит имя сообщения (например, ORDERS, INVOIC, DESADV) и его версию.
- Сегменты данных — логические блоки, состоящие из элементов данных.
- Служебная часть (UNZ — Interchange Trailer) — завершает пакет обмена.
Синтаксические правила
- Разделители: строка данных использует четыре обязательных разделителя:
'(апостроф) — признак конца сегмента.+(плюс) — разделитель сегментов.:(двоеточие) — разделитель элементов данных внутри сложного элемента..(точка) — десятичный разделитель.?— escape-символ для отмены специального значения следующего символа.- Кодировка символов: исходно EDIFACT использует UNOC (ISO 8859-1) или UNOA (ASCII). В современных реализациях поддерживается UTF-8.
- Длина строки: каждая строка (сегмент) не должна превышать 512 символов.
Пример сообщения
Для заказа на покупку (ORDERS) типичный фрагмент может выглядеть так: `` UNB+UNOC:3+SENDER+RECEIVER+200501:1200+12345' UNH+1+ORDERS:D:96A:UN' BGM+220+ORDER123' DTM+137:20250101:102' NAD+BY+BUYER01::92' LIN+1++123456:EN' QTY+21:100:KGM' UNT+8+1' UNZ+1+12345' ``
Категории сообщений
EDIFACT включает сотни типов сообщений, сгруппированных по функциональным областям:
- Торговля: ORDERS (заказ), INVOIC (счет), DESADV (уведомление об отгрузке), RECADV (уведомление о получении).
- Транспорт: IFTMIN (инструкция по перевозке), IFTSTA (статус перевозки), COPRAR (коносамент).
- Финансы: PAYMUL (платеж с несколькими поручениями), CREDOC (аккредитив).
- Таможня: CUSDEC (таможенная декларация), CUSRES (ответ таможни).
Кодирование данных в EDIFACT
Элементы данных
- Простые элементы — одиночные значения (например, цена, дата). Имеют фиксированную или переменную длину. Каждый элемент имеет уникальный номер (например, 2500 — количество).
- Сложные элементы — комбинации нескольких простых элементов, объединенных двоеточием (например, адрес: улица:город:почтовый индекс).
Использование кодов
В EDIFACT широко применяются кодированные значения. Например, коды единиц измерения (KGM — килограммы, PCE — штуки), коды валют (EUR — евро, RUB — рубль), коды стран (RU — Россия, US — США), коды типов дат (137 — дата документа, 35 — дата поставки). Это обеспечивает однозначную интерпретацию данных независимо от языка.
Сегменты
Сегмент — минимальная единица информации в сообщении. Каждый сегмент начинается с трехбуквенного идентификатора (например, BGM — начало сообщения, NAD — имя и адрес, LIN — строка товара). Сегменты могут быть обязательными или условными в зависимости от версии сообщения.
Кодирование в различных версиях
Стандарт EDIFACT поддерживает директории (версии), обозначаемые буквенно-цифровыми кодами (например, D.96A, D.01B). Номер версии указывает на год выпуска (96 — 1996) и версию (A — первая в году). Каждая новая директория включает уточнения, новые сегменты и коды. Наиболее распространены:
- D.96A — базовая версия для многих отраслевых стандартов (например, GS1).
- D.01B — расширение для логистики и финансов.
- D.16A — современная версия, поддерживающая сложные структуры и многоязычность.
Кодирование и безопасность
Стандарт EDIFACT не содержит встроенных механизмов шифрования или аутентификации. Однако на практике применяются дополнительные меры:
- Электронная подпись — в некоторых сообщениях (например, таможенных) используется цифровая подпись на основе стандартов PKCS#7.
- Шифрование — передача через защищенные каналы (SFTP, AS2, HTTPS).
- Контроль целостности — служебные сегменты UNB и UNZ содержат служебные поля для проверки.
Применение в России и мире
Международное применение
EDIFACT является обязательным или рекомендованным стандартом в следующих сферах:
- ЕС: таможенные системы NCTS, ICS (Import Control System), ECS (Export Control System).
- Авиация: стандарт Cargo-IMP (IATA) и AWB (авианакладные) построены на EDIFACT.
- Розничная торговля: стандарт GS1 EANCOM (профиль EDIFACT от организации GS1).
- Финансы: межбанковский обмен SWIFT для некоторых типов сообщений.
Российские особенности
В России EDIFACT применяется ограниченно, преимущественно в международной торговле и логистике:
- ФТС России (Федеральная таможенная служба, признана таможенным органом РФ) использует EDIFACT для электронного декларирования товаров (сообщения CUSDEC и CUSRES).
- РЖД (ОАО «Российские железные дороги») применяет EDIFACT для обмена данными о грузовых перевозках с европейскими партнерами.
- Ритейл (сети «Ашан», METRO, «Лента») — через международные платформы EDI, использующие EDIFACT-совместимые форматы.
- Внутренний документооборот в РФ чаще использует XML-форматы (ФНС, Сбербанк) или проприетарные решения.
Преимущества и недостатки
Преимущества
- Универсальность — единый стандарт для разных отраслей и стран.
- Эффективность — компактный формат данных (текстовый, без разметки), снижающий объем передаваемой информации.
- Надежность — четкий синтаксис и контрольные суммы (в служебных последовательностях).
Недостатки
- Сложность — для разработки и поддержки требуются специалисты по EDI.
- Низкая читаемость — сообщения имеют вид «строки ASCII» и неудобны для человека.
- Консервативность — сложность адаптации к новым протоколам (REST, JSON).
Источники
- ISO 9735:2012 — Electronic data interchange for administration, commerce and transport (EDIFACT) — Application level syntax rules.
- UN/CEFACT — United Nations Centre for Trade Facilitation and Electronic Business. EDIFACT Syntax and Message Implementation Guidelines.
- GS1 — EANCOM International Standard for Electronic Commerce.
- Руководство по EDIFACT от Федеральной таможенной службы РФ (2020).
- IATA — Cargo-IMP Manual (2022).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →