Электронный код продукта (EPC, Electronic Product Code) – это способ нумерации конкретных единиц товаров, упаковки, мест хранения, документов и т.д., который используется при маркировке объектов RFID-метками Class 1 Gen 2 по стандарту EPCglobal GS1.
Электронный код продукта является одним из вариантов электронного кода объекта. Второй вариант – это UII.
В отличие от кодов (штрихкодов) EAN13 или ISBN, которые обозначают только номенклатуру или артикул товара, EPC в идеале идентифицирует конкретные экземпляры, т.к. в нём есть место под уникальный серийный номер каждого экземпляра. При этом, в качестве серийного номера никто не запрещает хранить нули или номер целой партии товара.
RFID-метками могут помечаться не только сами товары, но и составные части товара (вложенные в коробку аксессуары), упаковки более высокого уровня (блоки, короба) а также тара (поддоны, контейнеры). В кодах EPC всё это уже предусмотрено.
Помимо товаров RFID-метками с EPC могут помечаться основные средства, логистические объекты, скидочные карточки и много другое.
Что в настоящий момент можно кодировать при помощи EPC:
Что кодировать + конкретный способ кодирования в терминах EPC называется «схема».
Помимо конкретных объектов, метки могут наноситься на групповую упаковку, еще более групповую упаковку, либо, наоборот, на составные части объекта. Например, EPC для документа с флагом «упаковка» может быть обозначать папку с документами и даже целый ящик с папками.
Содержимое зависит от того, что им кодируется (см. список выше). При этом любой без исключения код EPC содержит:
Регистрационный номер компании в ЮНИСКАН/GS1 – обязательный элемент многих схем.
Для компаний, у которых нет номера в Юнискане, зарезервирован код «4» (как бы «просто какая-то компания»).
Дополнительно к заголовку и значению фильтра, EPC содержит:
Так же, как и большинство стандартных штрихкодов, EPC не содержит информации о количестве, размере, весе или цвете товара, и не предусматривает никакого способа её добавить. Для хранения такой расширенной информации можно:
В RFID-метку EPC записывается при помощи нулей и единиц. Перевод EPC в нули и единицы называется бинарным кодированием EPC, которое уже реализовано в компоненте (самим ничего кодировать и декодировать не нужно).
Из метки EPC считывается точно так же в виде нулей и единиц, и чтобы получить из них код компании или серийный номер товара, необходимо произвести декодирование.
Таким образом, один и тот же EPC может быть записан как минимум двумя способами:
Существует еще третий, самый распространенный способ записи EPC – это строка, представляющая собой последовательную запись в 16-ричном формате всех байт бинарно закодированного EPC, и именно в таком виде EPC отображают программы, которые идут с RFID-оборудованием по умолчанию.
Все варианты «товарных» EPC, без исключения, имеют в себе поле для хранения серийного номера того конкретного объекта (товара или упаковки), который маркирован RFID-меткой. Для «коротких» вариантов EPC (например, длиной в 96 бит) поле для серийного номера представляет собой число и всегда чем-то заполнено (по умолчанию нолём). Для «длинных» вариантов EPC серийный номер представляет собой строку из цифр и латинских букв, по умолчанию там пустая строка.
Уникальные серийные номера позволяют отличить один маркированный объект от другого.
Это необходимо, т.к. «голые» метки UHF Gen2 при инвентаризации неотличимы друг от друга.
Пока все метки находятся «в поле зрения» считывателя и более-менее неподвижны (как, например, на кассе), считыватель может однозначно посчитать количество маркированных объектов, даже если все метки прошиты совершенно идентичными кодами.
Но во время проведения мобильной инвентаризации либо считыватель, либо объекты, движутся. И метки могут то попадать «в поле зрения» считывателя, то пропадать, то вновь появляться (иногда с разницей в минуты). Что будет, если метки все одинаковые?! В этом случае однозначный подсчет реального количества меток, если у них идентичные коды, просто невозможен, и требуются уникальные серийные номера на каждый объект.
Примеры того, как и почему это плохо, когда у товаров нет уникальных серийных номеров, рассмотрены на примерах ниже.
Таким образом, серийный номера главным образом необходимы для нормальной работы технологии UHF RFID при проведении мобильной инвентаризации товаров.
Пример №1: идентичные товары без серийного номера лежат неподвижно.
Пример №2: идентичные товары без серийного номера неподвижны, но считыватель движется.
Пример №3: идентичные товары с уникальными серийными номерами лежат неподвижно.
Пример №4: идентичные товары с уникальными серийными номерами, считыватель движется.
Под генерированием EPC понимаются правила, по которым компания будет заполнять поля EPC перед их записью в метку. Для товара нужно заполнить следующие поля: код компании в Юнискан, каталожный код товара, серийный номер, фильтр упаковки (определяет, для чего предназначена метка – для самого товара, для его составной части или для целого палета с товаром). Для компаний, у которых нет кода в Юнискане, зарезервирован код «4» (как бы «просто какая-то компания»).
Данные для заполнения полей берутся либо из учетной системы компании, либо прямо из штрихкодов товаров. Эти правила следует выработать для каждого типа маркируемых товаров, чтобы правильно настроить работу RFID-принтера и/или выделенного маркировочного места со стационарным RFID-считывателем.
Международные штрихкоды EAN13, ISBN, ISSN, UPC и EAN8, выдаваемые организацией GS1 (в России – Юнискан) для маркировки товаров, журналов и книг на продажу, могут быть переведены в EPC и записаны в метку по схеме SGTIN (товар + серийный номер). К сожалению, это не стандартизовано для внутренних самодельных штрихкодов.
Использование штрихкодов для кодирования RFID-меток позволяет обеспечить легкое и быстрое внедрение RFID-технологии в любой организации, в которой уже используется штрихкодирование товаров.
Преимущества использования стандартных штрихкодов (EAN13, UPC и EAN8, ENA128) для кодирования RFID-меток:
API метод компоненты EPCизШК (EPCfromBarcode) создает экземпляр SGTIN-варианта EPC на основе штрихкода.
Синтаксис: EPCизШК (<barcode >, <filterValue>, <serial>)
![]() ![]() |
Штрихкоды UPC/EAN, которые начинаются на «04», на «2», а также с «0001…» по «0007…», не являются уникальными и/ или международными. Они предназначены для внутреннего использования в компаниях. Текущая версия стандарта на кодирование UHF меток прямо запрещает использование таких штрихкодов для получения EPC и записи в метку. Конвертация таких штрихкодов в EPC пока не стандартизована, особенно если штрихкод содержит в себе данные о весе, оттенке или размере маркируемого объекта. Основной вопрос здесь – уникальность получаемых EPC в пределах склада/магазина/офиса, с учетом того, что посетители также проносят на себе какие-то «чужие» метки. На практике он может быть решен также, как и в случае «стандартных» штрихкодов, а именно при помощи уникального серийного номера единицы товара. |
Примеры создания EPC товаров на основе штрихкодов EAN для внутреннего использования:
Все штрихкоды, которые не подпадают под определение из предыдущего раздела (т.е. почти все штрихкоды из 8, 12 или 13 цифр, которые начинаются не на «0» и не на «2»), представляют собой глобально уникальные международные штрихкоды, которые в теории должны однозначно идентифицировать номенклатуру маркированного объекта (SKU).
![]() |
Такие штрихкоды, полученные от Юнискан (GS1), могут быть без каких-либо проблем перенесены в UHF RFID-метку при помощи нашего продукта. Такую метку впоследствии сможет прочесть и понять любая стандартная программа в любой точке Земного шара. Уникальность получаемых EPC в пределах склада/магазина/офиса (с учетом того, что посетители также проносят на себе какие-то «чужие» метки) решается при помощи уникального серийного номера каждой единицы товара (см. «EPC по коду товара»). |
Штрихкоды EAN128 обычно содержат полный код товара в поле (01) или (02). При генерации EPC при помощи данного продукта штрихкод EAN128 следует использовать целиком, как штрихкод единицы товара.
![]() |
Уникальность получаемых EPC в пределах склада/магазина/офиса (с учетом того, что посетители также проносят на себе какие-то «чужие» метки) решается при помощи уникального серийного номера каждой единицы товара. В EAN128 серийный номер содержится в поле (21). Если в штрихкоде нет полей (01) или (02), то самое разумное - использовать генерацию EPC по коду товара. |
Примеры создания EPC товаров на основе штрихкодов EAN128:
Самое разумное – забыть про эти штрихкоды и использовать генерацию EPC по коду товара.
EPC по коду товара
API метод компоненты EPCизSGTIN (EPCfromSGTIN) создает экземпляр SGTIN-варианта EPC на основе кода компании и кода товара.
Синтаксис: EPCизSGTIN (<company>, <item>, <filterValue>, <serial>)
Пример №1: каждой рубашке назначен свой серийный номер:
Пример №2: у всех рубашек одинаковые серийные номера (плохо!):
Пример №3: на таре, используемой для удобства переноски, есть своя RFID-метка:
Пример №4: ювелирный набор из кулона и двух сережек, на каждом элементе своя метка + отдельная метка самого товара, наклеена на коробочке от набора; проба и другие характеристики ищутся в базе по серийному номеру:
Таким образом из примеров видно, что метки можно наносить:
― как на сам товар, так и на его составные частиТара для удобства переноски
В стандартах UHF RFID предусмотрено такое понятие как «тара для удобства переноски», под которым понимается некая неуникальная тара для конкретного товара. RFID-метка на такую тару генерируется по коду или штрихкоду товара, который в ней лежит, только в качестве фильтра при создании EPC указывается не «Товар для продажи на кассе», а «Тара для удобства переноски и транспортировки».
При этом в EPC нет никакой возможности указать количество штук товара в такой таре (но это можно записать в банк USER).
Так же, как и у товара, у такой тары может быть свой серийный номер, который назначается учетной системой или автоматически генерируется продуктом от «Клеверенс».
Примеры создания EPC переносной тары на основе штрихкодов EAN13:
Номерные коробки, палеты и т.п.
Контейнеры, которым выдаются уникальные номера, например коробки с упакованными заказами или поддоны для палет, маркируются при помощи Serial Shipping Container Code (SSCC). Т.е. сам такой контейнер есть «Serial Shipping Container», а его уникальный номер – это его «Code». Обычно это штрихкод, в котором за SSCC отвечают максимум 18 цифр (из них последняя – чексумма).
Если используется EAN128, что SSCC чаще всего хранится в поле (00), например:
Примеры создания EPC номерного контейнера на основе штрихкода EAN128:
Если же используется не EAN128, а просто Code128 или любая другая кодировка, и в этот штрихкод пишется код контейнера с какими-то префиксами и т.п., то генерацию EPC следует проводить согласно разделу «EPC коробки, палеты и т.п. по уникальному номеру».
EPC коробки, палеты и т.п. по уникальному номеру
Коробки, палеты, емкости могут рассматриваться, с одной стороны, как логистические контейнеры, а с другой – как тара.
Если у палеты или коробки есть уникальный номер, который хранится в учетной системе, возможно участвует в каких-то внутрискладских документах, и определяет содержимое контейнера, то такая коробка или палета считается маркированной при помощи Serial Shipping Container Code (SSCC), т.е. сама коробка или палета есть «Serial Shipping Container», а её уникальный номер – это её «Code». Просто «тарой для удобства переноски» такая коробка или палета не является.
Если у поддона или коробки есть уникальный номер, но он идентифицирует просто оборачиваемую тару, то такая коробка или палета маркируется при помощи Global Returnable Asset Identifier (GRAI), т.е. сама тара есть «Returnable Asset», а её уникальный номер – «Global Identifier».
Коробка или палета как контейнер
При генерации EPC для такой коробки или палеты следует заполнить два поля: номер компании в Юнискан и уникальный номер конкретного контейнера. Для компаний, у которых нет кода в Юнискане, зарезервирован код «4» (как бы «просто какая-то компания»). Номера контейнеров могут быть только цифровыми, никаких букв и прочих символов. Данные берутся из учетной системы компании, «Wonderfid™ Link» не умеет сам генерировать серийные номера для контейнеров, их следует назначать самостоятельно.
Примеры создания EPC коробок и палет на основе их уникальных номеров:
Коробка, поддон, пробирка и т.п. как оборачиваемая тара
При генерации EPC для такой коробки или палеты следует заполнить три поля: номер компании в Юнискан, тип оборачиваемой тары (просто цифровой номер, назначаемый самой компанией) и уникальный серийный номер конкретного экземпляра тары. Для компаний, у которых нет кода в Юнискане, зарезервирован код «4» (как бы «просто какая-то компания»). Серийные номера тары могут быть только цифровыми, никаких букв и прочих символов.
Примеры создания EPC оборачиваемой тары:
Под генерированием EPC понимается правила, по которым компания будет заполнять поля EPC перед их записью в метку. Для документа поля следующие: код компании в Юнискан, тип документа и серийный номер конкретного экземпляра документа. Для компаний, у которых нет кода в Юнискане, зарезервирован код «4» (как бы «просто какая-то компания»).
Данные для заполнения полей берутся из учетной системы компании. Серийные номера документов могут быть только цифровыми, никаких букв и прочих символов. «Wonderfid™ Link» не умеет сам генерировать серийные номера для документов, их следует назначать самим.
Примеры создания EPC документов: