Модульбанк API

by Модульбанк

Финансовый API для платежей, счетов, карт, переводов и банковских интеграций.

📦 Другие
Компания
Модульбанк
Сайт компании
modulbank.ru ↗
Адрес API
https://api.modulbank.ru/v1
О компании

Российский банк, который специализируется на обслуживании малого и среднего бизнеса. Он предлагает широкий спектр финансовых услуг, включая расчётно-кассовое обслуживание, кредитование, депозиты и другие.

Обзор API
Методы
37
Группы
5
Версия API
v1

API — технология, которая поможет подключить личный кабинет Модульбанка к любому сервису для бизнеса. Не нужно подавать заявку на подключение и ничего согласовывать — подключиться можете прямо из личного кабинета банка. Описание протокола Запросы осуществляются посредством протокола https, на адрес https://api.modulban...

Сервера
https://api.modulbank.ru/v1
Разделы
QR Pay 16 Номинальные счета 9 Получение данных 5 Авторизация и аутентификация 4 Загрузка данных 3
Методы API
QR Pay
API QR Pay (PortalAPI/SBP) Режим песочницы недоступен для методов QR Pay. Рекомендуется проводить тестирование на бою малыми суммами. По динамическим QR кодам возможен возврат платежа. Базовый адрес https://api.modulbank.ru/v1/ Авторизация Смотрите раздел получение данных Требуемые права токена account info, operation upload Типы перечислений Тип ТСП Значение Описание QRPay Стандартная точка продаж СБП InternetAcquiring Интернет эквайринг ModulKassa МодульКасса Статус регистрации ТСП Значение Описание New Новый запрос Processing В обработке Registered Зарегестрирован в СБП Rejected Отклонен Blocked Заблокирован (приостановка от фрод мониторинга) Error Ошибка при регистрации RejectedFBR Отклонен фрод мониторингом NotRegistered Заявка не зарегистрирована, ожидает начала регистрации Тип QR кода Значение Описание QRS Статический (QR наклейка) QRD Динамический (QR на кассе) Статусы QR кода Значение Описание NotStarted Операции по QR коду не существует Received Операция в обработке InProgress Операция в обработке Accepted Операция завершена успешно Rejected Операция отклонена TimedOut Время ожидания операции превышено
16 методов
POST /sbp/cash-links
Регистрация Кассовой ссылки СБП

Запрос предназначен для регистрация Кассовой ссылки СБП

Параметры
request body object required
Ответы
200 OK
POST /sbp/cash-links/{qrcId}/activate
Активировать Кассовую ссылку СБП

Запрос предназначен для активировации Кассовой ссылки СБП

Параметры
qrcId path required request body object required
Ответы
200 OK
POST /sbp/cash-links/{qrcId}/deactivate
Деактивировать Кассовую ссылку СБП

Запрос предназначен для деактивировации Кассовой ссылки СБП

Параметры
qrcId path required
Ответы
204 No Content
GET /sbp/cash-links/{qrcId}/operations
Список операций Кассовой ссылки СБП

Получить список операций Кассовой ссылки СБП

Параметры
qrcId path required
Ответы
200 OK
GET /sbp/cash-links/{qrcId}/operations/{paramsId}/status
Статус операции Кассовой ссылки СБП

Получить статус операции Кассовой ссылки СБП

Параметры
qrcId path required paramsId path required
Ответы
200 OK
GET /sbp/cash-links/{qrcId}/status
Статус Кассовой ссылки СБП

Получить статус Кассовой ссылки СБП

Параметры
qrcId path required
Ответы
200 OK
GET /sbp/mcc
Список МСС

Получение списка МСС кодов (код категории продавца)

Ответы
200 OK
POST /sbp/qr-codes/dynamic
Создание нового динамического QR кода

Запрос предназначен для создания QR кода для конкретной торговой точки

Параметры
request body object required
Ответы
200 OK
POST /sbp/qr-codes/refund
Возврат по платежу

Запрос предназначен для осуществления возврата по sbpOperId (идентификатор транзакции в СБП)

Параметры
request body object required
Ответы
200 OK
GET /sbp/qr-codes/refund/{refundId}
Статус возврата

Получить статус возврата QR кода по внутреннему идентификатору, полученному при создании возврата

Параметры
refundId path required
Ответы
200 OK
GET /sbp/qr-codes/{qrcId}
Получение данных QR кода

Запрос на получение статуса и свойств QR кода по QrcId

Параметры
qrcId path required
Ответы
200 OK
GET /sbp/qr-codes/{qrcId}/image
Получение изображения QR кода

