При интеграции систем 1С с государственной информационной системой маркировки товаров (ГИС МТ) одним из критически важных этапов является отладка взаимодействия в тестовой среде (песочнице). Станция управления заказами (СУЗ) отвечает за генерацию кодов маркировки, и её правильная настройка в демо-контуре позволяет избежать ошибок на «боевой» базе. В данной статье мы подробно разберем, какие адреса и порты актуальны для тестового контура СУЗ ИС МП, как правильно сформировать запрос и на что обратить внимание при возникновении ошибок связи. При необходимости можно воспользоваться практическим сборником решений по настройке интеграции 1С с Честным Знаком.
Разберем ситуацию, когда стандартный адрес боевого контура suz2.crpt.ru не подходит для тестирования. Для работы в «Песочнице» (тестовой среде) ЦРПТ выделяет отдельные эндпоинты. На текущий момент наиболее актуальными являются следующие данные:
https://suz.sandbox.crpt.ru.https://demo.lp.crpt.tech/suz-api/.intuot.crpt.ru.Важно обратить внимание на порт подключения. В современной архитектуре Честного Знака для всех внешних соединений используется стандартный порт протокола HTTPS — 443. Если в настройках вашей конфигурации 1С или в параметрах HTTP-соединения требуется указать порт, используйте 443. Специфические порты, такие как 12011 или 21011, которые упоминаются в старых руководствах, в большинстве случаев больше не требуются, так как маршрутизация происходит на уровне URL-путей.
Проанализируем структуру параметров, которые необходимы для успешного обращения к СУЗ. Одной из самых частых причин отказа в доступе (ошибка 401 или 503) является использование идентификаторов из промышленного контура в тестовом. Выясним, где получить корректные данные:
OMS ID (Идентификатор СУЗ) — это уникальный код вашей станции управления заказами. Чтобы его получить в демо-контуре, выполните следующие шаги:
omsId.API-токен СУЗ — это статический ключ для авторизации запросов. В отличие от динамических токенов ГИС МТ, этот токен берется в настройках профиля СУЗ в личном кабинете тестового контура. Помните, что для СУЗ используется заголовок X-OMS-Token.
Рассмотрим пример формирования строки запроса к API для проверки доступности станции (метод ping):
// Пример формирования URL для метода ping
// Адрес сервера: suz.sandbox.crpt.ru
// OMS ID: 336bb15e-401d-408a-98fb-7dc9812e189
// Формат запроса: https://{адрес}/api/v2/light/ping?omsId={omsId}
ПутьКРесурсу = "api/v2/light/ping?omsId=336bb15e-401d-408a-98fb-7dc9812e189";
В процессе обсуждения часто возникает вопрос использования префикса /light/ в URL. Разберем ситуацию подробнее. Префикс light используется для упрощенного API, которое охватывает такие товарные группы, как обувь, одежда, парфюмерия, шины и фототовары. Если вы работаете с одеждой (как в рассматриваемом примере), использование /light/ оправдано, однако современным стандартом считается использование универсальных методов v2 или v3 без жесткой привязки к «лайт» версии, если это поддерживает ваша конфигурация 1С.
Если вы получаете ошибку при запросе, попробуйте проанализировать структуру URL. Для разных товарных групп в тестовом контуре структура может незначительно отличаться, но базовый адрес сервера остается неизменным. Для анализа логов и сообщений обмена при возникновении ошибок подойдёт обработка для поиска по протоколу обмена с ИС МП.
Ошибка 503 является одной из самых «коварных», так как официально она означает недоступность сервиса. Однако в контексте СУЗ ИС МП она часто указывает на следующие проблемы:
Рассмотрим, как правильно внести данные в базу 1С (на примере типовых конфигураций, таких как УТ 11, ERP или КА 2):
suz.sandbox.crpt.ru (без протокола https://, если программа сама его добавляет).Посмотрим на пример кода, который можно использовать во внешней обработке для быстрой проверки связи с СУЗ программным способом:
Соединение = Новый HTTPСоединение("suz.sandbox.crpt.ru", 443,,,,, Новый ЗащищенноеСоединениеOpenSSL());
Заголовок = Новый Соответствие;
Заголовок.Вставить("X-OMS-Token", "ваш_тестовый_токен");
Заголовок.Вставить("Content-Type", "application/json");
Запрос = Новый HTTPЗапрос("api/v2/light/ping?omsId=ваш_oms_id", Заголовок);
Попытка
Ответ = Соединение.Получить(Запрос);
Если Ответ.КодСостояния = 200 Тогда
Сообщить("Связь с СУЗ успешно установлена!");
Иначе
Сообщить("Ошибка связи: " + Ответ.КодСостояния + " " + Ответ.ПолучитьТелоКакСтроку());
КонецЕсли;
Исключение
Сообщить("Не удалось установить соединение: " + ОписаниеОшибки());
КонецПопытки;
Проанализировав ситуацию, можно сделать вывод: для успешной работы с демо-контуром СУЗ ИС МП крайне важно разделять учетные данные боевой и тестовой сред. Основной залог успеха — правильный omsId, активный статус станции в личном кабинете и использование актуального адреса suz.sandbox.crpt.ru с портом 443.