GS1-128とは(特徴と主な用途)
GS1-128(旧称 UCC/EAN-128)は、Code128 のシンボル体系をベースに、先頭に特殊制御文字「FNC1」を配置し、AI(アプリケーション識別子)によってデータの意味と桁数を国際標準化したバーコードです。単なる商品番号だけでなく、賞味期限・有効期限、製造日、ロット番号、数量、パレット識別番号(SSCC)など複数の属性を連結して表現できます。
日本国内では、医療用医薬品・医療機器の流通表示、パレットやオリコンの標準物流ラベル(SCMラベル)、食肉・生鮮のトレーサビリティ、さらに公共料金や通信販売のコンビニ収納代行払込票(AI 91:44桁バーコード)など、極めて高い正確性が求められる分野で採用されています。
| コード種別 | 1次元バーコード(GS1 規格(GS1-128 / GS1 データバー 等)) |
|---|---|
| 使用できる文字 | AI(アプリケーション識別子)ごとに定められた半角数字・英数字・記号 |
| 桁数・データ容量 | 最大48文字(先頭 FNC1・区切り FNC1 は自動制御) |
| チェックデジット | モジュラス103(自動)+ AI (01)/(00) 等のモジュラス10自動検証 |
| 推奨サイズの目安 | 物流:モジュール幅 0.495〜0.94mm/医療・小型:0.17〜0.495mm(最大幅165mm) |
| 主な用途 | 医療用医薬品・医療材料表示、物流SCMラベル、コンビニ収納代行払込票 |
| サンプル入力例 | (01)04912345678904(17)261231(10)ABC123 |
| 読み取りテスト | カメラ・画像からの読み取りに対応 |
| ラベルプリンター出力 | ZPL / TSPL / EPL2 に1bit画像命令として出力 |
GS1-128の作成・印刷手順
データ入力欄では、AI(アプリケーション識別子)を半角丸括弧「( )」で囲んで記述します。たとえば GTIN・有効期限・ロット番号を連結する場合は「(01)04912345678904(17)261231(10)ABC123」のように入力してください。括弧は目視文字(HRI)にのみ表示され、バーコード内部では自動的に先頭 FNC1 および可変長 AI 直後の区切り FNC1 へ変換されます。
ロット違いやシリアル番号違いのラベルをまとめて発行する場合は、「一括作成(複数)」に切り替えて Excel で組み立てた文字列リストを貼り付ければ、A4ラベル用紙への一括印刷や PNG / SVG の ZIP 保存、Zebra(ZPL)・TSC(TSPL)プリンターへのコマンド出力がすぐに行えます。
サイズ・パラメータ設定の目安
GS1 仕様では、一般的な物流・ケースラベル用途でモジュール幅 0.495mm〜0.94mm(バー高さ 32mm 推奨)、医療用医薬品や小型ラベル用途でモジュール幅 0.170mm〜0.495mm(バー高さ 13mm 以上推奨)が目安とされています。また、シンボル全体の横幅(左右余白を含む)は最大 165mm 以内、格納文字数は最大48文字以内と規定されています。
コンビニ払込票(AI 91)など桁数が多い GS1-128 では横幅が長くなるため、指定ガイドラインのモジュール幅・高さ・クワイエットゾーン(左右10モジュール以上)を厳守し、300dpi または 600dpi の高解像度(または SVG / EPS ベクター形式)で出力してください。
よくあるエラーと読み取れない原因
もっとも多い作成ミスは「通常の Code128 を選んで括弧付きの文字列((01)...)をそのまま入力してしまうこと」です。見た目は似ていても、通常の Code128 では先頭の FNC1 が入らず括弧記号そのものがデータ化されてしまうため、検品システムやレジで GS1-128 として認識されません。必ず本ページ(GS1-128)で作成してください。
また、各 AI には厳格なフォーマット規則があり、違反するとエラーになります。代表例として、AI (01) は必ず数字14桁(13桁JANを使う場合は先頭に「0」を補って14桁化しチェックデジットも合わせる)、AI (17) の有効期限は YYMMDD の数字6桁(日がない場合は末日を「00」とする規定あり)、可変長の AI (10) ロット番号や AI (21) シリアル番号は固定長 AI の後ろ(末尾側)に配置すると区切り文字を節約できて横幅を短く抑えられます。
よくある質問
- 13桁のJANコードを GS1-128 の AI (01) に入れるにはどう書けばよいですか?
- AI (01) は14桁の GTIN を格納する仕様のため、13桁JANコードの先頭に「0」を1つ付けた14桁で記述します(例:JANが 4912345678904 なら (01)04912345678904)。先頭に0を足しても末尾のチェックデジットは変わりません。
- 可変長の AI((10) ロット番号など)の後に別の AI を続けても大丈夫ですか?
- はい。AI を半角括弧 ( ) で囲んで続けて入力していただければ、可変長フィールドの終端に必要な区切り文字(FNC1)がバーコード内部へ自動的に挿入されます。
- GS1-128の作成・商用利用は無料ですか?
- はい。会員登録やログインは一切不要で、何枚でも無料でGS1-128を作成でき、商品パッケージや業務ラベルなど商用利用にも制限はありません。入力データはすべてブラウザ内で処理され、外部サーバーへ送信されないため安全です。