Проблема оперативной передачи данных о товарах в ассоциацию ГС1 РУС (GS1 Russia) является критически важной для производителей и импортеров, сталкивающихся с обязательной маркировкой «Честный Знак». Ручной ввод сотен и тысяч позиций в личном кабинете ГС1 — процесс трудоемкий и чреватый ошибками. В данной статье мы подробно разберем, как организовать взаимодействие между вашей базой 1С и порталом ГС1, рассмотрим доступные инструменты автоматизации и проанализируем различные подходы к решению этой задачи. При отсутствии возможности прямой интеграции для имитации действий пользователя и переноса данных на веб-страницы можно настроить программных роботов на платформе One RPA.
В современных конфигурациях 1С, таких как 1С:ERP, 1С:Комплексная автоматизация или 1С:Управление торговлей 11, реализована тесная интеграция с системой «Честный Знак» (ГИС МТ). Важно понимать, что прямой обмен с ГС1 РУС зачастую заменяется обменом через подсистему «Национальный каталог». Для подготовки данных можно использовать обработку для создания технических карт для Национального каталога.
Проанализируем этот путь подробнее. Данные, отправленные в Национальный каталог, автоматически синхронизируются с базой ГС1 РУС. Для этого в 1С предусмотрено рабочее место «Подготовка сведений в Национальный каталог». Разберем алгоритм действий:
Этот способ является наиболее предпочтительным, так как он исключает необходимость использования сторонних модулей и промежуточных файлов.
Если ваша конфигурация 1С не поддерживает прямой обмен с Национальным каталогом или вам требуется специфическая выгрузка именно в интерфейс ГС1 РУС, рассмотрим вариант с использованием промежуточных файлов. Это классический метод, который упоминается опытными пользователями на форумах.
В личном кабинете ГС1 РУС доступны шаблоны в формате .xls или .xlsx. Рассмотрим, как автоматизировать этот процесс со стороны 1С. Мы можем написать простую обработку, которая будет собирать данные из справочника Номенклатура и дополнительных реквизитов, а затем сохранять их в файл нужной структуры.
Посмотрим на пример логики формирования структуры файла:
Процедура ВыгрузитьВExcel(ПутьКФайлу)
ExcelПриложение = Новый COMОбъект("Excel.Application");
Книга = ExcelПриложение.Workbooks.Add();
Лист = Книга.Worksheets(1);
// Заполняем шапку согласно шаблону GS1
Лист.Cells(1, 1).Value = "Наименование товара";
Лист.Cells(1, 2).Value = "ТН ВЭД";
Лист.Cells(1, 3).Value = "Торговая марка";
Выборка = Справочники.Номенклатура.Выбрать();
Строка = 2;
Пока Выборка.Следующий() Цикл
Лист.Cells(Строка, 1).Value = Выборка.НаименованиеПолное;
Лист.Cells(Строка, 2).Value = Выборка.КодТНВЭД;
// ... заполнение остальных полей
Строка = Строка + 1;
КонецЦикла;
Книга.SaveAs(ПутьКФайлу);
ExcelПриложение.Quit();
КонецПроцедуры
После формирования файла его необходимо загрузить в личном кабинете ГС1 РУС. Техподдержка ГС1 часто предоставляет расширенные шаблоны с большим количеством полей, поэтому перед разработкой выгрузки обязательно запросите актуальный файл у вашего менеджера.
Для крупных производственных компаний ручной импорт файлов может быть неприемлем. В этом случае проанализируем возможность использования программного интерфейса. У ГС1 РУС существует API, позволяющее регистрировать карточки товаров и получать GTIN напрямую из кода 1С.
Выясним технические требования. Ранее ГС1 активно использовала протокол SOAP, но современные требования склоняются к использованию REST API. Для работы вам потребуется:
Рассмотрим фрагмент кода для выполнения HTTP-запроса к API ГС1 (схематично):
Функция ОтправитьДанныеВГС1(ДанныеТовара)
Соединение = Новый HTTPСоединение("api.gs1ru.org", 443, , , , , Новый ЗащищенноеСоединениеOpenSSL());
Запрос = Новый HTTPЗапрос("/v1/products");
Запрос.Заголовки.Вставить("Authorization", "Bearer " + ТокенДоступа);
Запрос.Заголовки.Вставить("Content-Type", "application/json");
ТекстЗапроса = СформироватьJSON(ДанныеТовара);
Запрос.УстановитьТелоИзСтроки(ТекстЗапроса);
Ответ = Соединение.ОтправитьДляОбработки(Запрос);
Если Ответ.КодСостояния = 200 Тогда
Возврат Ответ.ПолучитьТелоКакСтроку();
КонецЕсли;
КонецФункции
Важный момент: использование API требует оплаты ежегодного членского взноса в ГС1 РУС. Для участников системы маркировки действует льготный тариф (около 3000 рублей в год).
При любой схеме автоматизации — будь то Excel или API — нам необходимо обеспечить корректность передаваемых данных. Разберем по шагам, какие константы должны быть настроены в 1С:
1. GLN (Global Location Number) — это 13-значный код вашей организации. Без него невозможно идентифицировать владельца ресурса в международной системе. Рекомендуем создать в 1С дополнительный реквизит для справочника Организации или использовать стандартное поле в настройках обмена с ИС МП.
2. GPC (Global Product Classification) — международный классификатор товаров. Каждая карточка в ГС1 должна быть привязана к коду GPC. В 1С это удобно реализовать через сопоставление Групп номенклатуры или Категорий с кодами классификатора.
Проанализируем ситуацию, возникающую после передачи данных. Даже если данные успешно попали в ГС1 РУС и товару присвоен GTIN, для использования этого кода в системе «Честный Знак» карточка товара должна быть опубликована и подписана УКЭП (усиленной квалифицированной электронной подписью).
В современных типовых решениях 1С механизм подписания встроен в рабочее место работы с Национальным каталогом. Если же вы используете сторонние модули или самописные выгрузки, убедитесь, что ваш процесс автоматизации заканчивается проверкой статуса публикации. Пока карточка находится в статусе «Черновик», заказать коды маркировки для этого GTIN не удастся.
Подводя итог, выделим три основных сценария интеграции 1С и ГС1 РУС:
Выясним причину возможных ошибок: чаще всего они связаны с незаполненными обязательными атрибутами (ТН ВЭД, торговая марка, характеристики материала). Поэтому перед началом автоматизации убедитесь, что в вашей Номенклатуре наведен порядок, а все необходимые свойства вынесены в дополнительные реквизиты. Для быстрого переноса значений подойдёт инструмент для загрузки дополнительных реквизитов номенклатуры из файлов данных.