При настройке прямого обмена с банком через сервис 1С:ДиректБанк пользователи и администраторы нередко сталкиваются с ситуацией, когда мастер подключения прерывает свою работу. Процесс доходит до шага ввода учетных данных от личного кабинета банка, начинается загрузка параметров обмена, после чего соединение зависает и аварийно завершается сообщением об ошибке таймаута (превышения времени ожидания ответа сервера). Разберем по шагам, почему возникает эта ошибка, как локализовать ее источник и что необходимо предпринять для успешного подключения.
Выясним причину возникновения таймаута при первоначальной настройке. Банк перевел прямую интеграцию с учетными системами на современный протокол Sber API, работающий через веб-сервисы и формат данных JSON. Ранее обмен осуществлялся через протокол BSS/УПШ (Универсальный платежный шлюз) с использованием XML-пакетов.
Если информационная база не обновлялась длительное время, в ней отсутствуют общие модули и подсистемы интеграции с новым API. Посмотрим на фрагмент лога обмена, который формирует программа в момент сбоя:
preLogin
==>
<preLogin xmlns="http://upg.sbns.bssys.com/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="preLogin">
<userLogin>user_login</userLogin>
</preLogin>
<==
Проанализируем этот лог: пространство имен http://upg.sbns.bssys.com/ и тег preLogin однозначно указывают на то, что конфигурация пытается обратиться к устаревшему шлюзу банка. Поскольку сервер банка больше не принимает соединения по этому адресу, HTTP-запрос уходит в никуда, а пользователь в окне 1С видит ошибку таймаута. При этом даже умышленный ввод неверного пароля приводит к точно такому же зависанию, так как система физически не может получить ответ от несуществующего шлюза.
Главным и единственным надежным способом решения этой проблемы является обновление конфигурации до актуального релиза. Рассмотрим порядок действий для восстановления работоспособности прямого обмена:
Конфигуратор (меню «Администрирование» — «Выгрузить информационную базу») или средствами СУБД..json, предварительно выгруженный из личного кабинета банка («СберБизнес»). В обновленной конфигурации интерфейс автоматически распознает новый формат и установит соединение с корректными адресами API банка.Если обновление конфигурации выполнено, но таймаут или сетевые ошибки продолжают возникать, проанализируем сопутствующие технические нюансы инфраструктуры:
cacert.pem платформы 1С.Рассмотрим сценарий, когда типовое обновление информационной базы временно невозможно из-за сильной кастомизации конфигурации или регламента компании:
1CClientBankExchange. Выгрузка платежных поручений из 1С и загрузка банковской выписки выполняются в ручном режиме через текстовый файл обмена, пока база не будет обновлена до актуального состояния.