Необходимые сведения от заказчика#
Перед настройкой взаимодействия с ГИС ГМП от заказчика необходимо получить ряд бизнес- и инфраструктурных параметров, сведения по которым необходимы для настройки ГИС ГМП:
Бизнес-параметры:
Какой механизм взаимодействия используется: прямой или косвенный.
Роль участника взаимодействия (SenderRole).
УРН - отправителя запроса (SenderIdentifier).
УРН участника косвенного взаимодействия (OriginatorId).
КБК по каждой услуге.
Код по ОКТМО (ОКТМО).
Наименование организации (PayeeName).
ИНН организации (PayeeInn).
КПП организации (PayeeKpp).
Номер банковского счета (PayeeAccountNumber).
Наименование структурного подразделения кредитной организации или подразделения Банка России, в котором открыт счет (PayeeBankName).
БИК структурного подразделения кредитной организации или подразделения Банка России, в котором открыт счет (PayeeBankBIK).
Номер корреспондентского счета кредитной организации, открытый в подразделении Банка России (PayeeBankAccount).
Инфраструктурные:
Адрес единого электронного сервиса продуктивной среды СМЭВ 3.0 (SmevUrl).
Версия видов сведений (возможные значения: V1_1, V1_2) (SmevSchemaVersion).
Дата, начиная с которой будут загружаться все активные (неаннулированные) платежи по соответствующему КБК (StartDateLoadPayments).
Уточнить: используется для взаимодействия с ГИС ГМП ИС УНП и какой версии. Если версия 2.2, то заполнить параметр
<CompatibleWithInfoSysUnp_V2_2>
значениемtrue
.
Бизнес-параметры. Шаблон.xlsx
Получение доступа к видам сведений#
Участнику взаимодействия (заказчику) необходимо получить доступ к следующим видам сведений СМЭВ:
В случае прямого взаимодействия необходимо отправлять документы на получение доступа к видам сведений по правилам СМЭВ. Формы заявок можно скачать на сайте технологического портала СМЭВ в разделе «Регламенты, инструкции, шаблоны документов».
Важно
Для получения доступа к видам сведений должна быть выполнена Проверка СМЭВ в тестовом контуре
В случае косвенного взаимодействия необходимо зарегистрироваться в качестве потребителя уже по правилам, которые регламентируются вышестоящим участником.
Установка и настройка службы интеграции с ГИС ГМП#
Выполните инструкции, приведенные ниже в той же последовательности.
Настройка метаданных#
Подключите в проект подсистемы для интеграции с ГИС ГМП:
Межведомственные запросы/СМЭВ. ГИС ГМП
ГИС ГМП
Если СМЭВ не устанавливался на проекте, то необходимо предварительно подключить подсистемы:
Межведомственные запросы
Межведомственные запросы/СМЭВ. Основа
Настройте типы услуг, по которым необходимо создавать начисления. Для этого необходимо указать перечень типов услуг в представлении WfServicePaid. Изменение метаданных в этой части должны быть сохранены/расположены в конкретном проекте.
Залейте метаданные на проект.
Запустите скрипт добавления данных в проект с помощью утилиты run.bat, расположенной в папке «Для установки» подсистемы метаданных «ГИС ГМП». Скрипт создает каталоги, справочные значения, роли и отчеты-квитанции.
Установка компонентов БД#
Утилита командной строки обычно располагается в директории установки приложения (/opt/IAS/CLI).
Проверить список недостающих компонент можно с помощью команды:
dotnet gems.cli.dll db-validate -c 'Server=host;Port=5432;Database=наименование_бд;UserId=postgres;Password=пароль;' -f '/opt/IAS' -s схема
Если не указать -s схема, то будет проверена вся БД.
Установить компонент Project.GovGmp:
dotnet gems.cli.dll db-migrate-standalone -c "Server= ;Port=5432;Database= ;User Id= ;Password= ;" -o "Project.GovGmp"
Установка приложения и модулей#
Обновите приложение ИАС в случае если версия меньше 4.41, пример команды:
sudo bash /home/install/IASUnixDeploy -installDir=/opt/IAS -connectionString='Server=172.16.55.50;Port=5432;Database=team3;User Id=postgres;Password=admin;Connection Idle Lifetime=5;Connection Pruning Interval=3;Maximum Pool Size=500;' -gHost=localhost -iasPublicOrigin=https://team3.gemsdev.ru -monitorPublicOrigin=https://monitorteam3.gemsdev.ru -importerPublicOrigin=https://importerteam3.gemsdev.ru
Далее необходимо установить модуль в ИАС:
Остановите сервер приложения:
systemctl stop Gems.Ias.ApplicationServer.service
Скопируйте папку-модуль ..<номер сборки>/Дистрибутивы/Modules/Gems.Module.Integration.GovGmp в папку /opt/IAS/AppServer/Modules.
Запустите приложение:
systemctl start Gems.Ias.ApplicationServer.service
Установка сервиса ГИС ГМП#
Установите сервис интеграции с ГИС ГМП на сервере, например, в директории /home/GovGmp.
Приложение для установки releaseGovGmp.zip и скрипт установки GovGmpDeploy расположены в артефактах сборки в: ..<номер сборки>/Дистрибутивы/Products/GovGmp/.
Перед выполнением команды установки необходимо разместить на сервере в одной директории приложение releaseGovGmp.zip и скрипт установки GovGmpDeploy.
Команда установки:
sudo bash <путь до скрипта> -installDir=<путь для установки сервиса> -connectionString='Server=<IP сервера>;Port=<порт>;Database=<имя базы>;User Id=<пользователь>;Password=<пароль>;'
Пример команды установки:
sudo bash /home/install/GovGmpDeploy -installDir=/opt/GovGmp -connectionString='Server=172.16.55.50;Port=5432;Database=team3;User Id=postgres;Password=admin;'
Проверить статус сервиса можно командой:
systemctl status Gems.Integration.GovGmp.service
Остановите сервис и в директории сервиса создайте папку Modules. В неё положите модуль Gems.Module.ToGovGmpService (из папки ..<номер сборки>/Дистрибутивы/Modules/Gems.Module.ToGovGmpService). Настройте адрес хостинга сервиса: в файле appsettings.json параметр urls. Запустите сервис.
В базе должна появится схема GovGmpIntegration.
Заполнение настроек в конфигурационном файле#
Заполните настройки интеграционного решения ГИС ГМП. Для этого необходимо: остановить сервис ГИС ГМП, изменить настройки (смотрите ниже), затем запустить его заново.
Важно
В дальнейшем:
при изменении хотя бы одной настройки: SmevUrl, SmevSchemaVersion, HttpReqSaveEnabled, HttpReqSaveFSPath, HttpRespSaveEnabled необходимо перезапускать сервис межведомственного взаимодействия.
при изменении любой настройки ГИС ГМП необходимо производить перезапуск сервиса интеграции с ГИС ГМП.
при изменении настроек GovGmpServiceUrl, UsePersonSignInBrowser, добавлении/удалении проекта (ProjectsOpt/ProjectsOpt) необходимо перезапускать сервер приложения ИАС.
Изменение настроек
Для каждого проекта на котором должна работать интеграция с ГИС ГМП необходимо добавить секцию настроек проекта ProjectsOpt/ProjectOpt. Для заполнения настроек реализована утилита, посмотрите как она работает здесь: Заполнение настроек БД.
Ниже перечислены параметры настроек. Параметры являются обязательными, если не указано иное в описании параметра. Запрещено использовать символы переноса строк (подпись будет не валидная) в значениях параметров.
<SenderRole>
– Роль участника взаимодействия. Значение выбрать из справочника «Полномочия отправителей запросов в ГИС ГМП».
Роль можно назначить как для всех проектов, так и для каждого проекта. Если будет указана роль для проекта, то значение из <SenderRole> будет браться оттуда, если нет - из <SenderRole>, который указан для всех проектов.
Справочник «Полномочия отправителей запросов в ГИС ГМП»:
1 – ГАН (главный администратор доходов бюджета, имеющий в своем ведении администраторов доходов бюджета и (или) осуществляющий функции и полномочия учредителя в отношении государственных (муниципальных) учреждений);
2 – ГАН (орган государственной власти субъектов Российской Федерации (орган местного самоуправления), обеспечивающий информационное взаимодействие с ГИС ГМП государственных (муниципальных) учреждений и (или) администраторов доходов бюджета);
3 — АН (администратор доходов бюджета, главный администратор доходов бюджета);
<Project>
– псевдоним (alias) проекта;
<SenderIdentifier>
– УРН участника - отправителя запроса;
<OriginatorId>
– УРН участника косвенного взаимодействия. В случае если взаимодействие не косвенное значение должно быть пустым.
<AliasValueOfDocIdentPassportRf>
– псевдоним справочного значения для типа документа удостоверяющего личность – Паспорт РФ. Если такой псевдоним не задан, то необходимо задать.
<KBKToServices>
– Необходимо заполнить сопоставление между псевдонимом (alias) типа услуги и КБК;
<OKTMO>
– Код по ОКТМО («Поле номер 105» по документации ГИС ГМП);
Данные организации, являющейся получателем средств:
<PayeeName>
– Наименование организации;
<PayeeInn>
– ИНН организации;
<PayeeKpp>
– КПП организации;
<PayeeAccountNumber>
- Номер банковского счета («Поле номер 17» по документации ГИС ГМП);
Данные банка, в котором открыт счет получателя средств:
<PayeeBankName>
– Наименование структурного подразделения кредитной организации или подразделения Банка России, в котором открыт счет;
<PayeeBankBIK>
- БИК структурного подразделения кредитной организации или подразделения Банка России, в котором открыт счет;
<PayeeBankAccount>
- Номер корреспондентского счета кредитной организации, открытый в подразделении Банка России. Если такого счета нет, то необходимо указать значение (без кавычек) «0».
Параметры СМЭВ и другие:
<StartDateLoadPayments>
– дата, начиная с которой будут загружаться все активные (неаннулированные) платежи по соответствующему КБК. Формат заполнения даты: «ГГГГ-ММ-ДД»Т «чч:мм:сс». То есть дату: 17 июля 2020 года и время: 1 час 2 минуты и 3 секунды нужно вводить как: 2020-07-17Т01:02:03.
<PageLengthLoadPayments>
- количество платежей, которое получаем в одном запросе платежа. Рекомендуемое значение 100.
<SmevSchemaVersion>
– версия видов сведений (возможные значения: V1_1, V1_2). Необходимо установить значение V1_2. В случае если будут ошибки в межведомственных запросах установить V1_1.
<SmevUrl>
– адрес единого электронного сервиса продуктивной среды СМЭВ 3.0 ( http://172.20.3.12:7500/smev/v1.1/ws для схемы 1.1 и http://172.20.3.12:7500/smev/v1.2/ws для схемы 1.2)
<GovGmpServiceUrl>
– адрес хостинга сервиса ГИС ГМП. Рекомендуемое значение по умолчанию: http://localhost:5083.
<IntervalBeetwenNewPaymentReqinSec>
– минимальный интервал ожидания между двумя автоматически отправляемыми запросами платежа.
<UsePersonSignInBrowser>
– включить использование персональной подписи в браузере. В случае прямого взаимодействия установить значение true, в случае косвенного false.
<HttpReqSaveEnabled>
– включить логирование всех запросов ГИС ГМП
<HttpReqSaveFSPath>
– путь для сохранения xml запросов ГИС ГМП
<HttpRespSaveEnabled>
– включить логирование всех ответов на запросы ГИС ГМП
<HttpRespSaveFSPath>
– путь для сохранения xml ответов ГИС ГМП
<GetNewPaymentTask_IntervalInSec>
– интервал в секундах срабатывания сервиса по загрузки новых платежей в систему. Рекомендуемое значение 1800.
<RespInvoicePaymentTask_IntervalInSec>
– минимальный интервал в секундах срабатывания сервиса по мониторингу состояния отправленных запросов начисления. Рекомендуемое значение 1800.
<RespPaymentTask_IntervalInSec>
– интервал в секундах срабатывания сервиса по импорту новых платежей в систему и их квитированию. Рекомендуемое значение 1800.
<PaymentReqDateType>
- формат заполнения даты/времени во входных параметрах запроса платежа. Возможные значения:
MckWithoutTZ - указание даты/времени в часовом поясе Москвы, часовой пояс не включается в значение;
LocalWithoutTZ - указание даты/времени в местном часовом поясе, часовой пояс не включается в значение;
UseTimeZone - указание даты/времени в местном часовом поясе, часовой пояс включается в значение.
<EmptyPaymentRequest_LifetimeInHours>
- время жизни запросов платежа, на которые был возвращен пустой ответ. По окончании времени, указанного в часах, данные запросы будут удалены. Удаление запросов платежа выполняется один раз в 24 часа.
<TimeOutWaitingPaymentRequestResponseInHours>
- время ожидания ответа на запрос платежа. Если по истечении указанного времени ответ не будет получен, то данный запрос будет переведен в состояние «Ошибка» и автоматически произойдет отправка нового запроса платежа.
<StartSilentIntervalReqPaymentInHours>
- начало времени (указываются часы 0 - 24 часа) интервала, когда нет необходимости отправлять запросы платежа.
<EndSilentIntervalReqPaymentInHours>
- завершение времени (указываются часы 0 - 24 часа) интервала, когда нет необходимости отправлять запросы платежа.
<CompatibleWithInfoSysUnp_V2_2>
- поддерживать ли совместимость интеграционного решения с требованиями по взаимодействию с ГИС ГМП через ИС УНП версии 2.2.
Предупреждение
В настоящий момент есть неопределенность в задании значения параметра <PaymentReqDateType>
. Эта неопределенность устраняется при вводе в эксплуатацию, путем отправки на проде начисления и реальной его оплаты несколько раз (максимум 3).
При неверном задании значения параметра <PaymentReqDateType>
оплаченные платежи не будут загружаться в систему. Определить правильность его заполнения можно только экспериментальным образом, выполнив платеж.
Вначале устанавливаем значение MckWithoutTZ. Отправляем начисление и оплачиваем платеж. Если платеж не был получен в течении 4 часов, то же самое повторяем для значений UseTimeZone и LocalWithoutTZ.
Если нужно занести данные по нескольким проектам, добавляем еще блоки <ProjectOpt>
в <ProjectsOpt>
с настройками проекта.
Пример заполненных настроек
<?xml version="1.0"?>
<GovGmpSettings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SenderRole>2</SenderRole> --
<ProjectsOpt>
<ProjectOpt>
<SenderRole>2</SenderRole> --
<Project>gogmp</Project>
<SenderIdentifier>201133</SenderIdentifier>
<OriginatorId>3ec94b</OriginatorId>
<AliasValueOfDocIdentPassportRf>REFDocTypesSubjIdentity_6</AliasValueOfDocIdentPassportRf>
<PaymentDetails>
<KBKToServices>
<KBKToService>
<KBK>18210705040010000110</KBK>
<IasServiceAlias>WfServicePredSvedIsogd</IasServiceAlias>
</KBKToService>
</KBKToServices>
<OKTMO>71951000</OKTMO>
<PayeeName>Департамент строительства и жилищной политики Ямало-Ненецкого автономного округа</PayeeName>
<PayeeInn>8901018311</PayeeInn>
<PayeeKpp>890101001</PayeeKpp>
<PayeeAccountNumber>40702810806100141801</PayeeAccountNumber>
<PayeeBankName>БАНК "ВОЗРОЖДЕНИЕ" (ПАО)</PayeeBankName>
<PayeeBankBIK>471820001</PayeeBankBIK>
<PayeeBankAccount>30101810900000000181</PayeeBankAccount>
</PaymentDetails>
</ProjectOpt>
<ProjectOpt>
<Project>projectgovgmp</Project>
<SenderIdentifier>201133</SenderIdentifier>
<OriginatorId>3ec94b</OriginatorId>
<AliasValueOfDocIdentPassportRf>REFDocTypesSubjIdentity_6</AliasValueOfDocIdentPassportRf>
<PaymentDetails>
<KBKToServices>
<KBKToService>
<KBK>18210705040010000110</KBK>
<IasServiceAlias>WfServicePredSvedIsogd</IasServiceAlias>
</KBKToService>
</KBKToServices>
<OKTMO>71951000</OKTMO>
<PayeeName>Департамент строительства и жилищной политики Ямало-Ненецкого автономного округа</PayeeName>
<PayeeInn>8901018311</PayeeInn>
<PayeeKpp>890101001</PayeeKpp>
<PayeeAccountNumber>40702810806100141801</PayeeAccountNumber>
<PayeeBankName>БАНК "ВОЗРОЖДЕНИЕ" (ПАО)</PayeeBankName>
<PayeeBankBIK>471820001</PayeeBankBIK>
<PayeeBankAccount>30101810900000000181</PayeeBankAccount>
</PaymentDetails>
</ProjectOpt>
</ProjectsOpt>
<StartDateLoadPayments>2020-07-17T00:00:00</StartDateLoadPayments>
<PageLengthLoadPayments>100</PageLengthLoadPayments>
<IntervalBeetwenNewPaymentReqinSec>1800</IntervalBeetwenNewPaymentReqinSec>
<SmevUrl>http://172.20.3.12:7500/smev/v1.2/ws</SmevUrl>
<SmevSchemaVersion>V1_2</SmevSchemaVersion>
<HttpReqSaveEnabled>false</HttpReqSaveEnabled>
<HttpReqSaveFSPath></HttpReqSaveFSPath>
<HttpRespSaveEnabled>false</HttpRespSaveEnabled>
<HttpRespSaveFSPath></HttpRespSaveFSPath>
<UsePersonSignInBrowser>false</UsePersonSignInBrowser>
<GovGmpServiceUrl>http://localhost:5083</GovGmpServiceUrl>
<GetNewPaymentTask_IntervalInSec>1800</GetNewPaymentTask_IntervalInSec>
<RespInvoicePaymentTask_IntervalInSec>1800</RespInvoicePaymentTask_IntervalInSec>
<RespPaymentTask_IntervalInSec>1800</RespPaymentTask_IntervalInSec>
<PaymentReqDateType>MckWithoutTZ</PaymentReqDateType>
<EmptyPaymentRequest_LifetimeInHours>72</EmptyPaymentRequest_LifetimeInHours>
<TimeOutWaitingPaymentRequestResponseInHours>72</TimeOutWaitingPaymentRequestResponseInHours>
<StartSilentIntervalReqPaymentInHours>22</StartSilentIntervalReqPaymentInHours>
<EndSilentIntervalReqPaymentInHours>6</EndSilentIntervalReqPaymentInHours>
<CompatibleWithInfoSysUnp_V2_2>false</CompatibleWithInfoSysUnp_V2_2>
</GovGmpSettings>
Заполнение настроек БД#
Для заполнения в БД настроек сервисов интеграции с ГИС ГМП реализована утилита, которая находится в директории сервиса GovGmp:
Загрузка файла в БД:
dotnet Gems.Integration.GovGmp.Settings.Util.dll upload -c "Строка подключения" -f "settings.xml"
где:
-c Строка подключения к базе данных;
-f файл из которого будут выгружены настройки
Пример:
dotnet Gems.Integration.GovGmp.Settings.Util.dll upload -c "Server=172.16.55.50;Port=5432;Database=team3;User Id=postgres;Password=admin;ApplicationName=IasPgV3;" -f "settings.xml"
Выгрузка файла из БД:
dotnet Gems.Integration.GovGmp.Settings.Util.dll download -c "Строка подключения" -o "settings.xml"
где:
-c Строка подключения к базе данных;
-o файл, в который произведется выгрузка
Пример:
dotnet Gems.Integration.GovGmp.Settings.Util.dll download -c "Server=172.16.55.50;Port=5432;Database=team3;User Id=postgres;Password=admin;ApplicationName=IasPgV3;" -o "/home/GovGmp/settings.xml"
Установка модуля ГИС ГМП в СМЭВ#
Установите модуль вида сведений «Межведомственных запросов» Gems.Module.Smev.GovGmp в соответствии с инструкцией: Установить СМЭВ с дополнительными модулями.
Пример команды установки:
sudo bash ../InteragencyCooperationDeploy -installDir=/opt/SmevInteragencyCooperation -connectionString='Server= ;Port=5432;Database= ;User Id= ;Password= ' -extraModule=Gems.Module.Smev.GovGmp
Очистка пустых запросов платежа#
Для очистки пустых запросов платежа:
Остановите сервис ГИС ГМП
Перейдите в установочную директорию сервиса ГИС ГМП и запустите его в командной строке с параметром «-initEmptyPaymentRequests»:
dotnet Gems.Integration.GovGmp.MainService.dll -initEmptyPaymentRequests
Дождитесь появления в логах строки: Задача Найти пустые запросы платежа завершилась успешно.
Запустите сервис ГИС ГМП.