バーコードコラム

JANコードの兄弟? インストアコードとは

2024.02.20

インストアコード、インストアマーキング、ソースマーキング、Non-PLU、PLU……聞いたことありますか?

 

「インストアコード」というものを聞いたことはありますか? メーカーや小売業界の方以外では意外と少ないのではと思いますが、活用次第では大きな可能性があるものなんです。しかし、自由度が高すぎる分、全体像がつかみにくいのも事実。とはいえ、取っつきやすさ優先でインストアコード = JANコードの兄弟、と割り切った理解をすると、それは少々雑、ということになってしまいます。本稿では、インストアコードとは何か? の全体像にインストアマーキング / ソースマーキングの違い、Non-PLU / PLUの違いを交えつつ、インストアコード = JANコードの兄弟といってしまってよいのか否か、について解説します。

 

 

インストアコードは自社内でしか利用しないバーコード

 

「インストアコード」とは、1次元コード(バーコード)の一つです。

 

例えば1次元コードの中で最もメジャーな「JANコード」は、JIS-X0507で規格化されており、バーコード化できるデータの種類や桁数などは決められています。

 

インストアコードは、自社内でしか利用しない1次元コードのことです。自社内でしか利用しないので、バーコードの “何番目の桁に何を表すデータを入れるか” は自由に決めてOKですし、その “データAを表す桁数を何桁にするか” も自由に決めることができます。

 

一例として、JANコードの先頭2桁は、「国コード」を表すものでなければならない、と定められています。日本の場合は「45」もしくは「49」です。でもインストアコードは、自社内でしか利用しませんので、先頭2桁 = 国コードというルールを守る必要がありません。別の意味を持たせてもいいですし、先頭が2桁でなくてもいいのです。

 

このように、インストアコードは使う人次第でバラバラなものですから、規格化するのはどだい無理な話です。ですから、「インストアコード」という名前の、規格化された1次元コードがあるわけではありません。『自社内でしか利用しないタイプの1次元コード』、その総称が「インストアコード」なのです。

 

 

何故インストアコードが必要なのか

 

何故「インストアコード」が存在するのでしょう? 規格化されておらず、自社内のみで、自分達だけのために使っているだけなのだから、“我々は自社内で独自に使っているよ” ということをわざわざ明かさなくたってよさそうなものです。なのに何故、『そういう1次元コード』に「インストアコード」という呼びやすい代名詞をつけ、あまつさえそれについて情報交換しやすくしたりするのでしょうか?

 

それは、『そういう1次元コード』の使い方をすることに、一定の正当性・利便性があるからです。

 

 

ソースマーキング / インストアマーキングとは何か

 

詳しい話に入っていく前に、「ソースマーキング」「インストアマーキング」について説明しましょう。

 

「ソースマーキング」とは、商品の外装や表面に1次元コードや2次元コードを直接印刷したり、貼付したりすることをいいます。

 

(おまけ知識:
バーコードでなくICタグを装填・内蔵する場合は「ソースタギング」といいます)

 

これはつまり、商品の製造・出荷時点で価格などが決まっているケースとも言い換えられます。

 

これに対して「インストアマーキング」は、小売店内で販売時にバーコードを採番・貼付します。生鮮食品の切り売りやお菓子の量り売りなど、販売する時点にならないと価格などが確定しないケースなどが主といえるでしょう。

 

こうした用途に、インストアコードが使われます。

 

 

PLU / Non-PLUとは何か

 

ところで、バーコードには「PLU」「Non-PLU」という概念が存在します。

 

「PLU」とは「Price Look-Up」の略で、直訳としては『価格を参照する』という意味です。これをもうちょっと丁寧に表すと、

『その商品の価格情報を取得するために、価格情報が蓄積されている外部データベース(価格マスター)を、バーコード読み取り時に参照しにいくような仕組みになっている』
となります。

 

「Non-PLU」はこれの逆で、

『バーコード自体にその商品の価格情報が記録されているので、外部の価格マスターデータベースを参照しにいかなくていい仕組みになっている』

という意味です。

 

JANコードは、そもそもバーコード内に価格情報を含めることができない仕様になっていますので、JANコードイコールPLUコードとなります。

 

一方、上述の生鮮食品切り売りやお菓子量り売りなどのケースでは、その場で量って価格を決め、価格情報を含むバーコードを採番・印刷・貼付しなければなりません。

 

ですから、インストアコードはニアリーイコールNon-PLUコードとなります。

 

ちなみに以下は、店頭でインストアコードを印刷する用のラベルプリンタを作っているメーカーの製品紹介ページです。

 

 

ブラザービジネスNAVI > ラベル・モバイルプリンター活用ガイド! > スタンドアロン

 

 

インストアコードは本当にJANの兄弟なのか?

 

JANコードの仕様では

・先頭10桁 / 9桁 / 7桁 … GS1事業者コード。そのうち先頭2桁が「国コード」で、日本の場合は「45」もしくは「49」。

・[GS1事業者コードが10桁の場合]11, 12桁目 … 商品アイテムコード。

・[GS1事業者コードが9桁の場合]10~12桁目 … 商品アイテムコード。

・[GS1事業者コードが7桁の場合]8~12桁目 … 商品アイテムコード。

・13桁目 … チェックデジット。

 

と定められています。これに対してのインストアコードの説明として、

 

