GS1-128 vs Code 128: Co naprawdę dają Identyfikatory Zastosowania
Autor Tomasz Lichosik
Gotowy na wygenerowanie kodów?
Twórz wysokiej jakości etykiety w kilka sekund.
Połóż etykietę GS1-128 obok zwykłej etykiety Code 128, a nie zauważysz różnicy. Te same kreski, te same szerokości, ta sama linia tekstu pod spodem. Zeskanuj obie prostym czytnikiem — obie się odczytają. Dlaczego więc sieci handlowe i partnerzy logistyczni odrzucają dostawy oznaczone „zwykłym" Code 128 — i czego właściwie oczekują, gdy w dokumentacji zgodności pojawia się GS1-128?
Krótka odpowiedź: Code 128 to symbolika — sposób zamiany znaków na kreski. GS1-128 to standard danych, który na niej jeździ. Nie zmienia wyglądu kodu; zmienia znaczenie danych w środku i sprawia, że to znaczenie jest maszynowo czytelne dla każdego partnera w łańcuchu dostaw.
Code 128: nośnik
Code 128 definiuje fizyczny symbol: jak każdy ze 128 znaków ASCII mapuje się na wzór kresek i odstępów, jak liczona jest obowiązkowa suma kontrolna Modulo 103 i jak podzbiory A, B i C kompresują dane. Nie mówi natomiast nic o tym, co zakodowany tekst znaczy. Jeśli wydrukujesz 5901234123457 w Code 128, skaner przekaże Twojemu oprogramowaniu ciąg 5901234123457 — a to, czy jest to numer produktu, ID zamówienia czy numer wewnętrzny telefonu, musi wiedzieć już Twój system.
Do użytku wewnętrznego to zupełnie wystarcza. Twój system magazynowy zna własne konwencje. Lokalizacja B-14-03 oznacza alejkę B, regał 14, półkę 3, bo tak ustaliliście.
GS1-128: gramatyka
GS1-128 (dawniej UCC/EAN-128) bierze tę samą symbolikę i dokłada do niej gramatykę. Dwie rzeczy czynią z symbolu Code 128 symbol GS1-128:
- Wiodący znak FNC1. Ta niewidoczna flaga zaraz za znakiem startu mówi każdemu skanerowi: „to, co następuje, to ustrukturyzowane dane GS1, a nie dowolny tekst".
- Identyfikatory Zastosowania (IZ, ang. Application Identifiers — AI). Każda porcja danych jest poprzedzona 2–4-cyfrowym kodem, który deklaruje, czym ona jest. IZ drukuje się w nawiasach w linii tekstowej — same nawiasy nigdy nie są kodowane w kreskach.
Najczęstsze IZ, które spotkasz na etykiecie logistycznej:
| IZ | Znaczenie | Przykład |
|---|---|---|
| (00) | SSCC — Seryjny Numer Jednostki Logistycznej | (00)059012341234567890 |
| (01) | GTIN jednostki handlowej | (01)05901234123457 |
| (10) | Numer partii/serii | (10)LOT2607A |
| (17) | Data ważności (RRMMDD) | (17)270331 |
| (21) | Numer seryjny | (21)SN00982 |
| (37) | Liczba sztuk w jednostce logistycznej | (37)48 |
Ponieważ każde pole samo się opisuje, jeden kod może nieść kilka z nich połączonych w łańcuch: (01)05901234123457(17)270331(10)LOT2607A mówi każdemu systemowi zgodnemu z GS1, jaki to produkt, jaka jest jego data ważności i partia — bez żadnych wcześniejszych ustaleń między nadawcą a odbiorcą co do kolejności czy długości pól.
I o to właśnie chodzi. Wewnętrzna konwencja działa w obrębie Twoich czterech ścian. IZ działają między firmami, które nigdy ze sobą nie rozmawiały.
Kiedy GS1-128 jest wymagany
Zwykle musisz użyć GS1-128 zamiast zwykłego Code 128, gdy:
- Etykietujesz palety i kartony do dystrybucji detalicznej. SSCC (IZ 00) na etykiecie logistycznej GS1 jest skanowany w każdym węźle i to on łączy fizyczną paletę z elektroniczną awizacją dostawy.
- Traceability żywności i napojów. Przepisy i wymagania sieci coraz częściej wymagają danych o partii (10) i dacie (15/17) na poziomie kartonu — właśnie po to, by wycofania mogły być precyzyjne.
- Ochrona zdrowia i farmacja. Oznaczanie opakowań łączy zwykle GTIN, datę ważności i partię — na większych opakowaniach jako GS1-128, na najmniejszych jako GS1 DataMatrix.
- Wymaga tego specyfikacja partnera handlowego. Amazon, duże sieci i operatorzy logistyczni publikują specyfikacje etykiet kartonowych; jeśli spec wspomina o SSCC lub IZ, to znaczy: GS1-128.
Uwaga praktyczna: do zakodowania GTIN lub SSCC potrzebujesz prefiksu firmy GS1, który wydaje krajowa organizacja GS1 (w Polsce: GS1 Polska) — nie można go wymyślić. Jeśli ten temat jest dla Ciebie nowy, zacznij od naszego przewodnika po prefiksie firmy GS1.
Kiedy wystarczy zwykły Code 128
Równie ważne: nie płać podatku od złożoności, jeśli nikt tego nie wymaga. Zwykły Code 128 to właściwy wybór, gdy:
- Kod nigdy nie opuszcza Twojej organizacji — etykiety majątku, lokalizacje magazynowe, zlecenia produkcyjne, identyfikatory pracowników.
- Dane to pojedyncza, dowolna wartość bez struktury do zadeklarowania.
- Kontrolujesz każdy skaner i każdy system, który kiedykolwiek odczyta etykietę.
Opakowywanie danych wewnętrznych w IZ wydłuża kod, dodaje punkty awarii i nic nie daje. Te kompromisy opisaliśmy szerzej w artykule Kody wewnętrzne vs GS1.
Trzy błędy, przez które etykiety są odrzucane
- Kodowanie nawiasów. Zapis
(01)służy tylko do wyświetlania. Jeśli generator dosłownie zakoduje nawiasy w kreskach, weryfikacja się nie powiedzie. W kreskach musi znaleźć się FNC1 +01+ dane. - Zwykły Code 128 z tekstem sformatowanym jak IZ. Bez wiodącego FNC1 zgodny skaner potraktuje
0105901234123457jako nieprzezroczysty 16-znakowy ciąg, a nie GTIN. Dla człowieka wygląda dobrze — i wykłada się na rampie odbiorcy. - Zła cyfra kontrolna wewnątrz GTIN lub SSCC. Suma kontrolna symbolu Code 128 i cyfra kontrolna GTIN to dwie różne rzeczy; symbol może skanować się bez zarzutu, niosąc nieprawidłowy GTIN.
W skrócie
Code 128 odpowiada na pytanie „jak zamienić znaki na skanowalne kreski?". GS1-128 — na pytanie „jak sprawić, by te znaki znaczyły to samo dla każdej firmy, która je zeskanuje?". Wewnątrz własnej firmy Code 128 utrzymuje prostotę. W momencie, gdy etykietę musi zrozumieć partner handlowy — magazyn sieci, apteka, system celny — standardem, którego oczekują, jest GS1-128 z właściwymi Identyfikatorami Zastosowania.
Potrzebujesz samego nośnika? Wygeneruj zgodny ze standardem kod Code 128 w SVG, PNG lub PDF na BarcodeReady w kilka sekund.
Powiązane artykuły
- Code 128 vs Code 39: Który standard kodu kreskowego jest odpowiedni dla Twojej firmy?
- Czym jest prefiks firmy GS1 i czy go potrzebujesz?
- Kody wewnętrzne vs GS1: Jaka jest różnica?
- ITF-14: Kompletny przewodnik po kodach dla kartonów zbiorczych
- SSCC-18 i etykieta logistyczna GS1: jak poprawnie oznaczać palety