Решение для Честного Знака: Массовый вывод кодов маркировки и упрощенная работа с ЭЦП

28.05.25

Интеграция - Обмен с ГосИС

Представляем специализированное программное обеспечение для Честного Знака, которое упрощает процесс получения данных о документах и кодах маркировки, а также позволяет управлять массовым выводом КМ из оборота. В основе решения лежит Python-приложение и C#-компонента, которая обеспечивает работу с электронной подписью, предлагая универсальный инструмент для авторизации и подписания документов, применимый в различных информационных системах, включая 1С.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Исполняемый файл Python-программы (.exe) со всеми необходимыми компонентами. ChZnak_MarkingData_Processor.zip
.zip 61,74Mb
3 4 550 руб. Купить
C#-компонент отвечает за взаимодействие с ЭЦП и криптографические операции. ChZnak_AuthSign_Component.zip
.zip 63,06Mb
2 4 550 руб. Купить
Пример 1С-обработки
.zip 6,42Kb
2 4 550 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Данное Python-приложение предназначено для работы с системой Честный Знак, обеспечивая функционал по получению отчетных данных о документах и кодов маркировки, а также по формированию и отправке документов массового вывода из оборота.

 

Интерфейс для просмотра документов в Честном Знаке.

 

Актуальность решения

 

В процессе оборота маркированной продукции пользователи сталкиваются с ситуациями, когда коды маркировки (КМ) остаются в статусе "в обороте". Это может происходить по причинам, не связанным с фактической реализацией или использованием, например, из-за ошибочных универсальных передаточных документов (УПД). Однако, коды также могут "зависать" и быть связанными с фактической реализацией, когда товар был продан конечному потребителю, но по различным причинам (например, отсутствие интеграции с Честным Знаком у покупателя, технические сложности или отсутствие необходимого программного обеспечения на момент продажи) вывод из оборота не был осуществлен своевременно. Стандартные методы вывода таких КМ из оборота могут быть трудоемкими и требовать значительных временных затрат.

Предлагаемое решение обеспечивает возможность массового вывода из оборота КМ, идентифицированных по конкретным документам (например, УПД) и за определенный период. Это позволяет оперативно и корректно списывать КМ, находящиеся в "зависшем" статусе, минимизируя временные издержки на их обработку.

 

"Информация о кодах маркировки и функция фильтрации по статусу."

 

Функциональные возможности

 

  • Получение списка документов из Честного Знака: Предоставляется возможность фильтрации документов по периоду, типу, товарной группе.

  • Автоматическое извлечение кодов маркировки из содержимого документов: Приложение анализирует XML- и JSON-содержимое документов (УПД, чеков и др.) для автоматического выделения связанных КМ. Данная функция позволяет получать КМ, непосредственно связанные с конкретными входящими или исходящими документами.

  • Получение детальной информации о КМ: Осуществляется загрузка актуальных статусов и полной информации для каждого идентифицированного кода маркировки из API Честного Знака.

  • Загрузка остатков кодов маркировки в обороте: Для получения всех кодов маркировки, которые числятся на остатках вашей организации по выбранным товарным группам, используйте кнопку "Загрузить остатки КМ в обороте" (расположена на вкладке "Коды маркировки" слева от кнопки "Выгрузить КМ в CSV"). При нажатии на эту кнопку в таблицу загружаются актуальные на текущую дату остатки КМ по выбранным группам.  Обратите внимание: при загрузке остатков через этот способ некоторые поля (например, наименование товара, код ТН ВЭД, вид оборота, состояние кода и др.) могут быть не заполнены — это связано с особенностями работы API Честного Знака. В таблице будут только те данные, которые возвращает сервис остатков. Для получения более подробной информации по каждому коду (например, наименования и других характеристик) используйте загрузку КМ через документы.

     

  • Фильтрация и анализ КМ: Реализована функция фильтрации КМ по их статусам (например, "В обороте", "Выбыл", "Заблокирован") через специализированный диалог.

  • Массовый вывод КМ из оборота:

    • Особенность: Поддерживается вывод из оборота КМ, полученных по документам за указанный период, что является инструментом для работы с "зависшими" кодами.

    • Автоматизация формирования документов: Программа формирует необходимые документы вывода из оборота в формате JSON.

    • Параметризация причин вывода: Предусмотрен выбор причины вывода из оборота (розничная продажа, госконтракт, экспорт и др.) с возможностью заполнения соответствующих полей (FIAS ID, ID контракта, код страны, описание).

    • Разбиение на транши: Реализовано автоматическое разбиение больших объемов КМ на несколько документов для отправки, с учетом лимитов API Честного Знака.

  • Экспорт данных: Предусмотрена функция выгрузки списка кодов маркировки в формат CSV для последующего анализа или учета.

  • Система логирования: Все операции приложения, включая запросы и ответы API, а также системные сообщения и ошибки, отображаются в реальном времени на отдельной вкладке "Логи".

 

 