・先頭2桁 … インストアコードであることを表す「20」~「29」のいずれか。
・3~12桁目 … 好きな自社用途に自由に使ってよい。例えばアパレルの場合であれば、商品コードに6桁、サイズに2桁、カラーに2桁(計10桁)など。
・13桁目 … チェックデジット。

 

と説明されているケースが多いです。が、これは必ずしも正しくありません。

 

といいますのも、インストアコードは、冒頭で説明したとおり、自社内利用限定という条件つきで、

・どこの桁に何についての情報を入れるか
・その情報を表すのに何桁使うか
・そもそも全体を何桁にするか

そして

・そこに入れられるデータの種類は何か(数字だけ、英数字、記号も含むか、などなど)

などが本来すべて自由だからです。

 

なのに何故、インストアコードを『JANコードの仕様を基にしつつ、非・一般流通用に一部のみを変更したもの』という狭い定義に押し込めようとするのでしょうか?

 

 

既存のバーコード仕様を基にしたインストアコードのほうが、現実的

 

これはひとえに、

いくらインストアコードの仕様が自由だからといって、本当にまったくのゼロベースで完全オリジナルのバーコードを作ってしまっては、それを正確に読み取れるバーコードリーダーを作ることのほうがよほど大変だ

という点に集約される問題なのだと思われます。

 

例えばJANコードは、前節で説明したとおり

 

・先頭10桁 / 9桁 / 7桁 … GS1事業者コード。そのうち先頭2桁が「国コード」で、日本の場合は「45」もしくは「49」。
・[GS1事業者コードが10桁の場合]11, 12桁目 … 商品アイテムコード。
・[GS1事業者コードが9桁の場合]10~12桁目 … 商品アイテムコード。
・[GS1事業者コードが7桁の場合]8~12桁目 … 商品アイテムコード。
・13桁目 … チェックデジット。

 

というデータ仕様であるわけですが、それをバーコードシンボルの形で表す上では、

 

・黒バーの横幅はこれくらい
・白バーの横幅はこれくらい
・ある数字一字を表すには、黒バーと白バーをこれこれこのように組み合わせる
・他の数字の場合はこれこれこう
・チェックデジットの計算式はこう
・バーコードシンボルの周囲にはクワイエットゾーンがなければならない
・クワイエットゾーンの幅はこれくらい

 

といったような数々の厳正な仕様が定められています。

 

そしてまた、読み取り側であるバーコードリーダーも、そのように作られているバーコードシンボルを正確に読み取れるものでなければなりません。読み取り方にも、

 

・バーコードシンボル内の何を目印にして、どの位置から走査(スキャン)を始めるか
・何回走査して、どの走査結果を最終読み取り結果として採用するか

 

などの決まりごとが存在しているのです。

 

これらの仕様に対応したバーコードリーダーをゼロから作るのはまったく容易なことではありません。

 

こういった理由から、『既存の1次元コード仕様を基にしたインストアコード仕様』が用意されたのだと思われます。そして、その中では、JANコードを基にするのが最もリーズナブルであろう、と。

 

もともとJANコードは日本で最も普及している商品識別コードですし、標準タイプの場合、総桁数が13桁ありますので、先頭2桁と末尾のチェックデジットを除くと10桁のデータを保持できます。10桁というのは、インストアコードとして好きな用途に割り振るのには悪くない(= 小さすぎない)容量だと考えられたのでしょう。

 

JANコード読み取りに対応しているバーコードリーダーであれば、『先頭2桁が「20」~「29」であった場合はインストアコードであると解釈する』ようにカスタマイズすることで、インストアコード読み取りへの対応も比較的容易です。

 

こうした複合的な理由から、インストアコード = JANコードの兄弟、という説明がよく見受けられるようになったものと考えられます。必ずしも正確ではないが、そう受け取ることで手っ取り早い理解が可能になるという側面も無視できない――ということですね。

 

ちなみに以下は、印刷通販サイト「印刷ネットドットコム」の、インストアコードシール販売ページのスクリーンショットですが、CODE39 / CODE128 / NW-7をそれぞれ基にしたインストアコードのシールが売られています。これを見るだけでも、『インストアコード = JANコードを基にしたもの』では必ずしもない、ということが判りますよね。

 

 

印刷ネットドットコム > インストアコードシールCODE39

 

 

印刷ネットドットコム > インストアコードシールCODE128

 

 

印刷ネットドットコム > インストアコードシールNW-7

 

 

自社ECサイト構築をきっかけにインストアコードを採用した会社さんの事例

 

最後に、手書きの紙伝票からインストアコードを活用しての在庫管理に移行した陶磁器卸売会社さんの事例を、在庫管理ソフト開発会社の株式会社ロジクラさんがサイトで公開されていますので、参考事例としてご紹介しておきます。

 

 

ロジクラ > 導入事例 > 有限会社陶秀

 

 

 

※本コラムに掲載した商品名、サービス名、会社名またはロゴマークは、各社の商標、登録商標もしくは商号です。

株式会社メディアシーク
〒108-0072 東京都港区白金1丁目27-6 白金高輪ステーションビル
https://www.mediaseek.co.jp/
IR・広報担当 E-mail:press@mediaseek.co.jp

システム開発・
コンサルティング
カスタムメイド・システムソリューション
パッケージソリューション
お客様の声
お役立ちコラム
システム開発・コンサルティングのお問い合わせ