Получение изображения QR кода по QrcId в формате PNG

Параметры
qrcId path required
Ответы
200 OK
GET /sbp/retail-points
Получение списка точек продаж

Получение списка точек продаж, зарегистрированных в Системе Быстрых платежей. ID компании можно получить через запрос: account info

Параметры
companyId query required
Ответы
200 OK
POST /sbp/retail-points
Регистрация торговой точки

Запрос предназначен для регистрации торговой точки

Параметры
request body object required
Ответы
200 OK
GET /sbp/retail-points/{tspId}
Получение ТСП

Запрос на получение данных о торговой точке (ТСП) по идентификатору

Параметры
tspId path required
Ответы
200 OK
GET /sbp/retail-points/{tspId}/status
Получение статуса регистрации ТСП

Запрос на получение статуса регистрации торговой точки (ТСП) по идентификатору

Параметры
tspId path required
Ответы
200 OK
Номинальные счета
Владелец номинального счета ежедневно не позднее 23:00 МСК отправляет данные бенефициарных владельцев (бенефициаров). Для этого используется публичное API Модульбанка. В массиве данных должна содержаться информация обо всех бенефициарах, чьи деньги находятся на номинальном счете на момент отправки массива, а также о бенефициарах, по которым были движения средств за прошедшие сутки. Система Модульбанка обрабатывает полученные данные, и на их основе формирует Отчет о бенефициарных владельцах на текущую дату и Анкеты бенефициарных владельцев по форме, которая соответствует требованиям 115 ФЗ. Если клиент не прислал массив, то мы отправляем в его личный кабинет уведомление о том, что данные нужно отправить. Отчет и Анкеты размещаются в личном кабинете Модульбанка владельца номинального счета. Туда же отправляется уведомление о необходимости подписания файлов. Владелец номинального счета на следующий день после отправки массива подписывает Отчёт и Анкеты. Это делается или через личный кабинет или через API Модульбанка. В первом случае владелец входит в кабинет и подписывает Отчет простой электронной подписью, а Анкеты усиленной квалифицированной электронной подписью (УКЭП). Способ подписания через API описан ниже. Подписанные отчет и анкеты сохраняются в системе Модульбанка. Подписание Отчёта по бенефициарам через API Здесь и ниже: при получении ошибок попытайтесь выполнить рекомендации из сообщения об ошибке. Если это не поможет напишите в поддержку банка. Есть два метода подписания отчетов по бенефициарам: v1 и v2. Метод v2 реализован позже и отличается тем, что сначала нужно получить и подписать PDF всех ранее неподписанных отчётов, а не только последнего. На текущий момент работают обе версии, но мы настоятельно рекомендуем использовать метод v2, так как в скором времени v1 будет отключён. Описание метода v1: 1. По номеру номинального счёта получите PDF с последним отчётом о бенефициарах – метод "Получить файл отчёта". 2. Полученный отчёт подпишите с помощью УКЭП и передайте в банк отсоединённую подпись в формате Base64 – метод "Проверить и передать в банк подписанный отчёт". Описание метода v2: 1. По номеру номинального счёта получите список всех ID отчетов, которые ранее не были подписаны – "Метод получения информации о не подписанных отчетов". 2. По полученным ID с помощью "Метода получения файла отчета" получите PDF файлы отчетов. 3. Полученные файлы подпишите с помощью УКЭП и передайте в банк отсоединённую подпись в формате Base64 – метод "Проверить и передать в банк подписанный отчёт". Пример того, как можно подписать данные см. ниже. Подписание Анкет бенефициаров через API 1. Методом "Получить список анкет по бенефициарам" получите id частей анкет (Guid). В случае, когда бенефициаров немного, каждая анкета будет иметь одну часть, но возможно и большее количество. 2. Вызовите метод "Получить файл с частью конкретной анкеты" для получения zip архива. 3. Используйте метод "Проверить и передать в банк подписанную часть анкеты" для загрузки отсоединённой подписи в формате Base64. Пример того как можно подписать данные см. ниже. Подписание строки и получение отсоединённой электронной подписи в формате Base64. Скачать приложение cryptcp от компании КриптоПро и выполнить запрос: cryptcp.x64.exe sign f dn " " detached pin Например: cryptcp.x64.exe sign f cert2.cer dn "7840473679" detached pin password123 test.txt
9 методов
POST /beneficial/{accountNumber}/import
Отправить данные бенефициаров
Параметры
accountNumber path required contract body object required
Ответы
200 OK 400 Ошибка в переданных данных 401 Ошибка авторизации
GET /beneficial/{nominalAccountNumber}/forms/parts
Получить список частей анкет по бенефициарам
Параметры
nominalAccountNumber path required
Ответы
200 OK 400 Ошибка в переданных данных 401 Ошибка авторизации
GET /beneficial/{nominalAccountNumber}/forms/parts/{partId}
Получить файл с частью конкретной анкеты
Параметры
nominalAccountNumber path required partId path required
Ответы
200 Файл анкеты 400 Ошибка в переданных данных 401 Ошибка авторизации
POST /beneficial/{nominalAccountNumber}/forms/parts/{partId}/send
Проверить и передать в банк подписанную часть анкеты
Параметры
nominalAccountNumber path required partId path required signedDocumentRequest body object required
Ответы
204 No Content 400 Ошибка в переданных данных 401 Ошибка авторизации
GET /beneficial/{nominalAccountNumber}/report
Получить файл отчёта
Параметры
nominalAccountNumber path required
Ответы
200 Файл отчёта 400 Ошибка в переданных данных 401 Ошибка авторизации
POST /beneficial/{nominalAccountNumber}/report/send
Проверить и передать в банк подписанный отчёт
Параметры
nominalAccountNumber path required signedDocumentRequest body object required
Ответы
204 No Content 400 Ошибка в переданных данных 401 Ошибка авторизации
GET /beneficiaries/v2/{bankAccountNumber}/report/{id}
Метод получения файла отчета
Параметры
bankAccountNumber path required id path required
Ответы
200 Файл отчёта 400 Ошибка в переданных данных 401 Ошибка авторизации
POST /beneficiaries/v2/{nominalAccountNumber}/report/{id}/send
Проверить и передать в банк подписанный отчёт
Параметры
nominalAccountNumber path required id path required signedDocumentRequest body object required
Ответы
204 No Content 400 Ошибка в переданных данных 401 Ошибка авторизации
GET /beneficiaries/v2/{nominalAccountNumber}/reports/unsigned
Метод получения информации о не подписанных отчетов
Параметры
nominalAccountNumber path required
Ответы
200 Информации об не подписанных отчетов 400 Ошибка в переданных данных 401 Ошибка авторизации
Получение данных
Методы для получения информации по счетам и операциям.
5 методов
POST /account-info
Получение информации о компаниях пользователя