"Диалог вывода из оборота с автоматической группировкой по товарным группам."

 

Технические подробности и интеграция (для специалистов)

Архитектура решения:

Решение состоит из двух компонентов:

  1. Основная программа на Python (PySide6):

    • Графический интерфейс: Реализован на базе PySide6.

    • Взаимодействие с API Честного Знака: Осуществляет отправку HTTP-запросов к API Честного Знака.

    • Парсинг документов: Анализирует XML- и JSON-содержимое документов для извлечения кодов маркировки.

    • Многопоточность: Использует асинхронную загрузку содержимого документов и информации по КМ, предотвращая зависание UI.

    • Управление данными: Обеспечивает эффективное отображение и обновление табличных данных.

    • Настройки и логирование: Включает интегрированную систему логирования для вывода информации в UI и на диск, а также менеджер настроек.

  2. Отдельный компонент на C# (ChZnakAuth.exe):

    • Авторизация и Электронная Подпись (ЭЦП): Данный компонент отвечает за криптографические операции при взаимодействии с Честным Знаком. Он использует нативные возможности C# для работы с системными криптопровайдерами (например, КриптоПро CSP) с целью:

      • Получения токена авторизации API (подпись "челленджа" или формирование JWT-токена).

      • Выполнения квалифицированной электронной подписи (КЭП) формируемых документов вывода из оборота.

    • Межпроцессное взаимодействие: Python-программа вызывает ChZnakAuth.exe посредством subprocess, передавая необходимые параметры (ИНН, ID сертификата, пин-код, данные для подписи) и получая результат (токен, подписанные данные) через стандартный вывод или временные файлы.

    • Обоснование разделения: Использование C# обеспечивает прямой доступ к российской криптографии и изолирует данный функционал от основной логики Python-приложения.

Схема взаимодействия:

  1. Пользователь вводит данные в GUI Python-приложения.

  2. Python-приложение инициирует вызов ChZnakAuth.exe для получения токена авторизации (на старте или по запросу).

  3. Python-приложение использует полученный токен для выполнения запросов к API Честного Знака (получение документов, информации по КМ).

  4. При необходимости вывода КМ из оборота, Python-приложение формирует документ в формате JSON.

  5. Python-приложение вызывает ChZnakAuth.exe для подписания сформированного JSON-документа.

  6. ChZnakAuth.exe возвращает подписанный документ.

  7. Python-приложение отправляет подписанный документ на API Честного Знака.

Системные требования и особенности развертывания:

  • Операционная система: Windows 10 или новее.

  • Криптографическое ПО: Установленный КриптоПро CSP версии 5.x.

  • Электронная подпись: Наличие действующего сертификата электронной подписи (ЭЦП) для работы с Честным Знаком. Рекомендуется запускать программу с правами пользователя, имеющего доступ к сертификату ЭЦП.

  • Подключение к Интернету: Для корректной работы требуется стабильное интернет-соединение.

  • Автономность: Все исполняемые .exe файлы содержат полный набор необходимых компонентов, что не требует дополнительных установок, кроме КриптоПро CSP. Программа готова к работе сразу после распаковки.

Самостоятельное использование C#-компонента (ChZnakAuth.exe)

Компонент ChZnakAuth.exe представляет собой отдельную утилиту, способную выполнять криптографические операции (авторизацию и подписание) независимо от основного Python-приложения. Это позволяет интегрировать функционал работы с ЭЦП Честного Знака в любые другие приложения (например, 1С, собственные скрипты или системы), где требуется получение токена или подписание документов.

 

 
 Основные команды и примеры использования из командной строки:

 

Ценность самостоятельного использования:

Данный компонент значительно упрощает интеграцию с Честным Знаком для сторонних систем, которым требуется работа с ЭЦП. Разработчикам не нужно самостоятельно реализовывать сложные криптографические операции и взаимодействие с КриптоПро CSP, достаточно вызывать ChZnakAuth.exe с необходимыми параметрами и парсить его JSON-вывод. Это делает процесс авторизации и подписания документов универсальным и доступным для различных программных сред, включая 1С, PowerShell скрипты, другие языки программирования и консольные утилиты.

