Многие пользователи и администраторы систем 1С:Предприятие столкнулись с ситуацией, когда при попытке выполнить автоматическую проверку контрагентов в декларации по НДС (особенно в конфигурации «Бухгалтерия предприятия» редакции 2.0) программа выдает ошибку. Проблема проявляется на этапе обращения к веб-сервису ФНС. Давайте проанализируем причины возникновения этой ошибки и разберем по шагам все доступные способы решения.
Типичное сообщение об ошибке, которое видит пользователь или разработчик в журнале регистрации, выглядит следующим образом:
{ОбщийМодуль.ОбщегоНазначения.Модуль(9454)}: Ошибка при вызове конструктора (WSОпределения)
Возврат Новый(Тип("WSОпределения"), Параметры);
по причине: Ошибка импорта схемы
по причине: Ошибка доступа к файлу 'https://npchk.nalog.ru:443/FNSNDSCAWS_2?xsd=1'
по причине: Ошибка работы с Интернет: Удаленный узел не прошел проверку
Проанализируем ситуацию: текст «Удаленный узел не прошел проверку» однозначно указывает на проблему с SSL-соединением. В современных реалиях это происходит потому, что государственные сервисы (включая ресурсы ФНС) массово перешли на использование российских сертификатов, выданных Национальным удостоверяющим центром (НУЦ Минцифры). Старые версии платформы 1С (например, ветки 8.3.9, 8.3.10 и даже ранние 8.3.12) ничего не знают об этих сертификатах, так как они отсутствуют в их внутреннем хранилище доверенных центров.
Важно понимать, что платформа 1С использует встроенную библиотеку OpenSSL, которая по умолчанию не обращается к системному хранилищу сертификатов Windows. Вместо этого она использует собственный файл cacert.pem, расположенный в каталоге установки платформы.
Это самый простой и правильный путь. Разработчики из фирмы «1С» оперативно добавляют новые корневые сертификаты в дистрибутивы платформы. Рассмотрим подробнее, почему это помогает:
cacert.pem уже содержит сертификаты Минцифры.TLS 1.2 и TLS 1.3. Старые версии (8.3.10 и ниже) могут иметь ограничения на уровне протоколов, что делает соединение невозможным, даже если сертификат будет верным.Если по каким-то причинам вы не можете обновить платформу прямо сейчас (например, из-за несовместимости с другим ПО или жестких требований инфраструктуры), можно прибегнуть к «хитрости» с подменой файла сертификатов. Выполним следующие действия:
C:\Program Files\1cv8\номер_версии\bin\.cacert.pem и скопируем его.cacert.pem на скопированный (предварительно сделав резервную копию старого файла).После этой манипуляции перезапуск службы 1С:Предприятия (если это серверный вариант) или перезапуск тонкого/толстого клиента позволит программе «увидеть» новые доверенные центры сертификации.
Рассмотрим ситуацию, когда у вас нет под рукой новой версии платформы. В этом случае мы можем вручную отредактировать файл сертификатов. Проанализируем алгоритм:
.cer (Base64).-----BEGIN CERTIFICATE-----.cacert.pem в папке bin вашей платформы.Важный момент: если вы используете клиент-серверный вариант работы, эти действия необходимо выполнить на сервере 1С, так как проверка контрагентов чаще всего выполняется в привилегированном модуле на стороне сервера.
Выясним причину, по которой 1С не хочет использовать сертификаты, уже установленные в Windows. По умолчанию она настроена на свой файл. Однако существует малоизвестный способ переключить это поведение. Разберем по шагам:
conf. Обычно он находится по адресу: C:\Program Files\1cv8\conf.inetcfg.xml, создайте его.
<config xmlns="http://v8.1c.ru/conf/inetcfg">
<tls useOSRootCertificates="true" />
</config>
Параметр useOSRootCertificates="true" заставляет платформу обращаться к системному хранилищу сертификатов Windows. Если в вашей ОС уже установлены сертификаты Минцифры (что часто делается автоматически через обновления или при установке КриптоПро), то проблема с проверкой контрагентов исчезнет сама собой.
В некоторых обсуждениях можно встретить совет изменить адрес сервиса с https://npchk.nalog.ru на http://npchk.nalog.ru. Проанализируем ситуацию: на текущий момент серверы ФНС настроены на принудительный редирект на защищенное соединение или вовсе закрыты для незащищенных запросов. Попытка использования http приведет либо к той же ошибке после редиректа, либо к ошибке доступа. Безопасность передачи данных при проверке налоговых сведений является приоритетом, поэтому использование https сейчас обязательно.
Проанализируем, на что еще может повлиять устаревший файл сертификатов. Если вы исправите проблему одним из описанных выше способов, вы также восстановите (или предотвратите сбои) работу следующих механизмов:
Таким образом, поддержание платформы в актуальном состоянии или своевременное обновление файла cacert.pem является критически важной задачей для стабильной работы бухгалтерского учета.