Любой бизнес, который работает с лицензиями, выписками из реестров, проверкой контрагентов или приёмом платежей за госуслуги, рано или поздно упирается в СМЭВ – систему межведомственного электронного взаимодействия. Через неё проходят запросы к ЕГРЮЛ, ЕГРН, ФНС, ПФР, МВД и десяткам других поставщиков сведений. Подключение к СМЭВ – это не разовая настройка коннектора, а проект на стыке регламентов, криптографии и асинхронной архитектуры. Разберём, что реально стоит за интеграцией и где обычно теряют сроки.
СМЭВ 3 и переход с конвертов на виды сведений
Минкомсвязь последовательно сворачивает СМЭВ 2 и переводит участников на СМЭВ 3. Разница принципиальная. В СМЭВ 2 каждый канал обмена был отдельным «электронным сервисом» с собственным WSDL – менялась схема у поставщика, ломалась интеграция у всех потребителей. СМЭВ 3 работает через единый эндпоинт и реестр видов сведений (ВС): вы регистрируете запрос на конкретный вид сведений, согласуете его с поставщиком и обмениваетесь сообщениями по типизированным XSD.
Обмен асинхронный. Вы кладёте запрос в очередь методом SendRequest, а ответ забираете отдельным GetResponse – иногда через секунды, иногда через часы, в зависимости от поставщика. Это меняет проектирование: синхронного «запрос-ответ» в коде быть не должно, нужна очередь, идемпотентность по MessageID и корректная обработка статусов и отказов. Архитектурно такой обмен хорошо ложится на событийную модель и обработчики по триггеру – мы разбирали этот подход в материале про serverless и FaaS.
Криптография, СИБ и регистрация в продуктиве
Транспорт СМЭВ 3 подписывается по стандарту ЭП-СП (электронная подпись органа власти) с ГОСТ-алгоритмами. Это означает связку из криптопровайдера (КриптоПро CSP или аналог), квалифицированного сертификата на класс защищённости вашей ИС и подписания SOAP-конвертов по WS-Security. Канал до СМЭВ закрывается VPN-шлюзом по ГОСТ – как правило, через ViPNet или «Континент».
Прохождение через тестовый контур СМЭВ (СИБ – среда испытаний и разработки) обязательно. Без зелёного протокола тестирования в продуктив вас не пустят. Закладывайте на согласование ВС, получение сертификатов и тесты несколько недель – это не инженерная, а организационная задержка, и она съедает график чаще, чем сам код.
Безопасность здесь не опция. Интеграция с госсервисами почти всегда означает обработку персональных данных и юридически значимый обмен, поэтому требования к коду и сборке нужно закладывать с первого спринта. Как встроить контроль уязвимостей и работу с секретами в конвейер, мы показывали в статье про безопасный SDLC. Если ваша информационная система при этом попадает под критерии значимого объекта КИИ, добавляется отдельный пласт обязанностей – сроки и категорирование мы разбирали в материале о реестре КИИ.
Что закладывать в архитектуру
Из практики проектов несколько устойчивых правил. Отделяйте транспортный слой СМЭВ от бизнес-логики – поставщики меняют XSD, и вы не должны переписывать домен из-за нового поля в ответе. Храните полный журнал сообщений с подписями: при споре с ведомством это ваше единственное доказательство факта обмена. Проектируйте под деградацию – поставщик может молчать часами, и пользователь не должен видеть подвисший экран. И версионируйте мапперы под каждый вид сведений отдельно, потому что версии ВС в реестре живут своей жизнью.
Вывод
СМЭВ – это инфраструктура, а не библиотека: цена ошибки лежит не в коде, а в регламентах, подписи и приёмке. Мы проектируем такие интеграции как асинхронные, журналируемые и устойчивые к простоям поставщиков. Подключение к госсервисам стоит планировать сразу как интеграцию разнородных систем с прохождением СИБ и выходом в продуктив без переноса сроков.