Данное приложение является специализированным инструментом, предназначенным для автоматизации рутинных операций с системой Честный Знак и обеспечения контроля над маркированными товарами, в частности, над "зависшими" остатками.

 

Состав публикации и файлы для скачивания

В данной публикации доступны для скачивания три отдельных архива, каждый из которых представляет собой самостоятельный или вспомогательный компонент решения:

  1. Основная программа (ChZnak_MarkingData_Processor.zip):

    • Архив содержит исполняемый файл Python-программы (.exe) со всеми необходимыми компонентами, а также файл помощи (help_usage.txt). Важно: данный архив НЕ включает C#-компоненту ChZnakAuth.exe. Без этой компоненты функциональность основной программы будет ограничена: автоматическое получение токена авторизации и подписание документов будут недоступны, токен потребуется вводить вручную. Для полноценной работы программы необходимо также скачать и разместить ChZnakAuth.exe в той же папке, что и основное приложение.

  2. C#-компонента (ChZnak_AuthSign_Component.zip):

    • Архив включает только исполняемый файл ChZnakAuth.exe. Этот компонент отвечает за взаимодействие с ЭЦП и криптографические операции (авторизация и подпись данных) для API Честного Знака. Его можно использовать как автономную утилиту для интеграции в любые внешние системы, включая 1С.

  3. Пример 1С-обработки (ChZnak_1C_AuthExample.epf):

    • Отдельный файл внешней обработки для 1С:Предприятия. Демонстрирует пример программного вызова C#-компоненты ChZnakAuth.exe из среды 1С для получения токена авторизации. Это наглядное пособие для разработчиков, желающих интегрировать функционал работы с ЭЦП Честного Знака в свои 1С-решения.

 

Важное примечание

Настоящее программное обеспечение разработано для внутренних нужд предприятия. В связи с этим, официальная техническая поддержка, гарантии и возможность возврата не предусмотрены.

Программа прошла тестирование на определенных конфигурациях и товарных группах, однако, в силу специфики взаимодействия с API Честного Знака и разнообразия пользовательских сценариев, возможны незначительные задержки в работе интерфейса ("подлагивания") или неполное отображение данных при первом запросе. Рекомендуется внимательно отслеживать информацию на вкладке "Логи" и при необходимости повторять операции для достижения желаемого результата.

Проверено на следующих конфигурациях и релизах:

  • 1С:ERP Управление предприятием 2, релизы 2.5.21.128

Вступайте в нашу телеграмм-группу Инфостарт

Честный Знак маркировка коды маркировки КМ вывод из оборота ЭЦП электронная подпись авторизация API Python C# КриптоПро интеграция автоматизация обработка документов массовый вывод зависшие КМ.

См. также

Обмен с ГосИС Бюджетный учет Регламентированный учет и отчетность Бухгалтер Пользователь 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление холдингом Химическая промышленность Государственные, бюджетные структуры Электротехника и микроэлектроника Машиностроение и приборостроение Металлургическая промышленность Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Автоматизация раздельного учета в 1С:Бухгалтерии по ГОЗ в соответствии с 275-ФЗ. Готовое решение для учета госконтрактов, формирования отчетности и контроля исполнения. Поддержка военной приемки, НИОКР и требований Минпромторга. Профессиональный консалтинг и регулярные обновления продукта

30000 руб.

28.08.2020    457556    2860    140    

1186

Обмен с ГосИС Программист 1С v8.3 1C:Бухгалтерия Оптовая торговля, дистрибуция, логистика Россия Управленческий учет Платные (руб)

Универсальная конфигурация ХамелеонЗерно для взаимодействия с системой ФГИС Зерно (тестовый+рабочий контур) может использоваться для интеграции в любую конфигурацию на базе 1С, версии ПРОФ и выше. Работа через API 1.0.7 и на API 1.0.8. Для удобства реализован общий интерфейс в виде обработки, схожей с интерфейсом ФГИС Зерно, но возможностей гораздо больше, т.к. при интеграции в Вашу учетную систему, можно на основании Ваших справочников и документов, создавать соответствующие документы и справочники в системе ФГИС Зерно и наоборот.

22800 руб.

27.06.2023    6205    37    2    

20

Оптовая торговля Розничная торговля Обмен с ГосИС Бухгалтер 1С v8.3 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Россия Бухгалтерский учет Управленческий учет Акцизы Платные (руб)

Автоматизация учета ЕГАИС в 1С для оптовой торговли, производства и импорта алкогольной продукции. Получение и отправка ТТН, отправка акта о постановке на баланс и акта о списании. Получение остатков. Загрузка и сопоставление номенклатуры и контрагентов. Оправка в ЕГАИС отчетов о производстве и импорте.

