27. Ведомость банковского контроля
Метод предоставляет возможность запросить список ведомостей банковского контроля (далее ВБК) по уникальным номерам контракта (далее УНК) компании. Сформированные ведомости добавляются в единый архив для последующего скачивания.
Сформированный архив будет доступен для скачивания в течение суток, если запрос на скачивание архива сделать позже этого срока - необходимо будет запросить формирование архива ВБК заново. |
URI
POST: /API/v1/ISO20022/ContractReports
XSD схема
auth.026.001.01
Описание схемы запроса
N | Обязательность | Описание | Путь | Комментарий/Пример |
---|---|---|---|---|
Document.CcyCtrlReqOrLttr.GrpHdr |
||||
1 |
R |
Уникальный ID сообщения |
MsgId |
- |
2 |
R |
Дата и время создания сообщения |
CreDtTm |
Формат даты YYYY-MM-DDThh:mm:ss[.mmm]TZD (В случае, если часовой пояс не указан или указан отличный от московского, то время будет приведено к UTC +3). |
3 |
R |
Количество УНК в сообщении |
NbOfItms |
Кол-во блоков ReqOrLttr, каждый из которых содержит конкретный УНК. |
4 |
R |
ИНН организации отправителя сообщения |
InitgPty.Pty.Id.OrgId.Othr[0].Id |
- |
5 |
R |
Признак использования ИНН |
InitgPty.Pty.Id.OrgId.Othr[0].SchmeNm.Cd |
Константа TXID |
6 |
R |
ОГРН организации отправителя сообщения |
InitgPty.Pty.Id.OrgId.Othr[1].Id |
- |
7 |
R |
Признак использования ОГРН |
InitgPty.Pty.Id.OrgId.Othr[1].SchmeNm.Cd |
Константа PSRN |
Document.CcyCtrlReqOrLttr.ReqOrLttr - массив объектов для каждого передаваемого УНК |
||||
8 |
R |
Уникальный ID запроса на формирование ВБК по Уникальному номеру контракта (далее УНК) |
ReqOrLttrId |
- |
9 |
R |
Тип запрашиваемого документа. |
Sbjt |
Константа VBK |
10 |
R |
Формат файла ВБК |
Tp |
Возможные значения: ["XML", "PDF"] |
11 |
R |
УНК, по которому будет сформирована ВБК |
Desc |
- |
12 |
R |
Данное поле не используется, но обязательно по схеме. Признак необходимости предоставления ответа на запрос. |
RspnReqrd |
Константа true |
Пример запроса на формирование архива со списком ВБК
<?xml version="1.0" encoding="UTF-8"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:auth.026.001.01">
<CcyCtrlReqOrLttr>
<GrpHdr>
<!-- Уникальный ID сообщения-->
<MsgId>TEST_MSG_2022-08-23-279190544</MsgId>
<!-- Дата и время создания сообщения -->
<CreDtTm>2022-08-23T12:44:40.624</CreDtTm>
<!--Неиспользуемое поле -->
<NbOfItms>1</NbOfItms>
<InitgPty>
<Pty>
<Nm>ООО "Тест Альфа-Линк"</Nm>
<Id>
<OrgId>
<Othr>
<!--ИНН организации (Идентификация отправителя запроса) -->
<Id>7013602245</Id>
<SchmeNm>
<!--Признак использования ИНН -->
<Cd>TXID</Cd>
</SchmeNm>
</Othr>
<Othr>
<!--ОГРН организации отправителя сообщения -->
<Id>1092940217001</Id>
<SchmeNm>
<!--Признак использования ОГРН -->
<Cd>PSRN</Cd>
</SchmeNm>
</Othr>
</OrgId>
</Id>
</Pty>
</InitgPty>
</GrpHdr>
<!-- 1я из 100 возможных запись с контрактом, по которому нужно сформировать ВБК -->
<ReqOrLttr>
<!--Уникальный ID записи с контрактом -->
<ReqOrLttrId>TEST_ID_2022-08-23-2791905441</ReqOrLttrId>
<!--Тип документа, по которому формируется ВБК-->
<Sbjt>VBK</Sbjt>
<!--Тип документа, по которому формируется ВБК-->
<Tp>PDF</Tp>
<!--Уникальный номер контракта, по которому нужно сформировать ВБК-->
<Desc>22080758/1326/0000/1/1</Desc>
<!--Признак необходимости предоставления ответа на запрос-->
<RspnReqrd>true</RspnReqrd>
</ReqOrLttr>
<!-- 2я из 100 возможных запись с контрактом, по которому нужно сформировать ВБК -->
<ReqOrLttr>
<!--Уникальный ID записи контракта -->
<ReqOrLttrId>TEST_ID_2022-08-23-2791905442</ReqOrLttrId>
<!--Тип документа, по которому формируется ВБК-->
<Sbjt>VBK</Sbjt>
<!--Тип документа, по которому формируется ВБК-->
<Tp>PDF</Tp>
<!--Уникальный номер контракта, по которому нужно сформировать ВБК-->
<Desc>22080915/1326/0000/1/1</Desc>
<!--Признак необходимости предоставления ответа на запрос-->
<RspnReqrd>true</RspnReqrd>
</ReqOrLttr>
<SplmtryData>
<Envlp>
<!--Блок для вставки подписи-->
<SgntrSt/>
</Envlp>
</SplmtryData>
</CcyCtrlReqOrLttr>
</Document>
Ответ
Ответом является XML-документ, соответствующий схеме auth.027.001.01. Описание параметров ответа доступно в разделе [CONTRACT_REPORTS_STATUS_SCHEMA].
В разделе [CONTRACT_REPORTS_STATUS_MODEL] доступно описание статусов.
Пример ответа на запрос с успешно пройденными проверками
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:auth.027.001.01">
<CcyCtrlStsAdvc>
<GrpHdr>
<!-- Уникальный ID сообщения-->
<MsgId>c342c72069784594adb34ae362643742</MsgId>
<!-- Дата и время создания сообщения -->
<CreDtTm>2022-08-23T15:45:01.819+03:00</CreDtTm>
<!--Количество блоков ReqOrLttr в исходном сообщении -->
<NbOfItms>1</NbOfItms>
<RegnAgt>
<FinInstnId>
<!-- SWIFT код банка -->
<BICFI>ALFARUMM</BICFI>
<ClrSysMmbId>
<!-- БИК Банка -->
<MmbId>044525593</MmbId>
</ClrSysMmbId>
</FinInstnId>
</RegnAgt>
</GrpHdr>
<GrpSts>
<OrgnlRefs>
<!-- Уникальный ID исходного сообщения с запросом-->
<OrgnlMsgId>TEST_MSG_2022-08-23-279190544</OrgnlMsgId>
<OrgnlMsgNmId>auth.026.001.01</OrgnlMsgNmId>
<!-- Дата и время исходного сообщения с запросом -->
<OrgnlCreDtTm>2022-08-23T15:44:40.624+03:00</OrgnlCreDtTm>
</OrgnlRefs>
<RptgPty>
<PtyId>
<Id>
<OrgId>
<Othr>
<!-- БИК Банка -->
<Id>044525593</Id>
</Othr>
</OrgId>
</Id>
</PtyId>
</RptgPty>
<RegnAgt>
<FinInstnId>
<!-- SWIFT код банка -->
<BICFI>ALFARUMM</BICFI>
</FinInstnId>
</RegnAgt>
<!-- Статус обработки всего сообщения -->
<Sts>RCVD</Sts>
</GrpSts>
<PackgSts>
<!-- Неиспользуемое поле -->
<PackgId>undefined</PackgId>
<!--Статус обработки всего сообщения (дублирует статус GrpSts.Sts) -->
<Sts>RCVD</Sts>
<!-- 1я Запись с контрактом, по которому нужно сформировать ВБК -->
<RcrdSts>
<!--Уникальный ID записи контракта -->
<RcrdId>TEST_ID_2022-08-23-2791905441</RcrdId>
<!--Статус обработки ВБК, соответствующей записи с контрактом -->
<Sts>RCVD</Sts>
</RcrdSts>
<!-- 2я Запись с контрактом, по которому нужно сформировать ВБК -->
<RcrdSts>
<RcrdId>TEST_ID_2022-08-23-2791905442</RcrdId>
<!--Статус обработки ВБК, соответствующей записи с контрактом -->
<Sts>RCVD</Sts>
</RcrdSts>
</PackgSts>
</CcyCtrlStsAdvc>
</Document>
Пример ответа на запрос с ошибками
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:auth.027.001.01">
<CcyCtrlStsAdvc>
<GrpHdr>
<!-- Уникальный ID сообщения-->
<MsgId>96009149ae5e4794b700173ef32295d0</MsgId>
<!-- Дата и время создания сообщения -->
<CreDtTm>2022-08-29T10:46:28.209+03:00</CreDtTm>
<!--Количество блоков ReqOrLttr в исходном сообщении -->
<NbOfItms>1</NbOfItms>
<RcvgPty/>
<RegnAgt>
<FinInstnId>
<!-- SWIFT код банка -->
<BICFI>ALFARUMM</BICFI>
<ClrSysMmbId>
<!-- БИК Банка -->
<MmbId>044525593</MmbId>
</ClrSysMmbId>
</FinInstnId>
</RegnAgt>
</GrpHdr>
<GrpSts>
<OrgnlRefs>
<!-- Уникальный ID исходного сообщения с запросом-->
<OrgnlMsgId>TEST_MSG_2022-08-29-604177661</OrgnlMsgId>
<OrgnlMsgNmId>auth.026.001.01</OrgnlMsgNmId>
<!-- Дата и время исходного сообщения с запросом -->
<OrgnlCreDtTm>2022-08-29T10:46:06.663+03:00</OrgnlCreDtTm>
</OrgnlRefs>
<RptgPty>
<PtyId>
<Id>
<OrgId>
<Othr>
<!-- БИК Банка -->
<Id>044525593</Id>
</Othr>
</OrgId>
</Id>
</PtyId>
</RptgPty>
<RegnAgt>
<FinInstnId>
<!-- SWIFT код банка -->
<BICFI>ALFARUMM</BICFI>
</FinInstnId>
</RegnAgt>
<!-- Статус обработки всего сообщения -->
<Sts>RJCT</Sts>
<StsRsn>
<Rsn>
<!-- Код причины ошибки в ISO -->
<Cd>NARR</Cd>
</Rsn>
<!-- Описание причины присвоения статуса сообщения-->
<AddtlInf>The number of documents is more than the maximum allowed. Allowed 100. Passed 101</AddtlInf>
</StsRsn>
</GrpSts>
</CcyCtrlStsAdvc>
</Document>
HTTP статусы ответов от сервиса Ведомость банковского контроля
HTTP код | Тип | Body | Описание |
---|---|---|---|
200 |
OK |
- |
Если хотя бы один УНК в запросе валиден, то запрос на формирование архива со списком ВБК может быть принят в обработку. |
400 |
Err |
The № DP/UC is incorrect or DP has been archived |
Если хотя бы один УНК отсутствует в базе ТБСВК или не принадлежит компании, то всему запросу и каждому элементу массива ReqOrLttr будут присвоены статусы "RJCT" с текстом ошибки: |
400 |
Err |
All entities in the message <MsgId> are rejected |
Если все переданные значения УНК - невалидны, то всему запросу и каждому элементу массива ReqOrLttr будут присвоены статусы "RJCT". |
400 |
Err |
The number of documents is more than the maximum allowed. Allowed 100. Passed 101 |
Если количество УНК превышает 100 |
400 |
Err |
INN mustn’t be empty and must have 10 or 12 digits |
Ошибка в переданных данных компании: ИНН |
400 |
Err |
OGRN mustn’t be empty and must have 13 or 15 digits |
Ошибка в переданных данных компании: ОГРН |
400 |
Err |
Error in parameters |
Ошибка в параметрах запроса |
400 |
Err |
XML does not match schema |
Документ не соответствует схеме |
401 |
Err |
Wrong username or password |
Неверный логин или пароль |
401 |
Err |
User was not found |
Пользователь не найден |
403 |
Err |
User is disabled |
Пользователь заблокирован |
403 |
Err |
Internal error while verifying permissions |
Ошибка при проверке полномочий |
403 |
Err |
Signer is not allowed to sign this operation type |
У подписанта нет полномочий на такой тип операции |
403 |
Err |
User does not have permission |
Нет права на запрос формирования архива с ВБК |
403 |
Err |
Signer’s warrant is expired |
Доверенность подписанта истекла |
403 |
Err |
Signer’s warrant is disabled |
Доверенность подписанта заблокирована |
403 |
Err |
Number of signatures is not enough for this operation type |
Недостаточно подписей для типа операции |
403 |
Err |
Certificate is disabled |
Сертификат заблокирован |
403 |
Err |
The signer certificate is not valid (revoked or not active) |
Сертификат подписанта отозван или невалидный |
406 |
Err |
Signature is missing |
Нет подписи |
403 |
Err |
Certificate is not valid |
Сертификат подписи невалидный |
406 |
Err |
Signature value is not valid |
Подпись невалидна |
406 |
Err |
Internal sign check state error |
Внутренняя ошибка сервиса |
409 |
Err |
MsgId is not unique |
Id запроса неуникальный |
500 |
Err |
Warrant service error |
Сервис проверки доверенности не отвечает |
502 |
Err |
Bad Gateway |
Ошибочный шлюз |
503 |
Err |
Service Unavailable |
Сервис недоступен |
504 |
Err |
Gateway Timeout |
Шлюз не отвечает |
500 |
Err |
Internal Error |
Внутренняя ошибка приложения |
28. Статус обработки архива с Ведомостями банковского контроля
URI
Получение статуса обработки запроса на формирование архива со списком ВБК
GET: /API/v1/ISO20022/ContractReports/<MsgId>
Ответ
Ответом является XML-документ, соответствующий схеме auth.027.001.01. Описание параметров ответа доступно в разделе [CONTRACT_REPORTS_STATUS_SCHEMA].
В разделе [CONTRACT_REPORTS_STATUS_MODEL] доступно описание статусов.
В разделе HTTP статусы ответов от сервиса Ведомость банковского контроля доступен список кодов ошибок с описанием.
Проверка значений УНК (см. Требования к Уникальному номеру контракта) происходит в два этапа: 1) Сначала проверяется само значение УНК на соответствие Инструкции Банка России. Если в значении найдена ошибка, то невалидному УНК проставляется статус "Отклонено" (RJCT), а запрос с оставшимися валидными УНК обрабатывается дальше. 2) Далее список УНК передается системе ТБСВК, где проверяется наличие данных по компании для них. Если данные не найдены хотя бы по одному УНК, то всему запросу и каждому УНК в нем проставляется статус "Отклонено" (RJCT). |
Ответ для успешно обработанного запроса
Пример ответа с успешным статусом обработки
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:auth.027.001.01">
<CcyCtrlStsAdvc>
<GrpHdr>
<!-- Уникальный ID сообщения-->
<MsgId>02aec2645110423b8aa074d1414e61cf</MsgId>
<!-- Дата и время создания сообщения -->
<CreDtTm>2022-08-23T15:45:01.819+03:00</CreDtTm>
<!--Количество блоков ReqOrLttr в исходном сообщении -->
<NbOfItms>1</NbOfItms>
<RegnAgt>
<FinInstnId>
<!-- SWIFT код банка -->
<BICFI>ALFARUMM</BICFI>
<ClrSysMmbId>
<!-- БИК Банка -->
<MmbId>044525593</MmbId>
</ClrSysMmbId>
</FinInstnId>
</RegnAgt>
</GrpHdr>
<GrpSts>
<OrgnlRefs>
<!-- Уникальный ID исходного сообщения с запросом-->
<OrgnlMsgId>TEST_MSG_2022-08-23-279190544</OrgnlMsgId>
<OrgnlMsgNmId>auth.026.001.01</OrgnlMsgNmId>
<!-- Дата и время исходного сообщения с запросом -->
<OrgnlCreDtTm>2022-08-23T15:44:40.624+03:00</OrgnlCreDtTm>
</OrgnlRefs>
<RptgPty>
<PtyId>
<Id>
<OrgId>
<Othr>
<!-- БИК Банка -->
<Id>044525593</Id>
</Othr>
</OrgId>
</Id>
</PtyId>
</RptgPty>
<RegnAgt>
<FinInstnId>
<!-- SWIFT код банка -->
<BICFI>ALFARUMM</BICFI>
</FinInstnId>
</RegnAgt>
<!-- Статус обработки всего сообщения -->
<Sts>ACPT</Sts>
</GrpSts>
<PackgSts>
<!-- Неиспользуемое поле -->
<PackgId>undefined</PackgId>
<!--Статус обработки всего сообщения (дублирует статус GrpSts.Sts) -->
<Sts>ACPT</Sts>
<!-- 1я Запись с контрактом, по которому нужно сформировать ВБК -->
<RcrdSts>
<!--Уникальный ID записи контракта -->
<RcrdId>TEST_ID_2022-08-23-2791905441</RcrdId>
<!--Статус обработки ВБК, соответствующей записи с контрактом -->
<Sts>ACPT</Sts>
</RcrdSts>
<!-- 2я Запись с контрактом, по которому нужно сформировать ВБК -->
<RcrdSts>
<!--Уникальный ID записи контракта -->
<RcrdId>TEST_ID_2022-08-23-2791905442</RcrdId>
<!--Статус обработки ВБК, соответствующей записи с контрактом -->
<Sts>ACPT</Sts>
</RcrdSts>
</PackgSts>
</CcyCtrlStsAdvc>
</Document>
Ответ для неуспешной обработки запроса
Пример ответа с текстом ошибки в запросе
<Document xmlns="urn:iso:std:iso:20022:tech:xsd:auth.027.001.01">
<CcyCtrlStsAdvc>
<GrpHdr>
<!-- Уникальный ID сообщения-->
<MsgId>02aec2645110423b8aa074d1414e61cf</MsgId>
<!-- Дата и время создания сообщения -->
<CreDtTm>2022-08-23T15:45:01.819+03:00</CreDtTm>
<!--Количество блоков ReqOrLttr в исходном сообщении -->
<NbOfItms>1</NbOfItms>
<RegnAgt>
<FinInstnId>
<!-- SWIFT код банка -->
<BICFI>ALFARUMM</BICFI>
<ClrSysMmbId>
<!-- БИК Банка -->
<MmbId>044525593</MmbId>
</ClrSysMmbId>
</FinInstnId>
</RegnAgt>
</GrpHdr>
<GrpSts>
<OrgnlRefs>
<!-- Уникальный ID исходного сообщения с запросом-->
<OrgnlMsgId>TEST_MSG_2022-08-23-279190544</OrgnlMsgId>
<OrgnlMsgNmId>auth.026.001.01</OrgnlMsgNmId>
<!-- Дата и время исходного сообщения с запросом -->
<OrgnlCreDtTm>2022-08-23T15:44:40.624+03:00</OrgnlCreDtTm>
</OrgnlRefs>
<RptgPty>
<PtyId>
<Id>
<OrgId>
<Othr>
<!-- БИК Банка -->
<Id>044525593</Id>
</Othr>
</OrgId>
</Id>
</PtyId>
</RptgPty>
<RegnAgt>
<FinInstnId>
<!-- SWIFT код банка -->
<BICFI>ALFARUMM</BICFI>
</FinInstnId>
</RegnAgt>
<!-- Статус обработки всего сообщения -->
<Sts>RJCT</Sts>
<StsRsn>
<Rsn>
<Cd>NARR</Cd>
</Rsn>
<AddtlInf>Ошибка в параметрах запроса: RUS: Номер УНК/ПС указан неверно или ПС, закрытые до 01.10.2012 в ТБСВК не хранятся и к поиску и формированию из ТБСВК недоступны / ENG: The № DP/UC is incorrect or DP has been archived</AddtlInf>
</StsRsn>
</GrpSts>
<PackgSts>
<!-- Неиспользуемое поле -->
<PackgId>undefined</PackgId>
<!--Статус обработки всего сообщения (дублирует статус GrpSts.Sts) -->
<Sts>RJCT</Sts>
<!-- 1я Запись с контрактом, по которому нужно сформировать ВБК -->
<RcrdSts>
<!--Уникальный ID записи контракта -->
<RcrdId>TEST_ID_2022-08-23-2791905441</RcrdId>
<!--Статус обработки ВБК, соответствующей записи с контрактом -->
<Sts>RJCT</Sts>
<StsRsn>
<Rsn>
<!-- -->
<Cd>NARR</Cd>
</Rsn>
<!-- Описание ошибки -->
<AddtlInf>Ошибка в параметрах запроса: RUS: Номер УНК/ПС указан неверно или ПС, закрытые до 01.10.2012 в ТБСВК не </AddtlInf>
<AddtlInf>хранятся и к поиску и формированию из ТБСВК недоступны / ENG: The № DP/UC is incorrect or DP has been arc</AddtlInf>
<AddtlInf>hived </AddtlInf>
</StsRsn>
</RcrdSts>
<!-- 2я Запись с контрактом, по которому нужно сформировать ВБК -->
<RcrdSts>
<!--Уникальный ID записи контракта -->
<RcrdId>TEST_ID_2022-08-23-2791905442</RcrdId>
<!--Статус обработки ВБК, соответствующей записи с контрактом -->
<Sts>RJCT</Sts>
<StsRsn>
<Rsn>
<Cd>NARR</Cd>
</Rsn>
<!-- Описание ошибки -->
<AddtlInf>Ошибка в параметрах запроса: RUS: Номер УНК/ПС указан неверно или ПС, закрытые до 01.10.2012 в ТБСВК не </AddtlInf>
<AddtlInf>хранятся и к поиску и формированию из ТБСВК недоступны / ENG: The № DP/UC is incorrect or DP has been arc</AddtlInf>
<AddtlInf>hived </AddtlInf>
</StsRsn>
</RcrdSts>
</PackgSts>
</CcyCtrlStsAdvc>
</Document>
29. Скачивание архива с Ведомостями банковского контроля
URI
GET: /API/v1/ISO20022/ContractReports/Files/<MsgId>
Ответ
Скачивание файла доступно только при статусе всего запроса "Запрос успешно обработан" (ACPT) или "Частично обработан" (PART).
Описание статусов доступно в разделе [CONTRACT_REPORTS_STATUS_MODEL].
В разделе HTTP статусы ответов от сервиса Ведомость банковского контроля доступен список кодов ошибок с описанием.
Ответ на успешно обработанный запрос
Запрос в статусах:
-
"Запрос успешно обработан" (ACPT)
-
"Частично обработан" (PART)
Метод вернет HTTP статус 200 и файл архива со списком ВБК.
Ответ для запроса без архива
Запрос в статусах:
-
"Обработка" (PDNG)
-
"Принят в обработку" (ACTC)
-
"Отклонен" (RJCT)
Метод вернет HTTP статус 404 со следующим телом ответа:
Message with <MsgId> not found