При работе с маркированными товарами пользователи 1С нередко сталкиваются с загадочными ошибками API. Эти ошибки могут проявляться при подборе товаров, их проверке или попытке вывода из оборота, вызывая затруднения в ежедневной работе. Давайте вместе разберем, почему возникают такие проблемы и как их эффективно решать, опираясь на опыт сообщества 1С и актуальные требования системы "Честный ЗНАК". Мы рассмотрим основные причины и предложим подробные шаги для устранения неполадок.
Одной из наиболее частых причин возникновения ошибок API является использование устаревших версий протоколов взаимодействия с системой "Честный ЗНАК". Система мониторинга оборота товаров постоянно развивается, и ее API регулярно обновляется. Если ваша конфигурация 1С или внешние доработки не соответствуют текущим требованиям, это неизбежно приведет к ошибкам.
1С:Управление торговлей (УТ) версии 11.5.17.90 уже реализована поддержка API СУЗ версии 3.0. Использование старых версий 1С или самописных решений, не адаптированных под новые требования, может стать источником ошибок и потребовать серьезных доработок.Мы настоятельно рекомендуем регулярно обновлять ваши типовые конфигурации 1С до актуальных релизов. Часто ошибки, связанные с API, уже исправлены в новых версиях, и дополнительные доработки не требуются. Если вы используете доработанные конфигурации или расширения, свяжитесь с разработчиком для адаптации под новые требования.
Важно понимать, что существуют разные системы и методы взаимодействия с "Честным ЗНАКом" для различных участников оборота:
Давайте проанализируем ситуацию: если вы пытаетесь использовать методы API, предназначенные для СУЗ, будучи розничным продавцом, это может привести к ошибкам доступа или некорректным ответам, поскольку вы находитесь не в той системе, которая ожидает ваш запрос.
Для розничных продавцов вывод маркированного товара из оборота является ключевым процессом, который должен быть настроен корректно. Ошибки API часто возникают из-за несоблюдения требований к кассовому оборудованию и формату фискальных документов.
теге 2000 "codeString" в запросе о коде маркировки и уведомлении о реализации. Неполные данные или их отсутствие вызовут ошибки."ИНН покупателя (клиента)" (для расчетов между организациями и/или индивидуальными предпринимателями), товар не выводится из оборота, а происходит его передача между участниками оборота.Выясним причину: проверьте настройки вашей ККТ и версию ФФД. Убедитесь, что 1С правильно формирует данные для чека, включая полные коды маркировки.
/cises/info и /cises/searchЕсли вы взаимодействуете с API напрямую для получения информации о кодах маркировки, следует учитывать следующие моменты:
/cises/info или /cises/search необходимо передавать список марок в теле запроса в формате JSON. Если этот список отсутствует или передан некорректно, вы получите ошибку./cises/info: Метод /cises/info используется для проверки статуса кода идентификации (за исключением корректности криптографической подписи). Он имеет ограничения: до 50 запросов в секунду и не более 1000 КИ в одном запросе. Если вы превышаете эти лимиты, система может вернуть ошибку. Также учтите, что /cises/info работает только для "своих" марок. В противном случае, даже при успешном запросе (код 200), в ответе будет указано, что марки не найдены."Токен не действителен" или "Отсутствует доступ к ресурсу". Это может быть связано с использованием недействительного, просроченного динамического токена авторизации (срок действия которого ограничен, обычно до 10 часов) или с некорректными настройками доступа в личном кабинете "Честного ЗНАКа".1С:УТ 11 реализован механизм автоматического обновления токена для взаимодействия с ГИС МТ, что значительно упрощает работу и снижает вероятность возникновения подобных ошибок.Посмотрим на пример: Убедитесь, что ваш код правильно формирует тело запроса с JSON-списком марок, если вы используете эти методы. Примерно так должен выглядеть код для формирования JSON с марками:
Запрос = Новый Соответствие();
Запрос.Вставить("cis", СписокМарок); // СписокМарок - это массив строк с кодами маркировки
JSONЗапрос = Новый ЗаписьJSON();
JSONЗапрос.УстановитьСтроку();
ЗаписатьJSON(JSONЗапрос, Запрос);
СтрокаJSON = JSONЗапрос.Закрыть();
Затем эту строку СтрокаJSON нужно передать в тело HTTP-запроса.
Помимо вышеперечисленных решений, рассмотрим еще несколько важных моментов, которые помогут вам избежать или устранить ошибки API при работе с маркировкой:
1С:УТ, начиная с версии 11.5.20.91, поддерживает офлайн-проверки для разрешительного режима с использованием ЛМ ЧЗ. Убедитесь, что ваш ЛМ ЧЗ установлен и обновлен, если вы его используете.Надеемся, что этот подробный анализ поможет вам успешно решить проблемы с ошибками API при работе с маркированными товарами в 1С. Успехов в работе!
← К списку