Kennisbank
Wat is GS1 en GDSN?
GS1 is de organisatie achter de codes waarmee de handel artikelen, locaties en pallets herkent: de GTIN onder de streepjescode, de GLN en de SSCC. GDSN is het wereldwijde netwerk van GS1 waarin een leverancier zijn artikelgegevens één keer in een datapool zet en elke afnemer die erop geabonneerd is ze ontvangt; in Nederland is die datapool GS1 Data Source.
Bijgewerkt op
GS1 en GDSN in het kort
GS1 is een wereldwijde organisatie zonder winstoogmerk, met nationale organisaties zoals GS1 Nederland en GS1 Belgium & Luxembourg. GS1 Nederland geeft de codes uit waarmee bedrijven artikelen, locaties en zendingen herkennen, en beheert met bedrijven uit elke sector welke gegevens daarbij horen. Vier codes kom je in een koppeling tegen:
| Code | Wat het identificeert | Lengte | Waar je het ziet |
|---|---|---|---|
| GTIN | één verkoopbare verpakking: stuk, doos, pallet | 8, 12, 13 of 14 cijfers | streepjescode, artikelbestand, order |
| GLN | een bedrijf of locatie: vestiging, magazijn, factuuradres | 13 cijfers | EDI-berichten, Peppol, datapool |
| SSCC | één logistieke eenheid, zoals een pallet | 18 cijfers met AI 00 |
pallet-label, verzendbericht |
| GPC-brick | de productcategorie in de datapool | code uit de GPC-lijst | bepaalt welke velden verplicht zijn |
GDSN, het Global Data Synchronisation Network, is de afspraak over hoe artikelgegevens tussen leverancier en afnemer gaan. De leverancier zet een artikel met al zijn verpakkingsniveaus in een datapool. Een afnemer abonneert zich op die leverancier, op een productgroep of op een losse GTIN, en krijgt elke nieuwe of gewijzigde versie. In Nederland is de datapool GS1 Data Source, met GLN 8712345013042 voor zowel test als productie.
Er zijn drie Nederlandse datamodellen: levensmiddelen en drogisterij, doe-het-zelf, tuin en dier, en gezondheidszorg. Agrarisch en vers heeft een eigen ingang, met datakwaliteitsafspraken voor aardappelen, groente en fruit. In het model voor doe-het-zelf, tuin en dier staan bijna 3.400 soorten gegevens, vastgesteld door retailers en leveranciers in de Benelux. Welke daarvan verplicht zijn, hangt af van de GPC-brick. GS1 Nederland noemt de verkeerde brick een van de meest gemaakte fouten bij het invoeren.
Hoe gaat een artikel door GDSN?
GDSN werkt met XML-berichten met vaste namen. De leverancier stuurt het artikel als CIN (Catalogue Item Notification) en publiceert het daarna met een CIP (Catalogue Item Publication) aan de GLN van een of meer afnemers. De afnemer abonneert zich met een CIS en bevestigt met een CIC (Catalogue Item Confirmation). Met een CIHW trekt de leverancier alle publicaties van een hiërarchie in.
De CIC is het bericht dat het vaakst wordt overgeslagen. Staat er een fout in de data, dan krijgt de leverancier de status REVIEW met foutmeldingen terug. Bij een WARNING is de data wel bij de afnemer aangekomen. Bij ACTION_NEEDED niet: de afnemer krijgt het artikel pas als de fout is opgelost. Een koppeling die alleen kijkt of de CIN Accepted is, meldt dus een artikel als verstuurd dat de afnemer nooit heeft gezien.
Wat is een verpakkingshiërarchie?
Elk niveau waarop je bestelt, levert of verkoopt, krijgt een eigen GTIN. De GTIN van een losse zak mag niet op de doos staan. In GDSN leg je de niveaus vast als hiërarchie, met per niveau een code (BASE_UNIT_OR_EACH, CASE, PALLET) en per niveau of het een consumenteneenheid en een besteleenheid is. GS1 Nederland gebruikt in de handleiding een pallet zakken speelzand; hier hetzelfde patroon met eigen nummers.
| Niveau | GTIN (14 cijfers) | Inhoud | Besteleenheid |
|---|---|---|---|
BASE_UNIT_OR_EACH, zak potgrond 40 liter |
08712345100018 | 1 zak | nee |
CASE, palletlaag |
08712345100025 | 6 zakken | ja |
PALLET |
08712345100032 | 6 lagen | ja |
Het rekenvoorbeeld zit in de velden. De laag heeft "Aantal van elk specifiek product" 6 met als onderliggende GTIN de zak. De pallet heeft "Aantal lagen van de GTIN pallet" 6 met als onderliggende GTIN de laag. Een pallet is dus 6 x 6 = 36 zakken. Een webshop die per zak verkoopt en per pallet inkoopt, moet die 36 uit de hiërarchie halen, niet uit een omschrijving als "pallet potgrond". Bij 1.200 consumentenartikelen met elk een laag en een pallet zijn het 3.600 GTIN's, waarvan er 1.200 in de webshop horen.
Voorloopnul of indicatiecijfer
In de datapool heeft elke GTIN 14 cijfers. GS1 Nederland adviseert om voor elk niveau een voorloopnul te gebruiken en niet een indicatiecijfer 1 tot en met 8 (de 9 is voor artikelen met een variabel gewicht). Met een ander cijfer dan 0 verandert het controlecijfer, en dan levert inkorten naar 13 cijfers geen geldige code op. In de tweede regel hoort bij 871234510001 het controlecijfer 8, niet 5:
08712345100018 -> 8712345100018 geldig
18712345100015 -> 8712345100015 ongeldig
Hoe komt GDSN-data in je systemen?
GS1 Data Source levert op drie manieren. Bij het aanmelden kies je er een; API staat standaard geselecteerd.
| Protocol | Formaat | Hoe het werkt | Waar je op let |
|---|---|---|---|
| AS2 | alleen GDSN XML | push, in principe realtime | certificaten installeren; de GS1-configuratie: AS2 versie 1.2, 3DES, SHA-256, synchrone ondertekende MDN |
| FTPS | GDSN XML en media | jij haalt bestanden op | poort 21, explicit TLS, mappen inbox, outbox, processing en processed |
| API | JSON en media | pull per GTIN, module of hiërarchie | sinds 2022; GS1 adviseert nieuwe koppelingen alleen nog op de API |
Het verschil zit in de hoeveelheid. Via AS2 en FTPS krijgt een afnemer van elke leverancier waarop hij geabonneerd is de volledige hiërarchie van elk nieuw of gewijzigd artikel. Via de API vraagt hij alleen op wat hij nodig heeft. Bij AS2 en FTPS staan afbeeldingen en veiligheidsbladen als URL in het bericht en haal je het bestand zelf op; de media-API levert foto's, veiligheidsbladen en pdf's los op aanvraag.
Waar gaat het mis?
- GTIN als getal opgeslagen. Een ERP of Excel dat
08712345100018als getal leest, maakt er 13 cijfers van. Bij een EAN-13 is dat toevallig nog geldig, maar de match met de datapool, die 14 cijfers gebruikt, faalt. De koppeling bewaart een GTIN als tekst van 14 posities. - Einddatum genegeerd. Een artikel dat niet meer leverbaar is, krijgt een
EndAvailabilityDateTime. Op die datum haalt de datapool de publicaties weg. Een koppeling die daar niets mee doet, laat het artikel in de webshop staan. - Laatste versie wint. Bij een update via een CIN is de laatst verzonden versie leidend. Verrijkt een afnemer data in zijn eigen PIM, dan overschrijft de volgende CIN die verrijking, tenzij per veld vastligt welk systeem leidend is.
- Doelmarkten door elkaar. Een artikel heeft gegevens op drie lagen: globaal, per doelmarkt en per handelspartner. Een omschrijving voor België is een ander record dan die voor Nederland.
- Release gemist. Vier keer per jaar veranderen validaties en velden. Release 3.1.37 gaat op 14 november 2026 in productie; een artikel dat de nieuwe validatie niet haalt, kan niet meer worden gepubliceerd.
GS1 naast ETIM en DICO
| GS1 en GDSN | ETIM | DICO | |
|---|---|---|---|
| Wat het regelt | identificatie en artikeldata per verpakking | technische kenmerken per productklasse | berichten tussen bedrijven in bouw en techniek |
| Beheer in Nederland | GS1 Nederland | Ketenstandaard Bouw en Techniek | Ketenstandaard Bouw en Techniek |
| Sectoren | levensmiddelen, doe-het-zelf, tuin en dier, zorg, mode | installatie, bouw, gereedschap | bouw en installatie |
| Transport | AS2, FTPS of API via de datapool | bestand via een databank zoals 2BA | Messageservice, SOAP of REST |
De drie sluiten op elkaar aan. In bouw en installatie werkt GS1 Nederland samen met Ketenstandaard: een ETIM-product heeft per verpakking een GTIN, en een DICO-order noemt koper en leverancier bij hun GLN. Meer in wat is ETIM en wat is DICO. Voor GS1-codes in EDI-berichten zie wat is EDI.
Wat betekent dit voor je koppeling?
Als leverancier haal je de hiërarchie uit je ERP of PIM en stuur je hem naar de datapool, met de CIC terug als bewijs dat de afnemer het artikel heeft. Als groothandel of webshop haal je de data op en zet je alleen de consumenteneenheden in de shop, met de besteleenheid en de omrekening uit de hiërarchie. Wij bouwen die koppeling op de API of het protocol van jouw datapool, met de GTIN als tekst van 14 posities en een controlelijst voor artikelen met ACTION_NEEDED.
Daarna hosten en bewaken we hem, met een diff per run, zodat je ziet welke velden een nieuwe CIN heeft gewijzigd. Hoe artikeldata in de rest van je stromen past staat op productdata, de mapping van GTIN en classificatie op ETIM- en GS1-classificatie. Vertel uit welke datapool je data komt of naartoe moet.
Veelgestelde vragen
Is een EAN-code hetzelfde als een GTIN?
Ja, in de praktijk wel. EAN is de oude naam; GS1 spreekt van GTIN, de Global Trade Item Number. Een EAN-13 is een GTIN van 13 cijfers. In GS1 Data Source staat elke GTIN als 14 cijfers, met een voorloopnul ervoor. Meer over het verschil met je eigen artikelnummer staat in SKU of EAN.
Moet ik in GDSN zitten om online te verkopen?
Nee. GDSN is nodig als je afnemers hun artikelgegevens uit de datapool halen, zoals retailers in levensmiddelen, doe-het-zelf, tuin en dier en zorginstellingen. Voor je eigen webshop heb je de GTIN nodig en de productdata in je ERP of PIM. Wie als groothandel data ontvangt, kan die met een koppeling direct in zijn webshop zetten.
Wat is het verschil tussen GS1 en ETIM?
GS1 identificeert: welke verpakking is dit, welke locatie, welke pallet. ETIM classificeert: wat voor technisch product het is en welke kenmerken het heeft. GS1 werkt met een eigen productindeling, de GPC-brick, die bepaalt welke velden je in de datapool invult. In de bouw en installatie werkt GS1 Nederland samen met Ketenstandaard, die ETIM en DICO beheert. Zie wat is ETIM.
Hoe vaak verandert het datamodel van GS1 Data Source?
Vier keer per jaar komt er een release met wijzigingen in validaties, velden of codes. GS1 Nederland publiceert de wijzigingen ruim vooraf: release 3.1.37 is gepubliceerd op 7 september 2026 en gaat op 14 november 2026 in productie. Een koppeling die een veld verplicht maakt dat de bron niet heeft, moet voor die datum zijn bijgewerkt.
Kan ik GDSN-data via een API ophalen?
Ja. Sinds 2022 kan een afnemer artikelgegevens via een API ophalen, als JSON, per GTIN, per datamodule of per hiërarchie. GS1 Nederland adviseert om geen nieuwe koppelingen meer op XML te bouwen. Leveranciers kunnen artikelen via een eigen API aanleveren en publiceren, zonder AS2- of FTPS-verbinding.
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