8970 руб.

15.12.2015    176727    1152    374    

412

Бюджетный учет Обмен с ГосИС Бухгалтер 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Государственные, бюджетные структуры Россия Бухгалтерский учет Платные (руб)

Доработка конфигурации 1С:Бухгалтерия предприятия, редакция 3.0. реализована в виде расширения. Предназначена для ведения раздельного учета и автоматизации заполнения отчетности исполнения контрактов ГОЗ в конфигурациях 1С БП КОРП, ПРОФ, Базовая, БИТ.ФИНАНС.

55200 руб.

16.08.2019    97653    272    91    

161

Обмен с ГосИС Бухгалтер 1С v8.3 Бухгалтерский учет 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Комплексная автоматизация 2.х Россия Бухгалтерский учет Платные (руб)

Обработка для обмена платежными документами в формате xml для системы Федерального казначейства "Электронный бюджет" из конфигураций 1С. Поставляется для БП 3.0 Работа только с контрагентами. Сайт "Электронного Бюджета": https://www.budget.gov.ru/

19200 руб.

14.10.2020    69140    403    105    

340

Обмен с ГосИС Бухгалтер Пользователь 8.3.14 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Ювелирная промышленность и торговля Россия Управленческий учет Платные (руб)

Интеграция для работы 1С с ГИИС ДМДК. Государственная интегрированная информационная система в сфере контроля за оборотом драгоценных металлов, драгоценных камней и изделий из них на всех этапах этого оборота.

65000 руб.

12.04.2022    22318    176    34    

43

Оптовая торговля Розничная торговля Обмен с ГосИС Программист Бухгалтер Пользователь 1С v8.3 Управляемые формы 1C:Бухгалтерия Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Россия Бухгалтерский учет Управленческий учет Платные (руб)

Решение создано для помощи разработчикам, интеграторам и другим заинтересованным лицам по настройке системы маркировки обуви, одежды, лекарств, табака, фото, молока, духов(парфюма), питьевой воды, велосипедов и шин. Задавайте вопросы по работе с ЦРПТ, GS1, ЭДО, Национальным каталогом, накоплен опыт и знания по данным темам.

24000 руб.

18.03.2019    116039    36    115    

186
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Tarlich 119 29.05.25 06:20 Сейчас в теме
Я правильно понимаю что если магазин закрылся то с помощью ЭТОГО решения можно сразу массово все вывести ?
2. Prepod2003 275 29.05.25 11:00 Сейчас в теме
3. cam180 14.06.25 22:31 Сейчас в теме
Здравствуйте. В типовой ИС МП 1С нет возможности выполнять действия по трансформации логистического кода. Расформирование, добавление, изъятие. Подскажите, с помощью компоненты возможно реализовать эти механизмы в 1С?
4. Prepod2003 275 18.06.25 16:22 Сейчас в теме
(3)
Здравствуйте. В типовой ИС МП 1С нет возможности выполнять действия по трансформации логистического кода. Расформирование, добавление, изъятие. Подскажите, с помощью компоненты возможно реализовать эти механизмы в 1С?

Здравствуйте!
Постараюсь ответить подробнее, чтобы прояснить возможности компоненты.
Компонента ChZnakAuth.exe разработана для решения наиболее сложных технических аспектов взаимодействия с API Честного Знака — а именно, авторизации и работы с электронной подписью (ЭЦП).
Она предоставляет следующие ключевые функции, которые могут быть вызваны из 1С или любого другого приложения:
Получение токена авторизации: Компонента самостоятельно выполняет все криптографические операции для получения актуального токена доступа к API Честного Знака. Это избавляет 1С от необходимости напрямую работать с сертификатами и криптопровайдером для авторизации.
Подписание произвольных данных (документов): Компонента позволяет подписать любые подготовленные данные (например, JSON-документ для API Честного Знака) вашей электронной подписью.
Применительно к трансформации логистического кода (расформирование, добавление, изъятие):
Сама ChZnakAuth.exe не содержит встроенной логики для формирования документов расформирования или агрегации. Это функционал, который регулируется требованиями API Честного Знака и спецификой ваших бизнес-процессов.
Однако, имея ChZnakAuth.exe, вы сможете легко реализовать следующие шаги в 1С:
На стороне 1С: Вам нужно будет запрограммировать формирование структуры данных (документа) для операции расформирования, добавления или изъятия, согласно форматам, описанным в документации API Честного Знака.
Через ChZnakAuth.exe: После того как документ будет сформирован в 1С, вы вызываете нашу компоненту, чтобы подписать этот документ вашей ЭЦП.
Из 1С: Подписанный документ затем отправляется на соответствующий API-метод Честного Знака средствами 1С (например, через HTTP-запросы).
Таким образом, компонента устраняет барьер в работе с ЭЦП и авторизацией, который является наиболее трудоемким при интеграции. Она позволяет сосредоточиться на бизнес-логике формирования документов в 1С, не тратя время на низкоуровневую работу с криптографией. Это значительно упрощает и ускоряет разработку подобных механизмов в 1С.
5. cam180 19.06.25 20:25 Сейчас в теме
(4)
Спасибо за развернутый ответ. Логику использования понял.

