Naar de inhoud
SyncMyShop

Kennisbank

EDIFACT-berichten: welke er zijn en hoe je ze leest

Een EDIFACT-bericht is een handelsdocument, zoals een order, pakbon of factuur, in de vaste tekstopbouw van de VN-standaard UN/EDIFACT. Elk berichttype heeft een naam van zes letters: ORDERS is de order, DESADV de pakbon, INVOIC de factuur. In de Nederlandse handel gebruik je de GS1-versie, EANCOM, met 49 berichten waarvan een leverancier er meestal vier tot zes tegenkomt.

Bijgewerkt op

Een EDIFACT-bericht in twee zinnen

Een EDIFACT-bericht is één handelsdocument als tekstbestand, opgebouwd uit segmenten van drie letters met velden ertussen. Welk document het is, staat in de naam van zes letters in de kop van het bericht: ORDERS, ORDRSP, DESADV, INVOIC.

UN/EDIFACT is de standaard van de Verenigde Naties. In de Nederlandse handel werk je bijna altijd met EANCOM, de deelverzameling die GS1 daaruit heeft gemaakt: alleen de velden die de handel gebruikt, en GLN, GTIN en SSCC als vaste sleutels. Wat EDI in het algemeen is en hoe het bestand bij je afnemer komt, staat in wat is EDI. Deze pagina gaat over de berichten zelf.

Welke EDIFACT-berichten bestaan er?

GS1 publiceert de EANCOM-gidsen in de editie 2016, laatst bijgewerkt in augustus 2022, voor syntaxversie 3 en 4. Die editie bevat 49 berichten in acht groepen (eigen telling van de lijst bij GS1):

Groep Aantal Voorbeelden
Stamgegevens 4 PRICAT prijscatalogus, PARTIN partijgegevens
Voor de order 3 QUOTES offerte, REQOTE offerteaanvraag
Order 5 ORDERS, ORDCHG, ORDRSP
Transport en levering 12 DESADV, RECADV, IFTMIN, RETANN
Betaling en financieel 6 INVOIC, REMADV, COMDIS
Rapportage en planning 13 APERAK, INVRPT, SLSRPT, DELFOR
Overig, syntax, beveiliging 6 CONTRL, GENRAL, AUTACK

Een leverancier die aan een retailer of groothandel levert, heeft met een handvol daarvan te maken. Elk bericht heeft in EANCOM 2002 een eigen versienummer van de deelverzameling, dat los van de andere berichten wordt bijgewerkt:

Bericht Wat het is Richting Versie
ORDERS Inkooporder afnemer naar jou 010
ORDCHG Wijziging van een order afnemer naar jou 007
ORDRSP Orderbevestiging: geaccepteerd, gewijzigd of afgewezen jij naar afnemer 009
DESADV Pakbon per verzendeenheid, met SSCC jij naar afnemer 008
RECADV Ontvangstbericht: wat er echt is aangekomen afnemer naar jou 009
INVOIC Factuur of creditnota jij naar afnemer 011
REMADV Betaaladvies: welke facturen een betaling dekt afnemer naar jou 005
PRICAT Artikelen en prijzen meestal jij naar afnemer 009
INVRPT Voorraadstand beide kanten 006
SLSRPT Verkoopcijfers per locatie afnemer naar jou 007
APERAK Applicatie meldt ontvangst of fouten beide kanten 004
CONTRL Vertaalsoftware meldt syntaxfouten beide kanten 004

Drie daarvan worden vaak vergeten bij het inrichten van een koppeling. ORDCHG wijzigt een order die al als verkooporder in je ERP staat. RECADV meldt dat de afnemer minder heeft ontvangen dan je DESADV aankondigde, en dat verschil komt terug op de factuur. REMADV vertelt welke facturen een betaling dekt, en zonder dat bericht wordt een verzamelbetaling met de hand afgeletterd. Hoe de pakbon is opgebouwd staat in wat is een DESADV.

Hoe lees je een segment?

Van envelop tot gegevenselement in een EDIFACT-bestand Een EDIFACT-bestand bestaat uit vijf niveaus: de interchange van UNB tot UNZ, het bericht van UNH tot UNT, het segment, het samengestelde element en het gegevenselement. Het voorbeeld is de gewenste leverdatum 7 oktober 2026 in een ORDERS. van envelop naar één veld UNB ... UNZ+1+4711' Interchange De envelop met afzender, ontvanger en een unieke referentie UNH+1+ORDERS:D:01B:UN:EAN010' Bericht Eén document, hier een order DTM+2:20261007:102' Segment Eén regel, drie letters vooraan 2:20261007:102 Samengesteld element C507, delen gescheiden door een dubbele punt 2 = gewenste leverdatum Gegevenselement 2005 is de kwalificatie: welke datum
Eén datum in een order, van de envelop tot het ene veld dat zegt welke datum het is.

