Страница 24 из 26

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ ЕСМ от АО «ЕСП»

Добавлено: 31 Август 2024, 7:30
Игорь Столяров
Привет всем !

Класс для выполнения разрешительной проверки КМ (кодов маркировки)
через API ГСЦМ "Честный ЗНАК" (ГИС МТ + ПО Локальный Модуль) и ТС ПИоТ.

Полный боевой комплект с описанием интерфейса API и примерами.

Реализованный в классе функционал полностью соответствует ПФС ЦРПТ (версия 1.13 / 26 сценариев)
для получения сертификата совместимости и допуска в промышленную среду работы с ТС ПИоТ. 😎

Благодарность за помощь на старте проекта: FinsoftRZ и Alex412.
Любые замечания, исправления и дополнения - приветствуются !
----------------------------------------------------------------------------------------------------
НАСТОЯТЕЛЬНО рекомендуем использовать актуальные версии классов LibCURL, cJSON и PrintF.

2.jpg

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 25 Февраль 2026, 19:37
SergioRaguzini
Игорь, если я Вас правильно понял, получается, что для отладки (тестирования) мы используем не "настоящий" ЕСМ, а тестовые стенды:
PIoT:RootHost Equate('https://tspiot.sandbox.crptech.ru') ! SandBox ЦРПТ
PIoT:RootHost Equate('https://esm-emu.ao-esp.ru') ! SandBox ЕСМ
Ну а ЛМ, единый и применяется и для целей тестирования и для работы

Так?

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 25 Февраль 2026, 19:46
Игорь Столяров
SergioRaguzini писал(а): 25 Февраль 2026, 19:37Так?
Всё абсолютно верно. Только ПО ЛМ устанавливайте пока версии 1.5.2 (потому что 2.1.0 я увидел 5 минут назад).
ПО ЛМ - это справочное приложение, с опциональной возможностью вести список проданных КИ (не путать с КМ !) для контроля.
Т.е. от того, что Вы 100 раз запросите валидность какого-нибудь КМ, сформируете список проданных КИ и потом всё это несколько
раз удалите, переставите и снова проинициализируете ПО ЛМ - в мире ничего не измениться. 😎

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 25 Февраль 2026, 19:47
SergioRaguzini
Игорь Столяров писал(а): 25 Февраль 2026, 19:46 Всё абсолютно верно. Только ПО ЛМ устанавливайте пока версии 1.5.2 (потому что 2.1.0 я увидел 5 минут назад).
Спасибо! :ty:

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 25 Февраль 2026, 19:56
Игорь Столяров
Пожалуйста !
Я вот смотрю на все эти бесконечные обновления ЦРПТ с прыжками на месте и закрывание костылями косяков
и у меня возникает стойкое ощущение, что действительно, скоро с маркировкой смогут работать только там,
где есть большие IT отделы и специально выделенные для этого ботаны. Всё к тому и идёт. 🤷‍♀️

sekret-fokusa.jpg

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 26 Февраль 2026, 11:21
SergioRaguzini
Приветствую!
Игорь Столяров писал(а): 11 Февраль 2026, 18:43 ...
Самый проблемный 18 сценарий - нужно пробить марку, создать реальный чек и показать заполнение тегов в ОФД. ...
Получается, для того, чтобы продемонстрировать, при сертификации, требуемый функционал, необходимо подключить ККМ (например, "АТОЛ") и показать из ОФД аттрибуты чека?
Атоловские прошивка 5.17 и драйвер 10.10.8.0 подходят?

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 26 Февраль 2026, 11:40
Игорь Столяров
SergioRaguzini писал(а): 26 Февраль 2026, 11:21 Атоловские прошивка 5.17 и драйвер 10.10.8.0 подходят?
Подходит любой драйвер ККТ и прошивка работающая с маркировкой.
Как я понимаю, можно продемонстрировать чек и его теги с данными КМ записанный в ФН (в драйвере это есть).
Мы показывали распечатанный чек в тестовом кабинете Такском - это полностью устроило и никаких проблем не вызвало.

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 26 Февраль 2026, 14:01
finsoftrz
А никого не смутил вид маркировки для НСП (в 26 тесте)? Раньше маркировка (у других товарных групп) была структурирована, имела префикс, а здесь прямо с gtin начинается. Получается, что надо отдельный тип товаров со своими правилами формирования маркировки для НСП определять, что не очень хотелось бы...

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 26 Февраль 2026, 14:31
Игорь Столяров
finsoftrz писал(а): 26 Февраль 2026, 14:01 Раньше маркировка (у других товарных групп) была структурирована
Это тот же самый формат, что и в сценариях 10, 11 и 12.
И по той же самой причине: НСП - это штучная табачка с длиной КМ в 29 символов.
Я публиковал в этой ветке ссылку на статью АТОЛ с описание контроля цен, в т.ч. и НСП. 🤷‍♀️

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 26 Февраль 2026, 14:36
SergioRaguzini

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 26 Февраль 2026, 15:09
finsoftrz
Игорь Столяров писал(а): 26 Февраль 2026, 14:31
finsoftrz писал(а): 26 Февраль 2026, 14:01 Раньше маркировка (у других товарных групп) была структурирована
Это тот же самый формат, что и в сценариях 10, 11 и 12.
И по той же самой причине: НСП - это штучная табачка с длиной КМ в 29 символов.
Я публиковал в этой ветке ссылку на статью АТОЛ с описание контроля цен, в т.ч. и НСП. 🤷‍♀️
У меня затык был, программа не знала, что еан может начинаться с нуля. :sur:
НСП и табачные отличаются по маркировке. У НСП в маркировке отсутствует мрц, как есть у табачных. А по минимальным розничным ценам, на НСП хотят с 01.03.26 ввести ограничения, но не емц, а разные на отдельные подгруппы, не на штуки, а на граммы. Весело будет.