Позвольте еще один вопрос.
Поддерживается использование методов компоненты ChZnakAuth.exe серверными вызовами? Без клиентской части. Клиент-Серверная архитектура.

К примеру: регламентным заданием мы вызываем процедуру, которая обрабатывает очередь сообщений адресованных к отправке в Честный знак методами API. Подписывает с помощью компоненты, отправляет.

Такой сценарий может быть использован?
Есть в примерах что то похожее для 1С?

Меня интересует практическая сторона использования в среде 1С.
Спасибо.
6. Prepod2003 275 19.06.25 21:06 Сейчас в теме
(5)
Спасибо за развернутый ответ. Логику использования понял.

Позвольте еще один вопрос.
Поддерживается использование методов Компонента ChZnakAuth.exe серверными вызовами? Без клиентской части.

К примеру: регламентным заданием мы вызываем процедуру, которая обрабатывает очередь сообщений адресованных к отправке в Честный знак методами API. Подписывает с помощью компоненты, отправляет.

Такой сценарий может быть использован?
Есть в примерах что то похожее для 1С?

Меня интересует практическая сторона использования в среде 1С.
Спасибо.


По вопросу о серверном использовании компоненты ChZnakAuth.exe в регламентных заданиях 1С:
В моей 1С-обработке-примере используется следующий код:

КомандаДляCMD = Символ(34) + ПутьКExe + Символ(34) + " " + КомандаИПараметры + " > " + Символ(34) + ИмяВременногоФайлаОтвета + Символ(34);
КоманднаяСтрокаДляЗапуска = "cmd.exe /C " + Символ(34) + КомандаДляCMD + Символ(34);
// Запускаем внешнее приложение и ждем его завершения
КодВозврата = "";
ЗапуститьПриложение(КоманднаяСтрокаДляЗапуска,,Истина , КодВозврата);

это гарантированно работает на клиентской стороне. Я проверял на нем получение токена, и этот сценарий полностью функционален.
Однако, возможность использования ЗапуститьПриложение на сервере 1С, тем более в контексте регламентного задания, мною не тестировалась. Более того, исходя из общих принципов работы платформы 1С:Предприятие и политик безопасности серверных процессов, вероятнее всего, такой подход не сработает напрямую и может вызвать исключение.
При серверном использовании также стоит учитывать, что интерактивный выбор сертификата командой select_cert не будет доступен. Необходимо будет передавать отпечаток сертификата напрямую в методы get_token или sign_data.
Как именно использовать эту компоненту в серверном режиме 1С, требует дополнительного изучения и подходов, специфичных для серверной разработки в среде 1С. В данный момент я не готов предоставить проверенные примеры или методику для этого сценария. Тем не менее, я уверен, что каким-то образом эту задачу можно решить, просто нужно дополнительно изучить и продумать возможные варианты реализации.
В крайнем случае, поскольку исходные коды компоненты ChZnakAuth.exe имеются в наличии, её можно адаптировать или переписать под конкретную задачу заказчика. Я открыт к обсуждению и могу рассмотреть возможность предоставления исходников или доработки компоненты под ваши нужды.
7. user2120569 06.08.25 21:17 Сейчас в теме
Добрый день!
Основная программа (ChZnak_MarkingData_Processor.zip) без криптокомпоненты позволяет получать актуальный список всех кодов маркировки с фильтрацией по товарной группе? Вы тестировали как работает программа при запросе более 1 млн. кодов?
8. user1145574 20.08.25 06:33 Сейчас в теме
бесполезная программа, отчистки логов нету, сброс группы нету, к примеру был выбор по Пиво, а потом установил на Воду , документ отображается как пивной но данные в нём от воды, очень странно всё работает и половина не работает!
Для отправки сообщения требуется регистрация/авторизация