Een segment begint met een label van drie letters en eindigt met een apostrof. Daartussen staan gegevenselementen, gescheiden door +. Een samengesteld element bestaat uit delen, gescheiden door :. Elk element heeft in de standaard een nummer, en veel elementen zijn een kwalificatie: een code die zegt wat de volgende waarde betekent. Twee datumsegmenten uit een order:

DTM+2:20261007:102'
DTM+64:202610070600:203'

Ontleed:

Deel Element Waarde Betekenis
DTM segment datum of tijd
2 2005, kwalificatie 2 gewenste leverdatum
20261007 2380, waarde 7 oktober 2026
102 2379, formaat 102 CCYYMMDD, alleen een datum
64 2005, kwalificatie 64 vroegste levermoment
202610070600 2380, waarde 7 oktober 2026, 06:00
203 2379, formaat 203 CCYYMMDDHHMM, datum met tijd

Het segment DTM komt in één order vaak vier of vijf keer voor. De kwalificatie bepaalt in welk veld van je ERP de datum hoort: 137 is de orderdatum, 2 de gewenste leverdatum, 63 en 64 het laatste en vroegste levermoment. Een koppeling die "de eerste DTM" als leverdatum neemt, zet bij de ene afnemer de orderdatum in het leverveld en bij de andere de juiste datum, afhankelijk van de volgorde in het bestand.

Zo werken ook de partijen. NAD+BY is de koper, NAD+DP het afleveradres, NAD+IV het factuuradres, NAD+SU de leverancier. Alle vier dragen ze een GLN van 13 cijfers. Wat een GLN is en waarom het afleveradres een eigen nummer heeft, staat in wat is een GLN.

Wat de berichtsoort en de functie zeggen

Het segment BGM zegt welk soort document het is en wat je ermee moet. In een ORDERS kent EANCOM onder meer deze soorten:

Code in BGM Soort order
220 Order
221 Raamorder
224 Spoedorder
226 Afroep op een raamorder
402 Crossdock-order
YC1, YC2 Consumentenorder: afhalen, thuisbezorgen

GS1 raadt aan de specifiekere code te gebruiken in plaats van de algemene 220. Voor je ERP maakt dat verschil: een afroep (226) hoort bij een raamorder die er al is en mag geen nieuwe verkooporder met de volledige hoeveelheid worden.

Het laatste element van BGM is de functie: 9 is een origineel, 5 vervangt een eerder bericht, 7 is een duplicaat dat de ontvanger zelf heeft opgevraagd, 31 is een kopie ter informatie. Een order met functie 7 of 31 die als nieuwe order wordt ingelezen, staat er daarna twee keer in.

Versies: D.96A, D.01B en de code in UNH

Elk bericht vermeldt in UNH op welke versie het is gebouwd:

UNH+1+ORDERS:D:01B:UN:EAN010'

D:01B is de EDIFACT-directory, de tweede release van 2001. EANCOM 2002 is gebouwd op D.01B, de oudere EANCOM 1997 op D.96A. EAN010 is het versienummer van de EANCOM-deelverzameling voor dit bericht. Een afnemer die nog EANCOM 1997 stuurt, levert andere segmenten en codes aan dan een afnemer op 2002, ook als het bericht dezelfde naam heeft.

Op die versiecode kun je niet blind vertrouwen. De GS1-gids voor ORDERS beschrijft versie 010 en noemt in de codelijst van hetzelfde element EAN011; de voorbeelden in dezelfde gids gebruiken EAN010. De Nederlandse handleiding voor de pakbon gebruikt in haar voorbeeld EAN007, terwijl de internationale gids versie 008 beschrijft. Welke code je afnemer verwacht en stuurt, staat in zijn profiel. Een koppeling leest de versie per bericht uit UNH en kiest daarop de mapping, in plaats van één versie aan te nemen.

Veldlengtes en referenties: waar je ERP en EDIFACT botsen

Elk element heeft een vaste maximale lengte. Een paar die bij een koppeling steeds terugkomen:

Element Waar Lengte
Ordernummer van de afnemer BGM, 1004 35 tekens
Naam van een partij NAD, 3036 35 tekens, tot 5 keer
Straat en huisnummer NAD, 3042 35 tekens, tot 4 keer
Postcode NAD, 3251 17 tekens
Artikelnummer LIN, 7140 numeriek, tot 14 cijfers
Referentie van de interchange UNB, 0020 14 tekens

Naam en adres staan alleen in het bericht als een GLN niet volstaat; normaal is NAD+DP+8712300001237::9' genoeg. Moet de naam er toch in, dan gaat "Installatiebedrijf Van den Heuvel en Zonen B.V." van 47 tekens niet in één veld van 35. De koppeling knipt op een spatie: "Installatiebedrijf Van den Heuvel" (33 tekens) in het eerste veld en "en Zonen B.V." (13 tekens) in het tweede. 33 + 1 spatie + 13 = 47. Afkappen op 35 levert "Installatiebedrijf Van den Heuvel e" op.

De referentie in UNB heeft een eigen regel. Samen met de GLN van de afzender en de ontvanger maakt hij de interchange uniek, en GS1 raadt aan een nummer pas na minstens drie maanden opnieuw te gebruiken. Een teller van vier cijfers loopt tot 9.999. Bij 150 interchanges per dag is die na 9.999 / 150 = 66,7 dagen op en begint hij opnieuw, ruim binnen die drie maanden. De ontvanger ziet dan een referentie die hij al kent en kan het bestand als dubbel weigeren. Een referentie van datum plus volgnummer, 20261007-0001, is 13 tekens en past binnen de 14.

Het scheidingsteken voor decimalen is standaard een punt. Wil een afzender iets anders, dan staat dat in een UNA-segment voor de envelop. Zonder UNA gelden de standaardtekens : + . ? en '.

Wat betekent dit voor je koppeling?

Een EDIFACT-bericht is gestandaardiseerd tot op het element, maar welke berichten, welke kwalificaties en welke versie je afnemer gebruikt, verschilt per afnemer. De koppeling moet per bericht de juiste datum bij de juiste kwalificatie zoeken, de soort en de functie in BGM respecteren, de versie uit UNH lezen en op de terugweg binnen de veldlengtes blijven.

Wij bouwen die mapping tussen je ERP en je EDI-verbinding, per afnemer en per bericht, en draaien en bewaken hem daarna. Een bericht dat je afnemer afwijst, staat met de reden in het dashboard en wacht in de wachtrij tot het is opgelost. Meer op EDI koppeling, en per pakket op AFAS EDI koppeling en Exact Online EDI koppeling. Vertel welke berichten je afnemer vraagt, dan hoor je wat er aan je kant voor nodig is.

Veelgestelde vragen

Wat is het verschil tussen EDIFACT en EANCOM?

UN/EDIFACT is de standaard van de Verenigde Naties, met berichten die veel meer velden bevatten dan één sector nodig heeft. EANCOM is de deelverzameling die GS1 daaruit maakt voor de handel: alleen de elementen die bedrijfstoepassingen gebruiken, en overal GLN, GTIN en SSCC als sleutel. Een EANCOM-bericht is dus altijd een geldig EDIFACT-bericht, andersom niet.

Wat is het verschil tussen CONTRL en APERAK?

CONTRL komt van de vertaalsoftware en zegt of het bestand syntactisch klopt: tellers, scheidingstekens, verplichte segmenten. APERAK komt van de applicatie van de ontvanger en zegt of de inhoud verwerkt kon worden, bijvoorbeeld dat een GTIN onbekend is. Een bestand kan dus een positieve CONTRL krijgen en toch een APERAK met fouten.

Kan ik een EDIFACT-bestand openen en lezen?

Ja, het is platte tekst. Vaak staat het hele bestand op één regel; elke apostrof sluit een segment af, dus wie na elke apostrof een regeleinde zet, ziet de segmenten onder elkaar. Lezen vraagt wel de berichtgids van EANCOM of het profiel van je afnemer, omdat de betekenis in nummers en codes zit: DTM+2 is een andere datum dan DTM+137.

Wat betekent D.01B in een EDIFACT-bericht?

Het is de directory van UN/EDIFACT waarop het bericht is gebaseerd: D staat voor directory, 01B voor de tweede release van 2001. EANCOM 2002 gebruikt D.01B, EANCOM 1997 gebruikte D.96A. Je ziet het in het UNH-segment, bijvoorbeeld ORDERS:D:01B:UN:EAN010.

Is ORDERS hetzelfde als een 850?

Dezelfde functie, een andere standaard. De 850 is de inkooporder in X12, de Noord-Amerikaanse standaard met genummerde berichten. ORDERS is de inkooporder in EDIFACT. De velden en de opbouw verschillen, dus een leverancier die beide ontvangt heeft per standaard een eigen mapping nodig. Meer in wat is EDI.

Welke berichten moet ik als leverancier kunnen versturen?

Dat bepaalt je afnemer in zijn profiel. Bij de Nederlandse retail gaat het meestal om een bevestiging (APERAK of ORDRSP), de pakbon (DESADV) en de factuur (INVOIC). GS1 Nederland test per sector andere berichten: in de levensmiddelen de DESADV, in doe-het-zelf, tuin en dier ook de INVOIC.

Vertel wat je nodig hebt

Vertel welke systemen je gebruikt en wat je wilt verbeteren. Je krijgt binnen één werkdag een persoonlijk antwoord. We helpen je de werkzaamheden helder te krijgen en spreken de prijs en planning af voordat je iets toezegt.

  • Je weet de prijs en de doorlooptijd voordat je iets toezegt
  • Wij zoeken uit welke koppeling het werk uit handen neemt
  • Wij verzorgen de bouw, hosting, bewaking en het onderhoud
  • Je team krijgt minder overtypwerk en minder uitzoekwerk

Leveranciers, producten, orders per dag, een ruwe schatting is prima.

Of mail direct: carsten@syncmyshop.com