...
Алгоритм кодирования данных для передачи в тег 1162 электронного чека обуви
Формирование тэга 1162 для ККТ:
Код типа маркировки:
- Байты [1:2] (2 байта) – Код типа маркировки (постоянное значение 15 20 для признака DataMatrix GS1).
Постоянное значение: 15 20. - Идентификатор продукта GTIN.
Байты [3:8] (6 байт) – GTIN (SXXXYYYYCCCCCZ).
Используется 14-разрядный GTIN; при записи в ККТ, GTIN представляется как десятичное 14-знаковое число и преобразуется в BIN (big endian) размером в 6 байт. - Серийный номер.
Байты [9:21] (13 байт) - Serial (AAAAAAAAAAAAA).
Serial содержит в себе цифры, заглавные и строчные буквы латинского алфавита.
...
- Строковое значение, в кодировке CPP 866, размер – 13 байт.
- Резерв.
Байты [22:32] (11 байт) – зарезервированы, и не используются.
Резерв в ККТ не передается.
Пример формирования тега 1162
Имеем следующие данные по марке:
- GTIN: 04630037591316
- Serial: sgEKKPPcS25y5
Преобразуем GTIN в бинарный формат: 04 36 03 BE F5 14 (в случае, если GTIN менее 14 символов, его необходимо дополнить ведущими нулями).
Преобразуем Serial в строковое значение: 73 67 45 4b 4b 50 50 63 53 32 35 79 35
Формируем тег 1162 для ККТ:
- Значение 8A 04 – номер тега (1162)
- Значение 15 00 – длина данных (21 байт КТ)
- Добавляем код типа маркировки: 15 20
- Преобразуем GTIN в бинарный формат: 04 36 03 BE F5 14 (в случае, если GTIN менее 14 символов, его необходимо дополнить ведущими нулями).
- Преобразуем Serial в строковое значение: 73 67 45 4b 4b 50 50 63 53 32 35 79 35
- Так как тег 1162 не имеет фиксированное значение, 11 байт резерва в ККТ не передаются.
Результат:
8A 04 15 00 15 20 04 36 03 BE F5 14 73 67 45 4b 4b 50 50 63 53 32 35 79 35
...