Игорь, а какой у Вас результат возвращается по 26 тесту? Вы написали про ошибки в описании, но не совсем понял итог. Возвращается максимальная розничная цена. По логике мы или запрещаем продажу, или продаем по мрц, в зависимости от настройки программы.

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 26 Февраль 2026, 15:36
Игорь Столяров
finsoftrz писал(а): 26 Февраль 2026, 15:09 У меня затык был, программа не знала, что еан может начинаться с нуля
Запросто ! :D Первые 14 цифр - это GTIN и никто не ограничивает его содержание.
finsoftrz писал(а): 26 Февраль 2026, 15:09 У НСП в маркировке отсутствует мрц, как есть у табачных.
Рекомендую придерживаться терминологии ЦРПТ, там и так уже всё запутано.
Для табачки возвращается МРЦ и ЕМЦ, а для НСП только МЦ в том же теге, что МРЦ для табачки. ХЗ зачем они так.
finsoftrz писал(а): 26 Февраль 2026, 15:09 а разные на отдельные подгруппы, не на штуки, а на граммы
Неправильно. Там всё намного проще. Но давайте сейчас не будем про это.
finsoftrz писал(а): 26 Февраль 2026, 15:09 По логике мы или запрещаем продажу, или продаем по мрц,
Да, абсолютно верно. Только для НСП минимально-допустимая цена - это МЦ ! :D
А итог вот такой. Снимок из сабжа для сценария 26:

1.jpg

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 26 Февраль 2026, 16:08
finsoftrz
В одном теге возвращается мрц (максимальная розничная цена) для табачных и мц (минимально допустимая цена) для никотиносодержащих. Путаница какая-то. Вообще говоря, насколько я знаю, сейчас не предусмотрены минимальные цены на никотиносодержащие, их только хотят ввести со следующего месяца.
Выглядит как ошибка в макете. Получается, надо делать костыль и проверять groupIds=16 на предмет НСП...

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 26 Февраль 2026, 16:23
Игорь Столяров
finsoftrz писал(а): 26 Февраль 2026, 16:08 Получается, надо делать костыль и проверять groupIds=16 на предмет НСП
Абсолютно верно ! Жертвы ЕГЭ и бакалавриата уже вышли на работу ... :D
Таково описание и это подтверждается результатами запросов:

1.jpg

Я бы рекомендовал и для МРЦ / ЕМЦ табачки тоже проверять товарную группу - поскольку шоу только начнинается ... :D

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 26 Февраль 2026, 16:29
finsoftrz
Башка от всего этого уже пухнет, пора в отпуск. :D

Класс для API ГСЦМ «Честный ЗНАК» / ТС ПИоТ

Добавлено: 26 Февраль 2026, 16:35
finsoftrz
Игорь Столяров писал(а): 26 Февраль 2026, 16:23 Я бы рекомендовал и для МРЦ / ЕМЦ табачки тоже проверять товарную группу - поскольку шоу только начнинается ... :D
Причем обратите внимание, продажи не в диапазоне цен сами не блокируют, а хотят ввести автоматические штрафы, как в ГИБДД. Я уж молчу про больную голову, которая решила зачем-то цены таким способом регулировать... Скоро, действительно, все, кроме федералов, закроются.