Получение информации о компаниях пользователя (один и тот же клиент Модульбанка может быть сотрудником нескольких компаний) и счетах компаний пользователя. Требуемые права токена account info

Ответы
200 OK
POST /account-info/balance-details/{accountId}
Получение баланса и овердрафта по счету

Требуемые права токена account info

Параметры
accountId path required
Ответы
200 OK
POST /account-info/balance/{accountId}
Получение баланса по счету

Требуемые права токена account info

Параметры
accountId path required
Ответы
200 OK
POST /account-info/balance/{accountId}/{date}
Получение баланса по счету за дату

Требуемые права токена account info

Параметры
accountId path required date path required
Ответы
200 OK
POST /operation-history/{accountId}
Просмотр истории операций

Требуемые права токена operation history Список статусов платежей Статус Расшифровка Draft Черновик SendToBank Ожидающая исполнения Executed Исполненная RejectByBank Отказано банком в исполнении Canceled Отменённая Received Исполненная PayR...

Параметры
accountId path required model body object required
Ответы
200 OK 400 { exceptionType: 'AccessDenied', message: 'У пользователя нет доступа к счёту' }
Авторизация и аутентификация
Получить токен авторизации можно двумя способами: сгенерировать его в ЛК Модульбанка или получить по протоколу OAuth 2 . Генерация токена в ЛК Если вы хотите получать от API данные исключительно по свой учетной записи в Модульбанке, воспользуйтесь механизмом получения токена в Личном кабинете. Выберите пункт «Подключиться к API» в меню действий ЛК и следуйте дальнейшим инструкциям. Важно!Полученный токен привязан к вашей учетной записи в ЛК и не должен передаваться третьим лицам! После генерации токена вы можете сразу начать его использование для получения данных в API. OAuth 2. Общая схема работы Если вы разрабатываете приложение (бот для телеграма, плагин для общедоступной CRM и т.д.), которое может быть полезно для любого пользователя Модульбанка, вы можете авторизовывать пользователей через сервер авторизации Модульбанка по OAuth подобному протоколу. Схема авторизации пользователей идентична протоколу OAuth 2.0, за небольшим исключением что сервер авторизации Модульбанка кроме формата x www form urlencoded также поддерживает формат json в теле запроса. Для того чтобы стороннее приложение могло совершать запросы к API от лица конкретного пользователя, приложению необходимо получить токен авторизации, подтверждающий что пользователь предоставил приложению права на выполнение тех или иных действий. Важно!Если вы хотите авторизовывать пользователей Модульбанка по протоколу OAuth, ваше приложение должно быть зарегистрировано у нас. Для регистрации приложения напишите нам письмо на api@modulbank.ru. В ответ мы вышлем вам clientId и clientSecret — уникальные для каждого приложения идентификатор и секретное слово (необходимые параметры для взаимодействия с сервером авторизации Модульбанка). Схема получения токена авторизации пользователя сторонним приложением. ![](https://modulbank.ru/fs/files/marketingApi/token scheme.jpg) Пользователь инициирует авторизацию стороннего приложения. Приложение отправляет запрос Authorization Request на сервер авторизации Модульбанка. Сервер авторизации Модульбанка перенаправляет пользователя на страницу авторизации. Пользователь вводит свой логин и пароль, просматривает список запрашиваемых прав и подтверждает, либо отклоняет запрос авторизации. Приложение получает ответ Authorization Response в виде HTTP Redirect со временным токеном для получения доступа или кодом ошибки. Приложение, используя полученный временный токен доступа, отправляет запрос на получение токена авторизации. Ответ содержит токен авторизации ( access token ). Права на выполнение операций При запросе авторизации стороннее приложение должно явно указывать в параметре scope набор прав, необходимых приложению для работы. Список возможных прав: Название права Описание account info Получение информации о компаниях пользователя (один и тот же клиент Модульбанка может быть сотрудником нескольких компаний) и счетах компаний пользователя operation history Просмотр истории операций operation upload Загрузка операций в ЛК
4 методов
GET /oauth/authorize
Запрос авторизации GET

Приложение отправляет запрос авторизации на сервер Модульбанка. Запрос авторизации отправляется из браузера клиента.

Параметры
model.clientId query model.redirectUri query model.scope query model.state query
Ответы
302 Redirect
POST /oauth/authorize
Запрос авторизации POST

Приложение отправляет запрос авторизации на сервер Модульбанка. Запрос авторизации отправляется из браузера клиента.

Параметры
model body object required
Ответы
302 Redirect
POST /oauth/token
Обмен временного токена на токен авторизации

Временный токен (значение поля code ответа) подлежит немедленному обмену на токен авторизации. Время действия этого токена — меньше 1 минуты. Приложение должно получить и обработать ответ сервера и немедленно самостоятельно обменять временн...

Параметры
model body object required
Ответы
200 OK
POST /revoke
Отзыв токена

Приложение может отозвать полученный токен авторизации.

Ответы
200 OK
Загрузка данных
Методы по созданию и подписанию платежей. Идемпотентность платежей Ключ идемпотентности опционален к заполнению, можно указывать в запросе в виде query параметра, например: https://api.modulbank.ru/v1/operation upload?idempotency key= или в header параметрах: Idempotency Key Валидации: при указании ключ идемпотентности не должен быть пустым, может содержать до 256 символов латиница, цифры, дефис При получении запроса operation upload с Idempotency Key, сервис проверит, была ли ранее создана операция с таким UUID. Если операция была создана, сервер вернет ответ с текущим Id этой операции. Если операции с таким UUID не найдено, сервис начнет ее выполнение
3 методов
POST /operation-upload
Импорт платежей в формате JSON

Примеры заполнения Платёж контрагенту { "payment": { "Number": "12345", "Date": "15.08.2023", "Sum": 1.01, "PayerAccount": "40802810870010433949", "RecipientName": "ООО Ромашка", "RecipientINN": "1242610857", "RecipientKPP": "256845746", "R...

Параметры
request body object required
Ответы
200 OK
POST /operation-upload/1c
Импорт платежей в формате 1С

Публичное апи позволяет загружать в личный кабинет платежные поручения в формате 1С (http://v8.1c.ru/edi/edi stnd/100/101.htm). Все загруженные платежные поручения имеют статус «Черновик». Пример заполнения { "document":"1CClientBankExchang...

Параметры
request body object required
Ответы
200 OK
POST /operation-upload/sign
Подписание платежей

Позволяет подписывать платежи квалифицированной электронной подписью. После подписания платежи отправляются в банк и проводятся. Для подписания составляем строку из id платежей отсортированных по алфавиту, без кавычек разделенных запятой, б...

Параметры
request body object required
Ответы
200 OK 400 { exceptionType: 'SignCheckError', message: 'Срок действия подписи закончился {d... 401 { exceptionType: 'AccessDenied', message: 'Доступ запрещён' }

Похожие API