При работе в конфигурации 1С:Управление производственным предприятием (УПП) пользователи часто сталкиваются с ошибкой при обращении к веб-сервисам ФНС. Ошибка Ошибка при вызове конструктора (WSОпределения) с сообщением Ошибка работы с Интернет: Удаленный узел не прошел проверку свидетельствует о том, что платформа 1С не может установить доверенное HTTPS-соединение с сервером налоговой службы.
Разберем детально, почему это происходит и как мы можем исправить эту ситуацию, используя различные подходы.
Основная причина кроется в механизме проверки SSL-сертификатов. Платформа 1С для установки защищенного соединения использует либо системные сертификаты Windows, либо специальный файл cacert.pem, расположенный в каталоге установки платформы (папка bin). Если установленная операционная система устарела или файл с набором корневых сертификатов не содержит актуальных данных о центре сертификации, выдавшем сертификат сайту налоговой, соединение блокируется.
Это самый правильный и надежный способ. Операционные системы, такие как Windows 7, могут не иметь в своем составе современных доверенных корневых центров сертификации. Для исправления ситуации выполним следующие шаги:
Если обновление ОС не принесло результата или является невозможным, мы можем поработать с файлом cacert.pem, который использует 1С для работы с защищенными соединениями.
Рассмотрим два варианта работы с этим файлом:
cacert.pem (например, с сайта проекта curl) и добавьте содержимое новых сертификатов в конец вашего файла, находящегося в bin платформы.Важно помнить: при каждом обновлении платформы 1С файл cacert.pem перезаписывается на стандартный, поэтому процедуру обновления придется повторять.
Иногда проблема кроется в том, что в коде конфигурации 1С жестко прописан протокол http для получения WSDL-схемы, хотя сервис налоговой ожидает https. Платформа пытается выполнить запрос в незащищенном режиме, сталкиваясь с отказом или конфликтом протоколов.
Давайте проанализируем модуль, отвечающий за работу с проверкой контрагентов. Найдем функцию ЗначенияНастроек() в форме декларации и принудительно укажем безопасный протокол:
// В коде находим строку, где задается адрес сервиса
АдресСервиса = "https://npchk.nalog.ru/FNSNDSCAWS_2?wsdl";
Замена ссылки на https позволяет принудительно активировать механизмы проверки сертификатов и корректно инициализировать WSProxy, что решает проблему на уровне самого приложения.
Мы выяснили, что ошибка связана с доверием к удаленному узлу. Чтобы решить проблему системно, мы рекомендуем:
cacert.pem как вспомогательный инструмент, если системные методы не помогают.http против https) при инициализации WSОпределения.Соблюдая эти рекомендации, мы обеспечим стабильную работу регламентированной отчетности и проверку контрагентов в вашей учетной системе.