Спецификация Alfa API
Введение
Для подключения Alfa API необходимо написать письмо на почту alfa_api@alfabank.ru с указанием названия компании, контактными данными и описанием бизнес-кейса.
Alfa API помогает бизнесу обеспечить бесшовное взаимодействие с Банком и встроить банковские услуги в свои продукты и процессы.
В Alfa API представлены следующие типы интеграций:
- партнерские сервисы. При данном типе интеграции предоставляется возможность использовать бесшовную аутентификацию и продукты Банка для оказания услуг клиентам.
- H2H-интеграции - это прямой канал взаимодействия систем Банка и клиента, с помощью которого можно встроить банковские продукты и услуги в ERP-системы организации.
- холдинги предоставляют возможность для головной организации выполнять казначейские функции по своим дочерним компаниям.
При создании Alfa API использовались спецификации oAuth 2.0, OIDC 1.0, формат JSON, RESTful архитектура, синхронный обмен данными.
Терминология:
Alfa API - это канал предоставления банковских продуктов и услуг, а также инструмент их безопасной интеграции в бизнес-процессы Партнеров API.
Alfa ID - единая учетная запись пользователя ЮЛ (юридического лица)/ ФЛ (физического лица), используемая для регистрации и входа пользователей в продукты и сервисы Банка и Партнеров API, а также инструмент привлечения не-клиентов Банка. Взаимодействие между Банком и клиентом осуществляется по спецификациям oAuth 2.0 (RFC 6749) и OIDC 1.0. Взаимодействие между Банком и Партнером API осуществляется на основании юридически значимого согласия клиента на передачу персональных данных.
Партнер API – клиент Банка, использующий канал Alfa API для проведения интеграции своей системы и системы/сервисов Банка. Для Партнера API необходимо заключить Договор на информационно-технологическое взаимодействие в целях использования канала Alfa API.
access_token - токен доступа, который формируется при аутентификации пользователя в Alfa ID и необходим для вызова методов в Alfa API.
Чек-лист для Партнеров API
Проверьте готовность к тестовой интеграции
Заключите соглашение о конфиденциальности и неразглашении информации, договор на информационно-технологическое взаимодействие с Банком и подпишите приложения к нему (шаг 1-2 из раздела Подключение к API).
Получите тестовый client_id и тестовый scope (шаг 3 из раздела Подключение к API). Как получить несколько client_id, смотрите в примечании (шаг 3 из раздела Подключение к API).
Установите тестовый TLS-сертификат и проверьте доступ до Swagger UI (подробнее в разделе Песочница).
Получите client_secret (шаг 7 в разделе Подключение к API).
Проверьте готовность к промышленной интеграции
Выполните все пункты из подраздела "Проверьте готовность к тестовому доступу" Чек-листа.
Сообщите об успешном тестировании (шаг 5 из раздела Подключение к API).
Выпустите TLS-сертификат (шаг 6 в разделе Подключение к API).
Получите промышленный client_id и scope (шаг 3 из раздела Подключение к API). Как получить несколько client_id, смотрите в примечании (шаг 3 из раздела Подключение к API).
Получите промышленный client_secret (шаг 7 в разделе Подключение к API).
Подключение к Alfa API
Для подключения к Alfa API необходимо выполнить действия:
Шаг 1. Стать клиентом "Альфа-Банка", оформить расчетно-кассовое обслуживание и оформить подключить "Альфа-Бизнес Онлайн" , подписав пакет документов.
Шаг 2. Заключить договор с Банком.
Подпишите типовые формы соглашения о конфиденциальности и неразглашении информации, а также договора на информационно-технологическое обслуживание и приложений к нему (вопросы по заключению договора направляйте на alfa_api@alfabank.ru.
Комиссия за подключение и использование не взимается.
Шаг 3. Получить от банка client_id.
Для получения client_id направьте ваш redirect_uri на почту alfa_api@alfabank.ru. c электронной почты, указанной в Договоре.
При использовании типа гранта Client Credentials Flow шаг с направлением redirect_uri пропускается.
redirect_uri - URL, на который сервер авторизации будет отправлять пользователя после успешной авторизации приложения и которому будет предоставляться код авторизации. Необходим при использовании типа гранта Authorization Code Flow.
Пример redirect_uri https://romashka.ru
! Redirect_uri нужен для получения кода авторизации. Далее код авторизации обменивается на токен доступа (access_token). Без токена доступа нельзя воспользоваться методами API.
В ответном письме сотрудники Банка сообщат client_id и scope, который разрешен для использования.
Примечание. У Партнеров API может быть несколько client_id в случаях, если:
1) Партнер интегрирует Alfa API/ Alfa ID в свой сервис, используя разные точки входа для клиентов-физических лиц и клиентов-юридических лиц;
2) Партнер планирует предоставлять разные сервисы своим клиентам;
3) Партнеру требуется получение данных по своей организации, а также использование партнерского сервиса (если есть прямая интеграция банка и ERP-системы клиента, и есть отдельная интеграция продукта клиента с Alfa API / Alfa ID ).
Тогда Партнер API запрашивает у сотрудников Банка отдельный client_id для каждой интеграции, а также учитывает наличие нескольких client_id при реализации интеграции.
Шаг 4. Реализовать интеграцию.
Реализовать и протестировать сценарий аутентификации в Alfa ID. Реализовать и протестировать сценарии вызовов методов Alfa API. Подробнее в разделе "Песочница".
Шаг 5. Сообщить об успешном тестировании.
После проведения успешного тестирования клиент направляет на электронную почту alfa_api@alfabank.ru. письмо о проведенном тестировании. Тема письма: "Завершенное тестирование".
Шаг 6. Выпустить TLS-сертификат.
Взаимодействие между Банком и Партнером API реализовано с использованием двухстороннего TLS-соединения, для которого необходимо выпустить сертификат. ! Внимательно ознакомьтесь с требованиями к сертификату и инструкцией по созданию закрытого ключа и запроса на сертификат.
Требования к сертификату
Чтобы обеспечить проверку системы Партнера API на основе сертификата, в subject сертификата предусмотрены обязательные поля:
Global Subject
| Атрибут | Значение |
|---|---|
| СountryName | Название страны партнера |
| Country | Страна, в виде двухсимвольного ISO-кода. Для России: RU |
| OrganizationName | Название организации |
| CommonName | ФИО представителя организации |
| EmailAddress | Электронный адрес для обратной связи (служебный, не персональный) |
В зависимости от правовой формы должно быть указано одно из нижеперечисленных полей:
Variable Subject
| Атрибут | Значение |
|---|---|
| Для юридических лиц в России | INN = 1.2.643.3.131.1.1 |
| Для физических лиц в России | SNILS = 1.2.643.100.3 |
| Для иностранных партнеров | FOREIGNID = 1.3.6.1.4.1.16745.100.1 |
Инструкция генерации закрытого ключа и запроса на сертификат в openssl:
(Также можно использовать иное другое ПО для генерации закрытого ключа и запроса на сертификат).
Подготовьте файл конфигурации, в котором будут указаны все обязательные атрибуты в subject.
Пример заполненного файла: openssl_INN.cnf
Cгенерируйте закрытый ключ, введя команду в терминале:
openssl genrsa -des3 -out name.key 2048
Рекомендации для Mac OS: введите дважды пароль от вашего Mac OS.
На основе созданного ключа сгенерируйте запрос на сертификат (CSR) с приватным ключом RSA:
openssl req -config openssl.cnf -key name.key -new -sha256 -out name.csr
Рекомендации для Mac OS: В примере выше openssl.cnf - имя вашего конфигурационного файла. Пропишите полный путь файла конфиг (начиная с папки /Users/.../openssl.cnf). Заполните необходимые поля: название компании, ФИО и ИНН.
Файлы name.csr (открытый ключ) и name.key (закрытый ключ) проверьте в вашей корневой папке.
Проверьте наличие обязательных атрибутов в Subject созданного запроса на сертификат:
openssl req -noout -text -in name.csr
Пример запроса на сертификат (здесь указан INN = 1.2.643.3.131.1.1. в формате, поддерживаемом Mac OS, INN вводится в стандартном российском формате. Пример = 7728168971).
Отправьте запрос на сертификат на электронную почту alfa_api@alfabank.ru. с указанием темы письма "Запрос на сертификат". Письмо должно быть направлено с электронной почты, указанной в Договоре. Никому не передавайте закрытый ключ.
Получите выпущенный сертификат, направленный с почтового адреса alfa_api@alfabank.ru. Срок действия сертификата - 375 дней. По истечении срока действия сертификата выполнить его повторную генерацию.
В случае компрометации закрытого ключа Партнер API направляет на электронную почту alfa_api@alfabank.ru. запрос на повторный выпуск сертификата.
Порядок повторного выпуска сертификата:
Партнер, не ранее чем за три месяца и не позднее, чем за один месяц до истечения действия сертификата, формирует и направляет запрос на сертификат в Банк. Контроль за сохранностью и сроками действия сертификатов возлагается на Партнера API. В случае, если Партнер API по каким-либо причинам, утратил сертификат, не предоставил запрос на сертификат или не выполнил установку нового сертификата на своей стороне, в том числе и в настройках приложения на портале, то вся ответственность по простою из-за утраты доступа к Альфа API возлагается на Партнера. В целях минимизации рисков просрочки сроков выпуска, предусмотрено автоматическое оповещение об истечении сроков действия сертификата.
Шаг 7. Получить client_secret.
{POST clients/{clienID}client-secret}.
Для получения client_secret, необходимо вызвать метод: https://baas.alfabank.ru/oidc/clients/{clientId}/client-secret
Code samples
curl -X POST https://baas.alfabank.ru/oidc/clients/{clientId}/client-secret \
-H 'Accept: application/json'
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| clientId | path | string(uuid) | true | Идентификатор партнерского сервиса |
Example responses
200 Response
{
"clientId": "0cee0683-85ae-49f2-a63d-29f97aad1911",
"clientSecret": "Qwerty1234567890Qwerty1234567890!"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | ClientSecretResponse |
| 400 | Bad Request | BAD REQUEST | Error |
| 401 | Unauthorized | UNAUTHORIZED | None |
| 404 | Not Found | NOT FOUND | None |
| 500 | Internal Server Error | INTERNAL SERVER ERROR | None |
Schemas
ClientSecretResponse
{
"clientId": "0cee0683-85ae-49f2-a63d-29f97aad1911",
"clientSecret": "Qwerty1234567890Qwerty1234567890!"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| clientId | string(uuid) | true | Идентификатор партнерского сервиса |
| clientSecret | string | true | Секретный ключ партнерского сервиса |
Error
{
"error": "invalid_request",
"error_description": "string"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Ошибка |
| error_description | string | false | Описание ошибки |
Шаг 8. Начать использовать Alfa API.
Для запросов в Alfa ID используйте адрес https://id.alfabank.ru/oidc. Для запросов Alfa API используйте адрес https://baas.alfabank.ru/api.
Аутентификация в Alfa ID
Типы грантов, реализуемые для аутентификации и авторизации в Alfa ID:
Как использовать сценарии:
Токен доступа, полученный по Client Credentials Flow может быть использован только в H2H интеграциях для вызова системных API без привязки к данным пользователя (например, получение сводных отчетов, создание черновика заявки и т.д.).
Вы не сможете получить выписку, создать платежку и выполнить другие продуктовые запросы с помощью токена доступа, полученного по Client Credentials Flow. Это связано с тем, что такой токен доступа не содержит данные пользователя, в связи с чем Банк не сможет проверить полномочия представителя на получение информации по операциям, услугам, сервисам в соответствии с условиями договора на обслуживание по системе «Альфа-Бизнес Онлайн».
Токен доступа, полученный по Authorization Code Flow может быть использован для любого типа интеграций и любых вызовов в рамках вашего scope.
Authorization Code Flow
Для отправки запросов в Alfa API необходимо пройти аутентификацию в Alfa ID пользователю, от имени которого будут направляться запросы в Alfa API. Получение Access_token - необходимое условие для прохождения аутентификации пользователя. Аутентификация и авторизация происходит с использованием Authorization Code Flow.
Аутентификация выполняется путем переадресации пользователя с запросом /authorize на страницу входа в Alfa ID и запроса /token для получения Access token.
Пройдите следующие шаги аутентификации:
- Шаг 1. Получение кода авторизации (получение Authorization Code) GET authorize
- Шаг 2. Получение токена доступа (получение access_token) POST token.
- Шаг 3. Получение информации о профиле представителя ЮЛ/физического лица GET userinfo.
- Шаг 4. Проверка подписи.
Опционально:
Шаг 1. Получение кода авторизации (получение Authorization Code) GET authorize
URL: https://id.alfabank.ru/oidc/authorize
Код авторизации действует 2 минуты.
Откройте окно "Вход через Alfa ID":
Сформируйте ссылку:
https://id.alfabank.ru/oidc/authorize?response_type=code&client_id={client_id}&redirect_uri={redirect_uri}&scope={scope}&state={state} с обязательными параметрами, указанными ниже в таблице. Также опционально могут быть использованы необязательные параметры, указанные ниже в таблице.
При формировании ссылки указывайте весь доступный Scope через знак пробела или (%20). Если вы используете тип интеграции - партнерские сервисы, то укажите в конце ссылки дополнительный параметр - prompt=consent.
1) После переадресации представитель юридического лица/физическое лицо проходит процедуру аутентификации, осуществляет введение логина и пароля:
2) Представитель юридического лица выбирает необходимую организацию (при работе с несколькими юридическими лицами; для физических лиц, шаг пропускается):
3) Представитель юридического лица/физическое лицо проходит процедуру авторизации, подписывая форму согласия:
Формирование параметров:
Code samples
curl -X GET https://id.alfabank.ru/oidc/authorize?response_type=code&client_id=0cee0683-85ae-49f2-a63d-29f97aad1911&redirect_uri=https%3A%2F%2Fwwww.partner.ru%2Fcode&scope=openid&state=abcdef
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| response_type | query | string | true | Тип ответа всегда должен содержать значение "code" (обязательный параметр) |
| client_id | query | string(uuid) | true | Идентификатор партнерского сервиса (обязательный параметр, Банк выдает Партнеру API) |
| redirect_uri | query | string | true | URI перенаправления (обязательный параметр, который сообщает Партнер API) |
| scope | query | string | true | Область применения (обязательный параметр, Партнер API информирует, какой scope будет использован) |
| state | query | string | true | Параметр для предотвращения межсайтовой подделки запросов. Значение генерируется приложением партнёра для поддержания состояния между запросом и обратным вызовом. Рекомендуется использовать идентификатор сессии пользователя в приложении партнёра или одно из его производных (например, хэш этого идентификатора), или может использоваться любой другой механизм генерации случайного значения достаточной длины для предотвращения подбора. |
| nonce | query | string | false | Параметр для связывания клиентского сеанса с идентификатором токена и для смягчения атак повторного воспроизведения (дополнительный параметр, создает Партнер API) |
| code_challenge | query | string | false | Код вызова (дополнительный параметр) |
| code_challenge_method | query | string | false | Метод преобразования кода верификатора ({plain, S256}) (дополнительный параметр) |
| prompt | query | string | false | Параметр повторной аутентификации и согласия ({none, login, consent}) (дополнительный параметр) |
| max_age | query | integer | false | Максимальный период аутентификации (дополнительный параметр) |
Enumerated Values
| Parameter | Value | Description |
|---|---|---|
| response_type | code | Тип ответа указывает, что ваш сервер ожидает получения кода авторизации |
| code_challenge_method | plain | Код верификатор |
| code_challenge_method | S256 | BASE64URL-ENCODE(SHA256(ASCII(Код верификатор))) |
| prompt | none | Сервер авторизации НЕ ДОЛЖЕН отображать какие-либо страницы пользовательского интерфейса аутентификации или согласия. |
| prompt | login | Сервер авторизации ДОЛЖЕН запросить у конечного пользователя повторную аутентификацию. |
| prompt | consent | Сервер авторизации ДОЛЖЕН запросить у конечного пользователя согласие, прежде чем возвращать информацию Клиенту. |
Пользователь возвращается в приложение Партнера API. Происходит возврат на redirect_uri, указанный в запросе. Пользователь с кодом приложения Партнера API меняет его на access_token.
При получении ответа 302 (Found), код авторизации получен.
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 302 | Found | FOUND | None |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 302 | Location | string | Содержит URI для перенаправления |
| 302 | Set-Cookie | string | Содержит идентификатор сессии |
Пример успешного ответа для заголовка Location: https://wwww.partner.ru/code?code=8962c304-89b1-11ec-a8a3-0242ac120002&state=abcdef
Пример неуспеха для заголовка Location: https://wwww.partner.ru/code?error=invalid_request&state=abcdef |
В случае направления ошибки параметр error принимает следующие значения:
| Значение | Описание |
|---|---|
| unsupported_response_type | Сервер авторизации не поддерживает получение кода авторизации этим методом. |
| login_required | Сервер авторизации требует аутентификации конечного пользователя. Эта ошибка МОЖЕТ быть возвращена, если значение параметра подсказки в запросе аутентификации равно none, но запрос аутентификации не может быть выполнен без отображения пользовательского интерфейса для аутентификации конечного пользователя. |
| invalid_scope | Запрошенная область применения недопустима, неизвестна или имеет неправильный формат. |
| invalid_request | В запросе отсутствует обязательный параметр, он включает недопустимое значение параметра, включает параметр более одного раза или имеет другой неправильный формат. |
| consent_required | Сервер авторизации требует согласия конечного пользователя. Эта ошибка МОЖЕТ быть возвращена, если значение параметра prompt в запросе аутентификации равно none, но запрос аутентификации не может быть выполнен без отображения пользовательского интерфейса для согласия конечного пользователя. |
| access_denied | Владелец ресурса или сервер авторизации отклонил запрос. |
| invalid_operation_response | Используйте только данные из Спецификации. |
Дополнительно c описанием ошибок можно ознакомиться в разделе "FAQ".
Шаг 2. Получение токена доступа (получение access_token) POST token
Токен доступа действует 1 час.
Для получения токена доступа необходимо вызвать метод https://baas.alfabank.ru/oidc/token со следующими параметрами:
Code samples
curl -X POST https://baas.alfabank.ru/oidc/token \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Accept: application/json'
-d 'grant_type=authorization_code&code=8962c304-89b1-11ec-a8a3-0242ac120002&client_id=0cee0683-85ae-49f2-a63d-29f97aad1911&client_secret=Qwerty1234567890Qwerty1234567890!&redirect_uri=https%3A%2F%2Fwwww.partner.ru%2Fcode&code_verifier='
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | AccessTokenRequest | true | Параметры тела запроса для получения access_token |
Example responses
200 Response
{
"access_token": "eyJraWQiOiJhbGZhLXRlc3Qtand0IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiIzMjI4ZTY4ZS1jYzM0LTRiODItYjQzZC00OTExMmI1ZDlkM2UiLCJhdWQiOiIwY2VlMDY4My04NWFlLTQ5ZjItYTYzZC0yOWY5N2FhZDE5MTEiLCJpc3MiOiJodHRwczpcL1wvaWQuYWxmYWJhbmsucnUiLCJleHAiOjE2MzE2NjY2NjMsInNjb3BlX3NlcnZpY2VzIjpbInBheW1lbnQiLCJzdGF0ZW1lbnQiXSwiaWF0IjoxNjMxNjYzMDYzLCJzY29wZV9jbGFpbXMiOlsibmFtZSIsImdpdmVuX25hbWUiLCJmYW1pbHlfbmFtZSIsIm1pZGRsZV9uYW1lIiwiZW1haWwiLCJwaG9uZV9udW1iZXIiXX0.RZ98I-PT_HGMzc7IbwGvlZjLOYuInta6pczEc_h4yCvZKCafIqs4ZBbs7eSY3NpXGzTbSZkGQA9wfX2NFDXZelwyNTooFQMpXzytrEhLww05H8ZFCH0kEQ_IpnJk-KeYkBLD0Oa75Gi6Lqj-Dr8KoX4Zq93ZyT4sr7Hzb1H287UlkJWVlpz_E7slLIob8m3keGbDysNyEBKJzsPcW27HENZBnvYwdE1pzwB8ObEZkICO8kbEP7MupLbhFyjxJFlI6Bq2DNjqi_QgQzvjvpD4KILxDms-Upg8h6GptYyoOl1BMGfN7WhN2vOUFYNuivNKctwcfD_H73kHJGu5KIJmGA",
"refresh_token": "13b8230b-b6bf-4bb9-b977-3bc0a988a5fd",
"token_type": "Bearer",
"expires_in": 3600,
"id_token": "eyJraWQiOiJhbGZhLXRlc3Qtand0IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiIzMjI4ZTY4ZS1jYzM0LTRiODItYjQzZC00OTExMmI1ZDlkM2UiLCJhdWQiOiIwY2VlMDY4My04NWFlLTQ5ZjItYTYzZC0yOWY5N2FhZDE5MTEiLCJhY3IiOiJMb0EzIiwiYXpwIjoiMGNlZTA2ODMtODVhZS00OWYyLWE2M2QtMjlmOTdhYWQxOTExIiwiYXV0aF90aW1lIjoxNjMxNjYzMDUzLCJpc3MiOiJodHRwczpcL1wvaWQuYWxmYWJhbmsucnUiLCJleHAiOjE2MzE2NjY2NjMsImlhdCI6MTYzMTY2MzA2Mywibm9uY2UiOiJuLTBTNl9XekEyTWoifQ.xBE6LEUxOKleHCZVQacldJfKr5KtyyvJKCCmInqapmRJ_aRF-cEoVfpJd_kxlNmJYT7AcjMMppovNkmhB49VL5DK8FhF0fvRgLskKR9Eohy4eiC8ued03Z1LyLz1H7EcKSkusaCIajzIvxxZfVtSHI4jmgLg6ItXPdZgIDUWINgESkl6I7IP5CbfONHweNnbkWEOEzxDgGGnxxtPxrWVoPVP-ijUeUSH_iESHfrhY_ePRMYi2If62IsKX_0GT5BHRYOhXVDZ9fyn5fRCvg8_QoCykDVIOZMtWQ3w4TadqS0dfMlsLBxkVbVftzH2fWRLTCX3SJ5AXiytHkpow8V45w"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | AccessTokenResponse |
| 400 | Bad Request | BAD REQUEST | Error |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | Content-Type | string | application/json |
| 200 | Cache-Control | string | no-store |
| 200 | Pragma | string | no-cache |
| 400 | Content-Type | string | application/json |
| 400 | Cache-Control | string | no-store |
| 400 | Pragma | string | no-cache |
Schemas
AccessTokenRequest
{
"grant_type": "authorization_code",
"code": "8962c304-89b1-11ec-a8a3-0242ac120002",
"client_id": "0cee0683-85ae-49f2-a63d-29f97aad1911",
"client_secret": "Qwerty1234567890Qwerty1234567890!",
"redirect_uri": "https://wwww.partner.ru/code",
"code_verifier": "string"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| grant_type | string | true | Тип гранта. Значение должно быть authorization_code |
| code | string(uuid) | true | Код авторизации |
| client_id | string(uuid) | true | Идентификатор партнерского сервиса |
| client_secret | string | true | Секретный ключ партнерского сервиса |
| redirect_uri | string | true | URI перенаправления |
| code_verifier | string | false | Код верификатор |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| grant_type | authorization_code | Сообщает конечной точке токена, что приложение использует тип предоставления кода авторизации |
AccessTokenResponse
{
"access_token": "eyJraWQiOiJhbGZhLXRlc3Qtand0IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiIzMjI4ZTY4ZS1jYzM0LTRiODItYjQzZC00OTExMmI1ZDlkM2UiLCJhdWQiOiIwY2VlMDY4My04NWFlLTQ5ZjItYTYzZC0yOWY5N2FhZDE5MTEiLCJpc3MiOiJodHRwczpcL1wvaWQuYWxmYWJhbmsucnUiLCJleHAiOjE2MzE2NjY2NjMsInNjb3BlX3NlcnZpY2VzIjpbInBheW1lbnQiLCJzdGF0ZW1lbnQiXSwiaWF0IjoxNjMxNjYzMDYzLCJzY29wZV9jbGFpbXMiOlsibmFtZSIsImdpdmVuX25hbWUiLCJmYW1pbHlfbmFtZSIsIm1pZGRsZV9uYW1lIiwiZW1haWwiLCJwaG9uZV9udW1iZXIiXX0.RZ98I-PT_HGMzc7IbwGvlZjLOYuInta6pczEc_h4yCvZKCafIqs4ZBbs7eSY3NpXGzTbSZkGQA9wfX2NFDXZelwyNTooFQMpXzytrEhLww05H8ZFCH0kEQ_IpnJk-KeYkBLD0Oa75Gi6Lqj-Dr8KoX4Zq93ZyT4sr7Hzb1H287UlkJWVlpz_E7slLIob8m3keGbDysNyEBKJzsPcW27HENZBnvYwdE1pzwB8ObEZkICO8kbEP7MupLbhFyjxJFlI6Bq2DNjqi_QgQzvjvpD4KILxDms-Upg8h6GptYyoOl1BMGfN7WhN2vOUFYNuivNKctwcfD_H73kHJGu5KIJmGA",
"refresh_token": "13b8230b-b6bf-4bb9-b977-3bc0a988a5fd",
"token_type": "Bearer",
"expires_in": 3600,
"id_token": "eyJraWQiOiJhbGZhLXRlc3Qtand0IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiIzMjI4ZTY4ZS1jYzM0LTRiODItYjQzZC00OTExMmI1ZDlkM2UiLCJhdWQiOiIwY2VlMDY4My04NWFlLTQ5ZjItYTYzZC0yOWY5N2FhZDE5MTEiLCJhY3IiOiJMb0EzIiwiYXpwIjoiMGNlZTA2ODMtODVhZS00OWYyLWE2M2QtMjlmOTdhYWQxOTExIiwiYXV0aF90aW1lIjoxNjMxNjYzMDUzLCJpc3MiOiJodHRwczpcL1wvaWQuYWxmYWJhbmsucnUiLCJleHAiOjE2MzE2NjY2NjMsImlhdCI6MTYzMTY2MzA2Mywibm9uY2UiOiJuLTBTNl9XekEyTWoifQ.xBE6LEUxOKleHCZVQacldJfKr5KtyyvJKCCmInqapmRJ_aRF-cEoVfpJd_kxlNmJYT7AcjMMppovNkmhB49VL5DK8FhF0fvRgLskKR9Eohy4eiC8ued03Z1LyLz1H7EcKSkusaCIajzIvxxZfVtSHI4jmgLg6ItXPdZgIDUWINgESkl6I7IP5CbfONHweNnbkWEOEzxDgGGnxxtPxrWVoPVP-ijUeUSH_iESHfrhY_ePRMYi2If62IsKX_0GT5BHRYOhXVDZ9fyn5fRCvg8_QoCykDVIOZMtWQ3w4TadqS0dfMlsLBxkVbVftzH2fWRLTCX3SJ5AXiytHkpow8V45w"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| access_token | string | true | Токен доступа |
| refresh_token | string(uuid) | true | Токен обновления |
| token_type | string | true | Тип токена |
| expires_in | integer | false | Срок жизни токена в секундах |
| id_token | string | true | Идентификационный токен |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| token_type | Bearer | Сообщает о генерации токена доступа и его направлении обратно |
Error
{
"error": "invalid_request",
"error_description": "string"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Ошибка |
| error_description | string | false | Описание ошибки |
Таблица возможных значений параметра error:
| Значение | Описание |
|---|---|
| invalid_request | В запросе отсутствует обязательный параметр, запрос включает неподдерживаемое значение параметра (кроме grant_type), в запросе повторяется параметр, запрос включает несколько учетных данных, запрос использует более одного механизма для аутентификации клиента или имеет другой неправильный формат. |
| invalid_client | Ошибка аутентификации клиента (например, неизвестный клиент, аутентификация клиента не включена или неподдерживаемый метод аутентификации). |
| invalid_grant | Предоставленное разрешение авторизации (например, код авторизации, учетные данные владельца ресурса) или токен обновления недействителен, истек, аннулирован, не соответствует URI перенаправления, используемому в запросе авторизации, или был выдан другому клиенту. |
| unsupported_grant_type | Тип разрешения на авторизацию (grant_type) не поддерживается сервером авторизации. |
| internal_error | Произошла непредвиденная ошибка. |
Дополнительно с описанием ошибок можно ознакомиться в разделе "FAQ".
Описание клэймов access_token:
| Name | Description |
|---|---|
| iss | Идентификатор эмитента (Issuer) для эмитента ответа. Значение iss является чувствительным к регистру URL-адресом, использующим схему https, которая содержит схему, хост и, необязательно, номер порта и компоненты пути, а не компоненты запроса или фрагмента |
| sub | Идентификатор субъекта. Локально уникальный и никогда не переназначаемый идентификатор в Эмитенте для конечного пользователя, который предназначен для использования Клиентом (client). Его длина НЕ ДОЛЖНА превышать 255 символов ASCII. sub - это строка с учетом регистра |
| aud | Аудитория, для которой предназначен этот идентификационный токен. Он ДОЛЖЕН содержать client_id OAuth 2.0 проверяющей стороны в качестве значения. Он также МОЖЕТ содержать идентификаторы для других аудиторий. В общем случае значение aud представляет собой массив строк с учетом регистра. В общем особом случае, когда есть одна аудитория, значение aud МОЖЕТ быть одной строкой, чувствительной к регистру |
| exp | Время истечения срока действия, по истечении которого идентификационный токен НЕ ДОЛЖЕН приниматься в обработку. Обработка этого параметра требует, чтобы текущая дата/время ДОЛЖНЫ быть до даты/времени истечения срока действия, указанных в значении. Значение представляет собой число JSON, представляющее количество секунд с 1970-01-01T0:0:0Z в формате UTC до даты/времени |
| iat | Время, когда был выпущен JWT. Его значение представляет собой число JSON, представляющее количество секунд с 1970-01-01T0:0:0Z в формате UTC до даты/времени |
| scope_claims | Массив клэймов области применения |
| scope_services | Массив операций области применения |
Описание клэймов ID_TOKEN:
| Name | Description | Scope |
|---|---|---|
| iss | Идентификатор эмитента (Issuer) для эмитента ответа. Значение iss является чувствительным к регистру URL-адресом, использующим схему https, которая содержит схему, хост и, необязательно, номер порта и компоненты пути, а не компоненты запроса или фрагмента | openid |
| sub | Идентификатор субъекта. Локально уникальный и никогда не переназначаемый идентификатор в Эмитенте для конечного пользователя, который предназначен для использования Клиентом (client). Его длина НЕ ДОЛЖНА превышать 255 символов ASCII. sub - это строка с учетом регистра | openid |
| aud | Аудитория, для которой предназначен этот идентификационный токен. Он ДОЛЖЕН содержать client_id OAuth 2.0 проверяющей стороны в качестве значения. Он также МОЖЕТ содержать идентификаторы для других аудиторий. В общем случае значение aud представляет собой массив строк с учетом регистра. В общем особом случае, когда есть одна аудитория, значение aud МОЖЕТ быть одной строкой, чувствительной к регистру | openid |
| exp | Время истечения срока действия, по истечении которого идентификационный токен НЕ ДОЛЖЕН приниматься в обработку. Обработка этого параметра требует, чтобы текущая дата/время ДОЛЖНЫ быть до даты/времени истечения срока действия, указанных в значении. Значение представляет собой число JSON, представляющее количество секунд с 1970-01-01T0:0:0Z в формате UTC до даты/времени | openid |
| iat | Время, когда был выпущен JWT. Его значение представляет собой число JSON, представляющее количество секунд с 1970-01-01T0:0:0Z в формате UTC до даты/времени | openid |
| auth_time | Время, когда произошла аутентификация конечного пользователя. Его значение представляет собой число JSON, представляющее количество секунд с 1970-01-01T0:0:0Z в формате UTC до даты/времени | openid |
| nonce | Строковое значение, используемое для связывания сессии клиента (Client) с идентификационным токеном и для смягчения атак повторного воспроизведения. Значение nonce - это строка с учетом регистра | openid |
| acr | Ссылка на класс контекста аутентификации. Строка, указывающая значение ссылки на класс контекста аутентификации, которое идентифицирует класс контекста аутентификации, которым аутентификация выполнена. Значение acr - это строка с учетом регистра | openid |
| azp | Авторизованная сторона - сторона, которой был выдан идентификационный токен. Если он присутствует, он ДОЛЖЕН содержать идентификатор (client_id) клиента OAuth 2.0 этой стороны. Значение azp - это чувствительная к регистру строка | openid |
Шаг 3. Получение информации о профиле представителя ЮЛ/физического лица GET userinfo
Для получения информации о профиле представителя юридического лица/физического лица необходимо вызвать метод https://baas.alfabank.ru/oidc/userinfo
Для идентификации пользователя выполняется запрос на получение информации о профиле представителя ЮЛ/ФЛ.
Входящие параметры: access_token. Исходящие параметры: данные пользователя, на передачу которых от пользователя есть разрешение.
Для каждого Партнера API перечень допустимых клэймов настраивается индивидуально.
Вызов метода осуществляется со следующими параметрами:
Code samples
curl -X GET https://baas.alfabank.ru/oidc/userinfo \
-H 'Accept: application/jwt' \
-H 'Authorization: Bearer {access-token}'
Example responses
200 Response
400 Response
{
"error": "invalid_request",
"error_description": "string"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | string |
| 400 | Bad Request | BAD REQUEST | Error |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | Content-Type | string | application/jwt |
| 400 | Content-Type | string | application/json |
Schemas
Error
{
"error": "invalid_request",
"error_description": "string"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Ошибка |
| error_description | string | false | Описание ошибки |
Таблица возможных значений параметра error:
| Значение | Описание |
|---|---|
| invalid_request | В запросе отсутствует обязательный параметр, он включает неподдерживаемый параметр или значение параметра, повторяет один и тот же параметр, использует более одного метода для включения токена доступа или имеет другой неправильный формат. Сервер ресурсов ДОЛЖЕН ответить кодом состояния HTTP 400 (Bad Request). |
| access_denied | Владелец ресурса или сервер авторизации отклонил запрос. |
| invalid_token | Предоставленный токен доступа просрочен, отозван, имеет неправильный формат или недействителен по другим причинам. Ресурс ДОЛЖЕН ответить кодом состояния HTTP 401 (Unauthorized). Клиент МОЖЕТ запросить новый токен доступа и повторить запрос защищенного ресурса. |
| internal_error | Произошла непредвиденная ошибка |
Описание клэймов UserInfo:
| Name | Description | Scope |
|---|---|---|
| iss | Идентификатор эмитента (Issuer) для эмитента ответа. Значение iss является чувствительным к регистру URL-адресом, использующим схему https, которая содержит схему, хост и, необязательно, номер порта и компоненты пути, а не компоненты запроса или фрагмента | openid |
| sub | Идентификатор субъекта. Локально уникальный и никогда не переназначаемый идентификатор в Эмитенте для конечного пользователя, который предназначен для использования Клиентом (client). Его длина НЕ ДОЛЖНА превышать 255 символов ASCII. sub - это строка с учетом регистра | openid |
| aud | Аудитория, для которой предназначен этот идентификационный токен. Он ДОЛЖЕН содержать client_id OAuth 2.0 проверяющей стороны в качестве значения. Он также МОЖЕТ содержать идентификаторы для других аудиторий. В общем случае значение aud представляет собой массив строк с учетом регистра. В общем особом случае, когда есть одна аудитория, значение aud МОЖЕТ быть одной строкой, чувствительной к регистру | openid |
| name | Полное имя конечного пользователя в отображаемой форме, включая все части имени, возможно, включая заголовки и суффиксы, упорядоченные в соответствии с локалью и предпочтениями конечного пользователя | profile |
| given_name | Имя конечного пользователя | profile |
| family_name | Фамилия конечного пользователя | profile |
| middle_name | Отчество конечного пользователя | profile |
| Предпочтительный адрес электронной почты конечного пользователя | ||
| gender | Пол конечного пользователя | profile |
| birthdate | День рождения конечного пользователя, представленный в формате ISO 8601: 2004 [ISO8601‑2004] ГГГГ-ММ-ДД | profile |
| phone_number | Предпочитаемый номер телефона конечного пользователя | phone |
| updated_at | Время последнего обновления информации о конечном пользователе. Его значение представляет собой число JSON, представляющее количество секунд с 1970-01-01T0:0:0Z в формате UTC до даты/времени | profile |
| inn | ИНН конечного пользователя | inn |
| identity_document_name | Русское наименование типа документа, удостоверяющего личность конечного пользователя | identitydocument |
| identity_document_series | Серия документа, удостоверяющего личность конечного пользователя | identitydocument |
| identity_document_number | Номер документа, удостоверяющего личность конечного пользователя | identitydocument |
| eio | Истинно, если конечный пользователь является ЕИО; в противном случае - ложь (для физических лиц не заполняется) | eio |
| role | Роль конечного пользователя в организации (для физических лиц не заполняется) | role |
| actual_address | Фактический адрес конечного пользователя (для юридических лиц не заполняется) | address_fl |
| reg_address | Адрес регистрации конечного пользователя (для юридических лиц не заполняется) | address_fl |
| birth_place | Место рождения конечного пользователя (для юридических лиц не заполняется) | birthplace |
| snils | СНИЛС конечного пользователя (для юридических лиц не заполняется) | snils |
Шаг 4. Проверка подписи
Проверить подпись можно для трех сущностей:
- id_token
- access_token
- userinfo.
Партнер API получает ответ в формате сформированного токена JWS, который состоит из:
- Заголовка (Header), содержащего алгоритм подписи, идентификатор ключа и тип токена;
- JSON-объекта (Payload), в котором перечислены клэймы полезной нагрузки;
- Электронной подписи (Signature), содержащей подпись данных секретным ключом, парным открытому ключу, выпущенному для Alfa ID.
Декодирование компактной сериализации JWS
JWS формируется из трех составляющих и представляет структуру вида:
- Base64URL(Header).
- Base64URL(Payload).
- Base64URL(Signature).
Пример JWS идентификационного токена id_token:
Каждая часть, разделенная точкой, должна декодироваться отдельно, с использованием алгоритма Base64URL Encoding.
Закодированный
eyJraWQiOiJhbGZhLXRlc3Qtand0IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ .eyJzdWIiOiIzMjI4ZTY4ZS1jYzM0LTRiODItYjQzZC00OTExMmI1ZDlkM2UiLCJhdWQiOiIwY2VlMDY4My04NWFlLTQ5ZjItYTYzZC0yOWY5N2FhZDE5MTEiLCJhY3IiOiJMb0EzIiwiYXpwIjoiMGNlZTA2ODMtODVhZS00OWYyLWE2M2QtMjlmOTdhYWQxOTExIiwiYXV0aF90aW1lIjoxNjMxNjYzMDUzLCJpc3MiOiJodHRwczpcL1wvaWQuYWxmYWJhbmsucnUiLCJleHAiOjE2MzE2NjY2NjMsImlhdCI6MTYzMTY2MzA2Mywibm9uY2UiOiJuLTBTNl9XekEyTWoifQ .xBE6LEUxOKleHCZVQacldJfKr5KtyyvJKCCmInqapmRJ_aRF-cEoVfpJd_kxlNmJYT7AcjMMppovNkmhB49VL5DK8FhF0fvRgLskKR9Eohy4eiC8ued03Z1LyLz1H7EcKSkusaCIajzIvxxZfVtSHI4jmgLg6ItXPdZgIDUWINgESkl6I7IP5CbfONHweNnbkWEOEzxDgGGnxxtPxrWVoPVP-ijUeUSH_iESHfrhY_ePRMYi2If62IsKX_0GT5BHRYOhXVDZ9fyn5fRCvg8_QoCykDVIOZMtWQ3w4TadqS0dfMlsLBxkVbVftzH2fWRLTCX3SJ5AXiytHkpow8V45wРасшифрованный
header:
{
"kid": "alfa-test-jwt",
"typ": "JWT",
"alg": "RS256"
}
payload:
{
"sub": "3228e68e-cc34-4b82-b43d-49112b5d9d3e",
"aud": "0cee0683-85ae-49f2-a63d-29f97aad1911",
"acr": "LoA3",
"azp": "0cee0683-85ae-49f2-a63d-29f97aad1911",
"auth_time": 1631663053,
"iss": "https://id.alfabank.ru",
"exp": 1631666663,
"iat": 1631663063,
"nonce": "n-0S6_WzA2Mj"
}
verify signature:
HMACSHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
your-256-bit-secret
) secret base64 encoded
Пример access_token:
Закодированный
eyJraWQiOiJhbGZhLXRlc3Qtand0IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ .eyJzdWIiOiIzMjI4ZTY4ZS1jYzM0LTRiODItYjQzZC00OTExMmI1ZDlkM2UiLCJhdWQiOiIwY2VlMDY4My04NWFlLTQ5ZjItYTYzZC0yOWY5N2FhZDE5MTEiLCJpc3MiOiJodHRwczpcL1wvaWQuYWxmYWJhbmsucnUiLCJleHAiOjE2MzE2NjY2NjMsInNjb3BlX3NlcnZpY2VzIjpbInBheW1lbnQiLCJzdGF0ZW1lbnQiXSwiaWF0IjoxNjMxNjYzMDYzLCJzY29wZV9jbGFpbXMiOlsibmFtZSIsImdpdmVuX25hbWUiLCJmYW1pbHlfbmFtZSIsIm1pZGRsZV9uYW1lIiwiZW1haWwiLCJwaG9uZV9udW1iZXIiXX0 .RZ98I-PT_HGMzc7IbwGvlZjLOYuInta6pczEc_h4yCvZKCafIqs4ZBbs7eSY3NpXGzTbSZkGQA9wfX2NFDXZelwyNTooFQMpXzytrEhLww05H8ZFCH0kEQ_IpnJk-KeYkBLD0Oa75Gi6Lqj-Dr8KoX4Zq93ZyT4sr7Hzb1H287UlkJWVlpz_E7slLIob8m3keGbDysNyEBKJzsPcW27HENZBnvYwdE1pzwB8ObEZkICO8kbEP7MupLbhFyjxJFlI6Bq2DNjqi_QgQzvjvpD4KILxDms-Upg8h6GptYyoOl1BMGfN7WhN2vOUFYNuivNKctwcfD_H73kHJGu5KIJmGAРасшифрованный
header:
{
"kid": "alfa-test-jwt",
"typ": "JWT",
"alg": "RS256"
}
payload:
{
"sub": "3228e68e-cc34-4b82-b43d-49112b5d9d3e",
"aud": "0cee0683-85ae-49f2-a63d-29f97aad1911",
"iss": "https://id.alfabank.ru",
"exp": 1631666663,
"scope_services": [
"payment",
"statement"
],
"iat": 1631663063,
"scope_claims": [
"name",
"given_name",
"family_name",
"middle_name",
"email",
"phone_number"
]
}
verify signature:
HMACSHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
your-256-bit-secret
) secret base64 encoded
Пример userinfo:
Закодированный
eyJraWQiOiJhbGZhLXRlc3Qtand0IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ .eyJjdXMiOiJVQUFBQUEiLCJzdWIiOiIzMjI4ZTY4ZS1jYzM0LTRiODItYjQzZC00OTExMmI1ZDlkM2UiLCJiaXJ0aGRhdGUiOiIyMDAwLTAyLTIwIiwicm9sZSI6IkFDQ09VTlRBTlQsIE1BTkFHRVIiLCJnZW5kZXIiOiJNQUxFIiwiaWRlbnRpdHlfZG9jdW1lbnRfbmFtZSI6ItCf0LDRgdC_0L7RgNGCINCz0YDQsNC20LTQsNC90LjQvdCwINCg0KQiLCJpZGVudGl0eV9kb2N1bWVudF9udW1iZXIiOjIyMjIyMiwiaXNzIjoiaHR0cHM6XC9cL2JhYXMuYWxmYWJhbmsucnUiLCJpbm4iOjc0MTUxMTExMjIyMiwiZWlvIjp0cnVlLCJnaXZlbl9uYW1lIjoi0KLQtdGB0YIiLCJtaWRkbGVfbmFtZSI6ItCi0LXRgdGC0L7QstC40YciLCJhY3VzIjoiWEFBQUFBIiwiaWRlbnRpdHlfZG9jdW1lbnRfc2VyaWVzIjoxMTExLCJhdWQiOiIwY2VlMDY4My04NWFlLTQ5ZjItYTYzZC0yOWY5N2FhZDE5MTEiLCJhY2xjIjoiWEFBQUExIiwidXBkYXRlZF9hdCI6IjIwMjItMDEtMjAiLCJuYW1lIjoi0KLQtdGB0YLQvtCyINCi0LXRgdGCINCi0LXRgdGC0L7QstC40YciLCJwaG9uZV9udW1iZXIiOjc5MTkxMTEyMjMzLCJjbGMiOiJVQUFBQTEiLCJmYW1pbHlfbmFtZSI6ItCi0LXRgdGC0L7QsiIsImVtYWlsIjoiZW1haWxAZW1haWwucnUifQ .WVr5xkQSEGqpPXN3aIo0zHZLDL0vvtxEEQ83BrgJo7l0BjjALeGDRYENF2bL8j3n1pXRnduiBQcYNV6teBhESI8V_8kd7Kh7LTePkJWadPSvD__KskC69b4XZ-zN-IQ73NmAcBDStnnhSXGKL6xhdRy-TGiAoKPsRWiDVntsDlpCQNHAt3tJk8q_SQS4S1k6qju9eJ2GFkgmd6z8rR2vaBykaOF0K61ltksw6YgXhuek3OlYkqIAivyKYl59uio8zMpJk-YrPlmawwmvWPF0vKhaLj8Mvn4mVMsVSfuVVKP2ksHG0MAlWpO3Sh9GoKO4d6TQplJ4vgIIeNx-44npqwРасшифрованный
header:
{
"kid": "alfa-test-jwt",
"typ": "JWT",
"alg": "RS256"
}
payload:
{
"cus": "UAAAAA",
"sub": "3228e68e-cc34-4b82-b43d-49112b5d9d3e",
"birthdate": "2000-02-20",
"role": "ACCOUNTANT, MANAGER",
"gender": "MALE",
"identity_document_name": "Паспорт гражданина РФ",
"identity_document_number": 222222,
"iss": "https://baas.alfabank.ru",
"inn": 741511112222,
"eio": true,
"given_name": "Тест",
"middle_name": "Тестович",
"acus": "XAAAAA",
"identity_document_series": 1111,
"aud": "0cee0683-85ae-49f2-a63d-29f97aad1911",
"aclc": "XAAAA1",
"updated_at": "2022-01-20",
"name": "Тестов Тест Тестович",
"phone_number": 79191112233,
"clc": "UAAAA1",
"family_name": "Тестов",
"email": "email@email.ru"
}
verify signature:
HMACSHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
your-256-bit-secret
) secret base64 encoded
Проверка подписи:
1) Вычисляем хэш-функцию SHA256 от данных Base64URL(Header).Base64URL(Payload).
2) Дешифруем данные Base64URL(Signature), используя алгоритм RS256 и открытый ключ с идентификатором, переданным в Заголовке (Header) в клэйме kid (в приведенном выше примере это alfa-test-jwt).
3) Сравниваем вычисленный хэш из 1 шага и дешифрованные данные из 2 шага. Если значения равны, значит подпись верна.
Сертификат для проверки электронной подписи certificate_check_signature.csr.cer
Опционально:
Обновление токена POST /token
Токен обновления действует 180 дней.
Токен обновления действует один раз. Для последующего использования токена обновления нужно заново получить код авторизации, access_token и обновить его (сделать рефреш).
Запрос используется для обновления access_token. Для обновления токена доступа необходимо вызвать метод https://baas.alfabank.ru/oidc/token со следующими параметрами:
Code samples
curl -X POST https://baas.alfabank.ru/oidc/token \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Accept: application/json'
-d 'grant_type=refresh_token&refresh_token=13b8230b-b6bf-4bb9-b977-3bc0a988a5fd&client_id=0cee0683-85ae-49f2-a63d-29f97aad1911&client_secret=Qwerty1234567890Qwerty1234567890!'
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | RefreshTokenRequest | true | Параметры тела запроса для обновления access_token |
Example responses
200 Response
{
"access_token": "eyJraWQiOiJhbGZhLXRlc3Qtand0IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiIzMjI4ZTY4ZS1jYzM0LTRiODItYjQzZC00OTExMmI1ZDlkM2UiLCJhdWQiOiIwY2VlMDY4My04NWFlLTQ5ZjItYTYzZC0yOWY5N2FhZDE5MTEiLCJpc3MiOiJodHRwczpcL1wvaWQuYWxmYWJhbmsucnUiLCJleHAiOjE2MzE2NjY2NjMsInNjb3BlX3NlcnZpY2VzIjpbInBheW1lbnQiLCJzdGF0ZW1lbnQiXSwiaWF0IjoxNjMxNjYzMDYzLCJzY29wZV9jbGFpbXMiOlsibmFtZSIsImdpdmVuX25hbWUiLCJmYW1pbHlfbmFtZSIsIm1pZGRsZV9uYW1lIiwiZW1haWwiLCJwaG9uZV9udW1iZXIiXX0.RZ98I-PT_HGMzc7IbwGvlZjLOYuInta6pczEc_h4yCvZKCafIqs4ZBbs7eSY3NpXGzTbSZkGQA9wfX2NFDXZelwyNTooFQMpXzytrEhLww05H8ZFCH0kEQ_IpnJk-KeYkBLD0Oa75Gi6Lqj-Dr8KoX4Zq93ZyT4sr7Hzb1H287UlkJWVlpz_E7slLIob8m3keGbDysNyEBKJzsPcW27HENZBnvYwdE1pzwB8ObEZkICO8kbEP7MupLbhFyjxJFlI6Bq2DNjqi_QgQzvjvpD4KILxDms-Upg8h6GptYyoOl1BMGfN7WhN2vOUFYNuivNKctwcfD_H73kHJGu5KIJmGA",
"refresh_token": "2cc8d34c-130a-4674-91fa-f9835fff6e88",
"token_type": "Bearer",
"expires_in": 3600
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | RefreshTokenResponse |
| 400 | Bad Request | BAD REQUEST | Error |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | Content-Type | string | application/json |
| 200 | Cache-Control | string | no-store |
| 200 | Pragma | string | no-cache |
| 400 | Content-Type | string | application/json |
| 400 | Cache-Control | string | no-store |
| 400 | Pragma | string | no-cache |
Schemas
RefreshTokenRequest
{
"grant_type": "refresh_token",
"refresh_token": "13b8230b-b6bf-4bb9-b977-3bc0a988a5fd",
"client_id": "0cee0683-85ae-49f2-a63d-29f97aad1911",
"client_secret": "Qwerty1234567890Qwerty1234567890!"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| grant_type | string | true | Тип гранта. Значение должно быть refresh_token |
| refresh_token | string(uuid) | true | Токен обновления |
| client_id | string(uuid) | true | Идентификатор партнерского сервиса |
| client_secret | string | true | Секретный ключ партнерского сервиса |
Enumerated Values
| Property | Value |
|---|---|
| grant_type | refresh_token |
RefreshTokenResponse
{
"access_token": "eyJraWQiOiJhbGZhLXRlc3Qtand0IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiIzMjI4ZTY4ZS1jYzM0LTRiODItYjQzZC00OTExMmI1ZDlkM2UiLCJhdWQiOiIwY2VlMDY4My04NWFlLTQ5ZjItYTYzZC0yOWY5N2FhZDE5MTEiLCJpc3MiOiJodHRwczpcL1wvaWQuYWxmYWJhbmsucnUiLCJleHAiOjE2MzE2NjY2NjMsInNjb3BlX3NlcnZpY2VzIjpbInBheW1lbnQiLCJzdGF0ZW1lbnQiXSwiaWF0IjoxNjMxNjYzMDYzLCJzY29wZV9jbGFpbXMiOlsibmFtZSIsImdpdmVuX25hbWUiLCJmYW1pbHlfbmFtZSIsIm1pZGRsZV9uYW1lIiwiZW1haWwiLCJwaG9uZV9udW1iZXIiXX0.RZ98I-PT_HGMzc7IbwGvlZjLOYuInta6pczEc_h4yCvZKCafIqs4ZBbs7eSY3NpXGzTbSZkGQA9wfX2NFDXZelwyNTooFQMpXzytrEhLww05H8ZFCH0kEQ_IpnJk-KeYkBLD0Oa75Gi6Lqj-Dr8KoX4Zq93ZyT4sr7Hzb1H287UlkJWVlpz_E7slLIob8m3keGbDysNyEBKJzsPcW27HENZBnvYwdE1pzwB8ObEZkICO8kbEP7MupLbhFyjxJFlI6Bq2DNjqi_QgQzvjvpD4KILxDms-Upg8h6GptYyoOl1BMGfN7WhN2vOUFYNuivNKctwcfD_H73kHJGu5KIJmGA",
"refresh_token": "2cc8d34c-130a-4674-91fa-f9835fff6e88",
"token_type": "Bearer",
"expires_in": 3600
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| access_token | string | true | Токен доступа |
| refresh_token | string(uuid) | true | Токен обновления |
| token_type | string | true | Тип токена |
| expires_in | integer | false | Срок жизни токена в секундах |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| token_type | Bearer | Тип токена |
Error
{
"error": "invalid_request",
"error_description": "string"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Ошибка |
| error_description | string | false | Описание ошибки |
Отзыв токена POST revoke
Запрос используется для отзыва access_token и refresh_token в соотвествии с RFC-7009.
Примечание. В случае отзыва refresh_token, access_token будет также отозван.
Code samples
curl -X POST https://baas.alfabank.ru/oidc/revoke \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Accept: application/json'
-d 'client_id=0cee0683-85ae-49f2-a63d-29f97aad1911&client_secret=Qwerty1234567890Qwerty1234567890!&token=string&token_type_hint=refresh_token'
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | RevokeRequest | true | Параметры тела запроса для отзыва токена |
Example responses
400 Response
{
"error": "invalid_request",
"error_description": "string"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | None |
| 400 | Bad Request | BAD REQUEST | Error |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 400 | Content-Type | string | none |
Schemas
RevokeRequest
{
"client_id": "0cee0683-85ae-49f2-a63d-29f97aad1911",
"client_secret": "Qwerty1234567890Qwerty1234567890!",
"token": "string",
"token_type_hint": "refresh_token"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| client_id | string(uuid) | true | Идентификатор партнерского сервиса |
| client_secret | string | true | Секретный ключ партнерского сервиса |
| token | string | true | Отзываемый токен |
| token_type_hint | string | false | Тип отзываемого токена |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| token_type_hint | access_token | Токен доступа |
| token_type_hint | refresh_token | Токен обновления |
Error
{
"error": "invalid_request",
"error_description": "string"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Ошибка |
| error_description | string | false | Описание ошибки |
Authorization code flow для H2H интеграций
Прямая интеграция (H2H, host-2-host) - это канал прямой интеграции автоматизированных систем клиента и Банка.
Важно! Партнер API должен пройти все шаги раздела Подключение к API.
Партнер API, использующий прямую интеграцию, может оĸазывать сервис тольĸо пользователям своей организации.
Для обращения ERP-системы Партнера API к Alfa API необходимо получить тоĸен доступа (access_token). Для получения тоĸена доступа необходимо получить ĸод авторизации ( code) и обменять его на тоĸен доступа.
Для получения ĸода авторизации через браузер необходимо:
Шаг 1. Сформировать ссылĸу вида: https://id.alfabank.ru/oidc/authorize? response_type=code&client_id={client_id}&redirect_uri={redirect_uri} &scope={scope}&state={state} , где
{client_id} - идентифиĸатор приложения Партнера, полученный после регистрации приложения на стороне Банĸа;
{redirect_uri} - URI-адрес перенаправления для получения ĸода авторизации, можно использовать http://localhost.
Предварительно должен быть озвучен при регистрации приложения на стороне Банĸа {scope} - области применения тоĸена доступа, уĸазывают ĸаĸие права должен содержать тоĸен доступа (можно уĸазать несĸольĸо через пробел).
Предварительно должны быть озвучены области применения при регистрации приложения на стороне Банĸа. Например, для получения выписĸи необходимо уĸазать openid transactions {state} - можно уĸазать любое строĸовое значение, например string12345
Таĸим образом, получается ссылĸа вида: https://id.alfabank.ru/oidc/authorize? response_type=code&client_id={client_id}&redirect_uri=http:// localhost&scope=openid transactions&state=string12345
! Не забывайте заменить {client_id} на реальное значение, полученный после регистрации приложения на стороне Банĸа.
Шаг 2. Сформированную ссылĸу необходимо вставить в адресную строĸу браузера и нажать Enter:

В оĸне браузера отобразится страница аутентифиĸации АльфаID для ввода логина/пароля пользователя:

Шаг 3. После ввода логина/пароля пользователя отобразится страница второго фаĸтора аутентифиĸации для ввода otp-ĸода (sms, push):

Шаг 4. Необходимо полученный на телефон otp-ĸод (sms, push) ввести и в адресной строĸе браузера отобразится ĸод авторизации (code):

Полученное в браузере значение ĸода авторизации (code) необходимо сĸопировать и обменять на тоĸен доступа.
! Важно, ĸод авторизации имеет ĸоротĸий сроĸ жизни (по умолчанию равен 2 минуты), за это время необходимо обменять его на тоĸен доступа.
Шаг 5. Для обмена ĸода авторизации на тоĸен доступа (access_token) Партнер должен вызвать метод POST https://baas.alfabank.ru/oidc/ token
Описание метода смотрите здесь Шаг 2. Получение тоĸена доступа (получение access_token)
Для вызова метода POST https://baas.alfabank.ru/oidc/token можно использовать стандартные и общеизвестные программные средства для работы с API: Postman, SoapUI, JMeter, curl или использовать самописные программные средства или встроенные возможности ERP-системы.
Шаг 6. После получения тоĸена доступа (access_token) можно использовать его для получения выписĸи и обращения ĸ соответствующему API в разделе Операции по счетам
Шаг 7. Чтобы в дальнейшем не использовать браузер для получения ĸода авторизации, необходимо использовать метод POST https:// baas.alfabank.ru/oidc/token
Описание метода смотрите здесь Обновление токена
Для вызова метода POST https://baas.alfabank.ru/oidc/token можно использовать стандартные и общеизвестные программные средства для работы с API: Postman, SoapUI, JMeter, curl или использовать самописные программные средства или встроенные возможности ERP-системы.
! По умолчанию сроĸ жизни тоĸена доступа (access_token) равен 60 минут, а сроĸ жизни тоĸена обновления (refresh_token) равен 180 дней.
Client Credentials Flow
Данный тип гранта используется, когда система Партнера API хочет получать информацию и выполнять действия в ALfa API без участия пользователя. Аутентификация и авторизация происходит с использованием Client Credentials Flow.
Пройдите следующие шаги:
Опционально:
Шаг 1. Получение токена доступа
Для получения токена доступа необходимо вызвать метод POST https://baas.alfabank.ru/oidc/token со следующими параметрами:
Code samples
curl -X POST https://baas.alfabank.ru/oidc/token \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Accept: application/json'
-d 'grant_type=client_credentials&client_id=0cee0683-85ae-49f2-a63d-29f97aad1911&client_secret=Qwerty1234567890Qwerty1234567890!&scope=String='
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | SystemTokenRequest | true | Тело запроса |
Example responses
200 Response
{
"access_token": "eyJraWQiOiJhbGZhLXRlc3Qtand0IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiIzMjI4ZTY4ZS1jYzM0LTRiODItYjQzZC00OTExMmI1ZDlkM2UiLCJhdWQiOiIwY2VlMDY4My04NWFlLTQ5ZjItYTYzZC0yOWY5N2FhZDE5MTEiLCJpc3MiOiJodHRwczpcL1wvaWQuYWxmYWJhbmsucnUiLCJleHAiOjE2MzE2NjY2NjMsInNjb3BlX3NlcnZpY2VzIjpbInBheW1lbnQiLCJzdGF0ZW1lbnQiXSwiaWF0IjoxNjMxNjYzMDYzLCJzY29wZV9jbGFpbXMiOlsibmFtZSIsImdpdmVuX25hbWUiLCJmYW1pbHlfbmFtZSIsIm1pZGRsZV9uYW1lIiwiZW1haWwiLCJwaG9uZV9udW1iZXIiXX0.RZ98I-PT_HGMzc7IbwGvlZjLOYuInta6pczEc_h4yCvZKCafIqs4ZBbs7eSY3NpXGzTbSZkGQA9wfX2NFDXZelwyNTooFQMpXzytrEhLww05H8ZFCH0kEQ_IpnJk-KeYkBLD0Oa75Gi6Lqj-Dr8KoX4Zq93ZyT4sr7Hzb1H287UlkJWVlpz_E7slLIob8m3keGbDysNyEBKJzsPcW27HENZBnvYwdE1pzwB8ObEZkICO8kbEP7MupLbhFyjxJFlI6Bq2DNjqi_QgQzvjvpD4KILxDms-Upg8h6GptYyoOl1BMGfN7WhN2vOUFYNuivNKctwcfD_H73kHJGu5KIJmGA",
"token_type": "Bearer",
"expires_in": 3600
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | SystemTokenResponse |
| 400 | Bad Request | BAD REQUEST | Error |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | Content-Type | string | application/json |
| 200 | Cache-Control | string | no-store |
| 200 | Pragma | string | no-cache |
| 400 | Content-Type | string | аpplication/json |
| 400 | Cache-Control | string | no-store |
| 400 | Pragma | string | no-cache |
Schemas
SystemTokenRequest
{
"grant_type": "client_credentials",
"client_id": "0cee0683-85ae-49f2-a63d-29f97aad1911",
"client_secret": "Qwerty1234567890Qwerty1234567890!",
"scope": "String"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| grant_type | string | true | Тип гранта |
| client_id | string(uuid) | true | Идентификатор партнерского сервиса |
| client_secret | string | true | Секретный ключ партнерского сервиса |
| scope | string | true | Область применения |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| grant_type | client_credentials | Тип гранта |
SystemTokenResponse
{
"access_token": "eyJraWQiOiJhbGZhLXRlc3Qtand0IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiIzMjI4ZTY4ZS1jYzM0LTRiODItYjQzZC00OTExMmI1ZDlkM2UiLCJhdWQiOiIwY2VlMDY4My04NWFlLTQ5ZjItYTYzZC0yOWY5N2FhZDE5MTEiLCJpc3MiOiJodHRwczpcL1wvaWQuYWxmYWJhbmsucnUiLCJleHAiOjE2MzE2NjY2NjMsInNjb3BlX3NlcnZpY2VzIjpbInBheW1lbnQiLCJzdGF0ZW1lbnQiXSwiaWF0IjoxNjMxNjYzMDYzLCJzY29wZV9jbGFpbXMiOlsibmFtZSIsImdpdmVuX25hbWUiLCJmYW1pbHlfbmFtZSIsIm1pZGRsZV9uYW1lIiwiZW1haWwiLCJwaG9uZV9udW1iZXIiXX0.RZ98I-PT_HGMzc7IbwGvlZjLOYuInta6pczEc_h4yCvZKCafIqs4ZBbs7eSY3NpXGzTbSZkGQA9wfX2NFDXZelwyNTooFQMpXzytrEhLww05H8ZFCH0kEQ_IpnJk-KeYkBLD0Oa75Gi6Lqj-Dr8KoX4Zq93ZyT4sr7Hzb1H287UlkJWVlpz_E7slLIob8m3keGbDysNyEBKJzsPcW27HENZBnvYwdE1pzwB8ObEZkICO8kbEP7MupLbhFyjxJFlI6Bq2DNjqi_QgQzvjvpD4KILxDms-Upg8h6GptYyoOl1BMGfN7WhN2vOUFYNuivNKctwcfD_H73kHJGu5KIJmGA",
"token_type": "Bearer",
"expires_in": 3600
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| access_token | string | true | Токен доступа |
| token_type | string | true | Тип токена |
| expires_in | integer | false | Срок жизни токена в секундах |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| token_type | Bearer | Тип токена |
Error
{
"error": "invalid_request",
"error_description": "string"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Ошибка |
| error_description | string | false | Описание ошибки |
Описание клэймов access_token:
| Name | Description |
|---|---|
| iss | Идентификатор эмитента (Issuer) для эмитента ответа. Значение iss является чувствительным к регистру URL-адресом, использующим схему https, которая содержит схему, хост и, необязательно, номер порта и компоненты пути, а не компоненты запроса или фрагмента |
| aud | Аудитория, для которой предназначен этот идентификационный токен. Он ДОЛЖЕН содержать client_id OAuth 2.0 проверяющей стороны в качестве значения. Он также МОЖЕТ содержать идентификаторы для других аудиторий. В общем случае значение aud представляет собой массив строк с учетом регистра. В общем особом случае, когда есть одна аудитория, значение aud МОЖЕТ быть одной строкой, чувствительной к регистру |
| exp | Время истечения срока действия, по истечении которого идентификационный токен НЕ ДОЛЖЕН приниматься в обработку. Обработка этого параметра требует, чтобы текущая дата/время ДОЛЖНЫ быть до даты/времени истечения срока действия, указанных в значении. Значение представляет собой число JSON, представляющее количество секунд с 1970-01-01T0:0:0Z в формате UTC до даты/времени |
| iat | Время, когда был выпущен JWT. Его значение представляет собой число JSON, представляющее количество секунд с 1970-01-01T0:0:0Z в формате UTC до даты/времени |
| scope_services | Массив операций области применения |
Шаг 2. Проверка подписи
Проверить подпись можно для сущности access_token.
Партнер API получает ответ в формате сформированного токена JWS, который состоит из:
- Заголовка (Header), содержащего алгоритм подписи, идентификатор ключа и тип токена;
- JSON-объекта (Payload), в котором перечислены клэймы полезной нагрузки;
- Электронной подписи (Signature), содержащей подпись данных секретным ключом, парным открытому ключу, выпущенному для Alfa ID.
Декодирование компактной сериализации JWS
JWS формируется из трех составляющих и представляет структуру вида:
- Base64URL(Header).
- Base64URL(Payload).
- Base64URL(Signature).
Пример access_token:
Закодированный
eyJraWQiOiJhbGZhLXRlc3Qtand0IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ .eyJzdWIiOiIzMjI4ZTY4ZS1jYzM0LTRiODItYjQzZC00OTExMmI1ZDlkM2UiLCJhdWQiOiIwY2VlMDY4My04NWFlLTQ5ZjItYTYzZC0yOWY5N2FhZDE5MTEiLCJpc3MiOiJodHRwczpcL1wvaWQuYWxmYWJhbmsucnUiLCJleHAiOjE2MzE2NjY2NjMsInNjb3BlX3NlcnZpY2VzIjpbInBheW1lbnQiLCJzdGF0ZW1lbnQiXSwiaWF0IjoxNjMxNjYzMDYzLCJzY29wZV9jbGFpbXMiOlsibmFtZSIsImdpdmVuX25hbWUiLCJmYW1pbHlfbmFtZSIsIm1pZGRsZV9uYW1lIiwiZW1haWwiLCJwaG9uZV9udW1iZXIiXX0 .RZ98I-PT_HGMzc7IbwGvlZjLOYuInta6pczEc_h4yCvZKCafIqs4ZBbs7eSY3NpXGzTbSZkGQA9wfX2NFDXZelwyNTooFQMpXzytrEhLww05H8ZFCH0kEQ_IpnJk-KeYkBLD0Oa75Gi6Lqj-Dr8KoX4Zq93ZyT4sr7Hzb1H287UlkJWVlpz_E7slLIob8m3keGbDysNyEBKJzsPcW27HENZBnvYwdE1pzwB8ObEZkICO8kbEP7MupLbhFyjxJFlI6Bq2DNjqi_QgQzvjvpD4KILxDms-Upg8h6GptYyoOl1BMGfN7WhN2vOUFYNuivNKctwcfD_H73kHJGu5KIJmGAРасшифрованный
header:
{
"kid": "alfa-test-jwt",
"typ": "JWT",
"alg": "RS256"
}
payload:
{
"sub": "3228e68e-cc34-4b82-b43d-49112b5d9d3e",
"aud": "0cee0683-85ae-49f2-a63d-29f97aad1911",
"iss": "https://id.alfabank.ru",
"exp": 1631666663,
"scope_services": [
"payment",
"statement"
],
"iat": 1631663063,
"scope_claims": [
"name",
"given_name",
"family_name",
"middle_name",
"email",
"phone_number"
]
}
verify signature:
HMACSHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
your-256-bit-secret
) secret base64 encoded
Проверка подписи:
1) Вычисляем хэш-функцию SHA256 от данных Base64URL(Header).Base64URL(Payload).
2) Дешифруем данные Base64URL(Signature), используя алгоритм RS256 и открытый ключ с идентификатором, переданным в Заголовке (Header) в клэйме kid (в приведенном выше примере это alfa-test-jwt).
3) Сравниваем вычисленный хэш из 1 шага и дешифрованные данные из 2 шага. Если значения равны, значит подпись верна.
Сертификат для проверки электронной подписи certificate_check_signature.csr.cer
Опционально:
Отзыв токена
Запрос используется для отзыва access_token и refresh_token в соотвествии с RFC-7009.
Примечание. В случае отзыва refresh_token, access_token будет также отозван.
Code samples
curl -X POST https://baas.alfabank.ru/oidc/revoke \
-H 'Content-Type: application/x-www-form-urlencoded' \
-H 'Accept: application/json'
-d 'client_id=0cee0683-85ae-49f2-a63d-29f97aad1911&client_secret=Qwerty1234567890Qwerty1234567890!&token=string&token_type_hint=refresh_token'
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | RevokeRequest | true | Параметры тела запроса для отзыва токена |
Example responses
400 Response
{
"error": "invalid_request",
"error_description": "string"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | None |
| 400 | Bad Request | BAD REQUEST | Error |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 400 | Content-Type | string | none |
Schemas
RevokeRequest
{
"client_id": "0cee0683-85ae-49f2-a63d-29f97aad1911",
"client_secret": "Qwerty1234567890Qwerty1234567890!",
"token": "string",
"token_type_hint": "refresh_token"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| client_id | string(uuid) | true | Идентификатор партнерского сервиса |
| client_secret | string | true | Секретный ключ партнерского сервиса |
| token | string | true | Отзываемый токен |
| token_type_hint | string | false | Тип отзываемого токена |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| token_type_hint | access_token | Токен доступа |
| token_type_hint | refresh_token | Токен обновления |
Error
{
"error": "invalid_request",
"error_description": "string"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Ошибка |
| error_description | string | false | Описание ошибки |
Песочница (Sandbox)
Песочница API - это среда, которую Партнеры API могут использовать для имитации производственной среды и получения смоделированных ответов по всем API.
Песочница позволяет пройти аутентификацию в Alfa ID и вызвать методы Alfa API в тестовом режиме, не воздействуя на реальные данные.
Для использования песочницы необходимо:
- заключить договор о техническо-информационном взаимодействии (подробнее в разделе "Подключение к API");
- получить тестовый client_id и доступный scope от сотрудников Банка (смотреть здесь);
- установить тестовый TLS-сертификат для доступа: test_cert.zip (пароль для архива уточняйте у персонального менеджера).
Архив состоит из файлов:
- test_certificate.cer - сертификат для клиента (открытый ключ);
- test_key.key - закрытый ключ;
- apica_2022_chain.cer - цепочка сертификатов УЦ (содержит в себе root_apica_2022.cer и sub_root_apica_2022.cer);
- root_apica_2022.cer - корневой сертификат УЦ;
- sub_root_apica_2022.cer - промежуточный сертификат УЦ;
- test_pkcs.p12 - контейнер p12, содержащий вышеперечисленные файлы.
Для доступа к Swagger UI можно использовать следующие комбинации (в зависимости от выбора вашего ПО для работы с API):
- Открытый ключ + закрытый ключ + цепочка сертификатов УЦ;
- Открытый ключ + закрытый ключ + корневой сертификат УЦ + промежуточный сертификат УЦ;
- Контейнер p12 (test_pkcs.p12) - самый простой способ.
Для вызова методов можно использовать стандартные программные средства для работы с API: Postman, SoapUI, JMeter, curl или использовать самописные программные средства или встроенные возможности ERP-системы.
Далее:
- проверьте тестовый Swagger UI https://sandbox.alfabank.ru/swagger-ui/
- получите client_secret (смотрите шаг 7 в разделе "Подключение к API").
При использовании песочницы все вызовы API должны осуществляться с использованием закрытого ключа и сертификата.
Пример запроса
curl -X GET https://sandbox.alfabank.ru/api/v1/customer-info \
-v--cert test_certificate.cer \
--key test_key.key \
--header 'accept: application/json' \
--header 'content-type: application/json' \
Адреса для тестирования:
Для аутентификации в Alfa ID используйте следующие hosts:
- получение кода авторизации: https://id-sandbox.alfabank.ru/oidc/
Пример ссылки:
получение и обновление токена доступа https://sandbox.alfabank.ru/oidc/token
получение информации о профиле представителя ЮЛ/физического лица https://sandbox.alfabank.ru/oidc/userinfo
отзыв токена https://sandbox.alfabank.ru/oidc/revoke
Для методов Alfa API используйте URI https://sandbox.alfabank.ru/api.
Рекомендации по тестированию Alfa ID:
1) Для прохождения процедуры аутентификации используйте тестовые логин и пароль, OTP.
Login: SomeDifficultLogin
Password: 1qaz!QAZ
One-Time Password: 000000
2) Для подписания формы согласия используйте:
One-Time Password: 111111
Подробнее в разделе "Аутентификация в Alfa ID".
Рекомендации по тестированию Alfa ID ФЛ:
1) Для прохождения процедуры аутентификации используйте тестовые логин и пароль, ОТР.
Номер телефона: 71111111111
Login: SomeDifficultLogin
Password: 000000
One-Time Password: 000000
2) Для подписания формы согласия используйте:
One-Time Password: 000000
Подробнее в разделе "Аутентификация в Alfa ID".
Рекомендации по тестированию методов API:
Операции по счетам
Для получения операций по счетам использовать расчетные счета, полученные в "Профиле организации".
Значение uuid не является уникальным во всех запросах в песочнице.
> Code samples
{
"pkcs10Content": "-----BEGIN CERTIFICATE REQUEST-----\nMIIDGzCCAgMCAQAwgZ0xCzAJBgNVBAYTAlJVMRUwEwYDVQQEDAzQn9C10YLRgNC+\n0LIxFzAVBgNVBCoMDtCd0LjQutC+0LvQsNC5MTcwNQYDVQQDDC7Qn9C10YLRgNC+\n0LIg0J3QuNC60L7Qu9Cw0Lkg0JXRgNC+0YTQtdC10LLQuNGHMSUwIwYJKoZIhvcN\nAQkBFhZVc2VyNzQ0QHBvY2h0b2Noa2EuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOC\nAQ8AMIIBCgKCAQEAyLZrKEHtFYPSjPFTWGYAW/wsvRsI7ly0SPzN+hNgTrttctnI\nsCTbq5rjGClHjaFr/vCanvPoj0BGwc+QztmdntdrLtfbScdaTY5Q1H1WBtcDkQhf\n443BjhdBZwAP6U6tTkLtJbFr0yjZPaUYMAGUlzQ0ASYFEt48V+0ZNmRMwOG267yn\nQHVPwNrWGHn2hih9TqzOtivxf+HevSQSiuLowTeQ5pCeQPkEn5nHzwXNZGPcmHFF\nHoekyhP7ItIi7PdamEGytBhdYkScbtdaQ9DscKy49GYYNrOYrdx4gpKbaCOQJsFO\n/hQFg8gVGYjsLzhCmhtydY19WmzPPoFmourSwQIDAQABoDgwNgYJKoZIhvcNAQkO\nMSkwJzAlBgNVHREEHjAcggtleGFtcGxlLmNvbYINKi5leGFtcGxlLmNvbTANBgkq\nhkiG9w0BAQsFAAOCAQEAMXpgE3CoBiHTLCyRzzy9YMMml520BKceXCwcZ7R5AbDl\nhgC1Vd1TMU4816Nu2qj8ilYQw1OJ9QmN2+5V+WmgMHsqYSeqJ0rZvXdJty8KLHow\nIMhgCo3WmXgVrWs0tWnWyya05Sh+M5zEhxPFubeaOuSUTPKW2Q87Sxp1dKIu9nES\n4vFlK5Bl3lxzrk0Hrj/vyEXU51V+lbtAkKyEs129uwU/vIReBWw7xd2pXTeOR/ri\nIYzFHvmWXSTyZKpP0NJlyKc/mH1ilO74kmBZu32ggOUnw1cCu/vfRZ85KAh0eLZ7\nmSaWwi4XGgA8MSkXAbj4SLeUr4mViP+Ad1e/IYojDg==\n-----END CERTIFICATE REQUEST-----",
"tokenSerialNumber": "00a81050"
}
Электронная подпись
При запросе на создание заявки на выпуск RSA-сертификата в песочнице поле "pkcs10Content" статично и должно быть равно. Пример заполнения поля "pkcs10Content" указан справа (code sample).
One-Time Password для заявки на выпуск/ активацию RSA-сертификата: 11111111
Защита канала
Защита данных с применением криптографических преобразований - одно из решений проблем информационной безопасности. Механизмы шифрования и дешифрования канала обеспечивает надежность передачи информации. Защитить канал можно, используя ассиметричные алгоритмы шифрования данных (RSA-сертификат) и транспортную подпись.
Содержание:
Шифрование канала
Шифрование канала происходит исходя из выбора метода шифрования. Это может быть:
шифрование с применением сертификата RSA (как применить RSA-сертификат смотрите в разделе Требования к сертификату);
шифрование с применением сертификатов ГОСТ (раздел в подготовке).
Выбор того или иного метода шифрования канала определяется критичностью данных:
если персональные данные не передаются, то TLS RSA будет самым простым, дешевым и гибким инструментом интеграции;
если персональные данные передаются, то обязательно использование сертификата ГОСТ. Партнер API может выбирать, что использовать - TLS ГОСТ или вариант с ФПСУ ГОСТ.
Транспортная подпись (Формат JWS)
Защитить информацию можно с помощью формата JWS. JWS - это транспортная подпись данных запроса/данных ответа. Использование JWS гарантирует подлинность запросов и ответов. Партнер API может быть уверен, что запрос не преобразован, а также нет подмены данных от систем-посредников и в ответе от Банка.
Формат JWS поддерживается Банком в запросах (проверка подписанного запроса) и ответах (формирование подписанного Банком ответа). При настройке интеграции необходимо указать, что Партнер API хочет использовать JWS.
! Использовать JWS можно только в ответах, только в запросах, и в запросах и в ответах или вообще не использовать. Управляется это заголовками Content-Type и Accept. При отправке запроса в формате JWS в заголовке Content-Type = "application/jose". Для получения ответа в формате JWS в заголовке укажите Accept = "application/jose".
Как отправить запрос в формате JWS:
Шаг 1. Выпустить сертификат в банке с помощью сервиса Электронной подписи
(см. шаг 1 в разделе Инструкция пользователя).
Шаг 2. Тело запроса сформировать в виде компактной сериализации в соответствии с JSON Web Signature и подписать тело запроса закрытым ключом сертификата из шага 1.
Формат JWS:
BASE64URL(UTF8(JWS Protected Header)) || '.' || BASE64URL(JWS Payload) || '.' || BASE64URL(JWS Signature)
Где тело запроса имеет структуру:
- Заголовок (Header);
- JSON-документ (Payload);
- Подпись запроса (Signature).
В Header указать
{ "typ": "JOSE", "alg": "HS256" }
Пример тела запроса в формате JWS (токен):
eyJhbGciOiJSUzI1NiIsImtpZCI6IjYxMDAwMzYzY2NiNzU5Y2I0NDg2MDc4NjVkMDAwMTAwMDM2M2NjIn0.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiYWRtaW4iOnRydWUsImlhdCI6MTY1Nzg4MjY4OSwiZXhwIjoxNjU3ODg2Mjg5fQ.ApKNzZ9kLMtBY3LzReSHQ7_AyDnzocGo9GTQFRmxTiRS7Lj7a55Kr4ziwZAmmwloF1063JJMOaU0lS947q6_hSct9pxzPdZ9tTmpIDGnQL-ks0oB7zz9vUSUd3G00UZXSYnuhI9BBRXvmmTaue5Y2j5zVZofLdO2dqPWCnsQULyLn_vYf8PeABhnAQ29z1Bq42uxfRFTM35cF40Tp4VBSqXDI1vxfleLusQlOZM-5Sk7O3Vy4Sf-UB03RrRGSBerZjdoMRh7dgEyoYAXS6c4MejCm2vmXKqSd7pu2V2TxOM9UTchkCS16DL-RIJtnfMjznmznU5SoMCpncvs6gRNeQ
Для тестовой проверки можно использовать https://token.dev/.
Шаг 3. Добавить заголовок Content-Type = "application/jose" и отправить запрос.
Далее Банк проверяет подпись. Если подпись валидна - запрос обрабатывается, если не валидна - Банк определяет запрос как неподлинный и возвращает ошибку.
Как получить ответ в формате JWS:
Добавить заголовок в запрос Accept = "application/jose" и отправить запрос.
Полученный ответ (в том числе ошибки) будет представлен в виде JWS-контейнера в компактной сериализации. Произвести процеду декодирования.
Партнер API получает зашифрованный ответ в формате сформированного токена JWS, который состоит из:
- Заголовка (Header), содержащего алгоритм подписи, идентификатор ключа и тип токена;
- JSON-объекта (Payload), в котором перечислены клэймы полезной нагрузки;
- Электронной подписи (Signature), содержащей подпись данных секретным ключом, парным открытому ключу, выпущенному для Alfa ID.
Декодирование компактной сериализации JWS
JWS формируется из трех составляющих и представляет структуру вида:
- Base64URL(Header).
- Base64URL(Payload).
- Base64URL(Signature).
Пример токена
Закодированный
eyJraWQiOiJhbGZhLXRlc3Qtand0IiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ .eyJkZWJpdFR1cm5vdmVyIjp7ImFtb3VudCI6MCwiY3VycmVuY3lOYW1lIjoiUlVSIn0sIm9wZW5pbmdCYWxhbmNlUnViIjp7ImFtb3VudCI6MTU2NTguMTUsImN1cnJlbmN5TmFtZSI6IlJVUiJ9LCJjbG9zaW5nQmFsYW5jZSI6eyJhbW91bnQiOjE1NjU4LjE1LCJjdXJyZW5jeU5hbWUiOiJSVVIifSwiY3JlZGl0VHVybm92ZXJSdWIiOnsiYW1vdW50IjowLCJjdXJyZW5jeU5hbWUiOiJSVVIifSwiZGViaXRUcmFuc2FjdGlvbnNOdW1iZXIiOjAsImNvbXBvc2VkRGF0ZVRpbWUiOiIyMDIyLTExLTEwVDA5OjM2OjI4LjU3MjY4MTI3NiIsImNyZWRpdFR1cm5vdmVyIjp7ImFtb3VudCI6MCwiY3VycmVuY3lOYW1lIjoiUlVSIn0sImRlYml0VHVybm92ZXJSdWIiOnsiYW1vdW50IjowLCJjdXJyZW5jeU5hbWUiOiJSVVIifSwib3BlbmluZ0JhbGFuY2UiOnsiYW1vdW50IjoxNTY1OC4xNSwiY3VycmVuY3lOYW1lIjoiUlVSIn0sImNsb3NpbmdCYWxhbmNlUnViIjp7ImFtb3VudCI6MTU2NTguMTUsImN1cnJlbmN5TmFtZSI6IlJVUiJ9LCJjcmVkaXRUcmFuc2FjdGlvbnNOdW1iZXIiOjAsImxhc3RNb3ZlbWVudERhdGUiOiIyMDIyLTA3LTEyIn0 .YMumPZUQUnMle_oTHJ-rTyJu1-h6yK3KSm1NNLd2uGplYwoIofhmlJu6C-atDja8taHn3QEJhf0QatD7BdGManIjHGMth2eA139_SD7G6w7i4rZFFrwhUjazSeSPPGIigQn6nNm7GuJdESm6xdFd8UFUdoM7yM34Aoy03YvB56UWJiJrLGKHna9HIwwJeQObFQ809WiJw_GrM_3QxNUJpeNxsg8KbDWY5FOwjLMEwS4GhB_TDQ152bUpXiCjUffIeNHw6XXJvIbyHhlJg1AunemPSpRpgIvAUun-BmMZSW15MQoTaICHe9MuEQTqc33CVgHACFon0mUEFI97LW1TvwРасшифрованный
header:
{
"kid": "alfa-test-jwt",
"typ": "JWT",
"alg": "RS256"
}
payload:
{
"debitTurnover": {
"amount": 0,
"currencyName": "RUR"
},
"openingBalanceRub": {
"amount": 15658.15,
"currencyName": "RUR"
},
"closingBalance": {
"amount": 15658.15,
"currencyName": "RUR"
},
"creditTurnoverRub": {
"amount": 0,
"currencyName": "RUR"
},
"debitTransactionsNumber": 0,
"composedDateTime": "2022-11-10T09:36:28.572681276",
"creditTurnover": {
"amount": 0,
"currencyName": "RUR"
},
"debitTurnoverRub": {
"amount": 0,
"currencyName": "RUR"
},
"openingBalance": {
"amount": 15658.15,
"currencyName": "RUR"
},
"closingBalanceRub": {
"amount": 15658.15,
"currencyName": "RUR"
},
"creditTransactionsNumber": 0,
"lastMovementDate": "2022-07-12"
}
verify signature:
RSASHA256(
base64UrlEncode(header) + "." +
base64UrlEncode(payload),
) secret base64 encoded
Как проверить подпись:
1) Используйте открытый ключ Сертификата для проверки электронной подписи certificate_check_signature.csr.cer
2) Проверьте подпись в соответствии с данными, указанными в Заголовке (Header) в поле "typ".
После успешной или неуспешной обработки запроса Банк подписывает ответ закрытым ключом и возвращает его в формате JWS.
Методы API (юридические лица)
Список методов для работы с данными юридических лиц Alfa API:
- "Операции по счетам"
- "Платежные поручения"
- "Профиль организации"
- "Счета эскроу 214-ФЗ"
- "Электронная подпись"
- "B2B-кредиты"
Операции по счетам
Методы позволяют получить список операций по одному счету за один день. Дата/время совершения операции по UTC+3 часовому поясу (Московское время). Получение выписок доступно как для рублёвых, так и валютных счетов.
Используется токен доступа, полученный по Authorization Code Flow.
Операции по счетам:
- Получение выписки
- Получение выписки в формате 1С
- Получение выписки в формате МТ940
- Получение информации об оборотах
Получение выписки
Для получения операций по счету необходимо отправить запрос GET statement/transactions с access_token, полученным в Alfa ID, со scope = transactions, и параметрами запроса.
Code samples
curl -X GET /statement/transactions \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header Parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Получение выписки по операциям
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| accountNumber | query | integer | true | Номер расчетного счета |
| statementDate | query | string | true | Дата исполнения операции |
| page | query | integer | false | Номер запрашиваемой страницы. Количество записей на одной странице = 1000 |
| curFormat | query | string | false | Формат операции по валютному счету |
Примечание. Заполнение поля curFormat:
| Parameters | Description |
|---|---|
| curTransfer | В ответе на запрос по валютному счету будет передан объект curTransfer |
| swiftTransfer | В ответе на запрос по валютному счету будет передан объект swiftTransfer |
| no name | Если формат в поле curFormat не заполнено, то в ответе на запрос по валютному счету будет передан объект swiftTransfer |
Example responses
200 Response
{
"_links": [
{
"href": "accountNumber=40702810500006103990&statementDate=2018-03-15&page=3",
"rel": "prev"
}
],
"transactions": [
{
"amount": {
"amount": 1.01,
"currencyName": "USD"
},
"amountRub": {
"amount": 1.01,
"currencyName": "USD"
},
"correspondingAccount": 30101810400000000000,
"direction": "DEBIT",
"documentDate": "2021-10-07",
"filial": "АО \"АЛЬФА-БАНК\"",
"number": 1843,
"operationCode": "01",
"operationDate": "2018-12-31T00:00:00",
"paymentPurpose": "НДС не облагается",
"priority": 5,
"revaln": "ПК",
"uuid": "55daccdf-de87-3879-976c-8b8415c8caf9",
"transactionId": "1211206MOCO#DS0000017",
"rurTransfer": {
"cartInfo": {
"documentCode": "string",
"documentContent": "string",
"documentDate": "2019-10-19T06:33:47.923Z",
"documentNumber": "string",
"paymentNumber": "string",
"restAmount": "string"
},
"deliveryKind": "электронно",
"departmentalInfo": {
"uip": 32221003200126505000,
"drawerStatus101": 1,
"kbk": 39210202010061000000,
"oktmo": 11605000,
"reasonCode106": "ТП",
"taxPeriod107": "МС.03.2016",
"docNumber108": 123,
"docDate109": "31.12.2018",
"paymentKind110": 1
},
"payeeAccount": 40802810401300010000,
"payeeBankBic": 44525225,
"payeeBankCorrAccount": 30101810200000000000,
"payeeBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payeeInn": 7728168971,
"payeeKpp": 770801001,
"payeeName": "Наименование получателя",
"payerAccount": 40802810401300010000,
"payerBankBic": 44525593,
"payerBankCorrAccount": 30101810200000000000,
"payerBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payerInn": 7728168971,
"payerKpp": 770801001,
"payerName": "Гаврилов Добрыня Петрович",
"payingCondition": "string",
"purposeCode": "1",
"receiptDate": "2018-12-31",
"valueDate": "2018-12-31"
},
"swiftTransfer": {
"bankOperationCode": "CRED",
"beneficiaryBankAccount": "LOYDGB21323",
"beneficiaryBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"beneficiaryBankOption": "D",
"beneficiaryCustomerAccount": "/40702810701300000761",
"beneficiaryCustomerName": "ООО Ромашка",
"detailsOfCharges": "OUR",
"exchangeRate": "67,74",
"instructedAmount": "USD70,00",
"instructionCode": "string",
"intermediaryBankAccount": "COBADEFF",
"intermediaryBankName": "АО \"АЛЬФА-БАНК\"",
"intermediaryBankOption": "D",
"messageDestinator": "LAPBLV2X",
"messageIdentifier": "S000013082900014",
"messageOriginator": "SABRRU2P",
"messageReceiveTime": "15-05-27 13:21",
"messageSendTime": "15-05-27 13:21",
"messageType": "103",
"orderingCustomerAccount": "/08251801040004813",
"orderingCustomerName": "ООО Радуга",
"orderingCustomerOption": "K",
"orderingInstitutionAccount": "ABOCBNBJ080",
"orderingInstitutionName": "АО \"АЛЬФА-БАНК\"",
"orderingInstitutionOption": "D",
"receiverCharges": "string",
"receiverCorrespondentAccount": 30101810400000000000,
"receiverCorrespondentName": "JSC ROSSELKHOZBANK 3, GAGARINSKY PEREULOK MOSCOW RUSSIAN FEDERATION",
"receiverCorrespondentOption": "D",
"regulatoryReporting": "/N10/NS/N4/12345678901234567890/N5/12345678901/N6/TP/N7 МS.05.2003/N8/123456789012345/N9/12.05.2003",
"remittanceInformation": "PAYMENT ACC AGREEMENT 1 DD 29.11.2018 FOR WATCHES",
"senderCharges": "USD7,03",
"senderCorrespondentAccount": "BOTKGB2L",
"senderCorrespondentName": "CITIBANK N.A. NEW YORK,NY",
"senderCorrespondentOption": "D",
"senderToReceiverInformation": "/NZP/OT 15.03.2009. NDS NE OBLAGAETSYA",
"transactionReferenceNumber": "+69528",
"transactionRelatedReference": null,
"transactionTypeCode": "S01",
"urgent": "URGENT",
"valueDateCurrencyInterbankSettledAmount": "130824EUR5447,34"
},
"curTransfer": {
"bankOperationCode": "CRED",
"beneficiaryBankAccount": "LOYDGB21323",
"beneficiaryBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"beneficiaryBankOption": "D",
"beneficiaryCustomerAccount": "/40702810701300000761",
"beneficiaryCustomerName": "ООО Ромашка",
"detailsOfCharges": "OUR",
"exchangeRate": "67,74",
"instructedAmount": "USD70,00",
"instructionCode": "string",
"intermediaryBankAccount": "COBADEFF",
"intermediaryBankName": "АО \"АЛЬФА-БАНК\"",
"intermediaryBankOption": "D",
"messageDestinator": "LAPBLV2X",
"messageIdentifier": "S000013082900014",
"messageOriginator": "SABRRU2P",
"messageReceiveTime": "15-05-27 13:21",
"messageSendTime": "15-05-27 13:21",
"messageType": "103",
"orderingCustomerAccount": "/08251801040004813",
"orderingCustomerName": "ООО Радуга",
"orderingCustomerOption": "K",
"orderingInstitutionAccount": "ABOCBNBJ080",
"orderingInstitutionName": "АО \"АЛЬФА-БАНК\"",
"orderingInstitutionOption": "D",
"receiverCharges": "string",
"receiverCorrespondentAccount": 30101810400000000000,
"receiverCorrespondentName": "JSC ROSSELKHOZBANK 3, GAGARINSKY PEREULOK MOSCOW RUSSIAN FEDERATION",
"receiverCorrespondentOption": "D",
"regulatoryReporting": "/N10/NS/N4/12345678901234567890/N5/12345678901/N6/TP/N7 МS.05.2003/N8/123456789012345/N9/12.05.2003",
"remittanceInformation": "PAYMENT ACC AGREEMENT 1 DD 29.11.2018 FOR WATCHES",
"senderCharges": "USD7,03",
"senderCorrespondentAccount": "BOTKGB2L",
"senderCorrespondentName": "CITIBANK N.A. NEW YORK,NY",
"senderCorrespondentOption": "D",
"senderToReceiverInformation": "/NZP/OT 15.03.2009. NDS NE OBLAGAETSYA",
"transactionReferenceNumber": "+69528",
"transactionRelatedReference": null,
"transactionTypeCode": "S01",
"urgent": "URGENT",
"valueDateCurrencyInterbankSettledAmount": "130824EUR5447,34",
"payeeBankBic": 44525225,
"payeeBankCorrAccount": 30101810200000000000,
"payeeAccount": 40802810401300010000,
"payeeBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payeeInn": 7728168971,
"payeeKpp": 770801001,
"payeeName": "Наименование получателя",
"payerAccount": 40802810401300010000,
"payerBankBic": 44525593,
"payerBankCorrAccount": 30101810200000000000,
"payerBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payerInn": 7728168971,
"payerKpp": 770801001,
"payerName": "Гаврилов Добрыня Петрович"
}
}
]
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (OK) | ОК | Успешный результат | Statement |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам. | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | x-traceid | string | Идентификатор трассировки запроса |
Schemas
Statement
{
"_links": [
{
"href": "accountNumber=40702810500006103990&statementDate=2018-03-15&page=3",
"rel": "prev"
}
],
"transactions": [
{
"amount": {
"amount": 1.01,
"currencyName": "USD"
},
"amountRub": {
"amount": 1.01,
"currencyName": "USD"
},
"correspondingAccount": 30101810400000000000,
"direction": "DEBIT",
"documentDate": "2021-10-07",
"filial": "АО \"АЛЬФА-БАНК\"",
"number": 1843,
"operationCode": "01",
"operationDate": "2018-12-31T00:00:00",
"paymentPurpose": "НДС не облагается",
"priority": 5,
"revaln": "ПК",
"uuid": "55daccdf-de87-3879-976c-8b8415c8caf9",
"transactionId": "1211206MOCO#DS0000017",
"rurTransfer": {
"cartInfo": {
"documentCode": "string",
"documentContent": "string",
"documentDate": "2019-10-19T06:33:47.923Z",
"documentNumber": "string",
"paymentNumber": "string",
"restAmount": "string"
},
"deliveryKind": "электронно",
"departmentalInfo": {
"uip": 32221003200126505000,
"drawerStatus101": 1,
"kbk": 39210202010061000000,
"oktmo": 11605000,
"reasonCode106": "ТП",
"taxPeriod107": "МС.03.2016",
"docNumber108": 123,
"docDate109": "31.12.2018",
"paymentKind110": 1
},
"payeeAccount": 40802810401300010000,
"payeeBankBic": 44525225,
"payeeBankCorrAccount": 30101810200000000000,
"payeeBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payeeInn": 7728168971,
"payeeKpp": 770801001,
"payeeName": "Наименование получателя",
"payerAccount": 40802810401300010000,
"payerBankBic": 44525593,
"payerBankCorrAccount": 30101810200000000000,
"payerBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payerInn": 7728168971,
"payerKpp": 770801001,
"payerName": "Гаврилов Добрыня Петрович",
"payingCondition": "string",
"purposeCode": "1",
"receiptDate": "2018-12-31",
"valueDate": "2018-12-31"
},
"swiftTransfer": {
"bankOperationCode": "CRED",
"beneficiaryBankAccount": "LOYDGB21323",
"beneficiaryBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"beneficiaryBankOption": "D",
"beneficiaryCustomerAccount": "/40702810701300000761",
"beneficiaryCustomerName": "ООО Ромашка",
"detailsOfCharges": "OUR",
"exchangeRate": "67,74",
"instructedAmount": "USD70,00",
"instructionCode": "string",
"intermediaryBankAccount": "COBADEFF",
"intermediaryBankName": "АО \"АЛЬФА-БАНК\"",
"intermediaryBankOption": "D",
"messageDestinator": "LAPBLV2X",
"messageIdentifier": "S000013082900014",
"messageOriginator": "SABRRU2P",
"messageReceiveTime": "15-05-27 13:21",
"messageSendTime": "15-05-27 13:21",
"messageType": "103",
"orderingCustomerAccount": "/08251801040004813",
"orderingCustomerName": "ООО Радуга",
"orderingCustomerOption": "K",
"orderingInstitutionAccount": "ABOCBNBJ080",
"orderingInstitutionName": "АО \"АЛЬФА-БАНК\"",
"orderingInstitutionOption": "D",
"receiverCharges": "string",
"receiverCorrespondentAccount": 30101810400000000000,
"receiverCorrespondentName": "JSC ROSSELKHOZBANK 3, GAGARINSKY PEREULOK MOSCOW RUSSIAN FEDERATION",
"receiverCorrespondentOption": "D",
"regulatoryReporting": "/N10/NS/N4/12345678901234567890/N5/12345678901/N6/TP/N7 МS.05.2003/N8/123456789012345/N9/12.05.2003",
"remittanceInformation": "PAYMENT ACC AGREEMENT 1 DD 29.11.2018 FOR WATCHES",
"senderCharges": "USD7,03",
"senderCorrespondentAccount": "BOTKGB2L",
"senderCorrespondentName": "CITIBANK N.A. NEW YORK,NY",
"senderCorrespondentOption": "D",
"senderToReceiverInformation": "/NZP/OT 15.03.2009. NDS NE OBLAGAETSYA",
"transactionReferenceNumber": "+69528",
"transactionRelatedReference": null,
"transactionTypeCode": "S01",
"urgent": "URGENT",
"valueDateCurrencyInterbankSettledAmount": "130824EUR5447,34"
},
"curTransfer": {
"bankOperationCode": "CRED",
"beneficiaryBankAccount": "LOYDGB21323",
"beneficiaryBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"beneficiaryBankOption": "D",
"beneficiaryCustomerAccount": "/40702810701300000761",
"beneficiaryCustomerName": "ООО Ромашка",
"detailsOfCharges": "OUR",
"exchangeRate": "67,74",
"instructedAmount": "USD70,00",
"instructionCode": "string",
"intermediaryBankAccount": "COBADEFF",
"intermediaryBankName": "АО \"АЛЬФА-БАНК\"",
"intermediaryBankOption": "D",
"messageDestinator": "LAPBLV2X",
"messageIdentifier": "S000013082900014",
"messageOriginator": "SABRRU2P",
"messageReceiveTime": "15-05-27 13:21",
"messageSendTime": "15-05-27 13:21",
"messageType": "103",
"orderingCustomerAccount": "/08251801040004813",
"orderingCustomerName": "ООО Радуга",
"orderingCustomerOption": "K",
"orderingInstitutionAccount": "ABOCBNBJ080",
"orderingInstitutionName": "АО \"АЛЬФА-БАНК\"",
"orderingInstitutionOption": "D",
"receiverCharges": "string",
"receiverCorrespondentAccount": 30101810400000000000,
"receiverCorrespondentName": "JSC ROSSELKHOZBANK 3, GAGARINSKY PEREULOK MOSCOW RUSSIAN FEDERATION",
"receiverCorrespondentOption": "D",
"regulatoryReporting": "/N10/NS/N4/12345678901234567890/N5/12345678901/N6/TP/N7 МS.05.2003/N8/123456789012345/N9/12.05.2003",
"remittanceInformation": "PAYMENT ACC AGREEMENT 1 DD 29.11.2018 FOR WATCHES",
"senderCharges": "USD7,03",
"senderCorrespondentAccount": "BOTKGB2L",
"senderCorrespondentName": "CITIBANK N.A. NEW YORK,NY",
"senderCorrespondentOption": "D",
"senderToReceiverInformation": "/NZP/OT 15.03.2009. NDS NE OBLAGAETSYA",
"transactionReferenceNumber": "+69528",
"transactionRelatedReference": null,
"transactionTypeCode": "S01",
"urgent": "URGENT",
"valueDateCurrencyInterbankSettledAmount": "130824EUR5447,34",
"payeeBankBic": 44525225,
"payeeBankCorrAccount": 30101810200000000000,
"payeeAccount": 40802810401300010000,
"payeeBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payeeInn": 7728168971,
"payeeKpp": 770801001,
"payeeName": "Наименование получателя",
"payerAccount": 40802810401300010000,
"payerBankBic": 44525593,
"payerBankCorrAccount": 30101810200000000000,
"payerBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payerInn": 7728168971,
"payerKpp": 770801001,
"payerName": "Гаврилов Добрыня Петрович"
}
}
]
}
Выписка операций по счетам
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| _links | Links | false | Ссылки на предыдущую и следующую страницу, если они есть |
| transactions | Transactions | false | Массив транзакций |
Links
[
{
"href": "accountNumber=40702810500006103990&statementDate=2018-03-15&page=3",
"rel": "prev"
}
]
Ссылки на предыдущую и следующую страницу, если они есть
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| href | string | false | Cсылка ведущая на следующую/предыдущую страницу |
| rel | string | false | Признак страницы. prev - Предыдущая страница; next - Следующая страница |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| rel | prev | Признак страницы - предыдущая страница |
| rel | next | Признак страницы - следующая страница |
Transactions
[
{
"amount": {
"amount": 1.01,
"currencyName": "USD"
},
"amountRub": {
"amount": 1.01,
"currencyName": "USD"
},
"correspondingAccount": 30101810400000000000,
"direction": "DEBIT",
"documentDate": "2021-10-07",
"filial": "АО \"АЛЬФА-БАНК\"",
"number": 1843,
"operationCode": "01",
"operationDate": "2018-12-31T00:00:00",
"paymentPurpose": "НДС не облагается",
"priority": 5,
"revaln": "ПК",
"uuid": "55daccdf-de87-3879-976c-8b8415c8caf9",
"transactionId": "1211206MOCO#DS0000017",
"rurTransfer": {
"cartInfo": {
"documentCode": "string",
"documentContent": "string",
"documentDate": "2019-10-19T06:33:47.923Z",
"documentNumber": "string",
"paymentNumber": "string",
"restAmount": "string"
},
"deliveryKind": "электронно",
"departmentalInfo": {
"uip": 32221003200126505000,
"drawerStatus101": 1,
"kbk": 39210202010061000000,
"oktmo": 11605000,
"reasonCode106": "ТП",
"taxPeriod107": "МС.03.2016",
"docNumber108": 123,
"docDate109": "31.12.2018",
"paymentKind110": 1
},
"payeeAccount": 40802810401300010000,
"payeeBankBic": 44525225,
"payeeBankCorrAccount": 30101810200000000000,
"payeeBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payeeInn": 7728168971,
"payeeKpp": 770801001,
"payeeName": "Наименование получателя",
"payerAccount": 40802810401300010000,
"payerBankBic": 44525593,
"payerBankCorrAccount": 30101810200000000000,
"payerBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payerInn": 7728168971,
"payerKpp": 770801001,
"payerName": "Гаврилов Добрыня Петрович",
"payingCondition": "string",
"purposeCode": "1",
"receiptDate": "2018-12-31",
"valueDate": "2018-12-31"
},
"swiftTransfer": {
"bankOperationCode": "CRED",
"beneficiaryBankAccount": "LOYDGB21323",
"beneficiaryBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"beneficiaryBankOption": "D",
"beneficiaryCustomerAccount": "/40702810701300000761",
"beneficiaryCustomerName": "ООО Ромашка",
"detailsOfCharges": "OUR",
"exchangeRate": "67,74",
"instructedAmount": "USD70,00",
"instructionCode": "string",
"intermediaryBankAccount": "COBADEFF",
"intermediaryBankName": "АО \"АЛЬФА-БАНК\"",
"intermediaryBankOption": "D",
"messageDestinator": "LAPBLV2X",
"messageIdentifier": "S000013082900014",
"messageOriginator": "SABRRU2P",
"messageReceiveTime": "15-05-27 13:21",
"messageSendTime": "15-05-27 13:21",
"messageType": "103",
"orderingCustomerAccount": "/08251801040004813",
"orderingCustomerName": "ООО Радуга",
"orderingCustomerOption": "K",
"orderingInstitutionAccount": "ABOCBNBJ080",
"orderingInstitutionName": "АО \"АЛЬФА-БАНК\"",
"orderingInstitutionOption": "D",
"receiverCharges": "string",
"receiverCorrespondentAccount": 30101810400000000000,
"receiverCorrespondentName": "JSC ROSSELKHOZBANK 3, GAGARINSKY PEREULOK MOSCOW RUSSIAN FEDERATION",
"receiverCorrespondentOption": "D",
"regulatoryReporting": "/N10/NS/N4/12345678901234567890/N5/12345678901/N6/TP/N7 МS.05.2003/N8/123456789012345/N9/12.05.2003",
"remittanceInformation": "PAYMENT ACC AGREEMENT 1 DD 29.11.2018 FOR WATCHES",
"senderCharges": "USD7,03",
"senderCorrespondentAccount": "BOTKGB2L",
"senderCorrespondentName": "CITIBANK N.A. NEW YORK,NY",
"senderCorrespondentOption": "D",
"senderToReceiverInformation": "/NZP/OT 15.03.2009. NDS NE OBLAGAETSYA",
"transactionReferenceNumber": "+69528",
"transactionRelatedReference": null,
"transactionTypeCode": "S01",
"urgent": "URGENT",
"valueDateCurrencyInterbankSettledAmount": "130824EUR5447,34"
},
"curTransfer": {
"bankOperationCode": "CRED",
"beneficiaryBankAccount": "LOYDGB21323",
"beneficiaryBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"beneficiaryBankOption": "D",
"beneficiaryCustomerAccount": "/40702810701300000761",
"beneficiaryCustomerName": "ООО Ромашка",
"detailsOfCharges": "OUR",
"exchangeRate": "67,74",
"instructedAmount": "USD70,00",
"instructionCode": "string",
"intermediaryBankAccount": "COBADEFF",
"intermediaryBankName": "АО \"АЛЬФА-БАНК\"",
"intermediaryBankOption": "D",
"messageDestinator": "LAPBLV2X",
"messageIdentifier": "S000013082900014",
"messageOriginator": "SABRRU2P",
"messageReceiveTime": "15-05-27 13:21",
"messageSendTime": "15-05-27 13:21",
"messageType": "103",
"orderingCustomerAccount": "/08251801040004813",
"orderingCustomerName": "ООО Радуга",
"orderingCustomerOption": "K",
"orderingInstitutionAccount": "ABOCBNBJ080",
"orderingInstitutionName": "АО \"АЛЬФА-БАНК\"",
"orderingInstitutionOption": "D",
"receiverCharges": "string",
"receiverCorrespondentAccount": 30101810400000000000,
"receiverCorrespondentName": "JSC ROSSELKHOZBANK 3, GAGARINSKY PEREULOK MOSCOW RUSSIAN FEDERATION",
"receiverCorrespondentOption": "D",
"regulatoryReporting": "/N10/NS/N4/12345678901234567890/N5/12345678901/N6/TP/N7 МS.05.2003/N8/123456789012345/N9/12.05.2003",
"remittanceInformation": "PAYMENT ACC AGREEMENT 1 DD 29.11.2018 FOR WATCHES",
"senderCharges": "USD7,03",
"senderCorrespondentAccount": "BOTKGB2L",
"senderCorrespondentName": "CITIBANK N.A. NEW YORK,NY",
"senderCorrespondentOption": "D",
"senderToReceiverInformation": "/NZP/OT 15.03.2009. NDS NE OBLAGAETSYA",
"transactionReferenceNumber": "+69528",
"transactionRelatedReference": null,
"transactionTypeCode": "S01",
"urgent": "URGENT",
"valueDateCurrencyInterbankSettledAmount": "130824EUR5447,34",
"payeeBankBic": 44525225,
"payeeBankCorrAccount": 30101810200000000000,
"payeeAccount": 40802810401300010000,
"payeeBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payeeInn": 7728168971,
"payeeKpp": 770801001,
"payeeName": "Наименование получателя",
"payerAccount": 40802810401300010000,
"payerBankBic": 44525593,
"payerBankCorrAccount": 30101810200000000000,
"payerBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payerInn": 7728168971,
"payerKpp": 770801001,
"payerName": "Гаврилов Добрыня Петрович"
}
}
]
Массив транзакций
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | Amount | false | Сумма в валюте счета |
| amountRub | AmountRub | false | Сумма в валюте счета |
| correspondingAccount | string | false | Корреспондирующий счёт |
| direction | string | false | Направление транзакции * CREDIT - Поступление на счет * DEBIT - Списание со счета |
| documentDate | string | false | Дата документа |
| filial | string | false | Наименование филиала |
| number | string | false | Номер операции |
| operationCode | string | false | Тип операции. 01 - Платежное поручение/Валютный перевод; 02 - Платежное требование; 03 - Расходный кассовый ордер/Расходный кассовый чек; 04 - Приходный кассовый ордер/Приходный кассовый чек/Объявление на взнос наличными; 06 - Инкассовое поручение; 08 - Аккредитив; 09 - Мемориальный ордер; 16 - Платежный ордер; 17 - Банковский ордер |
| operationDate | string | false | Дата и время операции |
| paymentPurpose | string | false | Назначение платежа |
| priority | string | false | Очередность платежа |
| revaln | string | false | Признак операции переоценки. ПК - Пересчет курса; ДП - Дооценка руб. покрытия |
| uuid | string | false | Уникальный идентификатор операции |
| transactionId | string | false | Идентификатор операции |
| rurTransfer | RurTransfer | false | Блок для описания рублевых счетов |
| swiftTransfer | SwiftTransfer | false | Блок для описания валютных счетов |
| curTransfer | CurTransfer | false | Блок для описания валютных счетов |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| direction | CREDIT | Направление транзакции - Поступление на счет |
| direction | DEBIT | Направление транзакции - Списание со счета |
| operationCode | 01 | Тип операции - Платежное поручение/Валютный перевод |
| operationCode | 02 | Тип операции - Платежное требование |
| operationCode | 03 | Тип операции - Расходный кассовый ордер/Расходный кассовый чек |
| operationCode | 04 | Тип операции - Приходный кассовый ордер/Приходный кассовый чек/Объявление на взнос наличными |
| operationCode | 06 | Тип операции - Инкассовое поручение |
| operationCode | 08 | Тип операции - Аккредитив |
| operationCode | 09 | Тип операции - Мемориальный ордер |
| operationCode | 16 | Тип операции - Платежный ордер |
| operationCode | 17 | Тип операции - Банковский ордер |
| revaln | ПК | Признак операции переоценки ПК - Пересчет курса |
| revaln | ДП | Признак операции переоценки ПК - Дооценка руб. покрытия |
Amount
{
"amount": 1.01,
"currencyName": "USD"
}
Сумма в валюте счета
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | false | Сумма |
| currencyName | string | false | Буквенный ISO-код валюты |
AmountRub
{
"amount": 1.01,
"currencyName": "USD"
}
Сумма в валюте счета
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | false | Сумма |
| currencyName | string | false | Буквенный ISO-код валюты |
RurTransfer
{
"cartInfo": {
"documentCode": "string",
"documentContent": "string",
"documentDate": "2019-10-19T06:33:47.923Z",
"documentNumber": "string",
"paymentNumber": "string",
"restAmount": "string"
},
"deliveryKind": "электронно",
"departmentalInfo": {
"uip": 32221003200126505000,
"drawerStatus101": 1,
"kbk": 39210202010061000000,
"oktmo": 11605000,
"reasonCode106": "ТП",
"taxPeriod107": "МС.03.2016",
"docNumber108": 123,
"docDate109": "31.12.2018",
"paymentKind110": 1
},
"payeeAccount": 40802810401300010000,
"payeeBankBic": 44525225,
"payeeBankCorrAccount": 30101810200000000000,
"payeeBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payeeInn": 7728168971,
"payeeKpp": 770801001,
"payeeName": "Наименование получателя",
"payerAccount": 40802810401300010000,
"payerBankBic": 44525593,
"payerBankCorrAccount": 30101810200000000000,
"payerBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payerInn": 7728168971,
"payerKpp": 770801001,
"payerName": "Гаврилов Добрыня Петрович",
"payingCondition": "string",
"purposeCode": "1",
"receiptDate": "2018-12-31",
"valueDate": "2018-12-31"
}
Блок для описания рублевых счетов
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cartInfo | CartInfo | false | Дополнительная информация о документе (картотека) |
| deliveryKind | string | false | Способ отправки документа |
| departmentalInfo | DepartmentalInfo | false | Реквизиты налогового, таможенного или иного бюджетного платежа |
| payeeAccount | string | false | Номер счёта получателя |
| payeeBankBic | string | false | БИК банка получателя |
| payeeBankCorrAccount | string | false | Корсчёт банка получателя |
| payeeBankName | string | false | Наименование банка получателя |
| payeeInn | string | false | ИНН получателя |
| payeeKpp | string | false | КПП получателя |
| payeeName | string | false | Наименование получателя |
| payerAccount | string | false | Номер счёта плательщика |
| payerBankBic | string | false | БИК банка плательщика |
| payerBankCorrAccount | string | false | Корсчёт банка плательщика |
| payerBankName | string | false | Наименование банка плательщика |
| payerInn | string | false | ИНН плательщика |
| payerKpp | string | false | КПП плательщика |
| payerName | string | false | Наименование плательщика |
| payingCondition | string | false | Условие оплаты (для 02) |
| purposeCode | string | false | Кодовое назначение платежа. 1 - При переводе денежных средств, являющихся заработной платой и (или) иными доходами; 2 - При переводе денежных средств, являющихся доходами, на которые не может быть обращено взыскание; 3 - При переводе денежных средств, являющихся видами доходов |
| receiptDate | string | false | Дата поступления в банк плательщика |
| valueDate | string | false | Дата валютирования |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| deliveryKind | электронно | Способ отправки документа - электронно |
| deliveryKind | телеграфом | Способ отправки документа - телеграфом |
| deliveryKind | почтой | Способ отправки документа - почтой |
| deliveryKind | срочно | Способ отправки документа - срочно |
| purposeCode | 1 | Кодовое назначение платежа - При переводе денежных средств, являющихся заработной платой и (или) иными доходами |
| purposeCode | 2 | Кодовое назначение платежа - При переводе денежных средств, являющихся доходами, на которые не может быть обращено взыскание |
| purposeCode | 3 | Кодовое назначение платежа - При переводе денежных средств, являющихся видами доходов |
CartInfo
{
"documentCode": "string",
"documentContent": "string",
"documentDate": "2019-10-19T06:33:47.923Z",
"documentNumber": "string",
"paymentNumber": "string",
"restAmount": "string"
}
Дополнительная информация о документе (картотека)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| documentCode | string | false | Шифр документа (картотека) (для 16) |
| documentContent | string | false | Содержание операции (для 16) |
| documentDate | string | false | Дата документа (картотека) (для 16) |
| documentNumber | string | false | Номер документа (картотека) (для 16) |
| paymentNumber | string | false | Номер платежа (картотека) (для 16) |
| restAmount | string | false | Сумма остатка платежа (картотека) (для 16) |
DepartmentalInfo
{
"uip": 32221003200126505000,
"drawerStatus101": 1,
"kbk": 39210202010061000000,
"oktmo": 11605000,
"reasonCode106": "ТП",
"taxPeriod107": "МС.03.2016",
"docNumber108": 123,
"docDate109": "31.12.2018",
"paymentKind110": 1
}
Реквизиты налогового, таможенного или иного бюджетного платежа
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| uip | string | false | Уникальный идентификатор платежа |
| drawerStatus101 | string | false | Показатель статуса налогоплательщика (реквизит - 101) |
| kbk | string | false | Код бюджетной классификации (реквизит - 104) |
| oktmo | string | false | Код OKTMO (реквизит - 105) |
| reasonCode106 | string | false | Показатель основания платежа (реквизит - 106) |
| taxPeriod107 | string | false | Налоговый период / код таможенного органа (реквизит - 107) |
| docNumber108 | string | false | Номер налогового документа (реквизит - 108) |
| docDate109 | string | false | Дата налогового документа (реквизит - 109) |
| paymentKind110 | string | false | ип налогового платежа (реквизит - 110) |
SwiftTransfer
{
"bankOperationCode": "CRED",
"beneficiaryBankAccount": "LOYDGB21323",
"beneficiaryBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"beneficiaryBankOption": "D",
"beneficiaryCustomerAccount": "/40702810701300000761",
"beneficiaryCustomerName": "ООО Ромашка",
"detailsOfCharges": "OUR",
"exchangeRate": "67,74",
"instructedAmount": "USD70,00",
"instructionCode": "string",
"intermediaryBankAccount": "COBADEFF",
"intermediaryBankName": "АО \"АЛЬФА-БАНК\"",
"intermediaryBankOption": "D",
"messageDestinator": "LAPBLV2X",
"messageIdentifier": "S000013082900014",
"messageOriginator": "SABRRU2P",
"messageReceiveTime": "15-05-27 13:21",
"messageSendTime": "15-05-27 13:21",
"messageType": "103",
"orderingCustomerAccount": "/08251801040004813",
"orderingCustomerName": "ООО Радуга",
"orderingCustomerOption": "K",
"orderingInstitutionAccount": "ABOCBNBJ080",
"orderingInstitutionName": "АО \"АЛЬФА-БАНК\"",
"orderingInstitutionOption": "D",
"receiverCharges": "string",
"receiverCorrespondentAccount": 30101810400000000000,
"receiverCorrespondentName": "JSC ROSSELKHOZBANK 3, GAGARINSKY PEREULOK MOSCOW RUSSIAN FEDERATION",
"receiverCorrespondentOption": "D",
"regulatoryReporting": "/N10/NS/N4/12345678901234567890/N5/12345678901/N6/TP/N7 МS.05.2003/N8/123456789012345/N9/12.05.2003",
"remittanceInformation": "PAYMENT ACC AGREEMENT 1 DD 29.11.2018 FOR WATCHES",
"senderCharges": "USD7,03",
"senderCorrespondentAccount": "BOTKGB2L",
"senderCorrespondentName": "CITIBANK N.A. NEW YORK,NY",
"senderCorrespondentOption": "D",
"senderToReceiverInformation": "/NZP/OT 15.03.2009. NDS NE OBLAGAETSYA",
"transactionReferenceNumber": "+69528",
"transactionRelatedReference": null,
"transactionTypeCode": "S01",
"urgent": "URGENT",
"valueDateCurrencyInterbankSettledAmount": "130824EUR5447,34"
}
Блок для описания валютных счетов
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| bankOperationCode | string | false | Код банковской операции (формат MT103) |
| beneficiaryBankAccount | string | false | Номер счета банка бенефициара. 1-я часть значения поля 57 в формате MT103 |
| beneficiaryBankName | string | false | Код BIC, расположение или название и адрес банка бенефициара. Содержимое поля 57 (за исключением номера счета, с разделителями) в формате MT103 |
| beneficiaryBankOption | string | false | Признак вида поля банка бенефициара (поле 57 в формате MT103) |
| beneficiaryCustomerAccount | string | false | Номер счета бенефициара. 1-я часть значения поля 59 в формате MT103 |
| beneficiaryCustomerName | string | false | Код BIC/BEI или название и адрес бенефициара. Содержимое поля 59 (за исключением номера счета, с разделителями) в формате MT103 |
| detailsOfCharges | string | false | Сведения о расходах (формат MT103). OUR - Все расходы по данной операции относятся на счет Плательщика |
| exchangeRate | string | false | Курс конвертации (формат MT103) |
| instructedAmount | string | false | Валюта/сумма по инструкции (формат MT103) |
| instructionCode | string | false | Код инструкции (формат MT103) |
| intermediaryBankAccount | string | false | Номер счета банка-посредника.1-я часть значения поля 56 в формате MT103 |
| intermediaryBankName | string | false | Код BIC или название банка-посредника. Содержимое поля 56 (за исключением номера счета, с разделителями) в формате MT103 |
| intermediaryBankOption | string | false | Признак вида поля банка-посредника |
| messageDestinator | string | false | Получатель сообщения SWIFT (формат MT103) |
| messageIdentifier | string | false | Уникальный системный номер сообщения SWIFT (формат MT103) |
| messageOriginator | string | false | Отправитель сообщения SWIFT (формат MT103) |
| messageReceiveTime | string | false | Дата и время получения сообщения SWIFT (формат MT103) |
| messageSendTime | string | false | Дата и время отправки сообщения SWIFT (формат MT103) |
| messageType | string | false | Тип сообщения SWIFT |
| orderingCustomerAccount | string | false | Номер счета плательщика в формате |
| orderingCustomerName | string | false | Код BIC/BEI или название и адрес плательщика.Содержимое поля 50 (за исключением номера счета, с разделителями) в формате MT103 |
| orderingCustomerOption | string | false | Признак вида поля плательщика |
| orderingInstitutionAccount | string | false | Номер счета банка плательщика.1-я часть значения поля 52 в формате MT103 |
| orderingInstitutionName | string | false | Код BIC или название и адрес банка плательщика. Содержимое поля 52 (за исключением номера счета, с разделителями) в формате MT103 |
| orderingInstitutionOption | string | false | Признак вида поля банка плательщика |
| receiverCharges | string | false | Расходы получателя (формат MT103) |
| receiverCorrespondentAccount | string | false | Номер счета корреспондента получателя. |
| receiverCorrespondentName | string | false | Код BIC, расположение или название и адрес корреспондента получателя. Содержимое поля 54 (за исключением номера счета, с разделителями) в формате MT103 |
| receiverCorrespondentOption | string | false | Признак вида поля корреспондента |
| regulatoryReporting | string | false | Контрольная отчетность (формат MT103) |
| remittanceInformation | string | false | Сведения о переводе (формат MT103, поле 70) |
| senderCharges | string | false | Расходы отправителя (формат MT103) |
| senderCorrespondentAccount | string | false | Номер счета корреспондента отправителя. |
| senderCorrespondentName | string | false | Код BIC, расположение или название и адрес корреспондента отправителя. Содержимое поля 53 (за исключением номера счета, с разделителями) в формате MT103 |
| senderCorrespondentOption | string | false | Признак вида поля корреспондента |
| senderToReceiverInformation | string | false | Информация отправителя получателю (формат MT103) |
| transactionReferenceNumber | string | false | Референс операции (формат MT103, поле 20) |
| transactionRelatedReference | string | false | Связанный референс (формат MT103) |
| transactionTypeCode | string | false | Код типа операции (формат MT103) |
| urgent | string | false | Признак срочности операции (формат MT103). URGENT - Срочная операция; NORMAL - Обычная операция |
| valueDateCurrencyInterbankSettledAmount | string | false | Дата валютирования, код валюты, сумма межбанковского расчета (формат MT103) |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| bankOperationCode | CRED | Код банковской операции (формат MT103) |
| detailsOfCharges | OUR | Сведения о расходах (формат MT103) - Все расходы по данной операции относятся на счет Плательщика |
| messageType | 103 | Тип сообщения SWIFT - формат MT103 |
| urgent | URGENT | Признак срочности операции (формат MT103) - Срочная операция |
| urgent | NORMAL | Признак срочности операции (формат MT103) - Обычная операция |
CurTransfer
{
"bankOperationCode": "CRED",
"beneficiaryBankAccount": "LOYDGB21323",
"beneficiaryBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"beneficiaryBankOption": "D",
"beneficiaryCustomerAccount": "/40702810701300000761",
"beneficiaryCustomerName": "ООО Ромашка",
"detailsOfCharges": "OUR",
"exchangeRate": "67,74",
"instructedAmount": "USD70,00",
"instructionCode": "string",
"intermediaryBankAccount": "COBADEFF",
"intermediaryBankName": "АО \"АЛЬФА-БАНК\"",
"intermediaryBankOption": "D",
"messageDestinator": "LAPBLV2X",
"messageIdentifier": "S000013082900014",
"messageOriginator": "SABRRU2P",
"messageReceiveTime": "15-05-27 13:21",
"messageSendTime": "15-05-27 13:21",
"messageType": "103",
"orderingCustomerAccount": "/08251801040004813",
"orderingCustomerName": "ООО Радуга",
"orderingCustomerOption": "K",
"orderingInstitutionAccount": "ABOCBNBJ080",
"orderingInstitutionName": "АО \"АЛЬФА-БАНК\"",
"orderingInstitutionOption": "D",
"receiverCharges": "string",
"receiverCorrespondentAccount": 30101810400000000000,
"receiverCorrespondentName": "JSC ROSSELKHOZBANK 3, GAGARINSKY PEREULOK MOSCOW RUSSIAN FEDERATION",
"receiverCorrespondentOption": "D",
"regulatoryReporting": "/N10/NS/N4/12345678901234567890/N5/12345678901/N6/TP/N7 МS.05.2003/N8/123456789012345/N9/12.05.2003",
"remittanceInformation": "PAYMENT ACC AGREEMENT 1 DD 29.11.2018 FOR WATCHES",
"senderCharges": "USD7,03",
"senderCorrespondentAccount": "BOTKGB2L",
"senderCorrespondentName": "CITIBANK N.A. NEW YORK,NY",
"senderCorrespondentOption": "D",
"senderToReceiverInformation": "/NZP/OT 15.03.2009. NDS NE OBLAGAETSYA",
"transactionReferenceNumber": "+69528",
"transactionRelatedReference": null,
"transactionTypeCode": "S01",
"urgent": "URGENT",
"valueDateCurrencyInterbankSettledAmount": "130824EUR5447,34",
"payeeBankBic": 44525225,
"payeeBankCorrAccount": 30101810200000000000,
"payeeAccount": 40802810401300010000,
"payeeBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payeeInn": 7728168971,
"payeeKpp": 770801001,
"payeeName": "Наименование получателя",
"payerAccount": 40802810401300010000,
"payerBankBic": 44525593,
"payerBankCorrAccount": 30101810200000000000,
"payerBankName": "АО \\\"АЛЬФА-БАНК\\\"",
"payerInn": 7728168971,
"payerKpp": 770801001,
"payerName": "Гаврилов Добрыня Петрович"
}
Блок для описания валютных счетов
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| bankOperationCode | string | false | Код банковской операции (формат MT103) |
| beneficiaryBankAccount | string | false | Номер счета банка бенефициара. 1-я часть значения поля 57 в формате MT103 |
| beneficiaryBankName | string | false | Код BIC, расположение или название и адрес банка бенефициара. Содержимое поля 57 (за исключением номера счета, с разделителями) в формате MT103 |
| beneficiaryBankOption | string | false | Признак вида поля банка бенефициара (поле 57 в формате MT103) |
| beneficiaryCustomerAccount | string | false | Номер счета бенефициара. 1-я часть значения поля 59 в формате MT103 |
| beneficiaryCustomerName | string | false | Код BIC/BEI или название и адрес бенефициара. Содержимое поля 59 (за исключением номера счета, с разделителями) в формате MT103 |
| detailsOfCharges | string | false | Сведения о расходах (формат MT103). OUR - Все расходы по данной операции относятся на счет Плательщика |
| exchangeRate | string | false | Курс конвертации (формат MT103) |
| instructedAmount | string | false | Валюта/сумма по инструкции (формат MT103) |
| instructionCode | string | false | Код инструкции (формат MT103) |
| intermediaryBankAccount | string | false | Номер счета банка-посредника.1-я часть значения поля 56 в формате MT103 |
| intermediaryBankName | string | false | Код BIC или название банка-посредника. Содержимое поля 56 (за исключением номера счета, с разделителями) в формате MT103 |
| intermediaryBankOption | string | false | Признак вида поля банка-посредника |
| messageDestinator | string | false | Получатель сообщения SWIFT (формат MT103) |
| messageIdentifier | string | false | Уникальный системный номер сообщения SWIFT (формат MT103) |
| messageOriginator | string | false | Отправитель сообщения SWIFT (формат MT103) |
| messageReceiveTime | string | false | Дата и время получения сообщения SWIFT (формат MT103) |
| messageSendTime | string | false | Дата и время отправки сообщения SWIFT (формат MT103) |
| messageType | string | false | Тип сообщения SWIFT |
| orderingCustomerAccount | string | false | Номер счета плательщика в формате |
| orderingCustomerName | string | false | Код BIC/BEI или название и адрес плательщика.Содержимое поля 50 (за исключением номера счета, с разделителями) в формате MT103 |
| orderingCustomerOption | string | false | Признак вида поля плательщика |
| orderingInstitutionAccount | string | false | Номер счета банка плательщика.1-я часть значения поля 52 в формате MT103 |
| orderingInstitutionName | string | false | Код BIC или название и адрес банка плательщика. Содержимое поля 52 (за исключением номера счета, с разделителями) в формате MT103 |
| orderingInstitutionOption | string | false | Признак вида поля банка плательщика |
| receiverCharges | string | false | Расходы получателя (формат MT103) |
| receiverCorrespondentAccount | string | false | Номер счета корреспондента получателя. |
| receiverCorrespondentName | string | false | Код BIC, расположение или название и адрес корреспондента получателя. Содержимое поля 54 (за исключением номера счета, с разделителями) в формате MT103 |
| receiverCorrespondentOption | string | false | Признак вида поля корреспондента |
| regulatoryReporting | string | false | Контрольная отчетность (формат MT103) |
| remittanceInformation | string | false | Сведения о переводе (формат MT103, поле 70) |
| senderCharges | string | false | Расходы отправителя (формат MT103) |
| senderCorrespondentAccount | string | false | Номер счета корреспондента отправителя. |
| senderCorrespondentName | string | false | Код BIC, расположение или название и адрес корреспондента отправителя. Содержимое поля 53 (за исключением номера счета, с разделителями) в формате MT103 |
| senderCorrespondentOption | string | false | Признак вида поля корреспондента |
| senderToReceiverInformation | string | false | Информация отправителя получателю (формат MT103) |
| transactionReferenceNumber | string | false | Референс операции (формат MT103, поле 20) |
| transactionRelatedReference | string | false | Связанный референс (формат MT103) |
| transactionTypeCode | string | false | Код типа операции (формат MT103) |
| urgent | string | false | Признак срочности операции (формат MT103). URGENT - Срочная операция; NORMAL - Обычная операция |
| valueDateCurrencyInterbankSettledAmount | string | false | Дата валютирования, код валюты, сумма межбанковского расчета (формат MT103) |
| payeeBankBic | string | false | БИК банка получателя |
| payeeBankCorrAccount | string | false | Корсчёт банка получателя |
| payeeAccount | string | false | Номер счёта получателя |
| payeeBankName | string | false | Наименование банка получателя |
| payeeInn | string | false | ИНН получателя |
| payeeKpp | string | false | КПП получателя |
| payeeName | string | false | Наименование получателя |
| payerAccount | string | false | Номер счёта плательщика |
| payerBankBic | string | false | БИК банка плательщика |
| payerBankCorrAccount | string | false | Корсчёт банка плательщика |
| payerBankName | string | false | Наименование банка плательщика |
| payerInn | string | false | ИНН плательщика |
| payerKpp | string | false | КПП плательщика |
| payerName | string | false | Наименование плательщика |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| bankOperationCode | CRED | Код банковской операции (формат MT103) |
| detailsOfCharges | OUR | Сведения о расходах (формат MT103) - Все расходы по данной операции относятся на счет Плательщика |
| messageType | 103 | Тип сообщения SWIFT - формат MT103 |
| urgent | URGENT | Признак срочности операции (формат MT103) - Срочная операция |
| urgent | NORMAL | Признак срочности операции (формат MT103) - Обычная операция |
ErrorUnauthorized
{
"error": "invalid_token",
"error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorInternal
{
"error": "internal_error",
"error_description": "Internal server error"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorBadRequest
{
"error": "invalid_request",
"error_description": "Authorization header is not present in request headers"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorScope
{
"error": "insufficient_scope",
"error_description": "The request requires higher privileges than provided by the access token"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorEndpoint
{
"error": "unknown_endpoint",
"error_description": "Endpoint is not found or not active"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
Получение выписки в формате 1С
Для получения операций по счету в формате 1С необходимо отправить запрос GET accounts/{accountNumber}/transactions/1C с access_token, полученным в Alfa ID, со scope = transactions, и параметрами запроса.
Code samples
curl -X GET /accounts/{accountNumber}statement/transactions \
-H 'Accept: application/xml' \
-H 'Authorization: Bearer {access-token}'
Header Parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| accountNumber | path | string | true | Номер расчетного счета |
| executeDate | query | string | true | Дата исполнения |
| limit | query | integer | false | Количество объектов на одной странице |
| offset | query | integer | false | Количество объектов в списке, которые необходимо пропустить |
Example responses
200 Response
<?xml version="1.0" encoding="UTF-8" ?>
<Statement>
<id>f7cbc6af-33dd-4c37-b67d-7400e1c327ad</id>
<formatVersion>2.3.2</formatVersion>
<creationDate>2022-01-21T11:25:22.522Z</creationDate>
<Sender>
<bic>44525593</bic>
<name>АО "АЛЬФА-БАНК"</name>
</Sender>
<Recipient>
<id>40702810701300000000</id>
<name>Полное наименование Орг № 11329</name>
<inn>140237176</inn>
<kpp>37186025</kpp>
</Recipient>
<Data>
<statementType>0</statementType>
<dateFrom>2022-01-20T00:00:00Z</dateFrom>
<dateTo>2022-01-20T00:00:00Z</dateTo>
<Account>40702810701300000000</Account>
<Bank>
<bic>44525593</bic>
<name>АО "АЛЬФА-БАНК"</name>
<correspAcc>30101810200000000000</correspAcc>
</Bank>
<OpeningBalance>99527.00</OpeningBalance>
<TotalDebits>853.00</TotalDebits>
<TotalCredits>100000.00</TotalCredits>
<ClosingBalance>99407.20</ClosingBalance>
<OperationInfo>
<PayDoc>
<id>1220120MOPYTMD0000031_artificially_created</id>
<docKind>10</docKind>
<PayDocRu>
<docNo>768</docNo>
<docDate>2019-05-04</docDate>
<sum>36.00</sum>
<Payer>
<name>Полное наименование Орг № 11329</name>
<inn>140237176</inn>
<kpp>37186025</kpp>
<account>40702810701300000000</account>
<Bank>
<bic>44525593</bic>
<name>АО "АЛЬФА-БАНК"</name>
<correspAcc>30101810200000000000</correspAcc>
</Bank>
</Payer>
<Payee>
<name>Полное наименование Орг № 11329</name>
<inn>140237176</inn>
<kpp>37186025</kpp>
<account>40702810701300000000</account>
<Bank>
<bic>44525593</bic>
<name>АО "АЛЬФА-БАНК"</name>
<correspAcc>30101810200000000000</correspAcc>
</Bank>
</Payee>
<paymentKind>электронно</paymentKind>
<transitionKind>17</transitionKind>
<priority>5</priority>
<code>0</code>
<incomeTypeCode>2</incomeTypeCode>
<purpose>Комиссия за переводы в валюте РФ за 2022-01-20.</purpose>
<BudgetPaymentInfo>
<drawerStatus>1</drawerStatus>
<cbc>0</cbc>
<oktmo>54701000</oktmo>
<reason>ТП</reason>
<taxPeriod>МС.03.2016</taxPeriod>
<docNo>12345</docNo>
<docDate>22.01.2022</docDate>
<payType>1</payType>
</BudgetPaymentInfo>
</PayDocRu>
<PayRequest>
<paymentCondition>1</paymentCondition>
<acceptTerm>0</acceptTerm>
<docDispatchDate>20.01.2022</docDispatchDate>
</PayRequest>
<CollectionOrder>
<docNo>768</docNo>
<docDate>2019-05-04</docDate>
<sum>36.00</sum>
<Payer>
<name>Полное наименование Орг № 11329</name>
<inn>140237176</inn>
<kpp>37186025</kpp>
<account>40702810701300000000</account>
<Bank>
<bic>44525593</bic>
<name>АО "АЛЬФА-БАНК"</name>
<correspAcc>30101810200000000000</correspAcc>
</Bank>
</Payer>
<Payee>
<name>Полное наименование Орг № 11329</name>
<inn>140237176</inn>
<kpp>37186025</kpp>
<account>40702810701300000000</account>
<Bank>
<bic>44525593</bic>
<name>АО "АЛЬФА-БАНК"</name>
<correspAcc>30101810200000000000</correspAcc>
</Bank>
</Payee>
<paymentKind>электронно</paymentKind>
<transitionKind>17</transitionKind>
<priority>5</priority>
<code>0</code>
<incomeTypeCode>2</incomeTypeCode>
<purpose>Комиссия за переводы в валюте РФ за 2022-01-20.</purpose>
<BudgetPaymentInfo>
<drawerStatus>1</drawerStatus>
<cbc>0</cbc>
<oktmo>54701000</oktmo>
<reason>ТП</reason>
<taxPeriod>МС.03.2016</taxPeriod>
<docNo>12345</docNo>
<docDate>22.01.2022</docDate>
<payType>1</payType>
</BudgetPaymentInfo>
</CollectionOrder>
<PaymentOrder>
<transitionContent>null</transitionContent>
<partialPaymentNo>0</partialPaymentNo>
<partialTransitionKind>3</partialTransitionKind>
<sumResidualPayment>0</sumResidualPayment>
<partialDocNo>12345</partialDocNo>
<partialDocDate>20.01.2022</partialDocDate>
<BudgetPaymentInfo>
<drawerStatus>1</drawerStatus>
<cbc>0</cbc>
<oktmo>54701000</oktmo>
<reason>ТП</reason>
<taxPeriod>МС.03.2016</taxPeriod>
<docNo>12345</docNo>
<docDate>22.01.2022</docDate>
<payType>1</payType>
</BudgetPaymentInfo>
</PaymentOrder>
<BankOrder>
<docNo>12345</docNo>
<docDate>2022-01-22</docDate>
<sum>14</sum>
<Payer>
<name>Полное наименование Орг № 11329</name>
<inn>140237176</inn>
<kpp>37186025</kpp>
<account>40702810701300000000</account>
<Bank>
<bic>44525593</bic>
<name>АО "АЛЬФА-БАНК"</name>
<correspAcc>30101810200000000000</correspAcc>
</Bank>
</Payer>
<Payee>
<name>Полное наименование Орг № 11329</name>
<inn>140237176</inn>
<kpp>37186025</kpp>
<account>40702810701300000000</account>
<Bank>
<bic>44525593</bic>
<name>АО "АЛЬФА-БАНК"</name>
<correspAcc>30101810200000000000</correspAcc>
</Bank>
</Payee>
<paymentKind>электронно</paymentKind>
<transitionKind>17</transitionKind>
<priority>5</priority>
<code>0</code>
<purpose>За транспортные услуги</purpose>
</BankOrder>
<MemOrder>
<docNo>12345</docNo>
<docDate>2022-01-22</docDate>
<sum>14</sum>
<Payer>
<name>Полное наименование Орг № 11329</name>
<inn>140237176</inn>
<kpp>37186025</kpp>
<account>40702810701300000000</account>
<Bank>
<bic>44525593</bic>
<name>АО "АЛЬФА-БАНК"</name>
<correspAcc>30101810200000000000</correspAcc>
</Bank>
</Payer>
<Payee>
<name>Полное наименование Орг № 11329</name>
<inn>140237176</inn>
<kpp>37186025</kpp>
<account>40702810701300000000</account>
<Bank>
<bic>44525593</bic>
<name>АО "АЛЬФА-БАНК"</name>
<correspAcc>30101810200000000000</correspAcc>
</Bank>
</Payee>
<paymentKind>электронно</paymentKind>
<transitionKind>17</transitionKind>
<priority>5</priority>
<code>0</code>
<purpose>За транспортные услуги</purpose>
</MemOrder>
<DC>1</DC>
<Date>2022-01-20</Date>
<ExtID>null</ExtID>
<Stamp>
<bic>44525593</bic>
<name>АО \"АЛЬФА-БАНК\"</name>
<correspAcc>30101810200000000000</correspAcc>
<branch>string</branch>
<Status>
<code>2</code>
<name>Исполнен</name>
<moreInfo>null</moreInfo>
</Status>
</Stamp>
</PayDoc>
</OperationInfo>
<Stamp>
<bic>44525593</bic>
<name>АО \"АЛЬФА-БАНК\"</name>
<correspAcc>30101810200000000000</correspAcc>
<extIdStatementRequest>null</extIdStatementRequest>
</Stamp>
</Data>
</Statement>
Responses
Коды ошибок представлены из спецификации 1С
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (OK) | ОК | 01 (Успешный результат) | Statement1C |
| 400 (Bad Request) | 1010 (invalid_request) | Неверные входные параметры запроса | ErrorBadRequestXML |
| 401 (Unauthorized) | 1201 (invalid_token) | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам. | ErrorUnauthorizedXML |
| 403 (Forbidden) | 1202 (insufficient_scope) | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScopeXML |
| 403 (Forbidden) | 1202 (access_denied) | Доступ к счету запрещен | ErrorScopeXML |
| 404 (Not Found) | 1003 (unknown_endpoint) | 1003 (Эндпоинт не найден или неактивен) | ErrorEndpointXML |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | 1001 (internal_error) | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternalXML |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | x-traceid | string | Идентификатор трассировки запроса |
Schemas
Statement1C
Выписка операций по счетам в формате 1С
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | false | Уникальный идентификатор выписки |
| formatVersion | string | false | Версия формата |
| creationDate | string | false | Дата и время формирования |
| Sender | Sender | false | Отправитель |
| Recipient | Recipient | false | Получаетель |
| Data | StatementData | false | Данные выписки по лицевому счету |
StatementData
Данные выписки по лицевому счету
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| statementType | string | false | Тип выписки 0 - Окончательная выписка |
| dateFrom | string | false | Начало периода выписки |
| dateTo | string | false | Конец периода выписки |
| Account | string | false | Номер лиц. счета |
| Bank | Bank | false | Данные банка |
| OpeningBalance | number | false | Остаток на счете на начало периода |
| TotalDebits | number | false | Общая сумма документов по дебету счета (списание) |
| TotalCredits | number | false | Общая сумма документов по кредиту счета (поступление) |
| ClosingBalance | number | false | Остаток на счете на конец периода |
| OperationInfo | [OperationInfo] | false | Информация об одной операции по лицевому счету в выписке |
| Stamp | StatementDataStamp | false | Данные штампа банка по выписке в целом |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| statementType | 0 | Тип выписки - Окончательная выписка |
StatementDataStamp
Данные штампа банка по выписке в целом
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| bic | string | false | БИК банка |
| name | string | false | Название банка |
| correspAcc | string | false | Коррсчет банка |
| extIdStatementRequest | string | false | ID исходного запроса на выписку, если такой был |
Accounts
Данные налогоплательщика
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| name | string | false | Наименование налогоплательщика |
| inn | string | false | ИНН налогоплательщика |
| kpp | string | false | КПП налогоплательщика |
| account | string | false | Расчетный счет клиента |
| Bank | Bank | false | Данные банка |
Bank
Данные банка
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| bic | string | false | БИК банка |
| name | string | false | Название банка |
| correspAcc | string | false | Коррсчет банка |
BankOrder
Данные банковского ордера
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| docNo | string | false | Номер документа (поле 3) |
| docDate | string | false | Дата составления (поле 4) |
| sum | number | false | Сумма документа (поле 7) |
| Payer | Accounts | false | Данные налогоплательщика |
| Payee | Accounts | false | Данные налогоплательщика |
| paymentKind | string | false | Вид платежа (поле 5) |
| transitionKind | string | false | Вид операции (поле 18) |
| priority | string | false | Очередность платежа (поле 21) |
| code | string | false | Уникальный идентификатор платежа (поле 22) |
| purpose | string | false | Назначение платежа (поле 24) |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| paymentKind | электронно | Вид платежа - электронно |
| paymentKind | телеграфом | Вид платежа - телеграфом |
| paymentKind | почтой | Вид платежа - почтой |
| paymentKind | срочно | Вид платежа - срочно |
BudgetPaymentInfo
Реквизиты бюджетного документа
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| drawerStatus | string | false | Статус составителя (поле 101). |
| cbc | string | false | Код бюджетной классификации (КБК) в соответствии с классификацией доходов бюджетов РФ (поле 104) |
| oktmo | string | false | Значение кода ОКТМО муниципального образования (поле 105) |
| reason | string | false | Основание налогового платежа (поле 106) |
| taxPeriod | string | false | Налоговый период / код таможенного органа (поле 107) |
| docNo | string | false | Номер налогового документа (поле 108) |
| docDate | string | false | Дата налогового документа или 0 (поле 109) |
| payType | string | false | Код выплат (поле 110) |
OperationInfo
Информация об одной операции по лицевому счету в выписке
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| PayDoc | PayDoc | false | Данные платежного документа |
PayDoc
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | false | Идентификатор платежного документа в банке |
| docKind | string | false | Код вида электронного документа: 10 - Платежное поручение; 11 - Платежное требование; 16 - Мемориальный ордер; 17 - Платежный ордер; 18 - Банковский ордер |
| PayDocRu | PayDocRu | false | Данные платежного поручения |
| PayRequest | PayRequest | false | Данные платежного требования |
| CollectionOrder | PayDocRu | false | Данные платежного поручения |
| PaymentOrder | PaymentOrder | false | Данные платежного ордера |
| BankOrder | BankOrder | false | Данные банковского ордера |
| MemOrder | BankOrder | false | Данные банковского ордера |
| DC | string | false | Признак дебета/кредита: 1 - Операция по дебету (списание со счета); 2 - Операция по кредиту (поступление на счет) |
| Date | string | false | Дата проводки документа по лицевому счету |
| ExtID | string | false | ID исходного платежного документа плательщик |
| Stamp | PayDocStamp | false | Данные штампа банка по каждому платежному документу |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| docKind | 10 | Код вида электронного документа - Платежное поручение |
| docKind | 11 | Код вида электронного документа - Платежное требование |
| docKind | 16 | Код вида электронного документа - Мемориальный ордер |
| docKind | 17 | Код вида электронного документа - Платежный ордер |
| docKind | 18 | Код вида электронного документа - Банковский ордер |
| DC | 1 | Признак дебета/кредита - Операция по дебету (списание со счета) |
| DC | 2 | Признак дебета/кредита - Операция по кредиту (поступление на счет) |
PayDocRu
Данные платежного поручения
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| docNo | string | false | Номер документа (поле 3) |
| docDate | string | false | Дата составления (поле 4) |
| sum | number | false | Сумма документа (поле 7) |
| Payer | Accounts | false | Данные налогоплательщика |
| Payee | Accounts | false | Данные налогоплательщика |
| paymentKind | string | false | Вид платежа (поле 5) |
| transitionKind | string | false | Вид операции (поле 18) |
| priority | string | false | Очередность платежа (поле 21) |
| code | string | false | Уникальный идентификатор платежа (поле 22) |
| incomeTypeCode | string | false | Код вида дохода (поле 20) |
| purpose | string | false | Назначение платежа (поле 24) |
| BudgetPaymentInfo | BudgetPaymentInfo | false | Реквизиты бюджетного документа |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| paymentKind | электронно | Вид платежа - электронно |
| paymentKind | телеграфом | Вид платежа - телеграфом |
| paymentKind | почтой | Вид платежа - почтой |
| paymentKind | срочно | Вид платежа - срочно |
PayDocStamp
Данные штампа банка по каждому платежному документу
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| bic | string | false | БИК банка |
| name | string | false | Название банка |
| correspAcc | string | false | Коррсчет банка |
| branch | string | false | Отделение банка |
| Status | PayDocStampStatus | false | Статус платежного документа в банке |
PayDocStampStatus
Статус платежного документа в банке
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| code | string | false | Код статуса (02 - Исполнен) |
| name | string | false | Наименование статуса на стороне банка |
| moreInfo | string | false | Дополнительная информация к статусу |
PayRequest
Данные платежного требования
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| paymentCondition | string | false | Условие оплаты (поле 35) |
| acceptTerm | integer(int32) | false | Срок для акцепта (поле 36) |
| docDispatchDate | string | false | Дата отсылки (вручения) плательщику предусмотренных договором документов (поле 37) |
PaymentOrder
Данные платежного ордера
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transitionContent | string | false | Содержание операции (поле 70) |
| partialPaymentNo | string | false | Номер частичного платежа (поле 38) |
| partialTransitionKind | string | false | Шифр платежного документа (поле 39) |
| sumResidualPayment | number | false | Сумма остатка платежа (поле 42) |
| partialDocNo | string | false | Номер платежного документа (поле 40) |
| partialDocDate | string | false | Дата платежного документа (поле 41) |
| BudgetPaymentInfo | BudgetPaymentInfo | false | Реквизиты бюджетного документа |
Recipient
Получаетель
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | false | Идентификатор клиента, как он задан на стороне банка |
| name | string | false | Название клиента |
| inn | string | false | ИНН клиента |
| kpp | string | false | КПП клиента |
Sender
Отправитель
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| bic | string | false | БИК банка |
| name | string | false | Название банка |
ErrorUnauthorizedXML
ErrorUnauthorizedXML
<?xml version="1.0" encoding="UTF-8" ?>
<Error>invalid_token</Error>
<ErrorDescription>The access token provided is expired, revoked, malformed, or invalid for other reasons</ErrorDescription>
Ошибка авторизации
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| Error | string | false | Код ошибки |
| ErrorDescription | string | false | Сообщение об ошибке |
ErrorInternalXML
ErrorInternalXML
<?xml version="1.0" encoding="UTF-8" ?>
<Error>internal_error</Error>
<ErrorDescription>Internal server error</ErrorDescription>
Ошибка сервера
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| Error | string | false | Код ошибки |
| ErrorDescription | string | false | Сообщение об ошибке |
ErrorBadRequestXML
ErrorBadRequestXML
<?xml version="1.0" encoding="UTF-8" ?>
<Error>invalid_request</Error>
<ErrorDescription>Authorization header is not present in request headers</ErrorDescription>
Ошибка запроса
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| Error | string | false | Код ошибки |
| ErrorDescription | string | false | Сообщение об ошибке |
ErrorScopeXML
ErrorScopeXML
<?xml version="1.0" encoding="UTF-8" ?>
<Error>insufficient_scope</Error>
<ErrorDescription>The request requires higher privileges than provided by the access token</ErrorDescription>
Ошибка прав доступа
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| Error | string | false | Код ошибки |
| ErrorDescription | string | false | Сообщение об ошибке |
ErrorEndpointXML
ErrorEndpointXML
<?xml version="1.0" encoding="UTF-8"?>
<root>
<error>unknown_endpoint</error>
<error_description>Endpoint is not found or not active</error_description>
</root>
Ошибка прав доступа
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| Error | string | false | Код ошибки |
| ErrorDescription | string | false | Сообщение об ошибке |
Получение выписки в формате МТ940
Для получения операций по счету в формате MT940 необходимо отправить запрос GET/accounts/{accountNumber}/transactions/MT940 с access_token, полученным в Alfa ID, со scope = transactions, и параметрами запроса.
Code samples
curl -X GET/accounts/{accountNumber}/transactions/MT940
-H 'Accept: text/plain' \
-H 'Authorization: Bearer {access-token}'
Header Parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| accountNumber | path | string | true | Номер расчетного счета |
| executeDate | query | string | true | Дата исполнения |
| limit | query | integer | false | Количество элементов |
| offset | query | integer | false | Смещение в результатах поиска |
Example responses
200 Response
":20:+57610880b621435
:25:40702810701300000761
:28C:1
:60a:C220112RUR99527,00 20
:86:/BENM//03271643540000095400 INN5752006960.KPP575301001 GAVRILOV DOBRYNa TROFIMOVIc /NZP/'(VO21100)' OPLATA PO DOGOVORU
:62a:C220113RUR99407,00"
Параметры успешного ответа передаются в соответствии с Правилами SWIFT
Parameters
| Name | Required | Description |
|---|---|---|
| :20: | true | Референс операции |
| :25: | true | Номер счета. Заполняется номером счета, по которому предоставляется выписка |
| :28С: | true | Номер выписки |
| :60а: | true | Входящий остаток. Составное поле состоит из 4 полей: 1-ый символ - Знак дебета (отрицательный остаток)/кредита(положительный остаток); 2-ой символ - Дата; 3-ий символ - Валюта; 4-ый символ - Сумма |
| :61: | false | Строка движения по счету (см. таблицу ниже). Заполнение в отдельной схеме ниже |
| :86: | false | Информация для владельца счета. В этом поле содержится дополнительная информация по операции. Для кредитовых операций после кодового слова ORDP указывается значение поле Плательщик (поле 50а из SWIFT MT103), а именно: номер счета плательщика, ИНН и КПП (если он есть) плательщика и его наименование. Для дебетовых операций после кодового слова BENM указывается значение поле Бенефициар (поле 59 из SWIFT MT103), а именно: номер счета бенефициара, ИНН и КПП (если он есть) бенефициара и его наименование. Для всех операций после кодового слова NZP указывается информация о платеже из поля 70 платежных инструкций. Поля разделены между собой пробелами. Алгоритм заполнения для кредитовых операций: /ORDP/ + "/" + Номер счета плательщика +"знак пробела" + INN + Номер ИНН плательщика+"." + KPP + Номер КПП плательщика (необязательное)+ "знак пробела" + Наименование плательщика + "знак пробела" + /NZP/ + информация о платеже из поля 70 платежных инструкций после транслитерации /BENM/ + "/" + Номер счета бенефициара(получателя) +"знак пробела" + INN + Номер ИНН бенефициара + "." + KPP + Номер КПП бенефициара(необязательное) + "знак пробела" + Наименование бенефициара + "знак пробела" + /NZP/ + информация о платеже из поля 70 платежных инструкций после транслитерации |
| :62а: | true | Исходящий остаток (учтенные средства). Составное поле состоит из 4 полей: 1-ый символ - Знак дебета (отрицательный остаток)/кредита (положительный остаток); 2-ой символ - Дата; 3-ий символ - Валюта; 4-ый символ - Сумма |
Строка движения по счету
| String's order | Required | Description |
|---|---|---|
| 1 | true | Дата валютирования (в формате ISO -ГГMMДД) |
| 2 | false | Дата проводки (поле не заполняется) |
| 3 | true | Знак дебета (списание со счета)/кредита (поступление на счет) |
| 4 | false | Код средств (представляет собой третью букву кода валюты) |
| 5 | true | Сумма |
| 6 | true | Код типа операции. Заполняется всегда = NTRF |
| 7 | true | Референс для владельца счета. Заполняется всегда = NONREF |
| 8 | true | Референс обслуживающей счет финансовой организации (поле не заполняется) |
| 9 | false | Дополнительная информация. В этом поле указывается номер платежа. Заполняется числовым значением с новой строки |
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (OK) | ОК | Успешный результат | StatementMT940 |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам. | ErrorUnauthorized |
| 403 (Forbidden) | Forbidden | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpointMT940 |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недотступен | None |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 200 | x-traceid | string | text/plain | Идентификатор трассировки запроса |
Schemas
StatementMT940
":20:+57610880b621435
:25:40702810701300000761
:28C:1
:60a:C220112RUR99527,00 20
:86:/BENM//03271643540000095400 INN5752006960.KPP575301001 GAVRILOV DOBRYNa TROFIMOVIc /NZP/'(VO21100)' OPLATA PO DOGOVORU
:62a:C220113RUR99407,00"
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorScope
"error: insufficient_scope error_description: The request requires higher privileges than provided by the access token"
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorUnauthorized
"error: invalid_token
error_description: The access token provided is expired, revoked, malformed, or invalid for other reasons"
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorInternal
"error: internal_error
error_description: Internal server error"
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorBadRequest
"error: invalid_request
error_description: Authorization header is not present in request headers"
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorEndpoint
"error: unknown_endpoint
error_description: Endpoint is not found or not active"
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
Получение информации об оборотах
Для получения информации об оборотах необходимо отправить запрос GET statement/summary с access_token, полученным в Alfa ID, со scope = transactions, и параметрами запроса.
Code samples
curl -X GET statement/summary
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header Parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| accountNumber | query | integer | Номер расчетного счета |
| statementDate | query | string | Дата исполнения операции |
Example responses
200 Response
{
"composedDateTime": "2018-12-31",
"lastMovementDate": "2018-12-31",
"openingRate": null,
"openingBalance": {
"amount": 10000.55,
"currencyName": "RUR"
},
"openingBalanceRub": {
"amount": 10000.55,
"currencyName": "RUR"
},
"closingBalance": {
"amount": 25000.3,
"currencyName": "RUR"
},
"closingBalanceRub": {
"amount": 25000.3,
"currencyName": "RUR"
},
"debitTurnover": {
"amount": 10000,
"currencyName": "RUR"
},
"debitTurnoverRub": {
"amount": 10000,
"currencyName": "RUR"
},
"debitTransactionsNumber": 10,
"creditTurnover": {
"amount": 24999.75,
"currencyName": "RUR"
},
"creditTurnoverRub": {
"amount": 24999.75,
"currencyName": "RUR"
},
"creditTransactionsNumber": 10
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (OK) | ОК | Успешный результат | StatementSummary |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам. | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 200 | x-traceid | string | Идентификатор трассировки запроса |
Schemas
StatementSummary
{
"composedDateTime": "2018-12-31",
"lastMovementDate": "2018-12-31",
"openingRate": null,
"openingBalance": {
"amount": 10000.55,
"currencyName": "RUR"
},
"openingBalanceRub": {
"amount": 10000.55,
"currencyName": "RUR"
},
"closingBalance": {
"amount": 25000.3,
"currencyName": "RUR"
},
"closingBalanceRub": {
"amount": 25000.3,
"currencyName": "RUR"
},
"debitTurnover": {
"amount": 10000,
"currencyName": "RUR"
},
"debitTurnoverRub": {
"amount": 10000,
"currencyName": "RUR"
},
"debitTransactionsNumber": 10,
"creditTurnover": {
"amount": 24999.75,
"currencyName": "RUR"
},
"creditTurnoverRub": {
"amount": 24999.75,
"currencyName": "RUR"
},
"creditTransactionsNumber": 10
}
Информация об оборотах
Properties
| Name | Type | Description |
|---|---|---|
| composedDateTime | string | Дата составления сводки |
| lastMovementDate | string | Дата последней операции по счёту за запрошенный период |
| openingRate | string | Курс ЦБ за единицу валюты на начало периода |
| openingBalance | OpeningBalance | Входящий остаток в валюте счёта |
| openingBalanceRub | OpeningBalanceRub | Входящий остаток в рублях |
| closingBalance | ClosingBalance | Исходящий остаток в валюте счёта |
| closingBalanceRub | ClosingBalanceRub | Исходящий остаток в рублях |
| debitTurnover | DebitTurnover | Дебетовый оборот в валюте счёта |
| debitTurnoverRub | DebitTurnoverRub | Дебетовый оборот в рублях |
| debitTransactionsNumber | integer | Количество дебетовых операций по счёту |
| creditTurnover | CreditTurnover | Кредитовый оборот в валюте счёта |
| creditTurnoverRub | CreditTurnoverRub | Кредитовый оборот в рублях |
| creditTransactionsNumber | integer | Количество кредитовых операций по счёту |
OpeningBalance
{
"amount": 10000.55,
"currencyName": "RUR"
}
Входящий остаток в валюте счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | false | Сумма |
| currencyName | string | false | Буквенный ISO-код валюты |
OpeningBalanceRub
{
"amount": 10000.55,
"currencyName": "RUR"
}
Входящий остаток в рублях
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | false | Сумма |
| currencyName | string | false | Буквенный ISO-код валюты |
ClosingBalance
{
"amount": 25000.3,
"currencyName": "RUR"
}
Исходящий остаток в валюте счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | false | Сумма |
| currencyName | string | false | Буквенный ISO-код валюты |
ClosingBalanceRub
{
"amount": 25000.3,
"currencyName": "RUR"
}
Исходящий остаток в рублях
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | false | Сумма |
| currencyName | string | false | Буквенный ISO-код валюты |
DebitTurnover
{
"amount": 10000,
"currencyName": "RUR"
}
Дебетовый оборот в валюте счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | false | Сумма |
| currencyName | string | false | Буквенный ISO-код валюты |
DebitTurnoverRub
{
"amount": 10000,
"currencyName": "RUR"
}
Дебетовый оборот в рублях
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | false | Сумма |
| currencyName | string | false | Буквенный ISO-код валюты |
CreditTurnover
{
"amount": 24999.75,
"currencyName": "RUR"
}
Кредитовый оборот в валюте счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | false | Сумма |
| currencyName | string | false | Буквенный ISO-код валюты |
CreditTurnoverRub
{
"amount": 24999.75,
"currencyName": "RUR"
}
Кредитовый оборот в рублях
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | false | Сумма |
| currencyName | string | false | Буквенный ISO-код валюты |
ErrorUnauthorized
{
"error": "invalid_token",
"error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorInternal
{
"error": "internal_error",
"error_description": "Internal server error"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorBadRequest
{
"error": "invalid_request",
"error_description": "Authorization header is not present in request headers"
}
Properties
| Name | Type | Description |
|---|---|---|
| error | string | Код ошибки |
| error_description | string | Сообщение об ошибке |
ErrorScope
{
"error": "insufficient_scope",
"error_description": "The request requires higher privileges than provided by the access token"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorEndpoint
{
"error": "unknown_endpoint",
"error_description": "Endpoint is not found or not active"
}
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
Платежные поручения
Список методов:
- Создание рублёвого платёжного поручения
- Получение статуса поручения
- Получение атрибутов поручения
- Выставление счета
Создание рублёвого платёжного поручения
Метод позволяет создать дебетовое платёжное поручение по собственным счетам.
Для создания рублёвого платёжного поручения необходимо отправить запрос POST /payments с access_token, полученным в Alfa ID со scope = payments, и параметрами запроса.
Code samples
curl -X POST payments \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header Parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Body parameter
{
"amount": 1.01,
"bankComment": "",
"bankStatus": "CREATED",
"crucialFieldsHash": "4888bdfe92812ebf1f70aa9be4b8a733",
"date": "2018-12-31",
"deliveryKind": "электронно",
"departmentalInfo": {
"uip": "0",
"drawerStatus101": "01",
"kbk": "18210102010011000110",
"oktmo": "45902000",
"reasonCode106": "ТП",
"taxPeriod107": "ГД.00.2021",
"docNumber108": "000000000000001",
"docDate109": "2021-12-14",
"paymentKind110": "0"
},
"digestSignatures": [
{
"base64Encoded": "HlaeIHXXEcGT1bFxo1NlpAzpr+kJ2IQrcxVdvDTep6xjsmD1FDb+6NIyLT+/T24S0mPfVCU75sieOMt71TBS7w==",
"certificateUuid": "22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6"
}
],
"externalId": "22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6",
"incomeTypeCode": "2",
"number": "1",
"operationCode": "01",
"payeeAccount": "40702810564564564531",
"payeeBankBic": "040173745",
"payeeBankCorrAccount": "30101810200000000593",
"payeeInn": "7723870785",
"payeeKpp": "553453453",
"payeeName": "Общество с ограниченной ответственностью \"Центр \"ИННОВАЦИЯ\"",
"payerAccount": "40702810600010800068",
"payerBankBic": "044525225",
"payerBankCorrAccount": "30101810400000000225",
"payerInn": "7736576798",
"payerKpp": "772201001",
"payerName": "Общество с ограниченной ответственностью \"Клиент\"",
"priority": "5",
"purpose": "Оплата заказа №1. НДС нет.",
"urgencyCode": "NORMAL",
"vat": {
"amount": 0,
"rate": "0",
"type": "NO_VAT"
}
}
Body Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | true | Сумма платежа |
| bankComment | string | false | Банковский комментарий к статусу документа |
| bankStatus | string | false | Статус документа: * ACCEPTED - Принят;* CREATED - Создан;* SIGNED - Подписан;* DELETED - Удалён;* REFUSEDBYBANK - Отвергнут банком;* REQUISITEERROR - Ошибка реквизитов;* IMPLEMENTED - Исполнен |
| crucialFieldsHash | string | false | Hash от ключевых полей документа |
| date | string | true | Дата составления документа |
| deliveryKind | string | false | Вид платежа |
| departmentalInfo | DepartmentalInfo | false | Реквизиты налогового, таможенного или иного бюджетного платежа |
| digestSignatures | [Signature] | false | [Электронные подписи по дайджесту документа] |
| externalId | string | true | Идентификатор документа, присвоенный партнером (UUID) |
| incomeTypeCode | string | false | Код вида дохода получателей выплаты по 229-ФЗ |
| number | string | false | Номер документа |
| operationCode | string | true | Код операции |
| payeeAccount | string | true | Счет получателя платежа |
| payeeBankBic | string | true | БИК банка получателя платежа |
| payeeBankCorrAccount | string | false | Корсчет банка получателя платежа |
| payeeInn | string | false | ИНН получателя платежа |
| payeeKpp | string | false | КПП получателя платежа |
| payeeName | string | true | Полное наименование получателя платежа |
| payerAccount | string | true | Счет плательщика |
| payerBankBic | string | true | БИК банка плательщика |
| payerBankCorrAccount | string | true | Корсчет банка плательщика |
| payerInn | string | true | ИНН плательщика |
| payerKpp | string | false | КПП плательщика |
| payerName | string | true | Полное наименование плательщика |
| priority | string | true | Очередность платежа |
| purpose | string | true | Назначение платежа |
| urgencyCode | string | false | Код срочности: * OFFHOURS - неотложный;* BESP - банковские электронные срочные платежи;* NORMAL - срочность не указана |
| vat | Vat | false | Данные НДС |
Example responses
201 Response
{
"amount": 1.01,
"bankComment": "",
"bankStatus": "CREATED",
"crucialFieldsHash": "4888bdfe92812ebf1f70aa9be4b8a733",
"date": "2018-12-31",
"deliveryKind": "электронно",
"departmentalInfo": {
"uip": "0",
"drawerStatus101": "01",
"kbk": "18210102010011000110",
"oktmo": "45902000",
"reasonCode106": "ТП",
"taxPeriod107": "ГД.00.2021",
"docNumber108": "000000000000001",
"docDate109": "2021-12-14",
"paymentKind110": "0"
},
"digestSignatures": [
{
"base64Encoded": "HlaeIHXXEcGT1bFxo1NlpAzpr+kJ2IQrcxVdvDTep6xjsmD1FDb+6NIyLT+/T24S0mPfVCU75sieOMt71TBS7w==",
"certificateUuid": "22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6"
}
],
"externalId": "22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6",
"incomeTypeCode": "2",
"number": "1",
"operationCode": "01",
"payeeAccount": "40702810564564564531",
"payeeBankBic": "040173745",
"payeeBankCorrAccount": "30101810200000000593",
"payeeInn": "7723870785",
"payeeKpp": "553453453",
"payeeName": "Общество с ограниченной ответственностью \"Центр \"ИННОВАЦИЯ\"",
"payerAccount": "40702810600010800068",
"payerBankBic": "044525225",
"payerBankCorrAccount": "30101810400000000225",
"payerInn": "7736576798",
"payerKpp": "772201001",
"payerName": "Общество с ограниченной ответственностью \"Клиент\"",
"priority": "5",
"purpose": "Оплата заказа №1. НДС нет.",
"urgencyCode": "NORMAL",
"vat": {
"amount": 0,
"rate": "0",
"type": "NO_VAT"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 201 | Created | Документ создан | Payment |
| 400 | Bad Request | Неверные входные параметры запроса | Error |
| 401 | Unauthorized | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | Error |
| 403 | Forbidden | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | Error |
| 409 | Conflict | Конфликт | Error |
| 429 | Too Many Requests | Слишком много запросов в заданный период времени | Error |
| 500 | Internal Server Error | Внутренняя ошибка сервиса при выполнении обработки запроса | Error |
| 503 | Service Unavailable | Сервер временно недоступен | None |
Schemas
Payment
{
"amount": 1.01,
"bankComment": "",
"bankStatus": "CREATED",
"crucialFieldsHash": "4888bdfe92812ebf1f70aa9be4b8a733",
"date": "2018-12-31",
"deliveryKind": "электронно",
"departmentalInfo": {
"uip": "0",
"drawerStatus101": "01",
"kbk": "18210102010011000110",
"oktmo": "45902000",
"reasonCode106": "ТП",
"taxPeriod107": "ГД.00.2021",
"docNumber108": "000000000000001",
"docDate109": "2021-12-14",
"paymentKind110": "0"
},
"digestSignatures": [
{
"base64Encoded": "HlaeIHXXEcGT1bFxo1NlpAzpr+kJ2IQrcxVdvDTep6xjsmD1FDb+6NIyLT+/T24S0mPfVCU75sieOMt71TBS7w==",
"certificateUuid": "22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6"
}
],
"externalId": "22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6",
"incomeTypeCode": "2",
"number": "1",
"operationCode": "01",
"payeeAccount": "40702810564564564531",
"payeeBankBic": "040173745",
"payeeBankCorrAccount": "30101810200000000593",
"payeeInn": "7723870785",
"payeeKpp": "553453453",
"payeeName": "Общество с ограниченной ответственностью \"Центр \"ИННОВАЦИЯ\"",
"payerAccount": "40702810600010800068",
"payerBankBic": "044525225",
"payerBankCorrAccount": "30101810400000000225",
"payerInn": "7736576798",
"payerKpp": "772201001",
"payerName": "Общество с ограниченной ответственностью \"Клиент\"",
"priority": "5",
"purpose": "Оплата заказа №1. НДС нет.",
"urgencyCode": "NORMAL",
"vat": {
"amount": 0,
"rate": "0",
"type": "NO_VAT"
}
}
Данные платёжного поручения
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | true | Сумма платежа |
| bankComment | string | false | Банковский комментарий к статусу документа |
| bankStatus | string | false | Статус документа: * ACCEPTED - Принят;* CREATED - Создан;* SIGNED - Подписан;* DELETED - Удалён;* REFUSEDBYBANK - Отвергнут банком;* REQUISITEERROR - Ошибка реквизитов;* IMPLEMENTED - Исполнен |
| crucialFieldsHash | string | false | Hash от ключевых полей документа |
| date | string | true | Дата составления документа |
| deliveryKind | string | false | Вид платежа |
| departmentalInfo | DepartmentalInfo | false | Реквизиты налогового, таможенного или иного бюджетного платежа |
| digestSignatures | [Signature] | false | [Электронные подписи по дайджесту документа] |
| externalId | string(uuid) | true | Идентификатор документа, присвоенный партнером (UUID) |
| incomeTypeCode | string | false | Код вида дохода получателей выплаты по 229-ФЗ |
| number | string | false | Номер документа |
| operationCode | string | true | Код операции |
| payeeAccount | string | true | Счет получателя платежа |
| payeeBankBic | string | true | БИК банка получателя платежа |
| payeeBankCorrAccount | string | false | Корсчет банка получателя платежа |
| payeeInn | string | false | ИНН получателя платежа |
| payeeKpp | string | false | КПП получателя платежа |
| payeeName | string | true | Полное наименование получателя платежа |
| payerAccount | string | true | Счет плательщика |
| payerBankBic | string | true | БИК банка плательщика |
| payerBankCorrAccount | string | true | Корсчет банка плательщика |
| payerInn | string | true | ИНН плательщика |
| payerKpp | string | false | КПП плательщика |
| payerName | string | true | Полное наименование плательщика |
| priority | string | true | Очередность платежа |
| purpose | string | true | Назначение платежа |
| urgencyCode | string | false | Код срочности: * OFFHOURS - неотложный;* BESP - банковские электронные срочные платежи;* NORMAL - срочность не указана |
| vat | Vat | false | Данные НДС |
DepartmentalInfo
{
"uip": "0",
"drawerStatus101": "01",
"kbk": "18210102010011000110",
"oktmo": "45902000",
"reasonCode106": "ТП",
"taxPeriod107": "ГД.00.2021",
"docNumber108": "000000000000001",
"docDate109": "2021-12-14",
"paymentKind110": "0"
}
Реквизиты налогового, таможенного или иного бюджетного платежа
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| uip | string | false | Уникальный идентификатор платежа |
| drawerStatus101 | string | false | Показатель статуса налогоплательщика |
| kbk | string | false | Код бюджетной классификации |
| oktmo | string | false | Код OKTMO |
| reasonCode106 | string | false | Показатель основания платежа |
| taxPeriod107 | string | false | Налоговый период или код таможенного органа |
| docNumber108 | string | false | Номер налогового документа |
| docDate109 | string | false | Дата налогового документа в формате YYYY-MM-DD |
| paymentKind110 | string | false | Тип налогового платежа |
Signature
{
"base64Encoded": "HlaeIHXXEcGT1bFxo1NlpAzpr+kJ2IQrcxVdvDTep6xjsmD1FDb+6NIyLT+/T24S0mPfVCU75sieOMt71TBS7w==",
"certificateUuid": "22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6"
}
Электронные подписи по дайджесту документа
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| base64Encoded | string | true | Значение электронной подписи, закодированное в Base64 |
| certificateUuid | string(uuid) | true | Серийный номер сертификата (UUID) |
Vat
{
"amount": 0,
"rate": "0",
"type": "NO_VAT"
}
Данные НДС
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | false | Сумма НДС |
| rate | string | false | Ставка НДС |
| type | string | true | Способ расчета НДС:INCLUDED - НДС включен в сумму платежа;NO_VAT - не облагается НДС;MANUAL - ручной ввод НДС;ONTOP - плюс НДС; |
Error
{
"error": "string",
"error_description": "string"
}
Ошибка
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
Получение статуса поручения
Метод позволяет получить статус платёжного поручения.
Для получения статуса поручения необходимо отправить запрос GET /payments/{externalId}/state с access_token, полученным в Alfa ID со scope = payments, и параметрами запроса.
Code samples
curl -X GET payments/{externalId}/state \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| externalId | path | string | true | Идентификатор документа, присвоенный партнером (UUID) |
| Authorization | header | string | true | Access token |
Example responses
200 Response
{
"bankStatus": "ACCEPTED",
"bankComment": "Отправим платёж в течение банковского дня",
"channelInfo": "string",
"crucialFieldsHash": "371a3c4cc7f07494dad9e6a292dfb998"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | PaymentDocState |
| 400 | Bad Request | Неверные входные параметры запроса | Error |
| 401 | Unauthorized | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | Error |
| 403 | Forbidden | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | Error |
| 409 | Conflict | Конфликт | Error |
| 429 | Too Many Requests | Слишком много запросов в заданный период времени | Error |
| 500 | Internal Server Error | Внутренняя ошибка сервиса при выполнении обработки запроса | Error |
| 503 | Service Unavailable | Сервер временно недоступен | None |
Schemas
PaymentDocState
{
"bankStatus": "ACCEPTED",
"bankComment": "Отправим платёж в течение банковского дня",
"channelInfo": "string",
"crucialFieldsHash": "371a3c4cc7f07494dad9e6a292dfb998"
}
Статус платёжного документа
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| bankStatus | string | false | Статус документа: * ACCEPTED - Принят;* CREATED - Создан;* SIGNED - Подписан;* DELETED - Удалён;* REFUSEDBYBANK - Отвергнут банком;* REQUISITEERROR - Ошибка реквизитов;* IMPLEMENTED - Исполнен |
| bankComment | string | false | Банковский комментарий к статусу документа |
| channelInfo | string | false | Комментарий, специфичный для документа, полученного по данному каналу |
| crucialFieldsHash | string | false | Hash от ключевых полей документа |
Error
{
"error": "string",
"error_description": "string"
}
Ошибка
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
Получение атрибутов поручения
Метод позволяет получить атрибуты ранее отправленного рублёвого платёжного поручения.
Для получения атрибутов поручения необходимо отправить запрос GET /payments/{externalId} с access_token, полученным в Alfa ID со scope = payments, и параметрами запроса.
Code samples
curl -X GET payments/{externalId} \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| externalId | path | string | true | Идентификатор документа, присвоенный партнером (UUID) |
| Authorization | header | string | true | Access token |
Example responses
200 Response
{
"amount": 1.01,
"bankComment": "",
"bankStatus": "CREATED",
"crucialFieldsHash": "4888bdfe92812ebf1f70aa9be4b8a733",
"date": "2018-12-31",
"deliveryKind": "электронно",
"departmentalInfo": {
"uip": "0",
"drawerStatus101": "01",
"kbk": "18210102010011000110",
"oktmo": "45902000",
"reasonCode106": "ТП",
"taxPeriod107": "ГД.00.2021",
"docNumber108": "000000000000001",
"docDate109": "2021-12-14",
"paymentKind110": "0"
},
"digestSignatures": [
{
"base64Encoded": "HlaeIHXXEcGT1bFxo1NlpAzpr+kJ2IQrcxVdvDTep6xjsmD1FDb+6NIyLT+/T24S0mPfVCU75sieOMt71TBS7w==",
"certificateUuid": "22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6"
}
],
"externalId": "22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6",
"incomeTypeCode": "2",
"number": "1",
"operationCode": "01",
"payeeAccount": "40702810564564564531",
"payeeBankBic": "040173745",
"payeeBankCorrAccount": "30101810200000000593",
"payeeInn": "7723870785",
"payeeKpp": "553453453",
"payeeName": "Общество с ограниченной ответственностью \"Центр \"ИННОВАЦИЯ\"",
"payerAccount": "40702810600010800068",
"payerBankBic": "044525225",
"payerBankCorrAccount": "30101810400000000225",
"payerInn": "7736576798",
"payerKpp": "772201001",
"payerName": "Общество с ограниченной ответственностью \"Клиент\"",
"priority": "5",
"purpose": "Оплата заказа №1. НДС нет.",
"urgencyCode": "NORMAL",
"vat": {
"amount": 0,
"rate": "0",
"type": "NO_VAT"
}
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | OK | Payment |
| 400 | Bad Request | Неверный формат запроса | Error |
| 401 | Unauthorized | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | Error |
| 403 | Forbidden | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | Error |
| 404 | Not Found | Платежный документ не найден | Error |
| 409 | Conflict | Конфликт | Error |
| 429 | Too Many Requests | Слишком много запросов в заданный период времени | Error |
| 500 | Internal Server Error | Внутренняя ошибка сервиса при выполнении обработки запроса | Error |
| 503 | Service Unavailable | Сервер временно недоступен | None |
Schemas
Payment
{
"amount": 1.01,
"bankComment": "",
"bankStatus": "CREATED",
"crucialFieldsHash": "4888bdfe92812ebf1f70aa9be4b8a733",
"date": "2018-12-31",
"deliveryKind": "электронно",
"departmentalInfo": {
"uip": "0",
"drawerStatus101": "01",
"kbk": "18210102010011000110",
"oktmo": "45902000",
"reasonCode106": "ТП",
"taxPeriod107": "ГД.00.2021",
"docNumber108": "000000000000001",
"docDate109": "2021-12-14",
"paymentKind110": "0"
},
"digestSignatures": [
{
"base64Encoded": "HlaeIHXXEcGT1bFxo1NlpAzpr+kJ2IQrcxVdvDTep6xjsmD1FDb+6NIyLT+/T24S0mPfVCU75sieOMt71TBS7w==",
"certificateUuid": "22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6"
}
],
"externalId": "22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6",
"incomeTypeCode": "2",
"number": "1",
"operationCode": "01",
"payeeAccount": "40702810564564564531",
"payeeBankBic": "040173745",
"payeeBankCorrAccount": "30101810200000000593",
"payeeInn": "7723870785",
"payeeKpp": "553453453",
"payeeName": "Общество с ограниченной ответственностью \"Центр \"ИННОВАЦИЯ\"",
"payerAccount": "40702810600010800068",
"payerBankBic": "044525225",
"payerBankCorrAccount": "30101810400000000225",
"payerInn": "7736576798",
"payerKpp": "772201001",
"payerName": "Общество с ограниченной ответственностью \"Клиент\"",
"priority": "5",
"purpose": "Оплата заказа №1. НДС нет.",
"urgencyCode": "NORMAL",
"vat": {
"amount": 0,
"rate": "0",
"type": "NO_VAT"
}
}
Данные платёжного поручения
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | true | Сумма платежа |
| bankComment | string | false | Банковский комментарий к статусу документа |
| bankStatus | string | false | Статус документа: * ACCEPTED - Принят;* CREATED - Создан;* SIGNED - Подписан;* DELETED - Удалён;* REFUSEDBYBANK - Отвергнут банком;* REQUISITEERROR - Ошибка реквизитов;* IMPLEMENTED - Исполнен |
| crucialFieldsHash | string | false | Hash от ключевых полей документа |
| date | string | true | Дата составления документа |
| deliveryKind | string | false | Вид платежа |
| departmentalInfo | DepartmentalInfo | false | Реквизиты налогового, таможенного или иного бюджетного платежа |
| digestSignatures | [Signature] | false | [Электронные подписи по дайджесту документа] |
| externalId | string(uuid) | true | Идентификатор документа, присвоенный партнером (UUID) |
| incomeTypeCode | string | false | Код вида дохода получателей выплаты по 229-ФЗ |
| number | string | false | Номер документа |
| operationCode | string | true | Код операции |
| payeeAccount | string | true | Счет получателя платежа |
| payeeBankBic | string | true | БИК банка получателя платежа |
| payeeBankCorrAccount | string | false | Корсчет банка получателя платежа |
| payeeInn | string | false | ИНН получателя платежа |
| payeeKpp | string | false | КПП получателя платежа |
| payeeName | string | true | Полное наименование получателя платежа |
| payerAccount | string | true | Счет плательщика |
| payerBankBic | string | true | БИК банка плательщика |
| payerBankCorrAccount | string | true | Корсчет банка плательщика |
| payerInn | string | true | ИНН плательщика |
| payerKpp | string | false | КПП плательщика |
| payerName | string | true | Полное наименование плательщика |
| priority | string | true | Очередность платежа |
| purpose | string | true | Назначение платежа |
| urgencyCode | string | false | Код срочности: * OFFHOURS - неотложный;* BESP - банковские электронные срочные платежи;* NORMAL - срочность не указана; |
| vat | Vat | false | Данные НДС |
DepartmentalInfo
{
"uip": "0",
"drawerStatus101": "01",
"kbk": "18210102010011000110",
"oktmo": "45902000",
"reasonCode106": "ТП",
"taxPeriod107": "ГД.00.2021",
"docNumber108": "000000000000001",
"docDate109": "2021-12-14",
"paymentKind110": "0"
}
Реквизиты налогового, таможенного или иного бюджетного платежа
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| uip | string | false | Уникальный идентификатор платежа |
| drawerStatus101 | string | false | Показатель статуса налогоплательщика |
| kbk | string | false | Код бюджетной классификации |
| oktmo | string | false | Код OKTMO |
| reasonCode106 | string | false | Показатель основания платежа |
| taxPeriod107 | string | false | Налоговый период или код таможенного органа |
| docNumber108 | string | false | Номер налогового документа |
| docDate109 | string | false | Дата налогового документа в формате YYYY-MM-DD |
| paymentKind110 | string | false | Тип налогового платежа |
Signature
{
"base64Encoded": "HlaeIHXXEcGT1bFxo1NlpAzpr+kJ2IQrcxVdvDTep6xjsmD1FDb+6NIyLT+/T24S0mPfVCU75sieOMt71TBS7w==",
"certificateUuid": "22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6"
}
Электронные подписи по дайджесту документа
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| base64Encoded | string | true | Значение электронной подписи, закодированное в Base64 |
| certificateUuid | string(uuid) | true | Серийный номер сертификата (UUID) |
Vat
{
"amount": 0,
"rate": "0",
"type": "NO_VAT"
}
Данные НДС
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | false | Сумма НДС |
| rate | string | false | Ставка НДС |
| type | string | true | Способ расчета НДС:INCLUDED - НДС включен в сумму платежа;NO_VAT - не облагается НДС;MANUAL - ручной ввод НДС;ONTOP - плюс НДС; |
Error
{
"error": "string",
"error_description": "string"
}
Ошибка
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
Выставление счета
Метод позволяет Партнеру выставлять клиенту счета, на основании которых формируются платёжные поручения. Отправка POST /payments/from-invoice возможна только на счет Альфа-Банка и только на счет, который принадлежит организации.
Для создания счета на оплату необходимо отправить запрос POST /payments/from-invoice с access_token, полученным в Alfa ID, со scope = payments, и параметрами запроса.
Используется токен доступа, полученный по Authorization Code Flow.
Code samples
curl -X POST /payments/from-invoice \
-H 'Accept: application/json' \
-H 'Authorization: string'
Header Parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Body Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | true | Сумма платежа |
| bankComment | string | false | Банковский комментарий к статусу документа |
| bankStatus | string | false | Статус документа |
| crucialFieldsHash | string | false | Hash от ключевых полей документа |
| date | string | true | Дата составления документа |
| deliveryKind | string | false | Вид платежа |
| expirationDate | string | false | Дата истечения заказа |
| externalId | string | true | Идентификатор документа, присвоенный партнером (UUID) |
| operationCode | string | false | Код операции |
| orderNumber | string | false | Номер заказа |
| payeeAccount | string | true | Счет получателя платежа |
| payeeOrgIdHash | string | false | Идентификатор получателя платежа |
| paymentNumber | string | false | Номер платежного поручения |
| priority | string | false | Очередность платежа |
| purpose | string | true | Назначение платежа |
| urgencyCode | string | false | Код срочности: * OFFHOURS - неотложный;* BESP - банковские электронные срочные платежи;* NORMAL - срочность не указана |
| vat | Vat | false | Данные НДС |
Example responses
200 Response
{
"amount": 1.01,
"bankComment": null,
"bankStatus": "CREATED",
"crucialFieldsHash": "925a81c0d635559af364262b9ed5f0972c0bab64dd03189b511bc0e4cdc80d50",
"date": "2018-12-31",
"deliveryKind": "электронно",
"externalId": "22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6",
"incomeTypeCode": null,
"number": "1",
"operationCode": "01",
"payeeAccount": "40702810564564564531",
"payeeBankBic": "040173745",
"payeeBankCorrAccount": "30101810200000000593",
"payeeInn": "7723870785",
"payeeKpp": "553453453",
"payeeName": "Общество с ограниченной ответственностью \"Центр \"ИННОВАЦИЯ\"",
"payerAccount": "40702810600010800068",
"payerBankBic": "044525225",
"payerBankCorrAccount": "30101810400000000225",
"payerInn": "7736576798",
"payerKpp": "772201001",
"payerName": "Общество с ограниченной ответственностью \"Клиент\"",
"priority": "5",
"purpose": "Оплата заказа №1. НДС нет.",
"urgencyCode": "NORMAL",
"vat": {
"amount": 0,
"rate": "0",
"type": "NO_VAT"
}
}
400 Response
{
"error": "invalid_request",
"error_description": "Request is missing a required parameter: externalId"
}
401 Response
{
"error": "invalid_token",
"error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons"
}
403 Response
{
"error": "insufficient_scope",
"error_description": "The request requires higher privileges than provided by the access token"
}
404 Response
{
"error": "unknown_route",
"error_description": "Route is not found or not active"
}
500 Response
{
"error": "internal_error",
"error_description": "Internal server error"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 200 | OK | Успешный результат | InvoiceResponse |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
InvoiceResponse
{
"amount": 1.01,
"bankComment": null,
"bankStatus": "CREATED",
"crucialFieldsHash": "925a81c0d635559af364262b9ed5f0972c0bab64dd03189b511bc0e4cdc80d50",
"date": "2018-12-31",
"deliveryKind": "электронно",
"externalId": "22a6dd81-103a-4d3a-8e9b-0ba4b527f5f6",
"incomeTypeCode": null,
"number": "1",
"operationCode": "01",
"payeeAccount": "40702810564564564531",
"payeeBankBic": "040173745",
"payeeBankCorrAccount": "30101810200000000593",
"payeeInn": "7723870785",
"payeeKpp": "553453453",
"payeeName": "Общество с ограниченной ответственностью \"Центр \"ИННОВАЦИЯ\"",
"payerAccount": "40702810600010800068",
"payerBankBic": "044525225",
"payerBankCorrAccount": "30101810400000000225",
"payerInn": "7736576798",
"payerKpp": "772201001",
"payerName": "Общество с ограниченной ответственностью \"Клиент\"",
"priority": "5",
"purpose": "Оплата заказа №1. НДС нет.",
"urgencyCode": "NORMAL",
"vat": {
"amount": 0,
"rate": "0",
"type": "NO_VAT"
}
}
Данные рублёвого платёжного поручения
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | true | Сумма платежа |
| bankComment | string | false | Банковский комментарий к статусу документа |
| bankStatus | string | false | Статус документа |
| crucialFieldsHash | string | false | Hash от ключевых полей документа |
| date | string(date) | true | Дата составления документа |
| deliveryKind | string | false | Вид платежа: электронно |
| externalId | string(uuid) | true | Идентификатор документа, присвоенный партнером (UUID) |
| incomeTypeCode | string | false | Код вида дохода получателей выплаты по 229-ФЗ |
| number | string | false | Номер документа |
| operationCode | string | true | Код операции: 01 |
| payeeAccount | string | true | Счет получателя платежа |
| payeeBankBic | string | true | БИК банка получателя платежа |
| payeeBankCorrAccount | string | false | Корсчет банка получателя платежа |
| payeeInn | string | false | ИНН получателя платежа |
| payeeKpp | string | false | КПП получателя платежа |
| payeeName | string | true | Полное наименование получателя платежа |
| payerAccount | string | false | Счет плательщика |
| payerBankBic | string | false | БИК банка плательщика |
| payerBankCorrAccount | string | false | Корсчет банка плательщика |
| payerInn | string | false | ИНН плательщика |
| payerKpp | string | false | КПП плательщика |
| payerName | string | false | Полное наименование плательщика |
| priority | string | true | Очередность платежа |
| purpose | string | true | Назначение платежа |
| urgencyCode | string | false | Код срочности: * OFFHOURS - неотложный;* BESP - банковские электронные срочные платежи;* NORMAL - срочность не указана |
| vat | Vat | false | Данные НДС |
Vat
{
"amount": 0,
"rate": "0",
"type": "NO_VAT"
}
Данные НДС
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number | false | Сумма НДС |
| rate | string | false | Ставка НДС |
| type | string | true | Способ расчета НДС: * INCLUDED - НДС включен в сумму платежа;* NO_VAT - не облагается НДС;* MANUAL - ручной ввод НДС;* ONTOP - плюс НДС |
ErrorBadRequest
{
"error": "invalid_request",
"error_description": "Request is missing a required parameter: externalId"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorUnauthorized
{
"error": "invalid_token",
"error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorScope
{
"error": "insufficient_scope",
"error_description": "The request requires higher privileges than provided by the access token"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorNotFound
{
"error": "unknown_route",
"error_description": "Route is not found or not active"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorInternal
{
"error": "internal_error",
"error_description": "Internal server error"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
Профиль организации
Метод позволяет получить информацию об организации и ее счетах. Все суммы указаны в рублях.
Для получения информации о профиле организации необходимо отправить запрос GET v1/customer-info с access_token, полученным в Alfa ID, со scope = customer, и параметрами запроса.
Используется токен доступа, полученный по Authorization Code Flow.
Адрес https://baas.alfabank.ru/api/v1/customer-info
curl -X GET v1/customer-info \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Example responses
200 Response
{
"organizationId": "bca96ae8b26184217fcf75f51347bd7bd5031ea6605c434c49f85378e9509732",
"fullName": "Общество с ограниченной ответственностью \"Ромашка\"",
"shortName": "ООО \"Ромашка\"",
"inn": "665413230",
"organizationForm": {
"fullName": "Общество с ограниченной ответственностью",
"shortName": "ООО",
"type": "2014",
"code": "12300"
},
"kpps": [
"11206020",
"11206021"
],
"ogrn": "1020203094163",
"okpo": "41294456",
"okved": "71.12",
"type": "LEGAL",
"phone": "79099876543",
"email": "client@example.com",
"category": "BANK",
"status": "ACTIVE",
"registrationDate": "2022-03-10T10:58:39.462Z",
"address": {
"area": "Тахтамукайский район",
"building": "1",
"city": "Майкоп",
"country": "643",
"flat": "123",
"fullAddress": "Республика Адыгея, г. Майкоп, улица Депутатская, д. 3",
"house": "3",
"region": "Республика Адыгея",
"settlement": "Майкоп",
"settlementType": "г.",
"street": "улица Депутатская",
"zip": "385600",
"fiasCode": "3fa85f64-5717-4562-b3fc-2c963f66afa6"
},
"accounts": [
{
"number": "40702810002300000000",
"type": "PAYMENT",
"typeName": "Расчётный счёт",
"openDate": "2021-10-07",
"currencyCode": "810",
"specConditions": [
{
"code": "AI12",
"description": "Нельзя дебетовать",
"value": false
},
{
"code": "AI11",
"description": "Нельзя кредитовать",
"value": false
},
{
"code": "AI14",
"description": "Клиент закрыт",
"value": false
},
{
"code": "AI17",
"description": "Счёт заблокирован",
"value": true
},
{
"code": "AI20",
"description": "Неактивный счёт",
"value": false
},
{
"code": "AI30",
"description": "Счёт закрыт",
"value": false
},
{
"code": "AI47",
"description": "Внутренний счёт",
"value": false
},
{
"code": "AI82",
"description": "Дебетование ограничено",
"value": false
},
{
"code": "AI83",
"description": "Электронная картотека",
"value": false
},
{
"code": "AI87",
"description": "Бумажная разновалютная картотека",
"value": false
}
],
"clientName": "Наименование",
"amountBalance": 810000,
"amountTotal": 100000,
"amountHolds": 100,
"amountOverdraftOwnFunds": 0,
"amountOverdraftLimit": 100000,
"blockedSums": [
{
"num": "112233",
"beginDate": "2020-10-23",
"cause": "Неисполнение требования об уплате налога, сбора, пени, штрафа № 53228 от 05.11.2019 г",
"initiator": "Межрайонная ИФНС России № 51 по г. Москве",
"sum": "988800",
"blockType": "PARTIAL_BALANCE_BLOCK"
}
]
}
]
}
400 Response
{
"error": "invalid_request",
"error_description": "Authorization header is not present in request headers"
}
503 Response
"<html><body><h1>503 Service Unavailable</h1>No server is available to handle this request</body></html>"
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (OK) | ОК | Успешный результат | CustomerInfo |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Schema
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | X-TraceId | string | Идентификатор трассировки запроса |
| 400 | X-TraceId | string | Идентификатор трассировки запроса |
| 401 | X-TraceId | string | Идентификатор трассировки запроса |
| 403 | X-TraceId | string | Идентификатор трассировки запроса |
Schemas
CustomerInfo
{
"organizationId": "bca96ae8b26184217fcf75f51347bd7bd5031ea6605c434c49f85378e9509732",
"fullName": "Общество с ограниченной ответственностью \"Ромашка\"",
"shortName": "ООО \"Ромашка\"",
"inn": 665413230,
"organizationForm": {
"fullName": "Общество с ограниченной ответственностью",
"shortName": "ООО",
"type": 2014,
"code": 12300
},
"kpps": [
11206020
],
"ogrn": 1020203094163,
"okpo": 41294456,
"okved": 71.12,
"type": "LEGAL",
"phone": 79099876543,
"email": "client@example.com",
"category": "BANK",
"status": "ACTIVE",
"registrationDate": "2019-08-24T14:15:22Z",
"address": {
"area": "Тахтамукайский район",
"building": 1,
"city": "Майкоп",
"country": 643,
"flat": 123,
"fullAddress": "Республика Адыгея, г. Майкоп, улица Депутатская, д. 3",
"house": 3,
"region": "Республика Адыгея",
"settlement": "Майкоп",
"settlementType": "г.",
"street": "улица Депутатская",
"zip": 385600,
"fiasCode": "d3721a72-0544-4ce7-9636-0e681cc0fc16"
},
"accounts": [
{
"number": 40702810002300000000,
"type": "PAYMENT",
"typeName": "Расчётный счёт",
"openDate": "2021-10-07",
"currencyCode": 810,
"specConditions": [
{
"code": "AI17",
"description": "Счёт заблокирован",
"value": true
}
],
"clientName": "Наименование",
"amountBalance": 810000,
"amountTotal": 100000,
"amountHolds": 100,
"amountOverdraftOwnFunds": 0,
"amountOverdraftLimit": 100000,
"blockedSums": [
{
"num": 112233,
"beginDate": "2020-10-23",
"cause": "Неисполнение требования об уплате налога, сбора, пени, штрафа № 53228 от 05.11.2019 г",
"initiator": "Межрайонная ИФНС России № 51 по г. Москве",
"sum": 988800,
"blockType": "PARTIAL_BALANCE_BLOCK"
}
]
}
]
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| organizationId | string | true | Идентификатор организации |
| fullName | string | true | Полное наименование организации |
| shortName | string | true | Сокращённое наименование организации |
| inn | string | true | ИНН |
| organizationForm | OrganizationForm | true | Организационно-правовая форма |
| kpps | [string] | true | Список КПП организации |
| ogrn | string | true | ОГРН |
| okpo | string | true | ОКПО |
| okved | string | true | ОКВЭД |
| type | string | true | Тип организации |
| phone | string | true | Контактный телефон клиента |
| string | true | Электронная почта клиента | |
| category | string | true | Категория организации. BANK - банк; FINANCIAL - финансовая; OTHER - другая |
| status | string | true | Статус организации. ACTIVE — действующая; LIQUIDATING — ликвидируется; LIQUIDATED — ликвидирована |
| registrationDate | string(date-time) | true | Дата регистрации организации |
| address | Address | false | Адрес клиента |
| accounts | [Account] | false | [Расчетные счета] |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| category | BANK | Категория организации - банк |
| category | FINANCIAL | Категория организации - финансовая |
| category | OTHER | Категория организации - другая |
| status | ACTIVE | Статус организации - действующая |
| status | LIQUIDATING | Статус организации - ликвидируется |
| status | LIQUIDATED | Статус организации - ликвидирована |
OrganizationForm
{
"fullName": "Общество с ограниченной ответственностью",
"shortName": "ООО",
"type": 2014,
"code": 12300
}
Организационно-правовая форма
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| fullName | string | true | Организационно-правовая форма организации клиента |
| shortName | string | true | Краткое наименование ОПФ |
| type | string | true | Тип ОПФ |
| code | string | true | Код ОПФ |
Address
{
"area": "Тахтамукайский район",
"building": 1,
"city": "Майкоп",
"country": 643,
"flat": 123,
"fullAddress": "Республика Адыгея, г. Майкоп, улица Депутатская, д. 3",
"house": 3,
"region": "Республика Адыгея",
"settlement": "Майкоп",
"settlementType": "г.",
"street": "улица Депутатская",
"zip": 385600,
"fiasCode": "d3721a72-0544-4ce7-9636-0e681cc0fc16"
}
Адрес клиента
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| area | string | false | Район |
| building | string | false | Строение, корпус |
| city | string | false | Город |
| country | string | false | Числовой код страны |
| flat | string | false | Квартира |
| fullAddress | string | false | Адрес |
| house | string | false | Дом |
| region | string | false | Полное наименование региона |
| settlement | string | false | Населенный пункт |
| settlementType | string | false | Тип населенного пункта |
| street | string | false | Улица |
| zip | string | false | Индекс |
| fiasCode | string(uuid) | false | Код ФИАС |
Account
{
"number": 40702810002300000000,
"type": "PAYMENT",
"typeName": "Расчётный счёт",
"openDate": "2021-10-07",
"currencyCode": 810,
"specConditions": [
{
"code": "AI17",
"description": "Счёт заблокирован",
"value": true
}
],
"clientName": "Наименование",
"amountBalance": 810000,
"amountTotal": 100000,
"amountHolds": 100,
"amountOverdraftOwnFunds": 0,
"amountOverdraftLimit": 100000,
"blockedSums": [
{
"num": 112233,
"beginDate": "2020-10-23",
"cause": "Неисполнение требования об уплате налога, сбора, пени, штрафа № 53228 от 05.11.2019 г",
"initiator": "Межрайонная ИФНС России № 51 по г. Москве",
"sum": 988800,
"blockType": "PARTIAL_BALANCE_BLOCK"
}
]
}
Расчетные счета
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | false | Номер счета |
| type | string | false | Тип счёта |
| typeName | string | false | Наименование типа счёта |
| openDate | string | false | Дата открытия счёта |
| currencyCode | string | false | Цифровой код валюты |
| specConditions | [SpecCondition] | false | Спецусловия по счету |
| clientName | string | false | Клиентское наименование счёта |
| amountBalance | number | false | Текущий остаток по счёту |
| amountTotal | number | false | Сумма доступных средств (без учёта овердрафта) |
| amountHolds | number | false | Сумма зарезервированных средств (холды) |
| amountOverdraftOwnFunds | number | false | Собственные средства |
| amountOverdraftLimit | number | false | Доступный лимит средств |
| blockedSums | [AccountBlockInfo] | false | Заблокированные (арестованные) суммы на счёте |
AccountBlockInfo
{
"num": 112233,
"beginDate": "2020-10-23",
"cause": "Неисполнение требования об уплате налога, сбора, пени, штрафа № 53228 от 05.11.2019 г",
"initiator": "Межрайонная ИФНС России № 51 по г. Москве",
"sum": 988800,
"blockType": "PARTIAL_BALANCE_BLOCK"
}
Объект массива с информацией о блокировках счета клиента
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| num | string | false | Номер решения |
| beginDate | string(datetime) | false | Дата начала действия ограничения |
| cause | string | false | Основание ареста |
| initiator | string | false | Наименование органа, наложившего арест |
| sum | integer | false | Заблокированная (арестованная) сумма на счёте |
| blockType | string | false | Бухгалтерский режим, к которому относится данное решение. OUTGOING_LIMITATION - Полная блокировка; PARTIAL_BALANCE_BLOCK - Блокировка части баланса |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| blockType | OUTGOING_LIMITATION | Полная блокировка баланса |
| blockType | PARTIAL_BALANCE_BLOCK | Блокировка части баланса |
SpecCondition
{
"code": "AI17",
"description": "Счёт заблокирован",
"value": true
}
Спецусловия по счету.
Для AI12 - Нельзя дебетовать.
AI11 - Нельзя кредитовать.
AI14 - Клиент закрыт.
AI17 - Счёт заблокирован.
AI20 - Неактивный счёт.
AI30 - Счёт закрыт.
AI47 - Внутренний счёт.
AI82 - Дебетование ограничено.
AI83 - Электронная картотека.
AI87 - Бумажная разновалютная картотека.
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| code | string | false | Код спецусловия |
| description | string | false | Описание спецусловия |
| value | boolean | false | Текущее значение |
ErrorUnauthorized
{
"error": "invalid_token",
"error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons"
}
Предоставленный токен доступа просрочен, отозван, имеет неправильный формат или недействителен по другим причинам
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorInternal
{
"error": "internal_error",
"error_description": "Internal server error"
}
Внутренняя проблема сервера. Невозможно обработать запрос
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorBadRequest
{
"error": "invalid_request",
"error_description": "Authorization header is not present in request headers"
}
Authorization отсутствует в заголовках запроса
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorScope
{
"error": "insufficient_scope",
"error_description": "The request requires higher privileges than provided by the access token"
}
Доступ к запрашиваемому ресурсу запрещен
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorRateLimit
{
"error": "too_many_requests",
"error_description": "You have sent too many requests in a given amount of time"
}
Превышено ограничение частоты запросов
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorEndpoint
{
"error": "unknown_endpoint",
"error_description": "Endpoint is not found or not active"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
Счета 214-ФЗ
Используется токен доступа, полученный по Authorization Code Flow.
Список методов:
- Получение списка объектов строительства застройщика
- Создание заявки на резервирование счета эскроу
- Получение детальной информации по заявке на резервирование счета эскроу
- Получение списка заявок застройщика
- Отправка признака регистрации ДДУ в Росреестр
Получение списка объектов строительства застройщика
Метод позволяет получить список объектов строительства застройщика.
Для создания заявки на резервирование счета эскроу необходимо отправить запрос GET build-projects с access_token, полученным в Alfa ID, со scope = escrow, и параметрами запроса.
Code samples
curl -X GET build-projects \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Example responses
200 Response
[
{
"buildingPermitNumber": "61-310-998601-2022",
"regionCode": "054",
"projectNumber": "162",
"settlement": "Новосибирск",
"commercialName": "ЖК ЗАПАДНЫЕ АЛЛЕИ",
"city": "Новосибирск",
"area": "ОКТЯБРЬСКИЙ",
"country": "RU",
"buildingPermitDate": "2021-10-01",
"phases": [
{
"index": 1,
"name": "поз. 4.1 - 9-этажный 4-х секц дом",
"street": "11-4 на земельном участке с к.н. 61:44:0073012:390",
"house": "4.1",
"building": "2",
"termEscrowOrder": "2022-03-22"
}
]
}
]
Responses
| Status | Code meaning | Description | Schema |
|---|---|---|---|
| 200 (OK) | ОК | Успешный результат | BuildProjects |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | x-traceid | string | Идентификатор трассировки запроса |
Schemas
ErrorUnauthorized
{
"error": "invalid_token",
"error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorInternal
{
"error": "internal_error",
"error_description": "Internal server error"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorBadRequest
{
"error": "invalid_request",
"error_description": "Authorization header is not present in request headers"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorScope
{
"error": "insufficient_scope",
"error_description": "The request requires higher privileges than provided by the access token"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorNotFound
{
"error": "unknown_endpoint",
"error_description": "Endpoint is not found or not active"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
BuildProjects
[
{
"buildingPermitNumber": "61-310-998601-2022",
"regionCode": "054",
"projectNumber": "162",
"settlement": "Новосибирск",
"commercialName": "ЖК ЗАПАДНЫЕ АЛЛЕИ",
"city": "Новосибирск",
"area": "ОКТЯБРЬСКИЙ",
"country": "RU",
"buildingPermitDate": "2021-10-01",
"phases": [
{
"index": 1,
"name": "поз. 4.1 - 9-этажный 4-х секц дом",
"street": "11-4 на земельном участке с к.н. 61:44:0073012:390",
"house": "4.1",
"building": "2",
"termEscrowOrder": "2022-03-22"
}
]
}
]
Проекты строительства
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| BuildProjects | [BuildProject] | false | Проекты строительства |
BuildProject
{
"buildingPermitNumber": "61-310-998601-2022",
"regionCode": "054",
"projectNumber": "162",
"settlement": "Новосибирск",
"commercialName": "ЖК ЗАПАДНЫЕ АЛЛЕИ",
"city": "Новосибирск",
"area": "ОКТЯБРЬСКИЙ",
"country": "RU",
"buildingPermitDate": "2021-10-01",
"phases": [
{
"index": 1,
"name": "поз. 4.1 - 9-этажный 4-х секц дом",
"street": "11-4 на земельном участке с к.н. 61:44:0073012:390",
"house": "4.1",
"building": "2",
"termEscrowOrder": "2022-03-22"
}
]
}
Проект строительства
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| buildingPermitNumber | string | false | Номер РНС (разрешение на строительство) |
| regionCode | string | false | Код региона |
| projectNumber | string | false | Номер проекта строительства |
| settlement | string | false | Наименование населенного пункта |
| commercialName | string | false | Коммерческое обозначение объекта |
| city | string | false | Город |
| area | string | false | Наименование района |
| country | string | false | Код страны |
| buildingPermitDate | string(date) | false | Дата РНС |
| phases | [BuildProjectPhase] | false | Этапы строительства |
BuildProjectPhase
{
"index": 1,
"name": "поз. 4.1 - 9-этажный 4-х секц дом",
"street": "11-4 на земельном участке с к.н. 61:44:0073012:390",
"house": "4.1",
"building": "2",
"termEscrowOrder": "2022-03-22"
}
Фазы строительства
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| index | integer | false | Порядковый номер этапа строительства в пределах проекта |
| name | string | false | Краткое имя этапа строительства |
| street | string | false | Улица объекта недвижимости |
| house | string | false | Номер дома объекта недвижимости |
| building | string | false | Номер строения\корпуса |
| termEscrowOrder | string(date) | false | Срок учета и блокирования депонированной суммы на счете эскроу по ДДУ |
Создание заявки на резервирование счета эскроу
Метод позволяет создать заявку на резервирование счета эскроу.
Для создания заявки на резервирование счета эскроу необходимо отправить запрос POST escrow-orders с access_token, полученным в Alfa ID, со scope = escrow, и параметрами запроса.
Code samples
curl -X POST escrow-orders \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Body parameter
{
"depositor": {
"lastName": "Федькин",
"firstName": "Ратибор",
"middleName": "Васильевич",
"birthdate": "1990-08-30",
"identityDocumentType": "001",
"identityDocumentSeries": "5516",
"identityDocumentNumber": "197343",
"dateIssuedId": "2020-01-01",
"phoneNumber": "75453333435"
},
"escrowAccount": {
"amount": 112500,
"currency": "RUR"
},
"estateObject": {
"type": "FLAT",
"flat": "1",
"buildProject": {
"buildingPermitNumber": "61-310-998601-2022",
"phases": {
"index": 1
}
}
},
"equalityAgreement": {
"number": "5555",
"date": "2020-01-01"
}
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | CreateOrderRequest | true | Тело запроса |
Example responses
200 Response
{
"referenceID": "EA10509220000013"
}
Responses
| Status | Code meaning | Description | Schema |
|---|---|---|---|
| 200 (OK) | ОК | Успешный результат. Заявка на резервирование счета эскроу успешно создана | CreateOrderResponse |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 409 (Conflict) | conflict | Конфликт | ErrorConflict |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | x-traceid | string | Идентификатор трассировки запроса |
Schemas
ErrorUnauthorized
{
"error": "invalid_token",
"error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorInternal
{
"error": "internal_error",
"error_description": "Internal server error"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorBadRequest
{
"error": "invalid_request",
"error_description": "Authorization header is not present in request headers"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorScope
{
"error": "insufficient_scope",
"error_description": "The request requires higher privileges than provided by the access token"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorNotFound
{
"error": "unknown_endpoint",
"error_description": "Endpoint is not found or not active"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorConflict
{
"error": "conflict",
"error_description": "The data of the depositor is not uniquely defined"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
CreateOrderRequest
{
"depositor": {
"lastName": "Федькин",
"firstName": "Ратибор",
"middleName": "Васильевич",
"birthdate": "1990-08-30",
"identityDocumentType": "001",
"identityDocumentSeries": "5516",
"identityDocumentNumber": "197343",
"dateIssuedId": "2020-01-01",
"phoneNumber": "75453333435"
},
"escrowAccount": {
"amount": 112500,
"currency": "RUR"
},
"estateObject": {
"type": "FLAT",
"flat": "1",
"buildProject": {
"buildingPermitNumber": "61-310-998601-2022",
"phases": {
"index": 1
}
}
},
"equalityAgreement": {
"number": "5555",
"date": "2020-01-01"
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| depositor | CreateOrderDepositor | true | Депонент |
| escrowAccount | CreateOrderEscrowAccount | true | Счет эскроу |
| estateObject | CreateOrderEstateObject | false | Объект строительства |
| equalityAgreement | CreateOrderEqualityAgreement | true | Договор Долевого Участия (ДДУ) |
CreateOrderResponse
{
"referenceID": "EA10509220000013"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| referenceID | string | true | Референс на заявку |
CreateOrderEstateObject
{
"type": "FLAT",
"flat": "1",
"buildProject": {
"buildingPermitNumber": "61-310-998601-2022",
"phases": {
"index": 1
}
}
}
Объект строительства
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | string | true | none |
| flat | string | true | Номер квартиры объекта недвижимости |
| buildProject | CreateOrderBuildProject | true | Информация об объекте строительства |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| type | FLAT | Квартира |
| type | PARKING | Машиноместо |
| type | PANTRY | Кладовая |
| type | NON_RESIDENTIAL_PREMISES | Нежилое помещение |
| type | GARAGE | Гараж |
| type | COMMERCIAL_PREMISES | Коммерческое помещение |
| type | APARTMENTS | Апартаменты |
| type | ROOM | Комната |
CreateOrderBuildProject
{
"buildingPermitNumber": "61-310-998601-2022",
"phases": {
"index": 1
}
}
Информация об объекте строительства
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| buildingPermitNumber | string | true | Номер РНС (разрешение на строительство) |
| phases | CreateOrderBuildProjectPhase | true | Этап строительства |
CreateOrderBuildProjectPhase
{
"index": 1
}
Этап строительства
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| index | integer | true | Порядковый номер этапа строительства в пределах проекта |
CreateOrderDepositor
{
"lastName": "Федькин",
"firstName": "Ратибор",
"middleName": "Васильевич",
"birthdate": "1990-08-30",
"identityDocumentType": "001",
"identityDocumentSeries": "5516",
"identityDocumentNumber": "197343",
"dateIssuedId": "2020-01-01",
"phoneNumber": "75453333435"
}
Депонент
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| lastName | string | true | Фамилия депонента |
| firstName | string | true | Имя депонента |
| middleName | string | false | Отчество депонента |
| birthdate | string(date) | true | Дата рождения депонента |
| identityDocumentType | string | true | Тип ДУЛа:001 - Паспорт гражданина РФ002 - Загранпаспорт гражданина РФ |
| identityDocumentSeries | string | true | Серия ДУЛ депонента |
| identityDocumentNumber | string | true | Номер ДУЛ депонента |
| dateIssuedId | string(date) | true | Дата выдачи ДУЛ депонента |
| phoneNumber | string | true | Мобильный телефон депонента |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| identityDocumentType | 001 | Паспорт гражданина РФ |
| identityDocumentType | 002 | Загранпаспорт гражданина РФ |
CreateOrderEqualityAgreement
{
"number": "5555",
"date": "2020-01-01"
}
Договор Долевого Участия (ДДУ)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер ДДУ |
| date | string(date) | true | Дата подписания ДДУ |
CreateOrderEscrowAccount
{
"amount": 112500,
"currency": "RUR"
}
Счет эскроу
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number(float) | true | Депонируемая сумма |
| currency | string | true | Валюта:RUR - Рублевая валюта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| currency | RUR | Рублевая валюта |
Получение детальной информации по заявке на резервирование счета эскроу
Метод позволяет получить детальную информацию по заявке на резервирование счета эскроу.
Для получения детальной информации по заявке на резервирование счета эскроу необходимо отправить запрос GET escrow-orders/{referenceId} с access_token, полученным в Alfa ID, со scope = escrow, и параметрами запроса.
Code samples
curl -X GET escrow-orders/{referenceId} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| referenceId | path | string | true | Номер заявки |
Example responses
200 Response
{
"referenceID": "EA10808220000061",
"rejectReason": "К сожалению, во время обработки произошла тех. ошибка.",
"creationDate": "2021-12-31",
"status": "DRAFT",
"escrowAccount": {
"accountNumber": "40824810906580000000",
"amount": 1,
"currency": "RUR"
},
"depositor": {
"fullName": "Королёв Митрофан Гертрудович",
"birthdate": "1998-11-03",
"identityDocumentSeries": "8039",
"identityDocumentNumber": "615760",
"identityDocumentType": "001",
"phoneNumber": "79055485717",
"dateIssuedId": "2022-04-25"
},
"equalityAgreement": {
"number": "234",
"date": "2022-07-14",
"isRegistered": false
},
"estateObject": {
"type": "APARTMENTS",
"flat": "234",
"buildProject": {
"buildingPermitNumber": "61-310-998601-2022",
"regionCode": "054",
"projectNumber": "162",
"settlement": "Новосибирск",
"commercialName": "ЖК ЗАПАДНЫЕ АЛЛЕИ",
"city": "Новосибирск",
"area": "ОКТЯБРЬСКИЙ",
"country": "RU",
"buildingPermitDate": "2021-10-01",
"phases": [
{
"index": 1,
"name": "поз. 4.1 - 9-этажный 4-х секц дом",
"street": "11-4 на земельном участке с к.н. 61:44:0073012:390",
"house": "4.1",
"building": "2",
"termEscrowOrder": "2022-03-22"
}
]
}
}
}
Responses
| Status | Code meaning | Description | Schema |
|---|---|---|---|
| 200 (OK) | ОК | Успешный результат. Детальная информация по заявке на резервирование счета эскроу | GetEscrowOrderResponse |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 404 (Not Found) | unknown_route | Маршрут не найден или неактивен | ErrorNotFound |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | x-traceid | string | Идентификатор трассировки запроса |
Schemas
EscrowBuildProject
{
"buildingPermitNumber": "61-310-998601-2022",
"regionCode": "054",
"projectNumber": "162",
"settlement": "Новосибирск",
"commercialName": "ЖК ЗАПАДНЫЕ АЛЛЕИ",
"city": "Новосибирск",
"area": "ОКТЯБРЬСКИЙ",
"country": "RU",
"buildingPermitDate": "2021-10-01",
"phases": [
{
"index": 1,
"name": "поз. 4.1 - 9-этажный 4-х секц дом",
"street": "11-4 на земельном участке с к.н. 61:44:0073012:390",
"house": "4.1",
"building": "2",
"termEscrowOrder": "2022-03-22"
}
]
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| buildingPermitNumber | string | true | Номер РНС (разрешение на строительство) |
| regionCode | string | false | Код региона |
| projectNumber | string | true | Номер проекта строительства |
| settlement | string | false | Наименование населенного пункта |
| commercialName | string | true | Коммерческое обозначение объекта |
| city | string | false | Город |
| area | string | false | Наименование района |
| country | string | true | Код страны |
| buildingPermitDate | string(date) | true | Дата РНС |
| phases | [EscrowBuildProjectPhase] | false | Этапы строительства |
EscrowBuildProjectPhase
{
"index": 1,
"name": "поз. 4.1 - 9-этажный 4-х секц дом",
"street": "11-4 на земельном участке с к.н. 61:44:0073012:390",
"house": "4.1",
"building": "2",
"termEscrowOrder": "2022-03-22"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| index | integer | true | Порядковый номер этапа строительства в пределах проекта |
| name | string | true | Краткое имя этапа строительства |
| street | string | true | Улица объекта недвижимости |
| house | string | false | Номер дома объекта недвижимости |
| building | string | false | Номер строения\корпуса |
| termEscrowOrder | string(date) | true | Срок учета и блокирования депонированной суммы на счете эскроу по ДДУ |
GetEscrowOrderResponse
{
"referenceID": "EA10808220000061",
"rejectReason": "К сожалению, во время обработки произошла тех. ошибка.",
"creationDate": "2021-12-31",
"status": "DRAFT",
"escrowAccount": {
"accountNumber": "40824810906580000000",
"amount": 1,
"currency": "RUR"
},
"depositor": {
"fullName": "Королёв Митрофан Гертрудович",
"birthdate": "1998-11-03",
"identityDocumentSeries": "8039",
"identityDocumentNumber": "615760",
"identityDocumentType": "001",
"phoneNumber": "79055485717",
"dateIssuedId": "2022-04-25"
},
"equalityAgreement": {
"number": "234",
"date": "2022-07-14",
"isRegistered": false
},
"estateObject": {
"type": "APARTMENTS",
"flat": "234",
"buildProject": {
"buildingPermitNumber": "61-310-998601-2022",
"regionCode": "054",
"projectNumber": "162",
"settlement": "Новосибирск",
"commercialName": "ЖК ЗАПАДНЫЕ АЛЛЕИ",
"city": "Новосибирск",
"area": "ОКТЯБРЬСКИЙ",
"country": "RU",
"buildingPermitDate": "2021-10-01",
"phases": [
{
"index": 1,
"name": "поз. 4.1 - 9-этажный 4-х секц дом",
"street": "11-4 на земельном участке с к.н. 61:44:0073012:390",
"house": "4.1",
"building": "2",
"termEscrowOrder": "2022-03-22"
}
]
}
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| referenceID | string | true | Номер заявки |
| rejectReason | string | false | Причина отказа банка |
| creationDate | string(date) | true | Дата создания заявки |
| status | OrderStatus | true | Статус заявки |
| escrowAccount | GetEscrowOrderEscrowAccount | true | Счет эскроу |
| depositor | GetEscrowOrderDepositor | true | Депонент |
| equalityAgreement | GetEscrowOrderEqualityAgreement | true | Договор Долевого Участия (ДДУ) |
| estateObject | GetEscrowOrderEstateObject | true | Объект строительства |
OrderStatus
{
"status": "DRAFT"
}
Статус заявки на резервирование счета эскроу
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| Status | string | false | Статус заявки |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| Status | DRAFT | Черновик |
| Status | VERIFICATION | Обработка |
| Status | CLIENT_CANCELLED | Отмена клиентом |
| Status | SIGNING | Ожидает подписания |
| Status | WAITING_DDU | Ожидает регистрации ДДУ |
| Status | EXECUTED | Исполнена |
| Status | VERIFICATION_ERROR | Отклонена банком |
GetEscrowOrderEscrowAccount
{
"accountNumber": "40824810906580000000",
"amount": 1,
"currency": "RUR"
}
Зарезерированный счет эскроу
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accountNumber | string | true | Номер счета эскроу |
| amount | number(bigDecimal) | true | Депонируемая сумма |
| currency | string | true | Валюта:RUR - Рублевая валюта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| currency | RUR | Рублевая валюта |
GetEscrowOrderDepositor
{
"fullName": "Королёв Митрофан Гертрудович",
"birthdate": "1998-11-03",
"identityDocumentSeries": "8039",
"identityDocumentNumber": "615760",
"identityDocumentType": "001",
"phoneNumber": "79055485717",
"dateIssuedId": "2022-04-25"
}
Данные депонента
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| fullName | string | true | ФИО Депонента |
| birthdate | string(date) | true | День рождения депонента |
| identityDocumentSeries | string | true | Серия ДУЛ депонента |
| identityDocumentNumber | string | true | Номер ДУЛ депонента |
| identityDocumentType | string | true | Тип ДУЛа:001 - Паспорт гражданина РФ002 - Загранпаспорт гражданина РФ |
| phoneNumber | string | true | Номер телефона депонента |
| dateIssuedId | string(date) | true | Дата выдачи ДУЛ депонента |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| identityDocumentType | 001 | Паспорт гражданина РФ |
| identityDocumentType | 002 | Загранпаспорт гражданина РФ |
GetEscrowOrderEqualityAgreement
{
"number": "234",
"date": "2022-07-14",
"isRegistered": false
}
Договор Долевого Участия (ДДУ)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер ДДУ |
| date | string(date) | true | Дата ДДУ |
| isRegistered | boolean | true | Регистрация ДДУ в Росреестре |
GetEscrowOrderEstateObject
{
"type": "APARTMENTS",
"flat": "234",
"buildProject": {
"buildingPermitNumber": "61-310-998601-2022",
"regionCode": "054",
"projectNumber": "162",
"settlement": "Новосибирск",
"commercialName": "ЖК ЗАПАДНЫЕ АЛЛЕИ",
"city": "Новосибирск",
"area": "ОКТЯБРЬСКИЙ",
"country": "RU",
"buildingPermitDate": "2021-10-01",
"phases": [
{
"index": 1,
"name": "поз. 4.1 - 9-этажный 4-х секц дом",
"street": "11-4 на земельном участке с к.н. 61:44:0073012:390",
"house": "4.1",
"building": "2",
"termEscrowOrder": "2022-03-22"
}
]
}
}
Объект строительства
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | string | true | Типы объектов недвижимости:APARTMENTS - АпартаментыCOMMERCIAL_PREMISES - Коммерческое помещениеFLAT - КвартираGARAGE - ГаражNON_RESIDENTIAL_PREMISES - Нежилое помещениеPANTRY - КладоваяPARKING - МашиноместоROOM - Комната |
| flat | string | true | Номер квартиры объекта недвижимости (квартиры/комнаты/гаража) |
| buildProject | EscrowBuildProject | true | Проект строительства |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| type | APARTMENTS | Апартаменты |
| type | COMMERCIAL_PREMISES | Коммерческое помещение |
| type | FLAT | Квартира |
| type | GARAGE | Гараж |
| type | NON_RESIDENTIAL_PREMISES | Нежилое помещение |
| type | PANTRY | Кладовая |
| type | PARKING | Машиноместо |
| type | ROOM | Комната |
ErrorUnauthorized
{
"error": "invalid_token",
"error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorInternal
{
"error": "internal_error",
"error_description": "Internal server error"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorBadRequest
{
"error": "invalid_request",
"error_description": "Authorization header is not present in request headers"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorScope
{
"error": "insufficient_scope",
"error_description": "The request requires higher privileges than provided by the access token"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorNotFound
{
"error": "unknown_route",
"error_description": "Route is not found or not active"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
Получение списка заявок застройщика
Метод позволяет получить список заявок застройщика на резерирование счетов эскроу.
Для получения списка заявок застройщика необходимо отправить запрос GET escrow-orders с access_token, полученным в Alfa ID, со scope = escrow, и параметрами запроса.
Code samples
curl -X GET escrow-orders \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| filterFromDate | query | string(date) | true | Дата начала периода создания заявки |
| filterToDate | query | string(date) | true | Дата окончания периода создания заявки |
| filterStatuses | query | array[string] | false | Статусы заявок |
| limit | query | integer | false | Количество объектов на одной странице |
| offset | query | integer | false | Количество объектов в списке, которые необходимо пропустить |
Enumerated Values
| Parameter | Value | Description |
|---|---|---|
| filterStatuses | VERIFICATION | Пользователь внес все данные по заявке и нажал "Отправить заявку" |
| filterStatuses | CLIENT_CANCELLED | Депонент изменил решение по открытию счета эскроу |
| filterStatuses | VERIFICATION_ERROR | Депонент не прошел проверку (Отклонена банком) |
| filterStatuses | SIGNING | Все проверки пройдены, эскроу-счет зарезервирован. Ожидается подписание заявления депонента в офисе Банка |
| filterStatuses | WAITING_DDU | Депонент подписал заявление в офисе Банка, счет эскроу переведен в бухгалтерский режим, ожидается регистрация ДДУ застройщиком |
| filterStatuses | EXECUTED | Заявление депонента подписано, получена отметка от застройщика о факте регистрации ДДУ |
Example responses
200 Response
{
"pagination": {
"limit": 10,
"offset": 0,
"totalCount": 25
},
"items": [
{
"referenceID": "EA10509220000013",
"creationDate": "2021-12-10",
"status": "VERIFICATION",
"fullNameDepositor": "Королёв Митрофан Гертрудович",
"buildingPermitNumber": "61-310-998601-2022",
"escrowAccount": {
"amount": 6000000.12,
"currency": "RUR",
"accountNumber": 40702810701300000000
}
}
]
}
Responses
| Status | Code meaning | Description | Schema |
|---|---|---|---|
| 200 (OK) | ОК | Успешный результат. Список заявок застройщика | GetEscrowOrdersResponse |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 404 (Not Found) | unknown_route | Маршрут не найден или неактивен | ErrorNotFound |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | x-traceid | string | Идентификатор трассировки запроса |
Schemas
GetEscrowOrdersResponse
{
"pagination": {
"limit": 10,
"offset": 0,
"totalCount": 25
},
"items": [
{
"referenceID": "EA10509220000013",
"creationDate": "2021-12-10",
"status": "VERIFICATION",
"fullNameDepositor": "Королёв Митрофан Гертрудович",
"buildingPermitNumber": "61-310-998601-2022",
"escrowAccount": {
"amount": 6000000.12,
"currency": "RUR",
"accountNumber": 40702810701300000000
}
}
]
}
Ответ на запрос получения списка заявок застройщика
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| pagination | GetEscrowOrdersPagination | false | Информация о пагинации |
| items | [GetEscrowOrdersItems] | false | Заявка на резерирование счета эскроу |
GetEscrowOrdersPagination
{
"limit": 10,
"offset": 0,
"totalCount": 25
}
Информация о пагинации
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| limit | integer | false | Количество объектов на одной странице |
| offset | integer | false | Количество объектов в списке, которые необходимо пропустить |
| totalCount | integer | false | Общее количество записей |
GetEscrowOrdersItems
{
"referenceID": "EA10509220000013",
"creationDate": "2021-12-10",
"status": "VERIFICATION",
"fullNameDepositor": "Королёв Митрофан Гертрудович",
"buildingPermitNumber": "61-310-998601-2022",
"escrowAccount": {
"amount": 6000000.12,
"currency": "RUR",
"accountNumber": 40702810701300000000
}
}
Заявка на резерирование счета эскроу
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| referenceID | string | true | Номер заявки |
| creationDate | string(date) | true | Дата создания заявки |
| status | string | true | Статусы заявок:VERIFICATION - Пользователь внес все данные по заявке и нажал "Отправить заявку"CLIENT_CANCELLED - Депонент изменил решение по открытию счета эскроуVERIFICATION_ERROR - Депонент не прошел проверку (Отклонена банком)SIGNING - Все проверки пройдены, эскроу-счет зарезервирован. Ожидается подписание заявления депонента в офисе БанкаWAITING_DDU - Депонент подписал заявление в офисе Банка, счет эскроу переведен в бух. режим, ожидается регистрация ДДУ застройщикомEXECUTED - Заявление депонента подписано, получена отметка от застройщика о факте регистрации ДДУ |
| fullNameDepositor | string | true | ФИО депонента |
| buildingPermitNumber | string | true | Номер РНС |
| escrowAccount | GetEscrowOrdersEscrowAccount | true | Счет эскроу |
GetEscrowOrdersEscrowAccount
{
"amount": 6000000.12,
"currency": "RUR",
"accountNumber": 40702810701300000000
}
Зарезерированный счет эскроу
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | number(bigDecimal) | true | Депонируемая сумма |
| currency | string | true | Валюта |
| accountNumber | string | true | Номер счета эскроу |
ErrorUnauthorized
{
"error": "invalid_token",
"error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorInternal
{
"error": "internal_error",
"error_description": "Internal server error"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorBadRequest
{
"error": "invalid_request",
"error_description": "Authorization header is not present in request headers"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorScope
{
"error": "insufficient_scope",
"error_description": "The request requires higher privileges than provided by the access token"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorNotFound
{
"error": "unknown_route",
"error_description": "Route is not found or not active"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
Отправка признака регистрации ДДУ в Росреестр
Метод позволяет отправить признак регистрации ДДУ в Росреестр.
Для отправки признака регистрации ДДУ в Росреестр необходимо отправить запрос PATCH escrow-orders/{referenceId}/execute с access_token, полученным в Alfa ID, со scope = escrow, и параметрами запроса.
Code samples
curl -X PATCH escrow-orders/{referenceId}/execute \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Body parameter
{
"equalityAgreement": {
"isRegistered": true
}
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| referenceId | path | string | true | Номер заявки |
| body | body | ExecuteEscrowOrderRequest | true | Тело запроса |
Example responses
400 Response
{
"error": "invalid_request",
"error_description": "Authorization header is not present in request headers"
}
Responses
| Status | Code meaning | Description | Schema |
|---|---|---|---|
| 204 (No Content) | no content | Признак "Регистрации ДДУ в Росреестре" успешно отправлен | None |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 404 (Not Found) | unknown_route | Маршрут не найден или неактивен | ErrorNotFound |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 204 | x-traceid | string | Идентификатор трассировки запроса |
Schemas
ExecuteEscrowOrderRequest
{
"equalityAgreement": {
"isRegistered": true
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| equalityAgreement | ExecuteEscrowOrderEqualityAgreement | true | Договор Долевого Участия (ДДУ) |
ExecuteEscrowOrderEqualityAgreement
{
"isRegistered": true
}
Договор Долевого Участия (ДДУ)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isRegistered | boolean | true | Регистрация ДДУ в Росреестре |
ErrorUnauthorized
{
"error": "invalid_token",
"error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorInternal
{
"error": "internal_error",
"error_description": "Internal server error"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorBadRequest
{
"error": "invalid_request",
"error_description": "Authorization header is not present in request headers"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorScope
{
"error": "insufficient_scope",
"error_description": "The request requires higher privileges than provided by the access token"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorNotFound
{
"error": "unknown_route",
"error_description": "Route is not found or not active"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
Электронная подпись
Методы позволяют клиенту выпустить и активировать RSA-сертификат и в дальнейшем использовать его для подписания документов.
Используется токен доступа, полученный по Authorization Code Flow.
Список методов:
- Получение DN
- Заявка на выпуск RSA-сертификата
- Отправка заявки на подпись
- Подписание заявки с помощью кода из СМС
- Получение данных заявки
- Получение RSA-сертификата
- Заявка на активацию RSA-сертификата
- Заявка на изменение текущего способа подписи
Для получения RSA-сертификата необходимо отправить заявку на подпись, подписать заявку с помощью СМС-кода и получить данные заявки. Далее произвести активацию RSA-сертификата.
Инструкция пользователя
Шаг 1. Для получения сертификата необходимо создать запрос на сертификат.
Создание запроса на сертификат:
Получить DN пользователя, вызвав метод API
- Получение DN
Далее полученный ответ необходимо разэкранировать
Скачать файл example.cnf
Открыть файл example.cnf с помощью текстового редактора и поменять параметры DN на свои данные
Создать закрытый ключ, введя в терминале команду:
openssl genrsa -des3 -out name.key 2048
- Сформировать запрос на сертификат с помощью команды в терминале:
openssl req -new -utf8 -nameopt multiline,utf8 -config example.cnf -key name.key -out nameTest.csr
После этого будет создан запрос на сертификат nameTest.csr, который можно отрыть в текстовом редакторе.
Далее заменить переносы строк на \n для получения следующей строки: -----BEGIN CERTIFICATE REQUEST-----\nMIIDFzCCAf8CAQAwgZkxCzAJBgNVBAYTAlJVMRcwFQYDVQQEDA7QodCw0YTQvtC9\n0L7QsjETMBEGA1UEKgwK0KLQuNGF0L7QvTE1MDMGA1UEAwws0KHQsNGE0L7QvdC+\n0LIg0KLQuNGF0L7QvSDQldGA0L7RhNC10LXQstC40YcxJTAjBgkqhkiG9w0BCQEW\nFlVzZXI4MzdAcG9jaHRvY2hrYS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw\nggEKAoIBAQDticUMw9slOsSU8sGtXjFndVudvwLjq/+FgX5C52p4qkPAXOYVUE1k\nruAqvkTWEhzGaprWRK5LAyEWSCludDBKGThiyipr1ewj+IQQngRGJ2oD++vJht5S\nPGQRNJtoHzAVgGq2Di1nehweR0uA3sdNFiD60QDEtsPombBAE7+FBqe78vvfsrZF\nfeITpboiqIaw+7DqI9yO9eGptsdWlY1GbOvESic5a1mXU9KFLJPD/OBAJ6Vkmf54\n+ra49hKu3tSZvPVR1KAT2yZKI26H3Ye4v6Mazr2NGH9mC+bPUf6JD+6U1kr5tCJb\nn8Tu/d3gSH+ZkaykxFneZAflhoudhc4NAgMBAAGgODA2BgkqhkiG9w0BCQ4xKTAn\nMCUGA1UdEQQeMByCC2V4YW1wbGUuY29tgg0qLmV4YW1wbGUuY29tMA0GCSqGSIb3\nDQEBCwUAA4IBAQBW8Kk2PoTlO/jLdFSHv31Dw4HrshS4mv5G7mIkULyX+NoW1+6n\n7VHVcqa5OBizKjIxE55ASRoqpVs7IakMfGVLmkUHCO9HL1Vav8Tpj5H9BeZ4FEbx\n0HqHAF7Rs89neNGEDqp8HQqsa1ojiDBppeQ44q1zzYyDkTGgfO87GtNG/mIyZZQ6\ni3WtnECVuSFWuf+hpeDGMJYo3jUyRZEhziPDm2YqqYf2vQF5iJLg7mXvWwvv/OGN\nnsD9JWu7DaP8aswQGpVgCkxlfQNyiEQgIDJBAmMbbh+34Hu5bzo8Yr5khty8EtO8\n2PpiRH1ez7adpV87Bj7xq00gpInldFiWQM19\n-----END CERTIFICATE REQUEST-----
Полученную выше строку передать в pkcs10Content при вызове метода Заявка на RSA-выпуск сертификата.
Шаг 2. Первый метод, который необходимо вызывать для создания RSA-сертификата, - это метод Заявка на RSA-выпуск сертификата.
Шаг 3. Далее вызывается метод Отправка заявки на подпись, где входным параметром передается идентификатор заявки, полученный в ответе на шаге 2, а в теле запроса requestType = issueRsaCertificate. В рамках данного метода система отправляет пользователю на телефон OTP.
Шаг 4. Затем клиент вызывает метод Подписание заявки с помощью кода из СМС, передав в него идентификатор операции, полученный в ответе на шаге 3, тип заявки = issueRsaCertificate и полученный по СМС OTP.
Шаг 5. После необходимо дождаться выполнения заявки. Для этого нужно вызвать метод Получение данных заявки, передав в него идентификатор заявки, полученный в ответе на шаге 2, и проверить статус заявки, пока он не перейдет в статус FINISHED.
Шаг 6. После выполнения заявки необходимо активировать RSA-сертификат, вызвав метод Заявка на активацию RSA-сертификата и передав в него идентификатор сертификата, полученный на шаге 5.
Шаг 7. Далее повторно отправить заявку на подпись, вызвав метод Отправка заявки на подпись, где входным параметром передается идентификатор заявки, полученный в ответе на шаге 6, а в теле запроса requestType = activationRsaCertificate. В рамках данного метода система отправляет пользователю на телефон OTP.
Шаг 8. Затем снова подписать заявку, вызвав метод Подписание заявки с помощью кода из СМС, передав в него идентификатор операции, полученный в ответе на шаге 7, тип заявки = activationRsaCertificate и полученный по СМС OTP.
Шаг 9. Дождаться выполнения заявки: вызвать метод Получение данных заявки, передав в него идентификатор заявки, полученный в ответе на шаге 6 и проверить статус заявки, пока он не перейдет в статус FINISHED.
Шаг 10. После выполнения заявки изменить основной способ подписи на RSA. Для этого необходимо вызывать метод Заявка на изменение текущего способа подписи, передав currentSignType = rsa-certificates.
Шаг 11. Далее вызвать метод Отправка заявки на подпись, где входным параметром передается идентификатор заявки, полученный в ответе на шаге 10, а в теле запроса requestType = currentSignTypeRsa. В рамках данного метода система отправляет пользователю на телефон OTP.
Шаг 12. Вызвать метод Подписание заявки с помощью кода из СМС, передав в него идентификатор операции, полученный в ответе на шаге 3, тип заявки = currentSignTypeRsa и полученный по СМС OTP.
Шаг 13. Затем необходимо дождаться выполнения заявки путем вызова метода Получение данных заявки, передав в него идентификатор заявки, полученный в ответе на шаге 2, и проверить статус заявки, пока он не перейдет в статус FINISHED.
Шаг 14. После успешного ответа на шаге 13 выпущенным RSA-сертифкатом можно подписывать документы.
Получение DN
Для изменения основного способ необходимо вызвать GET signature/users/{sub}/dn с access_token, полученным в Alfa ID, со scope = signature, и параметрами запроса.
Code samples
curl -X GET signature/users/{sub}/dn
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header Parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| sub | path | string | true | Идентификатор субъекта |
Example responses
200 Response
{
"dn": "emailAddress=teterkina.natalya@gmail.com, CN=Тетеркина Наталья Геннадьевна, L=пос.Мурино Ленинградская обл., C=RU, street=\"пос.Мурино Ленинградская обл., ул.Новая,д.7,корп.4,кв.288\", SN=Тетеркина, GN=Наталья"
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (OK) | OK | Успешный результат | DN |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 422 (Unprocessable Entity)) | Not valid pkcs10 DN | Невалидный DN | ErrorUnprocessable |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Headers
| Status | Header | Type | Format | Description |
|---|---|---|---|---|
| 200 | x-traceid | string | Идентификатор трассировки запроса |
Заявка на выпуск RSA-сертификата
Для создания заявки на выпуск RSA-сертификата необходимо отправить запрос POST signature/users/{sub}/rsa-certificates/requests/issue с access_token, полученным в Alfa ID, со scope = signature, и параметрами запроса.
Code samples
curl -X POST signature/users/{sub}/rsa-certificates/requests/issue
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header Parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Body parameter
{
"tokenSerialNumber": "AlboKey_{BBB5EB5D-2B38-488B-B9E2-5E336DDE3DE9}",
"pkcs10Content": "-----BEGIN CERTIFICATE REQUEST-----\\nMIIC3zCCAccCAQAwgZkxCzAJBgNVBAYTAlJVMRUwEwYDVQQEDAzQldGE0LjQvNC+\\n0LIxFTATBgNVBCoMDNCk0LjQu9C40L/QvzE1MDMGA1UEAwws0JXRhNC40LzQvtCy\\nINCk0LjQu9C40L/QvyDQkNGA0YXQuNC/0L7QstC40YcxJTAjBgkqhkiG9w0BCQEW\\nFlVzZXIxNzZAcG9jaHRvY2hrYS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw\\nggEKAoIBAQCibtSH2YP4oxFVgiAvLdtAZpnVDWNZNgAnCEQwNbPIQpavY3OeoI/a\\nNchXgwTn2u9yejOCEu8Q+x++RQDXVeSvPciVIzfDJ5Ex2MPzJySro3iPjT+HCITu\\n/sddVv3Lnz5koNzOA5RihTQ+toHsvNgI2/aLITBXVM4JtkQ0ezqNsXDFqVr0Xws/\\n3xj33BhhDXDrC24ivnDspYwbjevbrc5/L/mFhkHYX5pCJoxcNd5T8JrVUC1qkBIm\\nnFA0C5dMAC6qWlglIG7BAkqc4Z/bu0WxEqsi0353BlnD9A/3k4euY5vmVRn2m/6E\\ns89K5XrnqRYap5/o6zkQs64n7HLDQ8F3AgMBAAGgADANBgkqhkiG9w0BAQsFAAOC\\nAQEASXlft+61y8TeYhXZQbuLdORjXk4yiI4OAecItHg1GcBiscA2OWObXRalLHlP\\nsGc/fp5y82wZ24YxgHbyyRGf1DU374Iz5YqEl9IJ6WPsx9j/BpUo8cNPLaBOID2P\\nKUHOMNbmy2bpPAi9AiaRXef9Tz3lIlzjW+oBWDoKtLkVmGDY+aTmwm0ASdqzuc/Q\\ndFEgJ1JrZtwjDxwDrtAt+FXbwvadWMo9uhKW9DAaPm9XOte8z/ACoNlQ6G6KGPT3\\nYQtk+dIjzeB3po9wZklg19xV17H9WCo+p3K85ANyFjkeePB49DIfwv+04a8kOsaY\\nG0ocUXmTIgNeVKyDFtFoUF+qeg==\\n\\n-----END CERTIFICATE REQUEST-----"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| sub | path | string | true | Идентификатор субъекта |
| body | body | RequestIssueRSACertificate | true | Запрос на создание заявки на выпуск RSA-сертификата |
Example responses
200 Response
{
"id": "62550ef50163785f2222707e",
"type": "issueRsaCertificate",
"status": "CREATED",
"creator": "Ефимов Филипп Архипович",
"createdDate": "2019-08-24T14:15:22Z"
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (OK) | OK | ResponesIssueRSACertificate | |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 422 (Unprocessable Entity)) | Not valid pkcs10 DN | Невалидный DN | ErrorUnprocessable |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | x-traceid | string | Идентификатор трассировки запроса |
Отправка заявки на подпись
Для отправки заявки на подпись необходимо отправить запрос POST signature/users/{sub}/rsa-certificates/requests/{id}/operations с access_token, полученным в Alfa ID, со scope = signature, и параметрами запроса.
Code samples
curl -X POST signature/users/{sub}/rsa-certificates/requests/{id}/operations
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header Parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Body parameter
{
"requestType": "issueRsaCertificate"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| sub | path | string | true | Идентификатор субъекта |
| id | path | string | true | Идентификатор заявки. Получен в ответе в методе Заявка на выпуск RSA-сертификата |
| body | body | RequestPostOperations | true | Запрос отправки на подпись |
Example responses
200 Response
{
"id": "2629a563-3c82-44a2-a4f5-67b79e44cbea",
"requestId": "62550ef50163785f2222707e",
"requestType": "issueRsaCertificate"
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (OK) | ОК | Успешный результат | ResponsePostOperations |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 422 (Unprocessable Entity)) | Not valid pkcs10 DN | Невалидный DN | ErrorUnprocessable |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | x-traceid | string | Идентификатор трассировки запроса |
Подписание заявки с помощью кода из СМС
Для проверки кода из СМС необходимо вызвать запрос PUT signature/users/{sub}/rsa-certificates/requests/operations/{id} с access_token, полученным в Alfa ID, со scope = signature, и параметрами запроса.
Code samples
curl -X PUT signature/users/{sub}/rsa-certificates/requests/operations/{id}
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header Parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Body parameter
{
"code": 11111111
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| sub | path | string | true | Идентификатор субъекта |
| id | path | string | true | Идентификатор операции. Получен в ответе в ответе в методе Отправка заявки на подпись |
| body | body | RequestPutOperations | true | Запрос на подписание заявки |
Example responses
200 Response
{
"id": "2629a563-3c82-44a2-a4f5-67b79e44cbea",
"isSigned": true,
"requestId": "62550ef50163785f2222707e",
"requestType": "issueRsaCertificate"
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (OK) | OK( | Успешный результат | ResponsePutOperations |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 422 (Unprocessable Entity)) | Not valid pkcs10 DN | Невалидный DN | ErrorUnprocessable |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | x-traceid | string | Идентификатор трассировки запроса |
Получение данных заявки
Для получения информации по заявке необходимо отправить GET signature/users/{sub}/rsa-certificates/requests/{id} с access_token, полученным в Alfa ID, со scope = signature, и параметрами запроса.
Code samples
curl -X GET signature/users/{sub}/rsa-certificates/requests/{id} \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header Parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| sub | path | string | true | Идентификатор субъекта |
| id | path | string | true | Идентификатор заявки. Получен в ответе в методах Заявка на выпуск RSA-сертификата или Заявка на активацию RSA-сертификата |
Example responses
200 Response
{
"requestIssueRsaCertificate": [
{
"id": "62550ef50163785f2222707e",
"type": "issueRsaCertificate",
"status": "FINISHED",
"creator": "Сафонов Тихон Ерофеевич",
"createdDate": "2019-08-24T14:15:22Z",
"finishedDate": "2019-08-24T14:15:22Z",
"results": {
"owner": "Ефимов Филипп Архипович",
"notAfter": "2019-08-24T14:15:22Z",
"notBefore": "2019-08-24T14:15:22Z",
"serialNumber": "6100035c3cff88cd00f01d734a000100035c3c",
"sendDate": "2019-08-24T14:15:22Z",
"executionDate": "2019-08-24T14:15:22Z",
"thumbprint": "f738ec7266d1e3f6d6d4557bcbbc43ec188db3cf",
"dn": {
"firstName": "Филипп",
"lastName": "Ефимов",
"fullName": "Ефимов Филипп Архипович",
"country": "RU",
"email": "User176@pochtochka.com"
},
"issuedCertificateId": "62552f2457595f1652c4b179",
"caRequestId": 220220
}
}
],
"requestActivateRsaCertificate": [
{
"id": "62550ef50163785f2222707e",
"type": "activationRsaCertificate",
"status": "FINISHED",
"creator": "Сафонов Тихон Ерофеевич",
"createdDate": "2019-08-24T14:15:22Z",
"finishedDate": "2019-08-24T14:15:22Z",
"results": {
"userSignMethodType": "RSA",
"userSignMethodStatus": "ENABLED"
}
}
],
"requestCurrentSignTypeRsa": [
{
"requestIssueRsaCertificate": [],
"requestActivateRsaCertificate": [],
"requestCurrentSignTypeRsa": [
{
"id": "632c3a574441931c3de70996",
"type": "currentSignTypeRsa",
"status": "FINISHED",
"creator": "Павлов Ким Николаевич",
"createdDate": "2022-09-22T10:35:03.304Z",
"finishedDate": "2022-09-22T10:35:39.967Z"
}
]
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (OK) | ОК | Успешный результат | RequestData |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 422 (Unprocessable Entity)) | Not valid pkcs10 DN | Невалидный DN | ErrorUnprocessable |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | x-traceid | string | Идентификатор трассировки запроса |
Получение RSA-сертификата
Для получения RSA-сертификата необходимо отправить GET signature/users/{sub}/rsa-certificates/{id} с access_token, полученным в Alfa ID, со scope = signature, и параметрами запроса.
curl -X GET signature/users/{sub}/rsa-certificates/{id}
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header Parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| sub | path | string | true | Идентификатор субъекта |
| id | path | string | true | Идентификатор сертификата |
Example responses
200 Response
{
"content": "MIIFzDCCBICgAwIBAgITYQADXDz/iM0A8B1zSgABAANcPDBBBgkqhkiG9w0BAQow\\r\\nNKAPMA0GCWCGSAFlAwQCAwUAoRwwGgYJKoZIhvcNAQEIMA0GCWCGSAFlAwQCAwUA\\r\\nogMCAUAwWzELMAkGA1UEBhMCUlUxEjAQBgNVBAoTCUFsZmEtQmFuazELMAkGA1UE\\r\\nCxMCSVQxKzApBgNVBAMTIkFsZmEtQmFuayBJc3N1aW5nIFN1Ym9yZGluYXRlIENB\\r\\nIDEwHhcNMjIwNDEyMDczOTI3WhcNMjQwNDEyMDc0OTI3WjCBmTEVMBMGA1UEKgwM\\r\\n0KTQuNC70LjQv9C/MRUwEwYDVQQEDAzQldGE0LjQvNC+0LIxCzAJBgNVBAYTAlJV\\r\\nMTUwMwYDVQQDDCzQldGE0LjQvNC+0LIg0KTQuNC70LjQv9C/INCQ0YDRhdC40L/Q\\r\\nvtCy0LjRhzElMCMGCSqGSIb3DQEJARYWVXNlcjE3NkBwb2NodG9jaGthLmNvbTCC\\r\\nASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKJu1IfZg/ijEVWCIC8t20Bm\\r\\nmdUNY1k2ACcIRDA1s8hClq9jc56gj9o1yFeDBOfa73J6M4IS7xD7H75FANdV5K89\\r\\nyJUjN8MnkTHYw/MnJKujeI+NP4cIhO7+x11W/cufPmSg3M4DlGKFND62gey82Ajb\\r\\n9oshMFdUzgm2RDR7Oo2xcMWpWvRfCz/fGPfcGGENcOsLbiK+cOyljBuN69utzn8v\\r\\n+YWGQdhfmkImjFw13lPwmtVQLWqQEiacUDQLl0wALqpaWCUgbsECSpzhn9u7RbES\\r\\nqyLTfncGWcP0D/eTh65jm+ZVGfab/oSzz0rleuepFhqnn+jrORCzrifscsNDwXcC\\r\\nAwEAAaOCAeAwggHcMB0GA1UdDgQWBBTbfzj1CFqgIOUtAqiQPszkaMdawzAfBgNV\\r\\nHSMEGDAWgBTJFzMem6mUoJYYS25xTIHb6XP+ZTCBuwYDVR0fBIGzMIGwMIGtoIGq\\r\\noIGnhjlodHRwczovL3Rlc3RqbWIuYWxmYWJhbmsucnUvZGlzdHJwb2ludC9BbGZh\\r\\nLUJhbmtfU0NBMS5jcmyGMGh0dHA6Ly92bGt3czY6OTA4MS9kaXN0cnBvaW50L0Fs\\r\\nZmEtQmFua19TQ0ExLmNybIY4aHR0cDovL3Rlc3RqbWIuYWxmYWJhbmsucnUvZGlz\\r\\ndHJwb2ludC9BbGZhLUJhbmtfU0NBMS5jcmwwgdsGCCsGAQUFBwEBBIHOMIHLMEUG\\r\\nCCsGAQUFBzAChjlodHRwczovL3Rlc3RqbWIuYWxmYWJhbmsucnUvZGlzdHJwb2lu\\r\\ndC9BbGZhLUJhbmtfU0NBMS5jcnQwPAYIKwYBBQUHMAKGMGh0dHA6Ly92bGt3czY6\\r\\nOTA4MS9kaXN0cnBvaW50L0FsZmEtQmFua19TQ0ExLmNydDBEBggrBgEFBQcwAoY4\\r\\naHR0cDovL3Rlc3RqbWIuYWxmYWJhbmsucnUvZGlzdHJwb2ludC9BbGZhLUJhbmtf\\r\\nU0NBMS5jcnQwQQYJKoZIhvcNAQEKMDSgDzANBglghkgBZQMEAgMFAKEcMBoGCSqG\\r\\nSIb3DQEBCDANBglghkgBZQMEAgMFAKIDAgFAA4IBAQA7qvezzVUukOu6PusP9Ulr\\r\\n801fn7lJlEG4suRmmqWTaOUkkwfoOV+AjyN4K9LtF8JF4BE7ovoz+BAXNl6IIaxB\\r\\nLup0lnIf2UUXvg8XoAZ9SCNnDdmHI05NrONrRg+7DyCv8FpyudFTkFhmkaMojuUH\\r\\nZN8V27KlW3Q0ijDrOyn9/rIqAIA5JVbvUfRIMR8DXpZsIkf0HAnZN4Zswn0U5U0K\\r\\n46Ewva4fWvF7u3638Hkv8u5XNU6E1eaJTWxVM+4J8HdnnTDHSDO27VFh9SxCP8E7\\r\\ncvQhIhfOXz2qESMSnC2bmlGm863E7fMGxNIpikE2D5LO8Z0KiI0qrhZA7p4tye2c\\r\\n",
"certificate": {
"id": "62552f2457595f1652c4b179",
"serialNumber": "6100035c3cff88cd00f01d734a000100035c3c",
"tokenSerialNumber": "00a81050",
"status": "CERT_VALID",
"notBefore": "2019-08-24T14:15:22Z",
"notAfter": "2019-08-24T14:15:22Z",
"owner": "Ефимов Филипп Архипович",
"uploadOnToken": true,
"expireSoon": true,
"actions": [
{
"type": "UPLOAD_ON_TOKEN",
"available": true
}
]
}
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (OK) | ОК | Успешный результат | RSACertificate |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 422 (Unprocessable Entity)) | Not valid pkcs10 DN | Невалидный DN | ErrorUnprocessable |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | x-traceid | string | Идентификатор трассировки запроса |
Заявка на активацию RSA-сертификата
Для создания заявки на активацию необходимо отправить POST signature/users/{sub}/rsa-certificates/{id}/requests/activation с access_token, полученным в Alfa ID, со scope = signature, и параметрами запроса.
Code samples
curl -X POST signature/users/{sub}/rsa-certificates/{id}/requests/activation
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header Parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| sub | path | string | true | Идентификатор субъекта |
| id | path | string | true | Идентификатор сертификата. Получен в ответе в методе Получение данных заявки |
Example responses
200 Response
{
"id": "62550ef50163785f2222707e",
"type": "issueRsaCertificate",
"status": "CREATED",
"creator": "Ефимов Филипп Архипович",
"createdDate": "2019-08-24T14:15:22Z"
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (OK) | ОК | Успешный результат | ResponesIssueRSACertificate |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 422 (Unprocessable Entity)) | Not valid pkcs10 DN | Невалидный DN | ErrorUnprocessable |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | x-traceid | string | Идентификатор трассировки запроса |
Заявка на изменение текущего способа подписи
Для изменения основного способ необходимо вызвать PUT signature/users/{sub}/sign-settings с access_token, полученным в Alfa ID, со scope = signature, и параметрами запроса.
Code samples
curl -X PUT signature/users/{sub}/sign-settings
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header Parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Body parameter
{
"currentSignType": "rsa-certificates"
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| sub | path | string | true | Идентификатор субъекта |
| body | body | SignSettings | true | Тип основной подписи |
Example responses
400 Response
{
"error": "invalid_request",
"error_description": "Authorization header is not present in request headers"
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (OK) | ОК | Успешный результат | None |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 422 (Unprocessable Entity)) | Not valid pkcs10 DN | Невалидный DN | ErrorUnprocessable |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
DN
{
"dn": "emailAddress=teterkina.natalya@gmail.com, CN=Тетеркина Наталья Геннадьевна, L=пос.Мурино Ленинградская обл., C=RU, street=\"пос.Мурино Ленинградская обл., ул.Новая,д.7,корп.4,кв.288\", SN=Тетеркина, GN=Наталья"
}
Данные DN
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| dn | string | false | Данные DN |
RequestIssueRSACertificate
{
"tokenSerialNumber": "AlboKey_{BBB5EB5D-2B38-488B-B9E2-5E336DDE3DE9}",
"pkcs10Content": "-----BEGIN CERTIFICATE REQUEST-----\\nMIIC3zCCAccCAQAwgZkxCzAJBgNVBAYTAlJVMRUwEwYDVQQEDAzQldGE0LjQvNC+\\n0LIxFTATBgNVBCoMDNCk0LjQu9C40L/QvzE1MDMGA1UEAwws0JXRhNC40LzQvtCy\\nINCk0LjQu9C40L/QvyDQkNGA0YXQuNC/0L7QstC40YcxJTAjBgkqhkiG9w0BCQEW\\nFlVzZXIxNzZAcG9jaHRvY2hrYS5jb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAw\\nggEKAoIBAQCibtSH2YP4oxFVgiAvLdtAZpnVDWNZNgAnCEQwNbPIQpavY3OeoI/a\\nNchXgwTn2u9yejOCEu8Q+x++RQDXVeSvPciVIzfDJ5Ex2MPzJySro3iPjT+HCITu\\n/sddVv3Lnz5koNzOA5RihTQ+toHsvNgI2/aLITBXVM4JtkQ0ezqNsXDFqVr0Xws/\\n3xj33BhhDXDrC24ivnDspYwbjevbrc5/L/mFhkHYX5pCJoxcNd5T8JrVUC1qkBIm\\nnFA0C5dMAC6qWlglIG7BAkqc4Z/bu0WxEqsi0353BlnD9A/3k4euY5vmVRn2m/6E\\ns89K5XrnqRYap5/o6zkQs64n7HLDQ8F3AgMBAAGgADANBgkqhkiG9w0BAQsFAAOC\\nAQEASXlft+61y8TeYhXZQbuLdORjXk4yiI4OAecItHg1GcBiscA2OWObXRalLHlP\\nsGc/fp5y82wZ24YxgHbyyRGf1DU374Iz5YqEl9IJ6WPsx9j/BpUo8cNPLaBOID2P\\nKUHOMNbmy2bpPAi9AiaRXef9Tz3lIlzjW+oBWDoKtLkVmGDY+aTmwm0ASdqzuc/Q\\ndFEgJ1JrZtwjDxwDrtAt+FXbwvadWMo9uhKW9DAaPm9XOte8z/ACoNlQ6G6KGPT3\\nYQtk+dIjzeB3po9wZklg19xV17H9WCo+p3K85ANyFjkeePB49DIfwv+04a8kOsaY\\nG0ocUXmTIgNeVKyDFtFoUF+qeg==\\n\\n-----END CERTIFICATE REQUEST-----"
}
Запрос на создание заявки на выпуск RSA-сертификата
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| tokenSerialNumber | string | false | Серийный номер USB ключа |
| pkcs10Content | string | true | Контент PKCS10 |
ResponesIssueRSACertificate
{
"id": "62550ef50163785f2222707e",
"type": "issueRsaCertificate",
"status": "CREATED",
"creator": "Ефимов Филипп Архипович",
"createdDate": "2019-08-24T14:15:22Z"
}
Ответ на создание заявки на выпуск RSA-сертификата
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | false | Идентификатор заявки |
| type | string | false | Тип заявки |
| status | string | false | Статус заявки |
| creator | string | false | ФИО создателя заявки |
| createdDate | string(date-time) | false | Дата создания заявки |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| type | issueRsaCertificate | Тип заявки на выпуск RSA-сертификата |
| type | activationRsaCertificate | Тип заявки на активацию RSA-сертификата |
RequestPostOperations
{
"requestType": "issueRsaCertificate"
}
Запрос отправки на подпись
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| requestType | string | true | Тип заявки |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| requestType | issueRsaCertificate | Тип заявки на выпуск RSA-сертификата |
| requestType | activationRsaCertificate | Тип заявки на активацию RSA-сертификата |
| requestType | currentSignTypeRsa | Тип заявки на изменение основного способа подписи на RSA |
ResponsePostOperations
{
"id": "2629a563-3c82-44a2-a4f5-67b79e44cbea",
"requestId": "62550ef50163785f2222707e",
"requestType": "issueRsaCertificate"
}
Ответ отправки заявки на подпись
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | false | Идентификатор операции |
| requestId | string | false | Идентификатор заявки |
| requestType | string | false | Тип заявки |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| requestType | issueRsaCertificate | Тип заявки на выпуск RSA-сертификата |
| requestType | activationRsaCertificate | Тип заявки на активацию RSA-сертификата |
| requestType | currentSignTypeRsa | Тип заявки на изменение основного способа подписи на RSA |
RequestPutOperations
{
"code": 11111111
}
Запрос на подписание заявки
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| code | number | true | Одноразовый код |
ResponsePutOperations
{
"id": "2629a563-3c82-44a2-a4f5-67b79e44cbea",
"isSigned": true,
"requestId": "62550ef50163785f2222707e",
"requestType": "issueRsaCertificate"
}
Ответ на подписание заявки
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | false | Идентификатор операции |
| isSigned | boolean | false | Признак достаточности подписей под документом |
| requestId | string | false | Идентификатор заявки |
| requestType | string | false | Тип заявки |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| requestType | issueRsaCertificate | Тип заявки на выпуск RSA-сертификата |
| requestType | activationRsaCertificate | Тип заявки на активацию RSA-сертификата |
| requestType | currentSignTypeRsa | Тип заявки на изменение основного способа подписи на RSA |
RequestData
{
"requestIssueRsaCertificate": [
{
"id": "62550ef50163785f2222707e",
"type": "issueRsaCertificate",
"status": "FINISHED",
"creator": "Сафонов Тихон Ерофеевич",
"createdDate": "2019-08-24T14:15:22Z",
"finishedDate": "2019-08-24T14:15:22Z",
"results": {
"owner": "Ефимов Филипп Архипович",
"notAfter": "2019-08-24T14:15:22Z",
"notBefore": "2019-08-24T14:15:22Z",
"serialNumber": "6100035c3cff88cd00f01d734a000100035c3c",
"sendDate": "2019-08-24T14:15:22Z",
"executionDate": "2019-08-24T14:15:22Z",
"thumbprint": "f738ec7266d1e3f6d6d4557bcbbc43ec188db3cf",
"dn": {
"firstName": "Филипп",
"lastName": "Ефимов",
"fullName": "Ефимов Филипп Архипович",
"country": "RU",
"email": "User176@pochtochka.com"
},
"issuedCertificateId": "62552f2457595f1652c4b179",
"caRequestId": 220220
}
}
],
"requestActivateRsaCertificate": [
{
"id": "62550ef50163785f2222707e",
"type": "activationRsaCertificate",
"status": "FINISHED",
"creator": "Сафонов Тихон Ерофеевич",
"createdDate": "2019-08-24T14:15:22Z",
"finishedDate": "2019-08-24T14:15:22Z",
"results": {
"userSignMethodType": "RSA",
"userSignMethodStatus": "ENABLED"
}
}
],
"requestCurrentSignTypeRsa": [
{
"id": "632c3a574441931c3de70996",
"type": "currentSignTypeRsa",
"status": "FINISHED",
"creator": "Павлов Ким Николаевич",
"createdDate": "2022-09-22T10:35:03.304Z",
"finishedDate": "2022-09-22T10:35:39.967Z"
}
]
}
Данные заявки
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| requestIssueRsaCertificate | [DataRequestIssueRsaCertificate] | false | Заявка на выпуск RSA-сертификата |
| requestActivateRsaCertificate | [DataRequestActivateRsaCertificate] | false | Заявка на активацию RSA-сертификата |
| requestCurrentSignTypeRsa | [DataRequestActivateRsaCertificate] | false | Заявка на изменение основного способа подписи на RSA |
DataRequestIssueRsaCertificate
{
"id": "62550ef50163785f2222707e",
"type": "issueRsaCertificate",
"status": "FINISHED",
"creator": "Сафонов Тихон Ерофеевич",
"createdDate": "2019-08-24T14:15:22Z",
"finishedDate": "2019-08-24T14:15:22Z",
"results": {
"owner": "Ефимов Филипп Архипович",
"notAfter": "2019-08-24T14:15:22Z",
"notBefore": "2019-08-24T14:15:22Z",
"serialNumber": "6100035c3cff88cd00f01d734a000100035c3c",
"sendDate": "2019-08-24T14:15:22Z",
"executionDate": "2019-08-24T14:15:22Z",
"thumbprint": "f738ec7266d1e3f6d6d4557bcbbc43ec188db3cf",
"dn": {
"firstName": "Филипп",
"lastName": "Ефимов",
"fullName": "Ефимов Филипп Архипович",
"country": "RU",
"email": "User176@pochtochka.com"
},
"issuedCertificateId": "62552f2457595f1652c4b179",
"caRequestId": 220220
}
}
Данные заявки на выпуск RSA-сертификата
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | false | Идентификатор заявки |
| type | string | false | Тип заявки |
| status | string | false | Статус заявки |
| creator | string | false | ФИО создателя заявки |
| createdDate | string(date-time) | false | Дата создания заявки |
| finishedDate | string(date-time) | false | Дата завершения заявки |
| results | ResultsRequestIssueRsaCertificat | false | Результат выполнения заявки на выпуск RSA-сертификата |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| type | issueRsaCertificate | Тип заявки на выпуск RSA-сертификата |
DataRequestActivateRsaCertificate
{
"id": "62550ef50163785f2222707e",
"type": "activationRsaCertificate",
"status": "FINISHED",
"creator": "Сафонов Тихон Ерофеевич",
"createdDate": "2019-08-24T14:15:22Z",
"finishedDate": "2019-08-24T14:15:22Z",
"results": {
"userSignMethodType": "RSA",
"userSignMethodStatus": "ENABLED"
}
}
Данные заявки на активацию RSA-сертификата/на изменение основного способа подписи на RSA
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | false | Идентификатор заявки |
| type | string | false | Тип заявки |
| status | string | false | Статус заявки |
| creator | string | false | ФИО создателя заявки |
| createdDate | string(date-time) | false | Дата создания заявки |
| finishedDate | string(date-time) | false | Дата завершения заявки |
| results | ResultsRequestActivateRsaCertificat | false | Результат выполнения заявки на активацию RSA-сертификата |
Enumerated Values
| Property | Value | Decsription |
|---|---|---|
| type | activationRsaCertificate | Тип заявки на активацию RSA-сертификата |
ResultsRequestIssueRsaCertificat
{
"owner": "Ефимов Филипп Архипович",
"notAfter": "2019-08-24T14:15:22Z",
"notBefore": "2019-08-24T14:15:22Z",
"serialNumber": "6100035c3cff88cd00f01d734a000100035c3c",
"sendDate": "2019-08-24T14:15:22Z",
"executionDate": "2019-08-24T14:15:22Z",
"thumbprint": "f738ec7266d1e3f6d6d4557bcbbc43ec188db3cf",
"dn": {
"firstName": "Филипп",
"lastName": "Ефимов",
"fullName": "Ефимов Филипп Архипович",
"country": "RU",
"email": "User176@pochtochka.com"
},
"issuedCertificateId": "62552f2457595f1652c4b179",
"caRequestId": 220220
}
Результат выполнения заявки на выпуск RSA-сертификата
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| owner | string | false | Владелец сертфиката |
| notAfter | string(date-time) | false | Дата истечения срока действия сертификата (UTC) |
| notBefore | string(date-time) | false | Дата выпуска сертификата в УЦ (UTC) |
| serialNumber | string | false | Серийный номер сертификата |
| sendDate | string(date-time) | false | Дата отправки |
| executionDate | string(date-time) | false | Дата исполнения |
| thumbprint | string | false | Отпечаток сертификата |
| dn | Dn | false | Данные о владельце сертификата |
| issuedCertificateId | string | false | Идентификатор сертификата |
| caRequestId | number | false | Идентификатор запроса на отзыв в УЦ |
ResultsRequestActivateRsaCertificat
{
"userSignMethodType": "RSA",
"userSignMethodStatus": "ENABLED"
}
Результат выполнения заявки на активацию RSA-сертификата
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| userSignMethodType | string | false | Тип метода подписания |
| userSignMethodStatus | string | false | Статус метода подписания |
Dn
{
"firstName": "Филипп",
"lastName": "Ефимов",
"fullName": "Ефимов Филипп Архипович",
"country": "RU",
"email": "User176@pochtochka.com"
}
Данные о владельце сертификата
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| firstName | string | false | Имя |
| lastName | string | false | Фамилия |
| fullName | string | false | Полное ФИО |
| country | string | false | Страна |
| string | false | Электронная почта |
RSACertificate
{
"content": "MIIFzDCCBICgAwIBAgITYQADXDz/iM0A8B1zSgABAANcPDBBBgkqhkiG9w0BAQow\\r\\nNKAPMA0GCWCGSAFlAwQCAwUAoRwwGgYJKoZIhvcNAQEIMA0GCWCGSAFlAwQCAwUA\\r\\nogMCAUAwWzELMAkGA1UEBhMCUlUxEjAQBgNVBAoTCUFsZmEtQmFuazELMAkGA1UE\\r\\nCxMCSVQxKzApBgNVBAMTIkFsZmEtQmFuayBJc3N1aW5nIFN1Ym9yZGluYXRlIENB\\r\\nIDEwHhcNMjIwNDEyMDczOTI3WhcNMjQwNDEyMDc0OTI3WjCBmTEVMBMGA1UEKgwM\\r\\n0KTQuNC70LjQv9C/MRUwEwYDVQQEDAzQldGE0LjQvNC+0LIxCzAJBgNVBAYTAlJV\\r\\nMTUwMwYDVQQDDCzQldGE0LjQvNC+0LIg0KTQuNC70LjQv9C/INCQ0YDRhdC40L/Q\\r\\nvtCy0LjRhzElMCMGCSqGSIb3DQEJARYWVXNlcjE3NkBwb2NodG9jaGthLmNvbTCC\\r\\nASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKJu1IfZg/ijEVWCIC8t20Bm\\r\\nmdUNY1k2ACcIRDA1s8hClq9jc56gj9o1yFeDBOfa73J6M4IS7xD7H75FANdV5K89\\r\\nyJUjN8MnkTHYw/MnJKujeI+NP4cIhO7+x11W/cufPmSg3M4DlGKFND62gey82Ajb\\r\\n9oshMFdUzgm2RDR7Oo2xcMWpWvRfCz/fGPfcGGENcOsLbiK+cOyljBuN69utzn8v\\r\\n+YWGQdhfmkImjFw13lPwmtVQLWqQEiacUDQLl0wALqpaWCUgbsECSpzhn9u7RbES\\r\\nqyLTfncGWcP0D/eTh65jm+ZVGfab/oSzz0rleuepFhqnn+jrORCzrifscsNDwXcC\\r\\nAwEAAaOCAeAwggHcMB0GA1UdDgQWBBTbfzj1CFqgIOUtAqiQPszkaMdawzAfBgNV\\r\\nHSMEGDAWgBTJFzMem6mUoJYYS25xTIHb6XP+ZTCBuwYDVR0fBIGzMIGwMIGtoIGq\\r\\noIGnhjlodHRwczovL3Rlc3RqbWIuYWxmYWJhbmsucnUvZGlzdHJwb2ludC9BbGZh\\r\\nLUJhbmtfU0NBMS5jcmyGMGh0dHA6Ly92bGt3czY6OTA4MS9kaXN0cnBvaW50L0Fs\\r\\nZmEtQmFua19TQ0ExLmNybIY4aHR0cDovL3Rlc3RqbWIuYWxmYWJhbmsucnUvZGlz\\r\\ndHJwb2ludC9BbGZhLUJhbmtfU0NBMS5jcmwwgdsGCCsGAQUFBwEBBIHOMIHLMEUG\\r\\nCCsGAQUFBzAChjlodHRwczovL3Rlc3RqbWIuYWxmYWJhbmsucnUvZGlzdHJwb2lu\\r\\ndC9BbGZhLUJhbmtfU0NBMS5jcnQwPAYIKwYBBQUHMAKGMGh0dHA6Ly92bGt3czY6\\r\\nOTA4MS9kaXN0cnBvaW50L0FsZmEtQmFua19TQ0ExLmNydDBEBggrBgEFBQcwAoY4\\r\\naHR0cDovL3Rlc3RqbWIuYWxmYWJhbmsucnUvZGlzdHJwb2ludC9BbGZhLUJhbmtf\\r\\nU0NBMS5jcnQwQQYJKoZIhvcNAQEKMDSgDzANBglghkgBZQMEAgMFAKEcMBoGCSqG\\r\\nSIb3DQEBCDANBglghkgBZQMEAgMFAKIDAgFAA4IBAQA7qvezzVUukOu6PusP9Ulr\\r\\n801fn7lJlEG4suRmmqWTaOUkkwfoOV+AjyN4K9LtF8JF4BE7ovoz+BAXNl6IIaxB\\r\\nLup0lnIf2UUXvg8XoAZ9SCNnDdmHI05NrONrRg+7DyCv8FpyudFTkFhmkaMojuUH\\r\\nZN8V27KlW3Q0ijDrOyn9/rIqAIA5JVbvUfRIMR8DXpZsIkf0HAnZN4Zswn0U5U0K\\r\\n46Ewva4fWvF7u3638Hkv8u5XNU6E1eaJTWxVM+4J8HdnnTDHSDO27VFh9SxCP8E7\\r\\ncvQhIhfOXz2qESMSnC2bmlGm863E7fMGxNIpikE2D5LO8Z0KiI0qrhZA7p4tye2c\\r\\n",
"certificate": {
"id": "62552f2457595f1652c4b179",
"serialNumber": "6100035c3cff88cd00f01d734a000100035c3c",
"tokenSerialNumber": "00a81050",
"status": "CERT_VALID",
"notBefore": "2019-08-24T14:15:22Z",
"notAfter": "2019-08-24T14:15:22Z",
"owner": "Ефимов Филипп Архипович",
"uploadOnToken": true,
"expireSoon": true,
"actions": [
{
"type": "UPLOAD_ON_TOKEN",
"available": true
}
]
}
}
RSA-сертификат
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| content | string | false | Содержимое сертификата |
| certificate | DataRSACertificate | false | Данные сертификата |
DataRSACertificate
{
"id": "62552f2457595f1652c4b179",
"serialNumber": "6100035c3cff88cd00f01d734a000100035c3c",
"tokenSerialNumber": "00a81050",
"status": "CERT_VALID",
"notBefore": "2019-08-24T14:15:22Z",
"notAfter": "2019-08-24T14:15:22Z",
"owner": "Ефимов Филипп Архипович",
"uploadOnToken": true,
"expireSoon": true,
"actions": [
{
"type": "UPLOAD_ON_TOKEN",
"available": true
}
]
}
Данные сертификата
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | false | Идентификатор сертификата |
| serialNumber | string | false | Серийный номер сертификата |
| tokenSerialNumber | string | false | Серийный номер токена на который загружен сертификат |
| status | string | false | Статус сертификата |
| notBefore | string(date-time) | false | Дата начала действия сертификата |
| notAfter | string(date-time) | false | Дата завершения действия сертификата |
| owner | string | false | ФИО владельца сертификата |
| uploadOnToken | boolean | false | Признак загрузки сертификата на токен |
| expireSoon | boolean | false | Признак необходимости перевыпуска сертификата, по причине завершения действия |
| actions | ActionsRSACertificate | false | Список всех возможных действий над сертификатом |
ActionsRSACertificate
[
{
"type": "UPLOAD_ON_TOKEN",
"available": true
}
]
Список всех возможных действий над сертификатом
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | string | false | Тип действия |
| available | boolean | false | Признак доступности действия |
SignSettings
{
"currentSignType": "rsa-certificates"
}
Тип основной подписи
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| currentSignType | string | true | Тип основной подписи |
ErrorUnauthorized
{
"error": "invalid_token",
"error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorInternal
{
"error": "internal_error",
"error_description": "Internal server error"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorBadRequest
{
"error": "invalid_request",
"error_description": "Authorization header is not present in request headers"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorScope
{
"error": "insufficient_scope",
"error_description": "The request requires higher privileges than provided by the access token"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorUnprocessable
{
"error": "Not valid pkcs10 DN",
"error_description": ""Wrong dn [DN(firstName=Евстафий, lastName=Жданов, fullName=Жданов Евстафий Юльевич, country=RU, area=Ленинградская обл., city=null, address=null, email=User513@pochtochka.com)] from pkcs10 for user [XBOXWG]""
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
ErrorEndpoint
"error: unknown_endpoint
error_description: Endpoint is not found or not active"
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
B2B-кредиты
Используется токен доступа, полученный по Client Credentials Flow.
Отправка данных для скоринга и создание черновика заявки
Метод предназначен для отправки информации на предварительный скоринг и создания черновика заявки на кредит (проект Smart-контракты).
Для создания черновика заявки на кредит необходимо отправить запрос POST loan-applications с access_token, полученным в Alfa ID, со scope = loan-applications, и параметрами запроса.
Code samples
curl -X POST loan-applications \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Body parameter
{
"dealId": "c5f72949-0e9a-41bf-a16d-a34b938f41ef",
"borrower": {
"individual": {
"legalInfo": {
"inn": 770778659011,
"contactPhone": "+7(916)545-00-00"
}
},
"legal": {
"legalInfo": {
"inn": 770778659011,
"contactPhone": "+7(916)545-00-00"
}
}
},
"partner": {
"numberOfInteractionDays": 149,
"startDateOfInteraction": "2022-05-01",
"transactionsInfo": {
"transactionsMSBSumList": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
],
"transactionsMSBQuantityList": [
{
"quantity": 15,
"date": "2022-05-01"
}
],
"transactionsMSBAvgSumList": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
],
"minSumTransactionMSB": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
],
"transactionsMSBMaxSumList": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
]
},
"sellerInventory": {
"inventorySumAndQuantityList": [
{
"sum": 9000.25,
"quantity": 2,
"date": "2022-05-01"
}
]
},
"sellerQuality": {
"sellerRatings": [
{
"rating": 3.98,
"date": "2022-05-01"
}
],
"returnedQuantityList": [
{
"quantity": 12,
"date": "2022-05-01"
}
],
"reasonForRefundList": [
{
"reason": "Какая-то причина возврата или не выполнения заказа",
"date": "2022-05-01"
}
],
"goodsConcentrationLevels": [
{
"concentrationLevelOfSum": 23.5,
"concentrationLevelOfQuantity": 53.2,
"nameOfGood": "Товар называется так"
}
]
},
"premiumAccount": {
"hasPremiumAccount": true
},
"delay": {
"loans": [
{
"overDueDate": "2022-05-01",
"duration": 12,
"sum": 10000
}
],
"goods": [
{
"overDueDate": "2022-05-01",
"duration": 12,
"sum": 10000
}
]
},
"procuredGoodsInfo": {
"categories": [
"Категория 1",
"Категория 2"
]
},
"feeList": [
{
"sum": 3000000.76,
"date": "2022-05-01"
}
],
"transportedGoodsInfo": {
"deliveries": [
{
"date": "2019-08-24",
"transportedGoodsVolumeAndCategoryList": [
{
"volume": 3456.65,
"category": "Категория груза"
}
]
}
]
},
"vat": {
"totalTaxBaseList": [
{
"sum": 554000.55,
"date": "2022-05-01"
}
],
"counterparts": [
{
"quantity": 346,
"date": "2022-05-01",
"purchases": [
{
"sum": 554000.55,
"date": "2022-05-01"
}
],
"sales": [
{
"sum": 554000.55,
"date": "2022-05-01"
}
]
}
],
"purchaseAndSaleOperations": [
{
"quantity": 554000,
"date": "2022-05-01"
}
]
},
"insurancePremiumsInfo": {
"mandatoryPensionInsuranceSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"mandatoryMedicalInsuranceSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"mandatoryPensionInsuranceSurchargeSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"supplementarySocialSupportSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"mandatorySocialInsuranceSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
]
},
"profitTax": {
"incomes": [
{
"sum": 87770039.19,
"date": "2022-05-01"
}
],
"costs": [
{
"sum": 87770039.19,
"date": "2022-05-01"
}
],
"totalProfits": [
{
"sum": 87770039.19,
"date": "2022-05-01"
}
]
},
"twoPersonalIncomeTaxesInfo": {
"fullCostSumList": [
{
"sum": 58552.25,
"date": "2022-05-01"
}
],
"retentionSumList": [
{
"sum": 58552.25,
"date": "2022-05-01"
}
],
"paidSumList": [
{
"sum": 58552.25,
"date": "2022-05-01"
}
],
"employeesQuantityList": [
{
"quantity": 134,
"date": "2022-05-01"
}
]
},
"sixPersonalIncomeTaxesInfo": {
"factIncomes": [
{
"factDate": "2022-05-28",
"sum": 247912.19,
"date": "2022-05-01"
}
],
"retentionPITDateAndSumList": [
{
"factDate": "2022-05-28",
"sum": 247912.19,
"date": "2022-05-01"
}
],
"imposedKBKTaxes": [
{
"sum": 33346.47,
"date": "2022-05-01"
}
],
"imposedInterests": [
{
"sum": 33346.47,
"date": "2022-05-01"
}
],
"imposedFines": [
{
"sum": 33346.47,
"date": "2022-05-01"
}
],
"paidKBKTaxes": [
{
"sum": 9110687.53,
"date": "2022-05-01"
}
],
"paidKBKInterests": [
{
"sum": 9110687.53,
"date": "2022-05-01"
}
],
"paidKBKFines": [
{
"sum": 9110687.53,
"date": "2022-05-01"
}
]
},
"calculationsInformation": {
"currentInterestsSum": 110687,
"currentInterestsAndCategories": [
{
"sum": 20299.1,
"category": "Категория пени/штрафа"
}
],
"currentTaxesSum": 5016161.68,
"currentFinesAndCategories": [
{
"sum": 20299.1,
"category": "Категория пени/штрафа"
}
]
}
}
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | ScoringAny | true | Тело запроса |
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (ОК) | ОК | Успешное создание черновика заявки | 200ok |
| 400 (Bad Request) | invalid_request | Отсутствие обязательных параметров | ErrorResponse400 |
| 401 (Unauthorized) | invalid_token | Ошибка в JWT (просрочен, отозван и т.д.) | ErrorResponse401 |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorResponse403 |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorResponse403 |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервера | ErrorResponse |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Response Schema
Response Headers
| Status | Header | Type | Description |
|---|---|---|---|
| 200 | x-traceid | string | Идентификатор трассировки запроса |
| 400 | x-traceid | string | Идентификатор трассировки запроса |
| 401 | x-traceid | string | Идентификатор трассировки запроса |
| 403 | x-traceid | string | Идентификатор трассировки запроса |
| 500 | x-traceid | string | Идентификатор трассировки запроса |
Schemas
200ok
200 Response
{
"dealId": "c5f72949-0e9a-41bf-a16d-a34b938f41ef"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| dealId | string | true | Идентификатор черновика заявки (UUID, 128-битный) |
ErrorResponse400
400 Response
{
"error": "invalid_request",
"error_descriptions": "Значение атрибута transactions.sumTransactionsMSB[5].sum отсутствует; Партнеру ХХХХХХ недоступно оформление онлайн-кредита"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Значение ошибки |
| error_descriptions | string | true | Сообщение об ошибке |
ErrorResponse401
401 Response
{
"error": "invalid_token",
"error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons."
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Значение ошибки |
| error_description | string | true | Сообщение об ошибке |
ErrorResponse403
403 Response
{
"error": "insufficient_scope",
"error_description": "The request requires higher privileges than provided by the access token"
}
403 Response
{
"error": "access_denied",
"error_description": "The request requires higher privileges than provided"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Значение ошибки |
| error_description | string | true | Сообщение об ошибке |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| error | insufficient_scope | Недостаточно прав |
| error | access_denied | Доступ запрещен |
| error_description | The request requires higher privileges than provided by the access token | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope |
| error_description | The request requires higher privileges than provided | Доступ к счету запрещен |
ErrorResponse
500 Response
{
"error": "internal_error",
"error_description": "Internal server error"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Значение ошибки |
| error_description | string | true | Сообщение об ошибке |
ScoringAny
{
"dealId": "c5f72949-0e9a-41bf-a16d-a34b938f41ef",
"borrower": {
"individual": {
"legalInfo": {
"inn": 770778659011,
"contactPhone": "+7(916)545-00-00"
}
},
"legal": {
"legalInfo": {
"inn": 770778659011,
"contactPhone": "+7(916)545-00-00"
}
}
},
"partner": {
"numberOfInteractionDays": 149,
"startDateOfInteraction": "2022-05-01",
"transactionsInfo": {
"transactionsMSBSumList": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
],
"transactionsMSBQuantityList": [
{
"quantity": 15,
"date": "2022-05-01"
}
],
"transactionsMSBAvgSumList": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
],
"minSumTransactionMSB": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
],
"transactionsMSBMaxSumList": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
]
},
"sellerInventory": {
"inventorySumAndQuantityList": [
{
"sum": 9000.25,
"quantity": 2,
"date": "2022-05-01"
}
]
},
"sellerQuality": {
"sellerRatings": [
{
"rating": 3.98,
"date": "2022-05-01"
}
],
"returnedQuantityList": [
{
"quantity": 12,
"date": "2022-05-01"
}
],
"reasonForRefundList": [
{
"reason": "Какая-то причина возврата или не выполнения заказа",
"date": "2022-05-01"
}
],
"goodsConcentrationLevels": [
{
"concentrationLevelOfSum": 23.5,
"concentrationLevelOfQuantity": 53.2,
"nameOfGood": "Товар называется так"
}
]
},
"premiumAccount": {
"hasPremiumAccount": true
},
"delay": {
"loans": [
{
"overDueDate": "2022-05-01",
"duration": 12,
"sum": 10000
}
],
"goods": [
{
"overDueDate": "2022-05-01",
"duration": 12,
"sum": 10000
}
]
},
"procuredGoodsInfo": {
"categories": [
"Категория 1",
"Категория 2"
]
},
"feeList": [
{
"sum": 3000000.76,
"date": "2022-05-01"
}
],
"transportedGoodsInfo": {
"deliveries": [
{
"date": "2019-08-24",
"transportedGoodsVolumeAndCategoryList": [
{
"volume": 3456.65,
"category": "Категория груза"
}
]
}
]
},
"vat": {
"totalTaxBaseList": [
{
"sum": 554000.55,
"date": "2022-05-01"
}
],
"counterparts": [
{
"quantity": 346,
"date": "2022-05-01",
"purchases": [
{
"sum": 554000.55,
"date": "2022-05-01"
}
],
"sales": [
{
"sum": 554000.55,
"date": "2022-05-01"
}
]
}
],
"purchaseAndSaleOperations": [
{
"quantity": 554000,
"date": "2022-05-01"
}
]
},
"insurancePremiumsInfo": {
"mandatoryPensionInsuranceSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"mandatoryMedicalInsuranceSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"mandatoryPensionInsuranceSurchargeSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"supplementarySocialSupportSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"mandatorySocialInsuranceSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
]
},
"profitTax": {
"incomes": [
{
"sum": 87770039.19,
"date": "2022-05-01"
}
],
"costs": [
{
"sum": 87770039.19,
"date": "2022-05-01"
}
],
"totalProfits": [
{
"sum": 87770039.19,
"date": "2022-05-01"
}
]
},
"twoPersonalIncomeTaxesInfo": {
"fullCostSumList": [
{
"sum": 58552.25,
"date": "2022-05-01"
}
],
"retentionSumList": [
{
"sum": 58552.25,
"date": "2022-05-01"
}
],
"paidSumList": [
{
"sum": 58552.25,
"date": "2022-05-01"
}
],
"employeesQuantityList": [
{
"quantity": 134,
"date": "2022-05-01"
}
]
},
"sixPersonalIncomeTaxesInfo": {
"factIncomes": [
{
"factDate": "2022-05-28",
"sum": 247912.19,
"date": "2022-05-01"
}
],
"retentionPITDateAndSumList": [
{
"factDate": "2022-05-28",
"sum": 247912.19,
"date": "2022-05-01"
}
],
"imposedKBKTaxes": [
{
"sum": 33346.47,
"date": "2022-05-01"
}
],
"imposedInterests": [
{
"sum": 33346.47,
"date": "2022-05-01"
}
],
"imposedFines": [
{
"sum": 33346.47,
"date": "2022-05-01"
}
],
"paidKBKTaxes": [
{
"sum": 9110687.53,
"date": "2022-05-01"
}
],
"paidKBKInterests": [
{
"sum": 9110687.53,
"date": "2022-05-01"
}
],
"paidKBKFines": [
{
"sum": 9110687.53,
"date": "2022-05-01"
}
]
},
"calculationsInformation": {
"currentInterestsSum": 110687,
"currentInterestsAndCategories": [
{
"sum": 20299.1,
"category": "Категория пени/штрафа"
}
],
"currentTaxesSum": 5016161.68,
"currentFinesAndCategories": [
{
"sum": 20299.1,
"category": "Категория пени/штрафа"
}
]
}
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| dealId | string(uuid) | true | Идентификатор черновика заявки (UUID, 128-битный) |
| borrower | Borrower | true | Информация о заёмщике |
| partner | Partner | true | Информация о работе заёмщика с партнёром |
Borrower
{
"individual": {
"legalInfo": {
"inn": 770778659011,
"contactPhone": "+7(916)545-00-00"
}
},
"legal": {
"legalInfo": {
"inn": 770778659011,
"contactPhone": "+7(916)545-00-00"
}
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| individual | Individual | false | Информация о заёмщике-ИП |
| legal | Legal | false | Информация о заёмщике-юридическом лице |
Partner
{
"numberOfInteractionDays": 149,
"startDateOfInteraction": "2022-05-01",
"transactionsInfo": {
"transactionsMSBSumList": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
],
"transactionsMSBQuantityList": [
{
"quantity": 15,
"date": "2022-05-01"
}
],
"transactionsMSBAvgSumList": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
],
"minSumTransactionMSB": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
],
"transactionsMSBMaxSumList": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
]
},
"sellerInventory": {
"inventorySumAndQuantityList": [
{
"sum": 9000.25,
"quantity": 2,
"date": "2022-05-01"
}
]
},
"sellerQuality": {
"sellerRatings": [
{
"rating": 3.98,
"date": "2022-05-01"
}
],
"returnedQuantityList": [
{
"quantity": 12,
"date": "2022-05-01"
}
],
"reasonForRefundList": [
{
"reason": "Какая-то причина возврата или не выполнения заказа",
"date": "2022-05-01"
}
],
"goodsConcentrationLevels": [
{
"concentrationLevelOfSum": 23.5,
"concentrationLevelOfQuantity": 53.2,
"nameOfGood": "Товар называется так"
}
]
},
"premiumAccount": {
"hasPremiumAccount": true
},
"delay": {
"loans": [
{
"overDueDate": "2022-05-01",
"duration": 12,
"sum": 10000
}
],
"goods": [
{
"overDueDate": "2022-05-01",
"duration": 12,
"sum": 10000
}
]
},
"procuredGoodsInfo": {
"categories": [
"Категория 1",
"Категория 2"
]
},
"feeList": [
{
"sum": 3000000.76,
"date": "2022-05-01"
}
],
"transportedGoodsInfo": {
"deliveries": [
{
"date": "2019-08-24",
"transportedGoodsVolumeAndCategoryList": [
{
"volume": 3456.65,
"category": "Категория груза"
}
]
}
]
},
"vat": {
"totalTaxBaseList": [
{
"sum": 554000.55,
"date": "2022-05-01"
}
],
"counterparts": [
{
"quantity": 346,
"date": "2022-05-01",
"purchases": [
{
"sum": 554000.55,
"date": "2022-05-01"
}
],
"sales": [
{
"sum": 554000.55,
"date": "2022-05-01"
}
]
}
],
"purchaseAndSaleOperations": [
{
"quantity": 554000,
"date": "2022-05-01"
}
]
},
"insurancePremiumsInfo": {
"mandatoryPensionInsuranceSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"mandatoryMedicalInsuranceSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"mandatoryPensionInsuranceSurchargeSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"supplementarySocialSupportSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"mandatorySocialInsuranceSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
]
},
"profitTax": {
"incomes": [
{
"sum": 87770039.19,
"date": "2022-05-01"
}
],
"costs": [
{
"sum": 87770039.19,
"date": "2022-05-01"
}
],
"totalProfits": [
{
"sum": 87770039.19,
"date": "2022-05-01"
}
]
},
"twoPersonalIncomeTaxesInfo": {
"fullCostSumList": [
{
"sum": 58552.25,
"date": "2022-05-01"
}
],
"retentionSumList": [
{
"sum": 58552.25,
"date": "2022-05-01"
}
],
"paidSumList": [
{
"sum": 58552.25,
"date": "2022-05-01"
}
],
"employeesQuantityList": [
{
"quantity": 134,
"date": "2022-05-01"
}
]
},
"sixPersonalIncomeTaxesInfo": {
"factIncomes": [
{
"factDate": "2022-05-28",
"sum": 247912.19,
"date": "2022-05-01"
}
],
"retentionPITDateAndSumList": [
{
"factDate": "2022-05-28",
"sum": 247912.19,
"date": "2022-05-01"
}
],
"imposedKBKTaxes": [
{
"sum": 33346.47,
"date": "2022-05-01"
}
],
"imposedInterests": [
{
"sum": 33346.47,
"date": "2022-05-01"
}
],
"imposedFines": [
{
"sum": 33346.47,
"date": "2022-05-01"
}
],
"paidKBKTaxes": [
{
"sum": 9110687.53,
"date": "2022-05-01"
}
],
"paidKBKInterests": [
{
"sum": 9110687.53,
"date": "2022-05-01"
}
],
"paidKBKFines": [
{
"sum": 9110687.53,
"date": "2022-05-01"
}
]
},
"calculationsInformation": {
"currentInterestsSum": 110687,
"currentInterestsAndCategories": [
{
"sum": 20299.1,
"category": "Категория пени/штрафа"
}
],
"currentTaxesSum": 5016161.68,
"currentFinesAndCategories": [
{
"sum": 20299.1,
"category": "Категория пени/штрафа"
}
]
}
}
Информация о работе заёмщика с партнёром
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| numberOfInteractionDays | number(integer) | false | Количество дней с даты начала работы с партнёром |
| startDateOfInteraction | string(date) | false | Дата начала работы с партнёром |
| transactionsInfo | TransactionsInfo | false | Транзакции продавца с партнёром |
| sellerInventory | SellerInventory | false | Запасы МСБ продавца |
| sellerQuality | SellerQuality | false | Качество торговли МСБ продавца |
| premiumAccount | PremiumAccount | false | Информация о премиальном аккаунте |
| delay | Delay | false | Просочка по рассрочке, кредитам, прочим финансовым продуктам МСБ с партнёром и/или по оплате за купленные товары, логистические услуги МСБ партнёру |
| procuredGoodsInfo | ProcuredGoodsInfo | false | Закупаемые товары |
| feeList | [Fee] | false | Оплата услуг партнёра |
| transportedGoodsInfo | TransportedGoodsInfo | false | Информация о перевозимых грузах |
| vat | Vat | false | Информация о НДС, поквартально |
| insurancePremiumsInfo | InsurancePremiumsInfo | false | Расчёт по страховым взносам |
| profitTax | ProfitTax | false | Налог на прибыль |
| twoPersonalIncomeTaxesInfo | TwoPersonalIncomeTaxesInfo | false | 2-НДФЛ |
| sixPersonalIncomeTaxesInfo | SixPersonalIncomeTaxesInfo | false | 6-НДФЛ |
| calculationsInformation | CalculationsInformation | false | Справка о состоянии расчётов |
Individual
{
"legalInfo": {
"inn": 770778659011,
"contactPhone": "+7(916)545-00-00"
}
}
Информация о заёмщике-ИП
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| legalInfo | IndividualInfo | false | Информация о заёмщике |
Legal
{
"legalInfo": {
"inn": 770778659011,
"contactPhone": "+7(916)545-00-00"
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| legalInfo | LegalInfo | false | Информация о заёмщике |
LegalInfo
{
"inn": 7707786590,
"contactPhone": "+7(916)545-00-00"
}
Информация о заёмщике
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| inn | string | true | ИНН юридического лица. Использовать только 10 цифр |
| contactPhone | string | false | Контактный номер телефон юридического лица |
IndividualInfo
{
"inn": 770778659011,
"contactPhone": "+7(495)545-00-10"
}
Информация о заёмщике
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| inn | string | true | ИНН ИП. Использовать только 12 цифр |
| contactPhone | string | false | Контактный номер телефона ИП |
TransactionsInfo
{
"transactionsMSBSumList": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
],
"transactionsMSBQuantityList": [
{
"quantity": 15,
"date": "2022-05-01"
}
],
"transactionsMSBAvgSumList": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
],
"minSumTransactionMSB": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
],
"transactionsMSBMaxSumList": [
{
"sum": 1000.15,
"date": "2022-05-01"
}
]
}
Транзакции продавца с партнёром
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transactionsMSBSumList | [TransactionsAny] | false | Сумма транзакций МСБ продавца с партнёром помесячно за последние 2-3 года |
| transactionsMSBQuantityList | [QuantityTransactions] | false | Кол-во транзакций МСБ продавца с партнёром помесячно за последние 2-3 года |
| transactionsMSBAvgSumList | [TransactionsAny] | false | Средние суммы транзакций МСБ продавца с партнёром помесячно за последние 2-3 года |
| minSumTransactionMSB | [TransactionsAny] | false | Минимальная сумма одной транзакции МСБ продавца с партнёром помесячно за последние 2-3 года |
| transactionsMSBMaxSumList | [TransactionsAny] | false | Максимальная сумма одной транзакции МСБ продавца с партнёром помесячно за последние 2-3 года |
TransactionsAny
{
"sum": 1000.15,
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sum | number(float) | false | Суммы (sum - общая, avgSum - средняя, minSum - минимальная, maxSum - максимальная) транзакций МСБ продавца с партнёром за месяц в рублях |
| date | string(date) | false | Дата выполнения транзакции |
QuantityTransactions
{
"quantity": 15,
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| quantity | number(integer) | false | Кол-во транзакций МСБ продавца с партнёром за месяц |
| date | string(date) | false | Дата, соответствующая n кол-ву транзакций с партнёром |
SellerInventory
{
"inventorySumAndQuantityList": [
{
"sum": 9000.25,
"quantity": 2,
"date": "2022-05-01"
}
]
}
Запасы МСБ продавца
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| inventorySumAndQuantityList | [InventorySumAndQuantityList] | false | Объём запасов МСБ продавца на маркетплейсе в рублях помесячно за последние 2-3 года |
InventorySumAndQuantityList
{
"sum": 9000.25,
"quantity": 2,
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sum | number(float) | false | Объём запасов МСБ продавца на маркетплейсе за месяц в рублях |
| quantity | number(integer) | false | Объём запасов МСБ продавца на маркетплейсе в штуках за месяц |
| date | string(date) | false | Дата, соответствующая указанному объёму запасов МСБ |
SellerQuality
{
"sellerRatings": [
{
"rating": 3.98,
"date": "2022-05-01"
}
],
"returnedQuantityList": [
{
"quantity": 12,
"date": "2022-05-01"
}
],
"reasonForRefundList": [
{
"reason": "Какая-то причина возврата или не выполнения заказа",
"date": "2022-05-01"
}
],
"goodsConcentrationLevels": [
{
"concentrationLevelOfSum": 23.5,
"concentrationLevelOfQuantity": 53.2,
"nameOfGood": "Товар называется так"
}
]
}
Качество торговли МСБ продавца
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sellerRatings | [SellerRating] | false | Рейтинг продавца на маркетплейсе помесячно за последние 2-3 года |
| returnedQuantityList | [ReturnQuantity] | false | Количество возвратов, не выполненных заказов помесячно за последние 2-3 года |
| reasonForRefundList | [ReturnReasons] | false | Причины возвратов, не выполненных заказов помесячно за последние 2-3 года |
| goodsConcentrationLevels | [ConcentrationLevelGoods] | false | Уровень концентрации продаваемых товаров – доля каждого товара в общем объёме продаж МСБ продавца (в рублях)/(в единицах товара) |
SellerRating
{
"rating": 3.98,
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| rating | number(float) | false | Рейтинг продавца на маркетплейсе за месяц в единицах оценивания |
| date | string(date) | false | Дата, соответствующая указанному рейтингу |
ReturnQuantity
{
"quantity": 12,
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| quantity | number(integer) | false | Количество возвратов / не выполненных заказов за месяц |
| date | string(date) | false | Дата, соответствующая указанному количеству возвратов / не выполненных заказов |
ReturnReasons
{
"reason": "Какая-то причина возврата или не выполнения заказа",
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| reason | string | false | Причины возвратов/не выполненных заказов за месяц |
| date | string(date) | false | Дата, соответствующая указанным причинам возвратов |
ConcentrationLevelGoods
{
"concentrationLevelOfSum": 23.5,
"concentrationLevelOfQuantity": 53.2,
"nameOfGood": "Товар называется так"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| concentrationLevelOfSum | number(float) | false | Доля товара в общем объеме продаж (в рублях) МСБ продавца на дату запроса в % |
| concentrationLevelOfQuantity | number(float) | false | Доля товара в общем объеме продаж (в количестве) МСБ продавца на дату запроса в % |
| nameOfGood | string | false | Наименование товара |
PremiumAccount
{
"hasPremiumAccount": true
}
Информация о премиальном аккаунте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| hasPremiumAccount | boolean | false | Наличие премиального аккаунта МСБ продавца на маркетплейсе на дату запроса |
Delay
{
"loans": [
{
"overDueDate": "2022-05-01",
"duration": 12,
"sum": 10000
}
],
"goods": [
{
"overDueDate": "2022-05-01",
"duration": 12,
"sum": 10000
}
]
}
Просочка по рассрочке, кредитам, прочим финансовым продуктам МСБ с партнёром и/или по оплате за купленные товары, логистические услуги МСБ партнёру
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| loans | [DelayAny] | false | Рассрочка, кредиты, прочие финансовые продукты |
| goods | [DelayAny] | false | Купленные товары, логистические услуги |
DelayAny
{
"overDueDate": "2022-05-01",
"duration": 12,
"sum": 10000
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| overDueDate | string(date) | false | Дата выхода в просрочку по рассрочке, кредитам, прочим финансовым продуктам МСБ с партнёром и/или по оплате за купленные товары, логистические услуги МСБ партнёру за месяц за последние 2-3 года |
| duration | number(integer) | false | Количество дней просрочки по рассрочке, кредитам, прочим финансовым продуктам МСБ с партнёром и/или по оплате за купленные товары, логистические услуги МСБ партнёру за месяц за последние 2-3 года |
| sum | number(float) | false | Сумма просрочки по рассрочке, кредитам, прочим финансовым продуктам МСБ с партнёром и/или по оплате за купленные товары, логистические услуги МСБ партнёру за месяц за последние 2-3 года |
ProcuredGoodsInfo
{
"categories": [
"Категория 1",
"Категория 2"
]
}
Закупаемые товары
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| categories | [string] | false | Категории товаров, которые МСБ закупает у партнёра |
Fee
{
"sum": 3000000.76,
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sum | number(float) | false | Объёмы оплаты за логистические услуги МСБ через партнёра за месяц за последние 2-3 года в рублях |
| date | string(date) | false | Дата, согласно указанному объёму |
TransportedGoodsInfo
{
"deliveries": [
{
"date": "2019-08-24",
"transportedGoodsVolumeAndCategoryList": [
{
"volume": 3456.65,
"category": "Категория груза"
}
]
}
]
}
Информация о перевозимых грузах
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| deliveries | [Deliveries] | false | Информация о перевозимых грузах |
Deliveries
{
"date": "2019-08-24",
"transportedGoodsVolumeAndCategoryList": [
{
"volume": 3456.65,
"category": "Категория груза"
}
]
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| date | string(date) | false | Дата, согласно указанному объёму перевозимых грузов |
| transportedGoodsVolumeAndCategoryList | [TransportedGoods] | false | Информация по объёму и номенклатуре перевозимых грузов |
TransportedGoods
{
"volume": 3456.65,
"category": "Категория груза"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| volume | number(float) | false | Объёмы перевозимых грузов через партнёра за месяц в тонно-километрах |
| category | string | false | Наименование категории перевозимых грузов за месяц |
Vat
{
"totalTaxBaseList": [
{
"sum": 554000.55,
"date": "2022-05-01"
}
],
"counterparts": [
{
"quantity": 346,
"date": "2022-05-01",
"purchases": [
{
"sum": 554000.55,
"date": "2022-05-01"
}
],
"sales": [
{
"sum": 554000.55,
"date": "2022-05-01"
}
]
}
],
"purchaseAndSaleOperations": [
{
"quantity": 554000,
"date": "2022-05-01"
}
]
}
Информация о НДС, поквартально
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| totalTaxBaseList | [TaxPurchasesSalesAny] | false | Общая налоговая база по НДС поквартально за последние 2-3 года |
| counterparts | [Counterparts] | false | Количество контрагентов МСБ клиента поквартально за последние 2-3 года |
| purchaseAndSaleOperations | [OperationsPurchaseAndSale] | false | Количество операций по книгам покупок и продаж |
TaxPurchasesSalesAny
{
"sum": 554000.55,
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sum | number(float) | false | Сумма (tax - общей налоговой базы по НДС, purchases - покупок, sales - продаж) за квартал в рублях |
| date | string(date) | false | Дата, соответствующая указанной сумме |
Counterparts
{
"quantity": 346,
"date": "2022-05-01",
"purchases": [
{
"sum": 554000.55,
"date": "2022-05-01"
}
],
"sales": [
{
"sum": 554000.55,
"date": "2022-05-01"
}
]
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| quantity | number(integer) | false | Количество контрагентов МСБ клиента за квартал |
| date | string(date) | false | Дата, соответствующая указанному количеству контрагентов |
| purchases | [TaxPurchasesSalesAny] | false | Сумма покупок по каждому контрагенту поквартально за последние 2-3 года |
| sales | [TaxPurchasesSalesAny] | false | Сумма продаж по каждому контрагенту поквартально за последние 2-3 года |
OperationsPurchaseAndSale
{
"quantity": 554000,
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| quantity | number(integer) | false | Количество операций по книгам покупок и продаж за квартал в штуках |
| date | string(date) | false | Дата, соответствующая указанному количеству операций |
InsurancePremiumsInfo
{
"mandatoryPensionInsuranceSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"mandatoryMedicalInsuranceSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"mandatoryPensionInsuranceSurchargeSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"supplementarySocialSupportSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
],
"mandatorySocialInsuranceSumList": [
{
"sum": 7579815.57,
"date": "2022-05-01"
}
]
}
Расчёт по страховым взносам
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| mandatoryPensionInsuranceSumList | [InsuranceAny] | false | Сумма страховых взносов на обязательное пенсионное страхование, подлежащая уплате поквартально за последние 2-3 года |
| mandatoryMedicalInsuranceSumList | [InsuranceAny] | false | Сумма страховых взносов на обязательное медицинское страхование, подлежащая уплате поквартально за последние 2-3 года |
| mandatoryPensionInsuranceSurchargeSumList | [InsuranceAny] | false | Сумма страховых взносов на обязательное пенсионное страхование по дополнительному тарифу, подлежащая уплате (может быть несколько КБК) поквартально за последние 2-3 года |
| supplementarySocialSupportSumList | [InsuranceAny] | false | Сумма страховых взносов на дополнительное социальное обеспечение, подлежащая уплате за расчётный (отчётный) период (может быть несколько КБК) поквартально за последние 2-3 года |
| mandatorySocialInsuranceSumList | [InsuranceAny] | false | Сумма страховых взносов на обязательное социальное страхование на случай временной нетрудоспособности и в связи с материнством поквартально за последние 2-3 года |
InsuranceAny
{
"sum": 7579815.57,
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sum | number(float) | false | Сумма страховых взносов (pension - обязательное пенсионное, medical - обязательное медицинское, surcharge - доп.тариф обязательного пенсионного, support - доп.социальное, social - обязательное социальное), подлежащая уплате за квартал в рублях |
| date | string(date) | false | Дата, соответствующая указанной сумме |
ProfitTax
{
"incomes": [
{
"sum": 87770039.19,
"date": "2022-05-01"
}
],
"costs": [
{
"sum": 87770039.19,
"date": "2022-05-01"
}
],
"totalProfits": [
{
"sum": 87770039.19,
"date": "2022-05-01"
}
]
}
Налог на прибыль
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| incomes | [ProfitTaxAny] | false | Доходы от реализации поквартально за последние 2-3 года |
| costs | [ProfitTaxAny] | false | Убытки (расходы) поквартально за последние 2-3 года |
| totalProfits | [ProfitTaxAny] | false | Итого прибыль (убыток) поквартально за последние 2-3 года |
ProfitTaxAny
{
"sum": 87770039.19,
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sum | number(float) | false | Сумма (income - дохода, costs - убытков/расходов, total - итого) поквартально за квартал в рублях |
| date | string(date) | false | Дата, соответствующая указанной сумме |
TwoPersonalIncomeTaxesInfo
{
"fullCostSumList": [
{
"sum": 58552.25,
"date": "2022-05-01"
}
],
"retentionSumList": [
{
"sum": 58552.25,
"date": "2022-05-01"
}
],
"paidSumList": [
{
"sum": 58552.25,
"date": "2022-05-01"
}
],
"employeesQuantityList": [
{
"quantity": 134,
"date": "2022-05-01"
}
]
}
2-НДФЛ
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| fullCostSumList | [SumPITAny] | false | Сумма НДФЛ, исчисленная по годам за последние 2-3 года |
| retentionSumList | [SumPITAny] | false | Сумма НДФЛ, удержанная по годам за последние 2-3 года |
| paidSumList | [SumPITAny] | false | Сумма НДФЛ, перечисленная по годам за последние 2-3 года |
| employeesQuantityList | [QuantityEmployees] | false | Численность сотрудников по годам за последние 2-3 года |
SumPITAny
{
"sum": 58552.25,
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sum | number(float) | false | Сумма НДФЛ (cost - исчисленная, retention - удержанная, paid - перечисленная) за год в рублях |
| date | string(date) | false | Дата, соответствующая указанной сумме |
QuantityEmployees
{
"quantity": 134,
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| quantity | number(integer) | false | Численность сотрудников по годам за последние 2-3 года |
| date | string(date) | false | Дата, соответствующая указанному количеству |
SixPersonalIncomeTaxesInfo
{
"factIncomes": [
{
"factDate": "2022-05-28",
"sum": 247912.19,
"date": "2022-05-01"
}
],
"retentionPITDateAndSumList": [
{
"factDate": "2022-05-28",
"sum": 247912.19,
"date": "2022-05-01"
}
],
"imposedKBKTaxes": [
{
"sum": 33346.47,
"date": "2022-05-01"
}
],
"imposedInterests": [
{
"sum": 33346.47,
"date": "2022-05-01"
}
],
"imposedFines": [
{
"sum": 33346.47,
"date": "2022-05-01"
}
],
"paidKBKTaxes": [
{
"sum": 9110687.53,
"date": "2022-05-01"
}
],
"paidKBKInterests": [
{
"sum": 9110687.53,
"date": "2022-05-01"
}
],
"paidKBKFines": [
{
"sum": 9110687.53,
"date": "2022-05-01"
}
]
}
6-НДФЛ
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| factIncomes | [IncomeRetentionAny] | false | Дата фактически полученного дохода по годам за последние 2-3 года |
| retentionPITDateAndSumList | [IncomeRetentionAny] | false | Дата и сумма удержанного НДФЛ по годам за последние 2-3 года |
| imposedKBKTaxes | [ImposedAny] | false | Начисленные налоги по КБК за год по годам за последние 2-3 года |
| imposedInterests | [ImposedAny] | false | Начисленные пени по КБК за год по годам за последние 2-3 года |
| imposedFines | [ImposedAny] | false | Начисленные штрафы по КБК за год по годам за последние 2-3 года |
| paidKBKTaxes | [PaidAny] | false | Уплаченные налоги по КБК за год по годам за последние 2-3 года |
| paidKBKInterests | [PaidAny] | false | Уплаченные пени по КБК за год по годам за последние 2-3 года |
| paidKBKFines | [PaidAny] | false | Уплаченные штрафы по КБК за год по годам за последние 2-3 года |
IncomeRetentionAny
{
"factDate": "2022-05-28",
"sum": 247912.19,
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| factDate | string(date) | false | Фактическая дата (factIncome - получения дохода, dateAndSumRetentionPIT - удержания НДФЛ) |
| sum | number(float) | false | Сумма (factIncome - фактически полученного дохода, dateAndSumRetentionPIT - удержанного НДФЛ) за год в рублях |
| date | string(date) | false | Дата, соответствующая указанной фактической дате |
ImposedAny
{
"sum": 33346.47,
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sum | number(float) | false | Начисленные (taxes - налоги, interests - пени, fines - штрафы) по КБК за год в рублях |
| date | string(date) | false | Дата, соответствующая указанной фактической дате |
PaidAny
{
"sum": 9110687.53,
"date": "2022-05-01"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sum | number(float) | false | Уплаченные (taxes - налоги, interests - пени, fines - штрафы) по КБК за год в руб. |
| date | string(date) | false | Дата, соответствующая указанной фактической дате |
CalculationsInformation
{
"currentInterestsSum": 110687,
"currentInterestsAndCategories": [
{
"sum": 20299.1,
"category": "Категория пени/штрафа"
}
],
"currentTaxesSum": 5016161.68,
"currentFinesAndCategories": [
{
"sum": 20299.1,
"category": "Категория пени/штрафа"
}
]
}
Справка о состоянии расчётов
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| currentInterestsSum | number(float) | false | Текущие пени на дату запроса в рублях |
| currentInterestsAndCategories | [InterestsFinesAny] | false | Текущие пени (в разбивке по категориям) |
| currentTaxesSum | number(float) | false | Текущие штрафы на дату запроса в рублях |
| currentFinesAndCategories | [InterestsFinesAny] | false | Текущие штрафы (в разбивке по категориям) |
InterestsFinesAny
{
"sum": 20299.1,
"category": "Категория пени/штрафа"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sum | number(float) | false | Текущие (interests - пени, fines - штрафы) в разбивке по категориям на дату запроса в рублях |
| category | string | false | Категория текущих пени/штрафа |
Пагинация
Пагинация - разделение ответа на несколько страниц. Механизм пагинации может быть использован в REST-запросах GET.
Параметры и пример запроса
Пагинация настраивается с помощью следующих параметров:
Пример запроса
curl -X GET '{host}/claims?limit=5&offset=5'
-H 'Content-Type: application/json'
| Parameter | Description |
|---|---|
| limit | Количество объектов на одной странице. Значение по умолчанию: 1000. Максимальное значение: 1000 |
| offset | Количество объектов в списке, которые необходимо пропустить. Значение по умолчанию: 0 |
| totalCount | Общее количество записей |
Формат и пример ответа
{
"pagination": {
"limit": 10,
"offset": 45,
"totalCount": 100
},
"items": [..] //результаты в виде массива
}
Ответ на запрос содержит тело ответа и результат выполнения запроса в случае успеха. Справа представлен пример ответа (успех).
Request Body
| Parameter | Type | Description |
|---|---|---|
| limit | number | Количество объектов на одной странице |
| offset | number | Количество объектов в списке, которые необходимо пропустить |
| totalCount | number | Общее количество записей |
| items | array of subject | Массив объектов результата |
Алгоритм работы пагинации
Пример 1: Если клиент запрашивает limit = 100, offset = 0, то клиенту вернется с 1-ой по 100-ую запись.
Пример 2: Если клиент запрашивает limit = 100, offset = 1000, то клиенту вернется с 1001-ой по 1100-ую запись.
Сортировка в пагинации происходит следующим образом: вверху списка возвращаются новые записи, внизу - старые записи.
Scopes (области применения)
| Scope | Description | Resourses |
|---|---|---|
| escrow | Счета эскроу 214-ФЗ |
|
| customer | Все данные об организации и её счетах | GET customer-info |
| loan-applications | Smart-контракты | POST loan-applications |
| transactions | Все данные о счетах организации |
|
| signature | Электронная подпись |
|
Методы API (физические лица)
Список методов для работы с данными физических лиц Alfa API:
Дебетовые карты
Используется токен доступа, полученный по Authorization Code Flow.
Получение условий обслуживания по дебетовой карте
Метод позволяет получить условия обслуживания по дебетовой карте.
Для получения условий обслуживания по дебетовой карте необходимо отправить запрос GET cards/{cardId}/tariffs с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
Code samples
curl -X GET cards/{cardId}/tariffs \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| cardId | path | string | true | Параметр идентификатора карты |
Example responses
200 Response
{
"conditions": {
"isGraceActive": true,
"gracePeriodEnd": "2022-04-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (ОК) | ОК | Успешный результат | Tariffs |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
AccountStatus
{
"status": "ACTIVE"
}
Статус счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | false | Статус счёта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| status | ACTIVE | Статус счета: активен |
| status | INACTIVE | Статус счета: неактивен |
AccountBalance
{
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
Баланс счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| currency | string | true | Валюта счёта (ISO 4217 Code) |
| minorUnits | integer | true | Количество минорных единиц |
| holds | integer(int64) | true | Сумма холдов (резервов) в минорных единицах |
| amount | integer(int64) | true | Сумма денежных средств в минорных единицах |
Account
{
"mnemonic": "Текущий счет",
"number": "40817810010210335885",
"type": "EE",
"typeDescription": "Текущий счет",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
}
Объект счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| mnemonic | string | true | Наименование счёта |
| number | string | true | Номер счёта |
| type | string | true | Тип счёта |
| typeDescription | string | false | Описание типа счёта |
| status | AccountStatus | true | Статус счёта |
| dateCreated | string(date) | true | Дата открытия счёта |
| balance | AccountBalance | true | Баланс счёта |
Accounts
{
"accounts": [
{
"mnemonic": "Текущий счёт",
"number": "40817810010210335885",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Счёт кредитной карты",
"number": "40817810610210335890",
"type": "EG",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 110000,
"amount": 9890000
},
"typeDescription": "Счёт кредитной карты"
},
{
"mnemonic": "Счёт погашения кредита",
"number": "40817810310210335886",
"type": "CF",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 10000000
},
"typeDescription": "Счёт погашения кредита"
},
{
"mnemonic": "Текущий счёт",
"number": "40817810210210335889",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817978810210078734",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "EUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817840010210082098",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "USD",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
}
]
}
Счета
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accounts | Account | true | Счета |
AccountStatusResponse
{
"accountStatus": "ACTIVE"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accountStatus | AccountStatus | true | Статус счета |
Amount
{
"value": 100000,
"currency": "RUB",
"minorUnits": 100
}
Объект с суммой
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| value | integer (int64) | true | Сумма (значение) |
| currency | string | true | Валюта |
| minorUnits | integer | true | Сумма, передаваемая в копейках |
ClientInfo
{
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
}
Информация по клиенту
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| firstName | string | true | Имя |
| lastName | string | true | Фамилия |
| patronymicName | string | false | Отчество |
AccountRequisites
{
"clientInfo": {
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
},
"accountNumber": "40817810010210335885",
"bankName": "АО «Альфа-Банк», г. Москва",
"bic": "044525593",
"inn": "7728168971",
"kpp": "770801001",
"correspondentAccountNumber": "30101810200000000593"
}
Реквизиты счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| clientInfo | ClientInfo | true | Информация о клиенте |
| accountNumber | string | true | Номер счёта клиента |
| bankName | string | true | Полное наименование Банка |
| bic | string | false | БИК Банка |
| inn | string | false | ИНН Банка |
| kpp | string | false | КПП Банка |
| swift | string | false | SWIFT код Банка |
| correspondentAccountNumber | string | false | Корреспондентский счёт |
CardAccount
{
"number": "40817810010210335885"
}
Счет карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер счёта, к которому привязана карта |
CardState
{
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isActive | boolean | false | Карта активирована |
| isBlocked | boolean | false | Карта заблокирована |
| isClosed | boolean | false | Карта закрыта |
| isPinInstalled | boolean | false | Установлен PIN по карте |
Card
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"title": "CashBack NEW MC",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
}
Объект карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cardId | string | true | Идентификатор карты |
| maskedNumber | string | true | Маскированный номер карты |
| type | string | true | Тип карты |
| typeDescription | string | true | Тип продукта карты |
| status | string | true | Статус карты |
| issueDate | string(date) | true | Дата выпуска карты |
| expirationDate | string(year-month) | true | Срок действия карты |
| title | string | false | Наименование карты |
| isPrimary | boolean | true | Признак основной карты |
| isVirtual | boolean | true | Признак виртуальной карты |
| isCredit | boolean | true | Признак кредитной карты |
| account | CardAccount | true | Счёт |
| paymentSystem | string | true | Платежная система |
| state | CardState | true | Ключевые параметры карты |
Cards
{
"cards": [
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "CashBack NEW MC"
},
{
"cardId": "136035940",
"maskedNumber": "479004******7347",
"type": "CZ",
"typeDescription": "CZ-PLT Visa Gold PayWave Credit",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": false,
"isVirtual": false,
"isCredit": true,
"account": {
"number": "40817810610210335890"
},
"paymentSystem": "VISA",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "Visa Gold PayWave"
}
]
}
Карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cards | Card | true | Карты |
Prepaid
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
Объект prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| maskedNumber | string | true | Маскированный номер prepaid-карты |
| type | string | true | Тип prepaid-карты |
| typeDescription | string | true | Тип продукта prepaid-карты |
| expirationDate | string(year-month) | true | Срок действия prepaid-карты |
| title | string | false | Наименование prepaid-карты |
| isPinInstalled | boolean | true | Признак активации |
| paymentSystem | string | true | Платежная система |
Prepaids
{
"prepaids": [
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
]
}
Prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| prepaids | Prepaid | true | Prepaid-карты |
Stats
{
"turnover": 45000,
"averageMonthlyBalance": 120000
}
Статистика по счету
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| turnover | number | false | Величина POS-оборота |
| averageMonthlyBalance | number | false | Среднемесячный остаток |
TurnoverRange
{
"from": 10000,
"to": 50000
}
Условия по величине POS-оборота
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
AverageMonthlyBalanceRange
{
"from": 0,
"to": 100000
}
Условия по величине среднемесячного остатка
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
CardConditions
{
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
Условия обслуживания по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isGraceActive | boolean | false | Грейс-период активен |
| gracePeriodEnd | string(date) | false | Дата окончания грейс-периода |
| servicePackage | string | true | Пакет услуг клиента |
| stats | Stats | true | Статистика |
| cardServiceFee | number | true | Комиссия за обслуживание |
| turnoverRange | TurnoverRange | false | Оборот по карте |
| averageMonthlyBalanceRange | AverageMonthlyBalanceRange | false | Граница среднемесячного остатка |
| serviceMonthValue | Amount | false | Сумма месячного обслуживания |
Tariffs
{
"conditions": {
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
}
Тарифы по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| conditions | CardConditions | true | Тарифы по карте |
SubscriptionCard
{
"ips": "VISA",
"type": "GR"
}
Информация о карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| ips | string | true | Название карты в рамках ips (международной системы платежей) |
| type | string | true | Тип карты |
SubscriptionTariff
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
Тариф на услугу Альфа-чек
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор тарифа |
| name | string | true | Наименование тарифа |
| priceAmount | Amount | false | Сумма подписки на уведомления |
| isSelected | boolean | true | Признак выбора тарифа |
| isContactPhoneRequired | boolean | true | Признак необходимости указания номера телефона |
SubscriptionTariffs
{
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Список тарифов на услугу Альфа-чек доступных пользователю
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| SubscriptionTariffs | [SubscriptionTariff] | false | Список тарифов на услугу Альфа-чек доступных пользователю |
Subscriptions
{
"subscriptionCard": {
"ips": "VISA",
"type": "GR"
},
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Уведомления по операциям
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| subscriptionCard | SubscriptionCard | true | Карта, по которой приходят уведомления |
| subscriptionTariffs | SubscriptionTariffs | true | Пакет обслуживания |
Получение информации о подключенных уведомлениях
Метод позволяет информацию о подключенных уведомлениях по дебетовой карте.
Для получения информации о подключенных уведомлениях необходимо отправить запрос GET cards/{cardId}/subscriptions с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
Code samples
curl -X GET cards/{cardId}/subscriptions \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| cardId | path | string | true | Параметр идентификатора карты |
| Authorization | header | string | true | Access token |
Example responses
200 Response
{
"subscriptionCard": {
"ips": "VISA",
"type": "GR"
},
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (OK) | OK | Успешный результат | Subscriptions |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
AccountStatus
{
"status": "ACTIVE"
}
Статус счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | false | Статус счёта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| status | ACTIVE | Статус счета: активен |
| status | INACTIVE | Статус счета: неактивен |
AccountBalance
{
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
Баланс счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| currency | string | true | Валюта счёта (ISO 4217 Code) |
| minorUnits | integer | true | Количество минорных единиц |
| holds | integer(int64) | true | Сумма холдов (резервов) в минорных единицах |
| amount | integer(int64) | true | Сумма денежных средств в минорных единицах |
Account
{
"mnemonic": "Текущий счет",
"number": "40817810010210335885",
"type": "EE",
"typeDescription": "Текущий счет",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
}
Объект счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| mnemonic | string | true | Наименование счёта |
| number | string | true | Номер счёта |
| type | string | true | Тип счёта |
| typeDescription | string | false | Описание типа счёта |
| status | AccountStatus | true | Статус счёта |
| dateCreated | string(date) | true | Дата открытия счёта |
| balance | AccountBalance | true | Баланс счёта |
Accounts
{
"accounts": [
{
"mnemonic": "Текущий счёт",
"number": "40817810010210335885",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Счёт кредитной карты",
"number": "40817810610210335890",
"type": "EG",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 110000,
"amount": 9890000
},
"typeDescription": "Счёт кредитной карты"
},
{
"mnemonic": "Счёт погашения кредита",
"number": "40817810310210335886",
"type": "CF",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 10000000
},
"typeDescription": "Счёт погашения кредита"
},
{
"mnemonic": "Текущий счёт",
"number": "40817810210210335889",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817978810210078734",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "EUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817840010210082098",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "USD",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
}
]
}
Счета
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accounts | Account | true | Счета |
AccountStatusResponse
{
"accountStatus": "ACTIVE"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accountStatus | AccountStatus | true | Статус счета |
Amount
{
"value": 100000,
"currency": "RUB",
"minorUnits": 100
}
Объект с суммой
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| value | integer (int64) | true | Сумма (значение) |
| currency | string | true | Валюта |
| minorUnits | integer | true | Сумма, передаваемая в копейках |
ClientInfo
{
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
}
Информация по клиенту
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| firstName | string | true | Имя |
| lastName | string | true | Фамилия |
| patronymicName | string | false | Отчество |
AccountRequisites
{
"clientInfo": {
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
},
"accountNumber": "40817810010210335885",
"bankName": "АО «Альфа-Банк», г. Москва",
"bic": "044525593",
"inn": "7728168971",
"kpp": "770801001",
"correspondentAccountNumber": "30101810200000000593"
}
Реквизиты счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| clientInfo | ClientInfo | true | Информация о клиенте |
| accountNumber | string | true | Номер счёта клиента |
| bankName | string | true | Полное наименование Банка |
| bic | string | false | БИК Банка |
| inn | string | false | ИНН Банка |
| kpp | string | false | КПП Банка |
| swift | string | false | SWIFT код Банка |
| correspondentAccountNumber | string | false | Корреспондентский счёт |
CardAccount
{
"number": "40817810010210335885"
}
Счет карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер счёта, к которому привязана карта |
CardState
{
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isActive | boolean | false | Карта активирована |
| isBlocked | boolean | false | Карта заблокирована |
| isClosed | boolean | false | Карта закрыта |
| isPinInstalled | boolean | false | Установлен PIN по карте |
Card
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"title": "CashBack NEW MC",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
}
Объект карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cardId | string | true | Идентификатор карты |
| maskedNumber | string | true | Маскированный номер карты |
| type | string | true | Тип карты |
| typeDescription | string | true | Тип продукта карты |
| status | string | true | Статус карты |
| issueDate | string(date) | true | Дата выпуска карты |
| expirationDate | string(year-month) | true | Срок действия карты |
| title | string | false | Наименование карты |
| isPrimary | boolean | true | Признак основной карты |
| isVirtual | boolean | true | Признак виртуальной карты |
| isCredit | boolean | true | Признак кредитной карты |
| account | CardAccount | true | Счёт |
| paymentSystem | string | true | Платежная система |
| state | CardState | true | Ключевые параметры карты |
Cards
{
"cards": [
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "CashBack NEW MC"
},
{
"cardId": "136035940",
"maskedNumber": "479004******7347",
"type": "CZ",
"typeDescription": "CZ-PLT Visa Gold PayWave Credit",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": false,
"isVirtual": false,
"isCredit": true,
"account": {
"number": "40817810610210335890"
},
"paymentSystem": "VISA",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "Visa Gold PayWave"
}
]
}
Карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cards | Card | true | Карты |
Prepaid
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
Объект prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| maskedNumber | string | true | Маскированный номер prepaid-карты |
| type | string | true | Тип prepaid-карты |
| typeDescription | string | true | Тип продукта prepaid-карты |
| expirationDate | string(year-month) | true | Срок действия prepaid-карты |
| title | string | false | Наименование prepaid-карты |
| isPinInstalled | boolean | true | Признак активации |
| paymentSystem | string | true | Платежная система |
Prepaids
{
"prepaids": [
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
]
}
Prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| prepaids | Prepaid | true | Prepaid-карты |
Stats
{
"turnover": 45000,
"averageMonthlyBalance": 120000
}
Статистика по счету
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| turnover | number | false | Величина POS-оборота |
| averageMonthlyBalance | number | false | Среднемесячный остаток |
TurnoverRange
{
"from": 10000,
"to": 50000
}
Условия по величине POS-оборота
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
AverageMonthlyBalanceRange
{
"from": 0,
"to": 100000
}
Условия по величине среднемесячного остатка
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
CardConditions
{
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
Условия обслуживания по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isGraceActive | boolean | false | Грейс-период активен |
| gracePeriodEnd | string(date) | false | Дата окончания грейс-периода |
| servicePackage | string | true | Пакет услуг клиента |
| stats | Stats | true | Статистика |
| cardServiceFee | number | true | Комиссия за обслуживание |
| turnoverRange | TurnoverRange | false | Оборот по карте |
| averageMonthlyBalanceRange | AverageMonthlyBalanceRange | false | Граница среднемесячного остатка |
| serviceMonthValue | Amount | false | Сумма месячного обслуживания |
Tariffs
{
"conditions": {
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
}
Тарифы по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| conditions | CardConditions | true | Тарифы по карте |
SubscriptionCard
{
"ips": "VISA",
"type": "GR"
}
Информация о карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| ips | string | true | Название карты в рамках ips (международной системы платежей) |
| type | string | true | Тип карты |
SubscriptionTariff
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
Тариф на услугу Альфа-чек
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор тарифа |
| name | string | true | Наименование тарифа |
| priceAmount | Amount | false | Сумма подписки на уведомления |
| isSelected | boolean | true | Признак выбора тарифа |
| isContactPhoneRequired | boolean | true | Признак необходимости указания номера телефона |
SubscriptionTariffs
{
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Список тарифов на услугу Альфа-чек доступных пользователю
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| SubscriptionTariffs | [SubscriptionTariff] | false | Список тарифов на услугу Альфа-чек доступных пользователю |
Subscriptions
{
"subscriptionCard": {
"ips": "VISA",
"type": "GR"
},
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Получение списка карт клиента
Метод позволяет получить список карт клиента.
Для получения списка карт клиента необходимо отправить запрос GET cards с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
Code samples
curl -X GET cards \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| Authorization | header | string | true | Access token |
| cardFilter | query | CardFilter | false | Фильтр карт |
Example responses
200 Response
{
"cards": [
{
"cardId": "123731041",
"maskedNumber": "458443******3430",
"type": "ER",
"typeDescription": "RR",
"title": "VISA Rewards PW",
"status": "0",
"issueDate": "2021-11-15T08:28:22+03:00",
"account": {
"number": "40817810605610705598"
},
"expirationDate": "1126",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"paymentSystem": "VISA",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false
}
}
]
}
{
"cards": []
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (ОК) | ОК | Успешный результат | Cards |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
AccountStatus
{
"status": "ACTIVE"
}
Статус счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | false | Статус счёта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| status | ACTIVE | Статус счета: активен |
| status | INACTIVE | Статус счета: неактивен |
AccountBalance
{
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
Баланс счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| currency | string | true | Валюта счёта (ISO 4217 Code) |
| minorUnits | integer | true | Количество минорных единиц |
| holds | integer(int64) | true | Сумма холдов (резервов) в минорных единицах |
| amount | integer(int64) | true | Сумма денежных средств в минорных единицах |
Account
{
"mnemonic": "Текущий счет",
"number": "40817810010210335885",
"type": "EE",
"typeDescription": "Текущий счет",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
}
Объект счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| mnemonic | string | true | Наименование счёта |
| number | string | true | Номер счёта |
| type | string | true | Тип счёта |
| typeDescription | string | false | Описание типа счёта |
| status | AccountStatus | true | Статус счёта |
| dateCreated | string(date) | true | Дата открытия счёта |
| balance | AccountBalance | true | Баланс счёта |
Accounts
{
"accounts": [
{
"mnemonic": "Текущий счёт",
"number": "40817810010210335885",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Счёт кредитной карты",
"number": "40817810610210335890",
"type": "EG",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 110000,
"amount": 9890000
},
"typeDescription": "Счёт кредитной карты"
},
{
"mnemonic": "Счёт погашения кредита",
"number": "40817810310210335886",
"type": "CF",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 10000000
},
"typeDescription": "Счёт погашения кредита"
},
{
"mnemonic": "Текущий счёт",
"number": "40817810210210335889",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817978810210078734",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "EUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817840010210082098",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "USD",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
}
]
}
Счета
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accounts | Account | true | Счета |
AccountStatusResponse
{
"accountStatus": "ACTIVE"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accountStatus | AccountStatus | true | Статус счета |
Amount
{
"value": 100000,
"currency": "RUB",
"minorUnits": 100
}
Объект с суммой
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| value | integer (int64) | true | Сумма (значение) |
| currency | string | true | Валюта |
| minorUnits | integer | true | Сумма, передаваемая в копейках |
ClientInfo
{
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
}
Информация по клиенту
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| firstName | string | true | Имя |
| lastName | string | true | Фамилия |
| patronymicName | string | false | Отчество |
AccountRequisites
{
"clientInfo": {
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
},
"accountNumber": "40817810010210335885",
"bankName": "АО «Альфа-Банк», г. Москва",
"bic": "044525593",
"inn": "7728168971",
"kpp": "770801001",
"correspondentAccountNumber": "30101810200000000593"
}
Реквизиты счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| clientInfo | ClientInfo | true | Информация о клиенте |
| accountNumber | string | true | Номер счёта клиента |
| bankName | string | true | Полное наименование Банка |
| bic | string | false | БИК Банка |
| inn | string | false | ИНН Банка |
| kpp | string | false | КПП Банка |
| swift | string | false | SWIFT код Банка |
| correspondentAccountNumber | string | false | Корреспондентский счёт |
CardAccount
{
"number": "40817810010210335885"
}
Счет карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер счёта, к которому привязана карта |
CardState
{
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isActive | boolean | false | Карта активирована |
| isBlocked | boolean | false | Карта заблокирована |
| isClosed | boolean | false | Карта закрыта |
| isPinInstalled | boolean | false | Установлен PIN по карте |
Card
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"title": "CashBack NEW MC",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
}
Объект карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cardId | string | true | Идентификатор карты |
| maskedNumber | string | true | Маскированный номер карты |
| type | string | true | Тип карты |
| typeDescription | string | true | Тип продукта карты |
| status | string | true | Статус карты |
| issueDate | string(date) | true | Дата выпуска карты |
| expirationDate | string(year-month) | true | Срок действия карты |
| title | string | false | Наименование карты |
| isPrimary | boolean | true | Признак основной карты |
| isVirtual | boolean | true | Признак виртуальной карты |
| isCredit | boolean | true | Признак кредитной карты |
| account | CardAccount | true | Счёт |
| paymentSystem | string | true | Платежная система |
| state | CardState | true | Ключевые параметры карты |
Cards
{
"cards": [
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "CashBack NEW MC"
},
{
"cardId": "136035940",
"maskedNumber": "479004******7347",
"type": "CZ",
"typeDescription": "CZ-PLT Visa Gold PayWave Credit",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": false,
"isVirtual": false,
"isCredit": true,
"account": {
"number": "40817810610210335890"
},
"paymentSystem": "VISA",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "Visa Gold PayWave"
}
]
}
Карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cards | Card | true | Карты |
Prepaid
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
Объект prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| maskedNumber | string | true | Маскированный номер prepaid-карты |
| type | string | true | Тип prepaid-карты |
| typeDescription | string | true | Тип продукта prepaid-карты |
| expirationDate | string(year-month) | true | Срок действия prepaid-карты |
| title | string | false | Наименование prepaid-карты |
| isPinInstalled | boolean | true | Признак активации |
| paymentSystem | string | true | Платежная система |
Prepaids
{
"prepaids": [
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
]
}
Prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| prepaids | Prepaid | true | Prepaid-карты |
Stats
{
"turnover": 45000,
"averageMonthlyBalance": 120000
}
Статистика по счету
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| turnover | number | false | Величина POS-оборота |
| averageMonthlyBalance | number | false | Среднемесячный остаток |
TurnoverRange
{
"from": 10000,
"to": 50000
}
Условия по величине POS-оборота
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
AverageMonthlyBalanceRange
{
"from": 0,
"to": 100000
}
Условия по величине среднемесячного остатка
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
CardConditions
{
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
Условия обслуживания по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isGraceActive | boolean | false | Грейс-период активен |
| gracePeriodEnd | string(date) | false | Дата окончания грейс-периода |
| servicePackage | string | true | Пакет услуг клиента |
| stats | Stats | true | Статистика |
| cardServiceFee | number | true | Комиссия за обслуживание |
| turnoverRange | TurnoverRange | false | Оборот по карте |
| averageMonthlyBalanceRange | AverageMonthlyBalanceRange | false | Граница среднемесячного остатка |
| serviceMonthValue | Amount | false | Сумма месячного обслуживания |
Tariffs
{
"conditions": {
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
}
Тарифы по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| conditions | CardConditions | true | Тарифы по карте |
SubscriptionCard
{
"ips": "VISA",
"type": "GR"
}
Информация о карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| ips | string | true | Название карты в рамках ips (международной системы платежей) |
| type | string | true | Тип карты |
SubscriptionTariff
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
Тариф на услугу Альфа-чек
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор тарифа |
| name | string | true | Наименование тарифа |
| priceAmount | Amount | false | Сумма подписки на уведомления |
| isSelected | boolean | true | Признак выбора тарифа |
| isContactPhoneRequired | boolean | true | Признак необходимости указания номера телефона |
SubscriptionTariffs
{
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Список тарифов на услугу Альфа-чек доступных пользователю
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| SubscriptionTariffs | [SubscriptionTariff] | false | Список тарифов на услугу Альфа-чек доступных пользователю |
Subscriptions
{
"subscriptionCard": {
"ips": "VISA",
"type": "GR"
},
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Уведомления по операциям
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| subscriptionCard | SubscriptionCard | true | Карта, по которой приходят уведомления |
| subscriptionTariffs | SubscriptionTariffs | true | Пакет обслуживания |
Получение реквизитов счёта
Метод позволяет получить реквизиты счёта.
Для получения реквизитов счёта необходимо отправить запрос GET accounts/{accountNumber}/requisites с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
Code samples
curl -X GET accounts/{accountNumber}/requisites \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| accountNumber | path | string | true | Параметр номера счёта |
Example responses
200 Response
{
"clientInfo": {
"firstName": "Иван",
"lastName": "Иванов",
"patronymicName": "Иванович"
},
"accountNumber": "40817810704980004078",
"bankName": "АО «Альфа-Банк», г. Москва",
"bic": "044525593",
"inn": "7728168971",
"kpp": "770801001",
"correspondentAccountNumber": "30101810200000000593"
}
{
"clientInfo": {
"firstName": "Иван",
"lastName": "Иванов",
"patronymicName": "Иванович",
"translitFirstName": "Ivan",
"translitLastName": "Ivanov",
"translitPatronymicName": "Ivanovic"
},
"accountNumber": "40817810704980004078",
"bankName": "AO «ALFA-BANK», 27 Kalanchevskaya str., Moscow, 107078",
"correspondentBanks": [
{
"correspondentBankAccountNumber": "36310481",
"correspondentBankName": "CITIBANK NA, 399 Park Avenue, New York, NY 10043, USA",
"correspondentSwift": "CITIUS33"
}
]
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (ОК) | ОК | Успешный результат | AccountRequisites |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
AccountStatus
{
"status": "ACTIVE"
}
Статус счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | false | Статус счёта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| status | ACTIVE | Статус счета: активен |
| status | INACTIVE | Статус счета: неактивен |
AccountBalance
{
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
Баланс счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| currency | string | true | Валюта счёта (ISO 4217 Code) |
| minorUnits | integer | true | Количество минорных единиц |
| holds | integer(int64) | true | Сумма холдов (резервов) в минорных единицах |
| amount | integer(int64) | true | Сумма денежных средств в минорных единицах |
Account
{
"mnemonic": "Текущий счет",
"number": "40817810010210335885",
"type": "EE",
"typeDescription": "Текущий счет",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
}
Объект счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| mnemonic | string | true | Наименование счёта |
| number | string | true | Номер счёта |
| type | string | true | Тип счёта |
| typeDescription | string | false | Описание типа счёта |
| status | AccountStatus | true | Статус счёта |
| dateCreated | string(date) | true | Дата открытия счёта |
| balance | AccountBalance | true | Баланс счёта |
Accounts
{
"accounts": [
{
"mnemonic": "Текущий счёт",
"number": "40817810010210335885",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Счёт кредитной карты",
"number": "40817810610210335890",
"type": "EG",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 110000,
"amount": 9890000
},
"typeDescription": "Счёт кредитной карты"
},
{
"mnemonic": "Счёт погашения кредита",
"number": "40817810310210335886",
"type": "CF",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 10000000
},
"typeDescription": "Счёт погашения кредита"
},
{
"mnemonic": "Текущий счёт",
"number": "40817810210210335889",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817978810210078734",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "EUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817840010210082098",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "USD",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
}
]
}
Счета
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accounts | Account | true | Счета |
AccountStatusResponse
{
"accountStatus": "ACTIVE"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accountStatus | AccountStatus | true | Статус счета |
Amount
{
"value": 100000,
"currency": "RUB",
"minorUnits": 100
}
Объект с суммой
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| value | integer (int64) | true | Сумма (значение) |
| currency | string | true | Валюта |
| minorUnits | integer | true | Сумма, передаваемая в копейках |
ClientInfo
{
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
}
Информация по клиенту
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| firstName | string | true | Имя |
| lastName | string | true | Фамилия |
| patronymicName | string | false | Отчество |
AccountRequisites
{
"clientInfo": {
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
},
"accountNumber": "40817810010210335885",
"bankName": "АО «Альфа-Банк», г. Москва",
"bic": "044525593",
"inn": "7728168971",
"kpp": "770801001",
"correspondentAccountNumber": "30101810200000000593"
}
Реквизиты счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| clientInfo | ClientInfo | true | Информация о клиенте |
| accountNumber | string | true | Номер счёта клиента |
| bankName | string | true | Полное наименование Банка |
| bic | string | false | БИК Банка |
| inn | string | false | ИНН Банка |
| kpp | string | false | КПП Банка |
| swift | string | false | SWIFT код Банка |
| correspondentAccountNumber | string | false | Корреспондентский счёт |
CardAccount
{
"number": "40817810010210335885"
}
Счет карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер счёта, к которому привязана карта |
CardState
{
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isActive | boolean | false | Карта активирована |
| isBlocked | boolean | false | Карта заблокирована |
| isClosed | boolean | false | Карта закрыта |
| isPinInstalled | boolean | false | Установлен PIN по карте |
Card
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"title": "CashBack NEW MC",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
}
Объект карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cardId | string | true | Идентификатор карты |
| maskedNumber | string | true | Маскированный номер карты |
| type | string | true | Тип карты |
| typeDescription | string | true | Тип продукта карты |
| status | string | true | Статус карты |
| issueDate | string(date) | true | Дата выпуска карты |
| expirationDate | string(year-month) | true | Срок действия карты |
| title | string | false | Наименование карты |
| isPrimary | boolean | true | Признак основной карты |
| isVirtual | boolean | true | Признак виртуальной карты |
| isCredit | boolean | true | Признак кредитной карты |
| account | CardAccount | true | Счёт |
| paymentSystem | string | true | Платежная система |
| state | CardState | true | Ключевые параметры карты |
Cards
{
"cards": [
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "CashBack NEW MC"
},
{
"cardId": "136035940",
"maskedNumber": "479004******7347",
"type": "CZ",
"typeDescription": "CZ-PLT Visa Gold PayWave Credit",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": false,
"isVirtual": false,
"isCredit": true,
"account": {
"number": "40817810610210335890"
},
"paymentSystem": "VISA",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "Visa Gold PayWave"
}
]
}
Карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cards | Card | true | Карты |
Prepaid
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
Объект prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| maskedNumber | string | true | Маскированный номер prepaid-карты |
| type | string | true | Тип prepaid-карты |
| typeDescription | string | true | Тип продукта prepaid-карты |
| expirationDate | string(year-month) | true | Срок действия prepaid-карты |
| title | string | false | Наименование prepaid-карты |
| isPinInstalled | boolean | true | Признак активации |
| paymentSystem | string | true | Платежная система |
Prepaids
{
"prepaids": [
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
]
}
Prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| prepaids | Prepaid | true | Prepaid-карты |
Stats
{
"turnover": 45000,
"averageMonthlyBalance": 120000
}
Статистика по счету
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| turnover | number | false | Величина POS-оборота |
| averageMonthlyBalance | number | false | Среднемесячный остаток |
TurnoverRange
{
"from": 10000,
"to": 50000
}
Условия по величине POS-оборота
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
AverageMonthlyBalanceRange
{
"from": 0,
"to": 100000
}
Условия по величине среднемесячного остатка
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
CardConditions
{
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
Условия обслуживания по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isGraceActive | boolean | false | Грейс-период активен |
| gracePeriodEnd | string(date) | false | Дата окончания грейс-периода |
| servicePackage | string | true | Пакет услуг клиента |
| stats | Stats | true | Статистика |
| cardServiceFee | number | true | Комиссия за обслуживание |
| turnoverRange | TurnoverRange | false | Оборот по карте |
| averageMonthlyBalanceRange | AverageMonthlyBalanceRange | false | Граница среднемесячного остатка |
| serviceMonthValue | Amount | false | Сумма месячного обслуживания |
Tariffs
{
"conditions": {
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
}
Тарифы по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| conditions | CardConditions | true | Тарифы по карте |
SubscriptionCard
{
"ips": "VISA",
"type": "GR"
}
Информация о карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| ips | string | true | Название карты в рамках ips (международной системы платежей) |
| type | string | true | Тип карты |
SubscriptionTariff
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
Тариф на услугу Альфа-чек
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор тарифа |
| name | string | true | Наименование тарифа |
| priceAmount | Amount | false | Сумма подписки на уведомления |
| isSelected | boolean | true | Признак выбора тарифа |
| isContactPhoneRequired | boolean | true | Признак необходимости указания номера телефона |
SubscriptionTariffs
{
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Список тарифов на услугу Альфа-чек доступных пользователю
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| SubscriptionTariffs | [SubscriptionTariff] | false | Список тарифов на услугу Альфа-чек доступных пользователю |
Subscriptions
{
"subscriptionCard": {
"ips": "VISA",
"type": "GR"
},
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Уведомления по операциям
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| subscriptionCard | SubscriptionCard | true | Карта, по которой приходят уведомления |
| subscriptionTariffs | SubscriptionTariffs | true | Пакет обслуживания |
Получение счетов клиента
Метод позволяет получить счета клиента.
Для получения счетов клиента необходимо отправить запрос GET accounts с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
Code samples
curl -X GET accounts \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Example responses
200 Response
{
"accounts": [
{
"mnemonic": "moneyway",
"number": "40817810704980004078",
"type": "EH",
"typeDescription": "Текущий счёт",
"status": "ACTIVE",
"dateCreated": "2021-08-23",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 10000,
"amount": 50000
}
}
]
}
{
"accounts": []
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (ОК) | ОК | Успешный результат | Accounts |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
AccountStatus
{
"status": "ACTIVE"
}
Статус счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | false | Статус счёта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| status | ACTIVE | Статус счета: активен |
| status | INACTIVE | Статус счета: неактивен |
AccountBalance
{
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
Баланс счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| currency | string | true | Валюта счёта (ISO 4217 Code) |
| minorUnits | integer | true | Количество минорных единиц |
| holds | integer(int64) | true | Сумма холдов (резервов) в минорных единицах |
| amount | integer(int64) | true | Сумма денежных средств в минорных единицах |
Account
{
"mnemonic": "Текущий счет",
"number": "40817810010210335885",
"type": "EE",
"typeDescription": "Текущий счет",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
}
Объект счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| mnemonic | string | true | Наименование счёта |
| number | string | true | Номер счёта |
| type | string | true | Тип счёта |
| typeDescription | string | false | Описание типа счёта |
| status | AccountStatus | true | Статус счёта |
| dateCreated | string(date) | true | Дата открытия счёта |
| balance | AccountBalance | true | Баланс счёта |
Accounts
{
"accounts": [
{
"mnemonic": "Текущий счёт",
"number": "40817810010210335885",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Счёт кредитной карты",
"number": "40817810610210335890",
"type": "EG",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 110000,
"amount": 9890000
},
"typeDescription": "Счёт кредитной карты"
},
{
"mnemonic": "Счёт погашения кредита",
"number": "40817810310210335886",
"type": "CF",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 10000000
},
"typeDescription": "Счёт погашения кредита"
},
{
"mnemonic": "Текущий счёт",
"number": "40817810210210335889",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817978810210078734",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "EUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817840010210082098",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "USD",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
}
]
}
Счета
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accounts | Account | true | Счета |
AccountStatusResponse
{
"accountStatus": "ACTIVE"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accountStatus | AccountStatus | true | Статус счета |
Amount
{
"value": 100000,
"currency": "RUB",
"minorUnits": 100
}
Объект с суммой
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| value | integer (int64) | true | Сумма (значение) |
| currency | string | true | Валюта |
| minorUnits | integer | true | Сумма, передаваемая в копейках |
ClientInfo
{
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
}
Информация по клиенту
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| firstName | string | true | Имя |
| lastName | string | true | Фамилия |
| patronymicName | string | false | Отчество |
AccountRequisites
{
"clientInfo": {
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
},
"accountNumber": "40817810010210335885",
"bankName": "АО «Альфа-Банк», г. Москва",
"bic": "044525593",
"inn": "7728168971",
"kpp": "770801001",
"correspondentAccountNumber": "30101810200000000593"
}
Реквизиты счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| clientInfo | ClientInfo | true | Информация о клиенте |
| accountNumber | string | true | Номер счёта клиента |
| bankName | string | true | Полное наименование Банка |
| bic | string | false | БИК Банка |
| inn | string | false | ИНН Банка |
| kpp | string | false | КПП Банка |
| swift | string | false | SWIFT код Банка |
| correspondentAccountNumber | string | false | Корреспондентский счёт |
CardAccount
{
"number": "40817810010210335885"
}
Счет карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер счёта, к которому привязана карта |
CardState
{
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isActive | boolean | false | Карта активирована |
| isBlocked | boolean | false | Карта заблокирована |
| isClosed | boolean | false | Карта закрыта |
| isPinInstalled | boolean | false | Установлен PIN по карте |
Card
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"title": "CashBack NEW MC",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
}
Объект карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cardId | string | true | Идентификатор карты |
| maskedNumber | string | true | Маскированный номер карты |
| type | string | true | Тип карты |
| typeDescription | string | true | Тип продукта карты |
| status | string | true | Статус карты |
| issueDate | string(date) | true | Дата выпуска карты |
| expirationDate | string(year-month) | true | Срок действия карты |
| title | string | false | Наименование карты |
| isPrimary | boolean | true | Признак основной карты |
| isVirtual | boolean | true | Признак виртуальной карты |
| isCredit | boolean | true | Признак кредитной карты |
| account | CardAccount | true | Счёт |
| paymentSystem | string | true | Платежная система |
| state | CardState | true | Ключевые параметры карты |
Cards
{
"cards": [
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "CashBack NEW MC"
},
{
"cardId": "136035940",
"maskedNumber": "479004******7347",
"type": "CZ",
"typeDescription": "CZ-PLT Visa Gold PayWave Credit",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": false,
"isVirtual": false,
"isCredit": true,
"account": {
"number": "40817810610210335890"
},
"paymentSystem": "VISA",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "Visa Gold PayWave"
}
]
}
Карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cards | Card | true | Карты |
Prepaid
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
Объект prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| maskedNumber | string | true | Маскированный номер prepaid-карты |
| type | string | true | Тип prepaid-карты |
| typeDescription | string | true | Тип продукта prepaid-карты |
| expirationDate | string(year-month) | true | Срок действия prepaid-карты |
| title | string | false | Наименование prepaid-карты |
| isPinInstalled | boolean | true | Признак активации |
| paymentSystem | string | true | Платежная система |
Prepaids
{
"prepaids": [
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
]
}
Prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| prepaids | Prepaid | true | Prepaid-карты |
Stats
{
"turnover": 45000,
"averageMonthlyBalance": 120000
}
Статистика по счету
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| turnover | number | false | Величина POS-оборота |
| averageMonthlyBalance | number | false | Среднемесячный остаток |
TurnoverRange
{
"from": 10000,
"to": 50000
}
Условия по величине POS-оборота
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
AverageMonthlyBalanceRange
{
"from": 0,
"to": 100000
}
Условия по величине среднемесячного остатка
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
CardConditions
{
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
Условия обслуживания по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isGraceActive | boolean | false | Грейс-период активен |
| gracePeriodEnd | string(date) | false | Дата окончания грейс-периода |
| servicePackage | string | true | Пакет услуг клиента |
| stats | Stats | true | Статистика |
| cardServiceFee | number | true | Комиссия за обслуживание |
| turnoverRange | TurnoverRange | false | Оборот по карте |
| averageMonthlyBalanceRange | AverageMonthlyBalanceRange | false | Граница среднемесячного остатка |
| serviceMonthValue | Amount | false | Сумма месячного обслуживания |
Tariffs
{
"conditions": {
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
}
Тарифы по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| conditions | CardConditions | true | Тарифы по карте |
SubscriptionCard
{
"ips": "VISA",
"type": "GR"
}
Информация о карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| ips | string | true | Название карты в рамках ips (международной системы платежей) |
| type | string | true | Тип карты |
SubscriptionTariff
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
Тариф на услугу Альфа-чек
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор тарифа |
| name | string | true | Наименование тарифа |
| priceAmount | Amount | false | Сумма подписки на уведомления |
| isSelected | boolean | true | Признак выбора тарифа |
| isContactPhoneRequired | boolean | true | Признак необходимости указания номера телефона |
SubscriptionTariffs
{
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Список тарифов на услугу Альфа-чек доступных пользователю
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| SubscriptionTariffs | [SubscriptionTariff] | false | Список тарифов на услугу Альфа-чек доступных пользователю |
Subscriptions
{
"subscriptionCard": {
"ips": "VISA",
"type": "GR"
},
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Уведомления по операциям
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| subscriptionCard | SubscriptionCard | true | Карта, по которой приходят уведомления |
| subscriptionTariffs | SubscriptionTariffs | true | Пакет обслуживания |
Получение списка prepaid-карт клиента
Метод позволяет получить список prepaid-карт клиента.
Для получения списка prepaid-карт клиента необходимо отправить запрос GET prepaid-cards с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
Code samples
curl -X GET prepaid-cards \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Example responses
200 Response
{
"prepaids": [
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
]
}
{
"prepaids": []
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (ОК) | OK | Успешный результат | Prepaids |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
AccountStatus
{
"status": "ACTIVE"
}
Статус счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | false | Статус счёта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| status | ACTIVE | Статус счета: активен |
| status | INACTIVE | Статус счета: неактивен |
AccountBalance
{
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
Баланс счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| currency | string | true | Валюта счёта (ISO 4217 Code) |
| minorUnits | integer | true | Количество минорных единиц |
| holds | integer(int64) | true | Сумма холдов (резервов) в минорных единицах |
| amount | integer(int64) | true | Сумма денежных средств в минорных единицах |
Account
{
"mnemonic": "Текущий счет",
"number": "40817810010210335885",
"type": "EE",
"typeDescription": "Текущий счет",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
}
Объект счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| mnemonic | string | true | Наименование счёта |
| number | string | true | Номер счёта |
| type | string | true | Тип счёта |
| typeDescription | string | false | Описание типа счёта |
| status | AccountStatus | true | Статус счёта |
| dateCreated | string(date) | true | Дата открытия счёта |
| balance | AccountBalance | true | Баланс счёта |
Accounts
{
"accounts": [
{
"mnemonic": "Текущий счёт",
"number": "40817810010210335885",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Счёт кредитной карты",
"number": "40817810610210335890",
"type": "EG",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 110000,
"amount": 9890000
},
"typeDescription": "Счёт кредитной карты"
},
{
"mnemonic": "Счёт погашения кредита",
"number": "40817810310210335886",
"type": "CF",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 10000000
},
"typeDescription": "Счёт погашения кредита"
},
{
"mnemonic": "Текущий счёт",
"number": "40817810210210335889",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817978810210078734",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "EUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817840010210082098",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "USD",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
}
]
}
Счета
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accounts | Account | true | Счета |
AccountStatusResponse
{
"accountStatus": "ACTIVE"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accountStatus | AccountStatus | true | Статус счета |
Amount
{
"value": 100000,
"currency": "RUB",
"minorUnits": 100
}
Объект с суммой
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| value | integer (int64) | true | Сумма (значение) |
| currency | string | true | Валюта |
| minorUnits | integer | true | Сумма, передаваемая в копейках |
ClientInfo
{
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
}
Информация по клиенту
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| firstName | string | true | Имя |
| lastName | string | true | Фамилия |
| patronymicName | string | false | Отчество |
AccountRequisites
{
"clientInfo": {
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
},
"accountNumber": "40817810010210335885",
"bankName": "АО «Альфа-Банк», г. Москва",
"bic": "044525593",
"inn": "7728168971",
"kpp": "770801001",
"correspondentAccountNumber": "30101810200000000593"
}
Реквизиты счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| clientInfo | ClientInfo | true | Информация о клиенте |
| accountNumber | string | true | Номер счёта клиента |
| bankName | string | true | Полное наименование Банка |
| bic | string | false | БИК Банка |
| inn | string | false | ИНН Банка |
| kpp | string | false | КПП Банка |
| swift | string | false | SWIFT код Банка |
| correspondentAccountNumber | string | false | Корреспондентский счёт |
CardAccount
{
"number": "40817810010210335885"
}
Счет карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер счёта, к которому привязана карта |
CardState
{
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isActive | boolean | false | Карта активирована |
| isBlocked | boolean | false | Карта заблокирована |
| isClosed | boolean | false | Карта закрыта |
| isPinInstalled | boolean | false | Установлен PIN по карте |
Card
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"title": "CashBack NEW MC",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
}
Объект карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cardId | string | true | Идентификатор карты |
| maskedNumber | string | true | Маскированный номер карты |
| type | string | true | Тип карты |
| typeDescription | string | true | Тип продукта карты |
| status | string | true | Статус карты |
| issueDate | string(date) | true | Дата выпуска карты |
| expirationDate | string(year-month) | true | Срок действия карты |
| title | string | false | Наименование карты |
| isPrimary | boolean | true | Признак основной карты |
| isVirtual | boolean | true | Признак виртуальной карты |
| isCredit | boolean | true | Признак кредитной карты |
| account | CardAccount | true | Счёт |
| paymentSystem | string | true | Платежная система |
| state | CardState | true | Ключевые параметры карты |
Cards
{
"cards": [
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "CashBack NEW MC"
},
{
"cardId": "136035940",
"maskedNumber": "479004******7347",
"type": "CZ",
"typeDescription": "CZ-PLT Visa Gold PayWave Credit",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": false,
"isVirtual": false,
"isCredit": true,
"account": {
"number": "40817810610210335890"
},
"paymentSystem": "VISA",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "Visa Gold PayWave"
}
]
}
Карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cards | Card | true | Карты |
Prepaid
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
Объект prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| maskedNumber | string | true | Маскированный номер prepaid-карты |
| type | string | true | Тип prepaid-карты |
| typeDescription | string | true | Тип продукта prepaid-карты |
| expirationDate | string(year-month) | true | Срок действия prepaid-карты |
| title | string | false | Наименование prepaid-карты |
| isPinInstalled | boolean | true | Признак активации |
| paymentSystem | string | true | Платежная система |
Prepaids
{
"prepaids": [
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
]
}
Prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| prepaids | Prepaid | true | Prepaid-карты |
Stats
{
"turnover": 45000,
"averageMonthlyBalance": 120000
}
Статистика по счету
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| turnover | number | false | Величина POS-оборота |
| averageMonthlyBalance | number | false | Среднемесячный остаток |
TurnoverRange
{
"from": 10000,
"to": 50000
}
Условия по величине POS-оборота
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
AverageMonthlyBalanceRange
{
"from": 0,
"to": 100000
}
Условия по величине среднемесячного остатка
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
CardConditions
{
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
Условия обслуживания по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isGraceActive | boolean | false | Грейс-период активен |
| gracePeriodEnd | string(date) | false | Дата окончания грейс-периода |
| servicePackage | string | true | Пакет услуг клиента |
| stats | Stats | true | Статистика |
| cardServiceFee | number | true | Комиссия за обслуживание |
| turnoverRange | TurnoverRange | false | Оборот по карте |
| averageMonthlyBalanceRange | AverageMonthlyBalanceRange | false | Граница среднемесячного остатка |
| serviceMonthValue | Amount | false | Сумма месячного обслуживания |
Tariffs
{
"conditions": {
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
}
Тарифы по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| conditions | CardConditions | true | Тарифы по карте |
SubscriptionCard
{
"ips": "VISA",
"type": "GR"
}
Информация о карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| ips | string | true | Название карты в рамках ips (международной системы платежей) |
| type | string | true | Тип карты |
SubscriptionTariff
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
Тариф на услугу Альфа-чек
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор тарифа |
| name | string | true | Наименование тарифа |
| priceAmount | Amount | false | Сумма подписки на уведомления |
| isSelected | boolean | true | Признак выбора тарифа |
| isContactPhoneRequired | boolean | true | Признак необходимости указания номера телефона |
SubscriptionTariffs
{
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Список тарифов на услугу Альфа-чек доступных пользователю
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| SubscriptionTariffs | [SubscriptionTariff] | false | Список тарифов на услугу Альфа-чек доступных пользователю |
Subscriptions
{
"subscriptionCard": {
"ips": "VISA",
"type": "GR"
},
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Уведомления по операциям
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| subscriptionCard | SubscriptionCard | true | Карта, по которой приходят уведомления |
| subscriptionTariffs | SubscriptionTariffs | true | Пакет обслуживания |
Получение информации о статусе счёта
Метод позволяет получить информации о статусе счёта клиента.
Для получения информации о статусе счёта клиента необходимо отправить запрос GET accounts/{accountNumber}/status с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
Code samples
curl -X GET accounts/{accountNumber}/status \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| accountNumber | path | string | true | Параметр номера счёта |
Example responses
200 Response
{
"accountStatus": "ACTIVE"
}
{
"accountStatus": "INACTIVE"
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (ОК) | OK | Успешный результат | AccountStatusResponse |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
AccountStatus
{
"status": "ACTIVE"
}
Статус счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | false | Статус счёта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| status | ACTIVE | Статус счета: активен |
| status | INACTIVE | Статус счета: неактивен |
AccountBalance
{
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
Баланс счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| currency | string | true | Валюта счёта (ISO 4217 Code) |
| minorUnits | integer | true | Количество минорных единиц |
| holds | integer(int64) | true | Сумма холдов (резервов) в минорных единицах |
| amount | integer(int64) | true | Сумма денежных средств в минорных единицах |
Account
{
"mnemonic": "Текущий счет",
"number": "40817810010210335885",
"type": "EE",
"typeDescription": "Текущий счет",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
}
Объект счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| mnemonic | string | true | Наименование счёта |
| number | string | true | Номер счёта |
| type | string | true | Тип счёта |
| typeDescription | string | false | Описание типа счёта |
| status | AccountStatus | true | Статус счёта |
| dateCreated | string(date) | true | Дата открытия счёта |
| balance | AccountBalance | true | Баланс счёта |
Accounts
{
"accounts": [
{
"mnemonic": "Текущий счёт",
"number": "40817810010210335885",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Счёт кредитной карты",
"number": "40817810610210335890",
"type": "EG",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 110000,
"amount": 9890000
},
"typeDescription": "Счёт кредитной карты"
},
{
"mnemonic": "Счёт погашения кредита",
"number": "40817810310210335886",
"type": "CF",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 10000000
},
"typeDescription": "Счёт погашения кредита"
},
{
"mnemonic": "Текущий счёт",
"number": "40817810210210335889",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817978810210078734",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "EUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817840010210082098",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "USD",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
}
]
}
Счета
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accounts | Account | true | Счета |
AccountStatusResponse
{
"accountStatus": "ACTIVE"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accountStatus | AccountStatus | true | Статус счета |
Amount
{
"value": 100000,
"currency": "RUB",
"minorUnits": 100
}
Объект с суммой
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| value | integer (int64) | true | Сумма (значение) |
| currency | string | true | Валюта |
| minorUnits | integer | true | Сумма, передаваемая в копейках |
ClientInfo
{
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
}
Информация по клиенту
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| firstName | string | true | Имя |
| lastName | string | true | Фамилия |
| patronymicName | string | false | Отчество |
AccountRequisites
{
"clientInfo": {
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
},
"accountNumber": "40817810010210335885",
"bankName": "АО «Альфа-Банк», г. Москва",
"bic": "044525593",
"inn": "7728168971",
"kpp": "770801001",
"correspondentAccountNumber": "30101810200000000593"
}
Реквизиты счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| clientInfo | ClientInfo | true | Информация о клиенте |
| accountNumber | string | true | Номер счёта клиента |
| bankName | string | true | Полное наименование Банка |
| bic | string | false | БИК Банка |
| inn | string | false | ИНН Банка |
| kpp | string | false | КПП Банка |
| swift | string | false | SWIFT код Банка |
| correspondentAccountNumber | string | false | Корреспондентский счёт |
CardAccount
{
"number": "40817810010210335885"
}
Счет карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер счёта, к которому привязана карта |
CardState
{
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isActive | boolean | false | Карта активирована |
| isBlocked | boolean | false | Карта заблокирована |
| isClosed | boolean | false | Карта закрыта |
| isPinInstalled | boolean | false | Установлен PIN по карте |
Card
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"title": "CashBack NEW MC",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
}
Объект карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cardId | string | true | Идентификатор карты |
| maskedNumber | string | true | Маскированный номер карты |
| type | string | true | Тип карты |
| typeDescription | string | true | Тип продукта карты |
| status | string | true | Статус карты |
| issueDate | string(date) | true | Дата выпуска карты |
| expirationDate | string(year-month) | true | Срок действия карты |
| title | string | false | Наименование карты |
| isPrimary | boolean | true | Признак основной карты |
| isVirtual | boolean | true | Признак виртуальной карты |
| isCredit | boolean | true | Признак кредитной карты |
| account | CardAccount | true | Счёт |
| paymentSystem | string | true | Платежная система |
| state | CardState | true | Ключевые параметры карты |
Cards
{
"cards": [
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "CashBack NEW MC"
},
{
"cardId": "136035940",
"maskedNumber": "479004******7347",
"type": "CZ",
"typeDescription": "CZ-PLT Visa Gold PayWave Credit",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": false,
"isVirtual": false,
"isCredit": true,
"account": {
"number": "40817810610210335890"
},
"paymentSystem": "VISA",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "Visa Gold PayWave"
}
]
}
Карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cards | Card | true | Карты |
Prepaid
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
Объект prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| maskedNumber | string | true | Маскированный номер prepaid-карты |
| type | string | true | Тип prepaid-карты |
| typeDescription | string | true | Тип продукта prepaid-карты |
| expirationDate | string(year-month) | true | Срок действия prepaid-карты |
| title | string | false | Наименование prepaid-карты |
| isPinInstalled | boolean | true | Признак активации |
| paymentSystem | string | true | Платежная система |
Prepaids
{
"prepaids": [
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
]
}
Prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| prepaids | Prepaid | true | Prepaid-карты |
Stats
{
"turnover": 45000,
"averageMonthlyBalance": 120000
}
Статистика по счету
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| turnover | number | false | Величина POS-оборота |
| averageMonthlyBalance | number | false | Среднемесячный остаток |
TurnoverRange
{
"from": 10000,
"to": 50000
}
Условия по величине POS-оборота
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
AverageMonthlyBalanceRange
{
"from": 0,
"to": 100000
}
Условия по величине среднемесячного остатка
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
CardConditions
{
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
Условия обслуживания по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isGraceActive | boolean | false | Грейс-период активен |
| gracePeriodEnd | string(date) | false | Дата окончания грейс-периода |
| servicePackage | string | true | Пакет услуг клиента |
| stats | Stats | true | Статистика |
| cardServiceFee | number | true | Комиссия за обслуживание |
| turnoverRange | TurnoverRange | false | Оборот по карте |
| averageMonthlyBalanceRange | AverageMonthlyBalanceRange | false | Граница среднемесячного остатка |
| serviceMonthValue | Amount | false | Сумма месячного обслуживания |
Tariffs
{
"conditions": {
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
}
Тарифы по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| conditions | CardConditions | true | Тарифы по карте |
SubscriptionCard
{
"ips": "VISA",
"type": "GR"
}
Информация о карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| ips | string | true | Название карты в рамках ips (международной системы платежей) |
| type | string | true | Тип карты |
SubscriptionTariff
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
Тариф на услугу Альфа-чек
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор тарифа |
| name | string | true | Наименование тарифа |
| priceAmount | Amount | false | Сумма подписки на уведомления |
| isSelected | boolean | true | Признак выбора тарифа |
| isContactPhoneRequired | boolean | true | Признак необходимости указания номера телефона |
SubscriptionTariffs
{
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Список тарифов на услугу Альфа-чек доступных пользователю
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| SubscriptionTariffs | [SubscriptionTariff] | false | Список тарифов на услугу Альфа-чек доступных пользователю |
Subscriptions
{
"subscriptionCard": {
"ips": "VISA",
"type": "GR"
},
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Уведомления по операциям
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| subscriptionCard | SubscriptionCard | true | Карта, по которой приходят уведомления |
| subscriptionTariffs | SubscriptionTariffs | true | Пакет обслуживания |
Получение атрибутов счета по номеру
Метод позволяет получить атрибуты счета по номеру.
Для получения атрибутов счета по номеру необходимо отправить запрос GET accounts/{accountNumber} с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
curl -X GET accounts/{accountNumber} \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| accountNumber | path | string | true | Параметр номера счёта |
Example responses
200 Response
{
"mnemonic": "moneyway",
"number": "40817810704980004078",
"type": "EH",
"typeDescription": "Текущий счёт",
"status": "ACTIVE",
"dateCreated": "2021-08-23",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 10000,
"amount": 50000
}
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (ОК) | ОК | Успешный результат | Account |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
AccountStatus
{
"status": "ACTIVE"
}
Статус счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | false | Статус счёта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| status | ACTIVE | Статус счета: активен |
| status | INACTIVE | Статус счета: неактивен |
AccountBalance
{
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
Баланс счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| currency | string | true | Валюта счёта (ISO 4217 Code) |
| minorUnits | integer | true | Количество минорных единиц |
| holds | integer(int64) | true | Сумма холдов (резервов) в минорных единицах |
| amount | integer(int64) | true | Сумма денежных средств в минорных единицах |
Account
{
"mnemonic": "Текущий счет",
"number": "40817810010210335885",
"type": "EE",
"typeDescription": "Текущий счет",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
}
}
Объект счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| mnemonic | string | true | Наименование счёта |
| number | string | true | Номер счёта |
| type | string | true | Тип счёта |
| typeDescription | string | false | Описание типа счёта |
| status | AccountStatus | true | Статус счёта |
| dateCreated | string(date) | true | Дата открытия счёта |
| balance | AccountBalance | true | Баланс счёта |
Accounts
{
"accounts": [
{
"mnemonic": "Текущий счёт",
"number": "40817810010210335885",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 9430000
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Счёт кредитной карты",
"number": "40817810610210335890",
"type": "EG",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 110000,
"amount": 9890000
},
"typeDescription": "Счёт кредитной карты"
},
{
"mnemonic": "Счёт погашения кредита",
"number": "40817810310210335886",
"type": "CF",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 10000000
},
"typeDescription": "Счёт погашения кредита"
},
{
"mnemonic": "Текущий счёт",
"number": "40817810210210335889",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "RUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817978810210078734",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "EUR",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
},
{
"mnemonic": "Текущий счёт",
"number": "40817840010210082098",
"type": "EE",
"status": "ACTIVE",
"dateCreated": "2022-09-13",
"balance": {
"currency": "USD",
"minorUnits": 100,
"holds": 0,
"amount": 0
},
"typeDescription": "Текущий счёт"
}
]
}
Счета
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accounts | Account | true | Счета |
AccountStatusResponse
{
"accountStatus": "ACTIVE"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| accountStatus | AccountStatus | true | Статус счета |
Amount
{
"value": 100000,
"currency": "RUB",
"minorUnits": 100
}
Объект с суммой
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| value | integer (int64) | true | Сумма (значение) |
| currency | string | true | Валюта |
| minorUnits | integer | true | Сумма, передаваемая в копейках |
ClientInfo
{
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
}
Информация по клиенту
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| firstName | string | true | Имя |
| lastName | string | true | Фамилия |
| patronymicName | string | false | Отчество |
AccountRequisites
{
"clientInfo": {
"firstName": "Бильбо",
"lastName": "Зайцев",
"patronymicName": "Богданович"
},
"accountNumber": "40817810010210335885",
"bankName": "АО «Альфа-Банк», г. Москва",
"bic": "044525593",
"inn": "7728168971",
"kpp": "770801001",
"correspondentAccountNumber": "30101810200000000593"
}
Реквизиты счёта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| clientInfo | ClientInfo | true | Информация о клиенте |
| accountNumber | string | true | Номер счёта клиента |
| bankName | string | true | Полное наименование Банка |
| bic | string | false | БИК Банка |
| inn | string | false | ИНН Банка |
| kpp | string | false | КПП Банка |
| swift | string | false | SWIFT код Банка |
| correspondentAccountNumber | string | false | Корреспондентский счёт |
CardAccount
{
"number": "40817810010210335885"
}
Счет карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер счёта, к которому привязана карта |
CardState
{
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isActive | boolean | false | Карта активирована |
| isBlocked | boolean | false | Карта заблокирована |
| isClosed | boolean | false | Карта закрыта |
| isPinInstalled | boolean | false | Установлен PIN по карте |
Card
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"title": "CashBack NEW MC",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
}
}
Объект карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cardId | string | true | Идентификатор карты |
| maskedNumber | string | true | Маскированный номер карты |
| type | string | true | Тип карты |
| typeDescription | string | true | Тип продукта карты |
| status | string | true | Статус карты |
| issueDate | string(date) | true | Дата выпуска карты |
| expirationDate | string(year-month) | true | Срок действия карты |
| title | string | false | Наименование карты |
| isPrimary | boolean | true | Признак основной карты |
| isVirtual | boolean | true | Признак виртуальной карты |
| isCredit | boolean | true | Признак кредитной карты |
| account | CardAccount | true | Счёт |
| paymentSystem | string | true | Платежная система |
| state | CardState | true | Ключевые параметры карты |
Cards
{
"cards": [
{
"cardId": "136035941",
"maskedNumber": "555949******3853",
"type": "ER",
"typeDescription": "ER-MC World CashBack (1%/5%/10%)PP",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": true,
"isVirtual": false,
"isCredit": false,
"account": {
"number": "40817810010210335885"
},
"paymentSystem": "MC",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "CashBack NEW MC"
},
{
"cardId": "136035940",
"maskedNumber": "479004******7347",
"type": "CZ",
"typeDescription": "CZ-PLT Visa Gold PayWave Credit",
"status": "0",
"issueDate": "2022-09-13",
"expirationDate": "2028-12",
"isPrimary": false,
"isVirtual": false,
"isCredit": true,
"account": {
"number": "40817810610210335890"
},
"paymentSystem": "VISA",
"state": {
"isActive": true,
"isBlocked": false,
"isClosed": false,
"isPinInstalled": false
},
"title": "Visa Gold PayWave"
}
]
}
Карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| cards | Card | true | Карты |
Prepaid
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
Объект prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| maskedNumber | string | true | Маскированный номер prepaid-карты |
| type | string | true | Тип prepaid-карты |
| typeDescription | string | true | Тип продукта prepaid-карты |
| expirationDate | string(year-month) | true | Срок действия prepaid-карты |
| title | string | false | Наименование prepaid-карты |
| isPinInstalled | boolean | true | Признак активации |
| paymentSystem | string | true | Платежная система |
Prepaids
{
"prepaids": [
{
"maskedNumber": "553691******9577",
"type": "Карта NEXT",
"typeDescription": "RR",
"title": "Карта для покупок",
"expirationDate": "0724",
"isPinInstalled": true,
"paymentSystem": "VISA"
}
]
}
Prepaid-карты
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| prepaids | Prepaid | true | Prepaid-карты |
Stats
{
"turnover": 45000,
"averageMonthlyBalance": 120000
}
Статистика по счету
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| turnover | number | false | Величина POS-оборота |
| averageMonthlyBalance | number | false | Среднемесячный остаток |
TurnoverRange
{
"from": 10000,
"to": 50000
}
Условия по величине POS-оборота
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
AverageMonthlyBalanceRange
{
"from": 0,
"to": 100000
}
Условия по величине среднемесячного остатка
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| from | number | true | Нижняя граница порога |
| to | number | true | Верхняя граница порога |
CardConditions
{
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
Условия обслуживания по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| isGraceActive | boolean | false | Грейс-период активен |
| gracePeriodEnd | string(date) | false | Дата окончания грейс-периода |
| servicePackage | string | true | Пакет услуг клиента |
| stats | Stats | true | Статистика |
| cardServiceFee | number | true | Комиссия за обслуживание |
| turnoverRange | TurnoverRange | false | Оборот по карте |
| averageMonthlyBalanceRange | AverageMonthlyBalanceRange | false | Граница среднемесячного остатка |
| serviceMonthValue | Amount | false | Сумма месячного обслуживания |
Tariffs
{
"conditions": {
"isGraceActive": true,
"gracePeriodEnd": "2023-12-28",
"servicePackage": "T04",
"stats": {
"turnover": 45000,
"averageMonthlyBalance": 120000
},
"cardServiceFee": 1,
"turnoverRange": {
"from": 10000,
"to": 50000
},
"averageMonthlyBalanceRange": {
"from": 0,
"to": 100000
},
"serviceMonthValue": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
}
}
}
Тарифы по карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| conditions | CardConditions | true | Тарифы по карте |
SubscriptionCard
{
"ips": "VISA",
"type": "GR"
}
Информация о карте
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| ips | string | true | Название карты в рамках ips (международной системы платежей) |
| type | string | true | Тип карты |
SubscriptionTariff
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
Тариф на услугу Альфа-чек
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор тарифа |
| name | string | true | Наименование тарифа |
| priceAmount | Amount | false | Сумма подписки на уведомления |
| isSelected | boolean | true | Признак выбора тарифа |
| isContactPhoneRequired | boolean | true | Признак необходимости указания номера телефона |
SubscriptionTariffs
{
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Список тарифов на услугу Альфа-чек доступных пользователю
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| SubscriptionTariffs | [SubscriptionTariff] | false | Список тарифов на услугу Альфа-чек доступных пользователю |
Subscriptions
{
"subscriptionCard": {
"ips": "VISA",
"type": "GR"
},
"subscriptionTariffs": [
{
"id": "ONLYSMS",
"name": "SMS",
"priceAmount": {
"value": 5900,
"currency": "RUR",
"minorUnits": 100
},
"isSelected": true,
"isContactPhoneRequired": true
}
]
}
Уведомления по операциям
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| subscriptionCard | SubscriptionCard | true | Карта, по которой приходят уведомления |
| subscriptionTariffs | SubscriptionTariffs | true | Пакет обслуживания |
Получение списка истории операций по набору критериев
Метод позволяет получить историю операций по набору критериев.
Для получения истории операций по набору критериев необходимо отправить запрос POST operations с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
Code samples
curl -X POST operations \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Body parameter
{
"dateFrom": "2019-08-24",
"dateTo": "2019-08-24",
"accounts": [],
"cards": [],
"operationDirection": "EXPENSE",
"pageNumber": 1,
"pageSize": 20
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| Authorization | header | string | true | Access token |
| body | body | OperationsHistoryCriteria | true | Набор критериев для выборки истории операций |
Example responses
200 Response
{
"operations": [
{
"id": "1220117MOCOIBSR 04461",
"dateTime": "2022-01-17T14:47:49.65Z",
"title": "МТС 9166666666",
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
},
"comment": "Перевод за услуги IPTV",
"mcc": "4899",
"category": {
"id": "00012",
"name": "Телефон, интернет, ТВ"
},
"direction": "EXPENSE",
"loyalty": {
"title": "Компенсация за аплату услуг Альфа картой",
"percent": 10,
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
},
"status": "SUCCESS",
"type": "A01",
"terminal": {
"number": "123456789",
"name": "МТС online",
"city": "Moscow",
"countryCode": "RU"
},
"sender": {
"name": "Сидоров Сидор Сидорович",
"accountNumber": "40817810810210032401",
"bankBik": "044525593",
"bankName": "Альфа Банк",
"phoneNumber": "+79201112222",
"maskedCardNumber": "1111XXXXXXXX2222"
},
"recipient": {
"name": "МТС",
"bankBik": "044525500",
"bankName": "ООО МТС Банк",
"phoneNumber": "+12223334455"
},
"fee": 50,
"isAnotherClient": false,
"cashout": false
}
]
}
{
"operations": []
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (ОК) | ОК | Успешный результат | OperationsHistory |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
Amount
{
"value": 100000,
"currency": "RUB",
"minorUnits": 100
}
Объект с суммой
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| value | integer(int64) | true | Сумма (значение) |
| currency | string | true | Валюта |
| minorUnits | integer | true | Минорные единицы |
OperationDirection
{
"direction": "EXPENSE"
}
Направление движения денежных средств
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| Направление движения денежных средств | string | false | Направление движения денежных средств: INCOME - приход/пополнение, EXPENSE - расход/списание |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| Направление движения денежных средств | EXPENSE | Расход/списание |
| Направление движения денежных средств | INCOME | Приход/пополнение |
OperationsHistoryCriteria
{
"dateFrom": "2019-08-24",
"dateTo": "2019-08-24",
"accounts": [],
"cards": [],
"operationDirection": "EXPENSE",
"pageNumber": 1,
"pageSize": 20
}
Объект с критериями для выборки истории операций
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| dateFrom | string(date) | false | Дата начала запроса истории операций (включительно) |
| dateTo | string(date) | false | Дата окончания запроса истории операций (включительно) |
| accounts | [string] | false | Фильтрация по счетам |
| cards | [string] | false | Фильтрация по номерам карт |
| operationDirection | OperationDirection | false | Направление движения денежных средств: INCOME - приход/пополнение, EXPENSE - расход/списание |
| pageNumber | integer | false | Пагинация (номер страницы) |
| pageSize | integer | false | Пагинация (размер) |
OperationCategory
{
"category": {
"id": "00012",
"name": "Телефон, интернет, ТВ"
}
}
Объект программы лояльности
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор категории |
| name | string | true | Наименование категории |
OperationLoyalty
{
"loyalty": {
"title": "Компенсация за аплату услуг Альфа картой",
"percent": 10,
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
Объект программы лояльности
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| title | string | false | Заголовок бонусной программы / программы лояльности |
| percent | number | false | Процент от суммы |
| amount | any | false | Сумма начисленного кэшбека (бонуса) |
OperationStatus
{
"status": "HOLD"
}
Статус операции
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| Статус операции | string | false | Статус операции: null - входящая операция или статус не определен; SUCCESS - операция выполнена успешна; HOLD - операция в обработке; FAILED - операция не выполнена |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| Статус операции | HOLD | Операция в обработке |
| Статус операции | SUCCESS | Операция выполнена успешна |
| Статус операции | FAILED | Операция не выполнена |
| Статус операции | null | Входящая операция или статус не определен |
SellingPointTerminal
{
"terminal": {
"number": "123456789",
"name": "МТС online",
"city": "Moscow",
"countryCode": "RU"
}
}
Объект терминал точки продаж
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | false | Номер терминала точки продаж |
| name | string | false | Имя точки продаж |
| city | string | false | Город точки продаж (код) |
| countryCode | string | false | Страна точки продаж (код) |
OperationSender
{
"sender": {
"name": "Сидоров Сидор Сидорович",
"accountNumber": "40817810810210032401",
"bankBik": "044525593",
"bankName": "Альфа Банк",
"phoneNumber": "+79201112222",
"maskedCardNumber": "1111XXXXXXXX2222"
}
}
Объект отправитель перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| name | string | false | Отправитель перевода |
| accountNumber | string | false | Номер счёта отправителя перевода / клиента |
| bankBik | string | false | БИК банка отправителя |
| bankName | string | false | Название банка отправителя |
| phoneNumber | string | false | Номер телефона отправителя |
| maskedCardNumber | string | false | Номер карты (маскированный) отправителя |
OperationRecipient
{
"recipient": {
"name": "МТС",
"bankBik": "044525500",
"bankName": "ООО МТС Банк",
"phoneNumber": "+12223334455"
}
}
Объект получатель перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| name | string | false | Получатель перевода |
| bankBik | string | false | БИК банка получателя |
| bankName | string | false | Название банка получателя |
| phoneNumber | string | false | Номер телефона получателя |
OperationHistoryItem
{
"id": "1220117MOCOIBSR 04461",
"dateTime": "2022-01-17T14:47:49.65Z",
"title": "МТС 9166666666",
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
},
"comment": "Перевод за услуги IPTV",
"mcc": "4899",
"category": {
"id": "00012",
"name": "Телефон, интернет, ТВ"
},
"direction": "EXPENSE",
"loyalty": {
"title": "Компенсация за аплату услуг Альфа картой",
"percent": 10,
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
},
"status": "SUCCESS",
"type": "A01",
"terminal": {
"number": "123456789",
"name": "МТС online",
"city": "Moscow",
"countryCode": "RU"
},
"sender": {
"name": "Сидоров Сидор Сидорович",
"accountNumber": "40817810810210032401",
"bankBik": "044525593",
"bankName": "Альфа Банк",
"phoneNumber": "+79201112222",
"maskedCardNumber": "1111XXXXXXXX2222"
},
"recipient": {
"name": "МТС",
"bankBik": "044525500",
"bankName": "ООО МТС Банк",
"phoneNumber": "+12223334455"
},
"fee": 50,
"isAnotherClient": false,
"cashout": false
}
Объект с информацией по операции
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор операции |
| dateTime | string(date-time) | true | Дата и время операции |
| title | string | true | Заголовок операции |
| amount | any | true | Сумма операции, валюта и минорные единицы |
| Name | Type | Required | Description |
|---|---|---|---|
| comment | string | false | Комментарий к операции |
| mcc | string | false | MCC код операции |
| category | OperationCategory | false | Категория операции |
| direction | OperationDirection | true | Направление движения денежных средств: INCOME - приход/пополнение, EXPENSE - расход/списание |
| loyalty | OperationLoyalty | false | Программа лояльности |
| status | OperationStatus | false | Статус операции: null - входящая операция или статус не определен; SUCCESS - операция выполнена успешна; HOLD - операция в обработке; FAILED - операция не выполнена |
| type | string | false | Тип операции |
| terminal | SellingPointTerminal | false | Номер терминала точки продаж |
| sender | OperationSender | false | Отправитель |
| recipient | OperationRecipient | false | Получатель |
| fee | number | true | Комиссия по операции |
| reference | string | false | Поле для связки сопоставления поля умной шины NIMB и сервиса LOYALTY STATEMENT API |
| isAnotherClient | boolean | true | Признак того, что операция выполнена другим клиентом |
| cashout | boolean | true | Признак снятия наличности в банкомате |
OperationsHistory
{
"operations": [
{
"id": "1220117MOCOIBSR 04461",
"dateTime": "2022-01-17T14:47:49.65Z",
"title": "МТС 9166666666",
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
},
"comment": "Перевод за услуги IPTV",
"mcc": "4899",
"category": {
"id": "00012",
"name": "Телефон, интернет, ТВ"
},
"direction": "EXPENSE",
"loyalty": {
"title": "Компенсация за аплату услуг Альфа картой",
"percent": 10,
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
},
"status": "SUCCESS",
"type": "A01",
"terminal": {
"number": "123456789",
"name": "МТС online",
"city": "Moscow",
"countryCode": "RU"
},
"sender": {
"name": "Сидоров Сидор Сидорович",
"accountNumber": "40817810810210032401",
"bankBik": "044525593",
"bankName": "Альфа Банк",
"phoneNumber": "+79201112222",
"maskedCardNumber": "1111XXXXXXXX2222"
},
"recipient": {
"name": "МТС",
"bankBik": "044525500",
"bankName": "ООО МТС Банк",
"phoneNumber": "+12223334455"
},
"fee": 50,
"isAnotherClient": false,
"cashout": false
}
]
}
История операций
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| operations | [OperationHistoryItem] | true | Массив операций |
Получение информации об операции по идентификатору операции, переданной в path-параметре
Метод позволяет получить информацию об операции по идентификатору операции, переданной в path-параметре.
Для получения информации об операции по идентификатору операции, переданной в path-параметре необходимо отправить запрос GET operations/{id} с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
Code samples
curl -X GET operations/{id} \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| id | path | string | true | Идентификатор операции |
| Authorization | header | string | true | Access token |
Example responses
200 Response
{
"id": "1220117MOCOIBSR 04461",
"dateTime": "2022-01-17T14:47:49.65Z",
"title": "МТС 9166666666",
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
},
"comment": "Перевод за услуги IPTV",
"mcc": "4899",
"category": {
"id": "00012",
"name": "Телефон, интернет, ТВ"
},
"direction": "EXPENSE",
"loyalty": {
"title": "Компенсация за аплату услуг Альфа картой",
"percent": 10,
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
},
"status": "SUCCESS",
"type": "A01",
"terminal": {
"number": "123456789",
"name": "МТС online",
"city": "Moscow",
"countryCode": "RU"
},
"sender": {
"name": "Сидоров Сидор Сидорович",
"accountNumber": "40817810810210032401",
"bankBik": "044525593",
"bankName": "Альфа Банк",
"phoneNumber": "+79201112222",
"maskedCardNumber": "1111XXXXXXXX2222"
},
"recipient": {
"name": "МТС",
"bankBik": "044525500",
"bankName": "ООО МТС Банк",
"phoneNumber": "+12223334455"
},
"fee": 50,
"isAnotherClient": false,
"cashout": false
}
Responses
| Status | Code response | Description | Schema |
|---|---|---|---|
| 200 (OK) | OK | Успешный результат | OperationDetails |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
Amount
{
"value": 100000,
"currency": "RUB",
"minorUnits": 100
}
Объект с суммой
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| value | integer(int64) | true | Сумма (значение) |
| currency | string | true | Валюта |
| minorUnits | integer | true | Минорные единицы |
OperationDirection
{
"direction": "EXPENSE"
}
Направление движения денежных средств
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| Направление движения денежных средств | string | false | Направление движения денежных средств: INCOME - приход/пополнение, EXPENSE - расход/списание |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| Направление движения денежных средств | EXPENSE | Расход/списание |
| Направление движения денежных средств | INCOME | Приход/пополнение |
OperationsHistoryCriteria
{
"dateFrom": "2019-08-24",
"dateTo": "2019-08-24",
"accounts": [],
"cards": [],
"operationDirection": "EXPENSE",
"pageNumber": 1,
"pageSize": 20
}
Объект с критериями для выборки истории операций
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| dateFrom | string(date) | false | Дата начала запроса истории операций (включительно) |
| dateTo | string(date) | false | Дата окончания запроса истории операций (включительно) |
| accounts | [string] | false | Фильтрация по счетам |
| cards | [string] | false | Фильтрация по номерам карт |
| operationDirection | OperationDirection | false | Направление движения денежных средств: INCOME - приход/пополнение, EXPENSE - расход/списание |
| pageNumber | integer | false | Пагинация (номер страницы) |
| pageSize | integer | false | Пагинация (размер) |
OperationCategory
{
"category": {
"id": "00012",
"name": "Телефон, интернет, ТВ"
}
}
Объект программы лояльности
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор категории |
| name | string | true | Наименование категории |
OperationLoyalty
{
"loyalty": {
"title": "Компенсация за аплату услуг Альфа картой",
"percent": 10,
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
Объект программы лояльности
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| title | string | false | Заголовок бонусной программы / программы лояльности |
| percent | number | false | Процент от суммы |
| amount | any | false | Сумма начисленного кэшбека (бонуса) |
OperationStatus
{
"status": "HOLD"
}
Статус операции
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| Статус операции | string | false | Статус операции: null - входящая операция или статус не определен; SUCCESS - операция выполнена успешна; HOLD - операция в обработке; FAILED - операция не выполнена |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| Статус операции | HOLD | Операция в обработке |
| Статус операции | SUCCESS | Операция выполнена успешна |
| Статус операции | FAILED | Операция не выполнена |
| Статус операции | null | Входящая операция или статус не определен |
SellingPointTerminal
{
"terminal": {
"number": "123456789",
"name": "МТС online",
"city": "Moscow",
"countryCode": "RU"
}
}
Объект терминал точки продаж
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | false | Номер терминала точки продаж |
| name | string | false | Имя точки продаж |
| city | string | false | Город точки продаж (код) |
| countryCode | string | false | Страна точки продаж (код) |
OperationSender
{
"sender": {
"name": "Сидоров Сидор Сидорович",
"accountNumber": "40817810810210032401",
"bankBik": "044525593",
"bankName": "Альфа Банк",
"phoneNumber": "+79201112222",
"maskedCardNumber": "1111XXXXXXXX2222"
}
}
Объект отправитель перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| name | string | false | Отправитель перевода |
| accountNumber | string | false | Номер счёта отправителя перевода / клиента |
| bankBik | string | false | БИК банка отправителя |
| bankName | string | false | Название банка отправителя |
| phoneNumber | string | false | Номер телефона отправителя |
| maskedCardNumber | string | false | Номер карты (маскированный) отправителя |
OperationRecipient
{
"recipient": {
"name": "МТС",
"bankBik": "044525500",
"bankName": "ООО МТС Банк",
"phoneNumber": "+12223334455"
}
}
Объект получатель перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| name | string | false | Получатель перевода |
| bankBik | string | false | БИК банка получателя |
| bankName | string | false | Название банка получателя |
| phoneNumber | string | false | Номер телефона получателя |
OperationHistoryItem
{
"id": "1220117MOCOIBSR 04461",
"dateTime": "2022-01-17T14:47:49.65Z",
"title": "МТС 9166666666",
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
},
"comment": "Перевод за услуги IPTV",
"mcc": "4899",
"category": {
"id": "00012",
"name": "Телефон, интернет, ТВ"
},
"direction": "EXPENSE",
"loyalty": {
"title": "Компенсация за аплату услуг Альфа картой",
"percent": 10,
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
},
"status": "SUCCESS",
"type": "A01",
"terminal": {
"number": "123456789",
"name": "МТС online",
"city": "Moscow",
"countryCode": "RU"
},
"sender": {
"name": "Сидоров Сидор Сидорович",
"accountNumber": "40817810810210032401",
"bankBik": "044525593",
"bankName": "Альфа Банк",
"phoneNumber": "+79201112222",
"maskedCardNumber": "1111XXXXXXXX2222"
},
"recipient": {
"name": "МТС",
"bankBik": "044525500",
"bankName": "ООО МТС Банк",
"phoneNumber": "+12223334455"
},
"fee": 50,
"isAnotherClient": false,
"cashout": false
}
Объект с информацией по операции
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор операции |
| dateTime | string(date-time) | true | Дата и время операции |
| title | string | true | Заголовок операции |
| amount | any | true | Сумма операции, валюта и минорные единицы |
| Name | Type | Required | Description |
|---|---|---|---|
| comment | string | false | Комментарий к операции |
| mcc | string | false | MCC код операции |
| category | OperationCategory | false | Категория операции |
| direction | OperationDirection | true | Направление движения денежных средств: INCOME - приход/пополнение, EXPENSE - расход/списание |
| loyalty | OperationLoyalty | false | Программа лояльности |
| status | OperationStatus | false | Статус операции: null - входящая операция или статус не определен; SUCCESS - операция выполнена успешна; HOLD - операция в обработке; FAILED - операция не выполнена |
| type | string | false | Тип операции |
| terminal | SellingPointTerminal | false | Номер терминала точки продаж |
| sender | OperationSender | false | Отправитель |
| recipient | OperationRecipient | false | Получатель |
| fee | number | true | Комиссия по операции |
| reference | string | false | Поле для связки сопоставления поля умной шины NIMB и сервиса LOYALTY STATEMENT API |
| isAnotherClient | boolean | true | Признак того, что операция выполнена другим клиентом |
| cashout | boolean | true | Признак снятия наличности в банкомате |
OperationsHistory
{
"operations": [
{
"id": "1220117MOCOIBSR 04461",
"dateTime": "2022-01-17T14:47:49.65Z",
"title": "МТС 9166666666",
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
},
"comment": "Перевод за услуги IPTV",
"mcc": "4899",
"category": {
"id": "00012",
"name": "Телефон, интернет, ТВ"
},
"direction": "EXPENSE",
"loyalty": {
"title": "Компенсация за аплату услуг Альфа картой",
"percent": 10,
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
},
"status": "SUCCESS",
"type": "A01",
"terminal": {
"number": "123456789",
"name": "МТС online",
"city": "Moscow",
"countryCode": "RU"
},
"sender": {
"name": "Сидоров Сидор Сидорович",
"accountNumber": "40817810810210032401",
"bankBik": "044525593",
"bankName": "Альфа Банк",
"phoneNumber": "+79201112222",
"maskedCardNumber": "1111XXXXXXXX2222"
},
"recipient": {
"name": "МТС",
"bankBik": "044525500",
"bankName": "ООО МТС Банк",
"phoneNumber": "+12223334455"
},
"fee": 50,
"isAnotherClient": false,
"cashout": false
}
]
}
История операций
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| operations | [OperationHistoryItem] | true | Массив операций |
Получение списка карт для перевода
Метод позволяет получить список карт для перевода.
Для получения списка карт для перевода необходимо отправить запрос GET accounts/{accountNumber} с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
Code samples
curl -X GET transfer/c2c/cards \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Example responses
200 Response
{
"sender": [
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
},
{
"id": "CC20209220000091",
"shortNumber": "··3304",
"number": "4700 0*********3304",
"name": "Название карты",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "CC20909220000015",
"shortNumber": "·· 642",
"number": "4726 3******** 642",
"name": "карта карта",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "CC20909220000081",
"shortNumber": "··5227",
"number": "463671******5227",
"name": "new",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "CC20909220000091",
"shortNumber": "··5227",
"number": "000071******5227",
"name": "name card",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "CC20909220000101",
"shortNumber": "··2273",
"number": "463671*******2273",
"name": "name card",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "CC20909220000102",
"shortNumber": "··1197",
"number": "415789******1197",
"name": "name card",
"bankName": "THE FISHER NATIONAL BANK",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "US",
"type": null
},
{
"id": "CC21209220000011",
"shortNumber": "··3022",
"number": "449654******3022",
"name": "Название карты",
"bankName": "FRANKLIN-SOMERSET FEDERAL CREDIT UNION",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "US",
"type": null
}
],
"recipient": [
{
"id": "CC20209220000091",
"shortNumber": "··3304",
"number": "4700 0*********3304",
"name": "Название карты",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "CC20909220000015",
"shortNumber": "·· 642",
"number": "4726 3******** 642",
"name": "карта карта",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "CC20909220000081",
"shortNumber": "··5227",
"number": "463671******5227",
"name": "new",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "CC20909220000091",
"shortNumber": "··5227",
"number": "000071******5227",
"name": "name card",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "CC20909220000101",
"shortNumber": "··2273",
"number": "463671*******2273",
"name": "name card",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "CC20909220000102",
"shortNumber": "··1197",
"number": "415789******1197",
"name": "name card",
"bankName": "THE FISHER NATIONAL BANK",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "US",
"type": null
},
{
"id": "CC21209220000011",
"shortNumber": "··3022",
"number": "449654******3022",
"name": "Название карты",
"bankName": "FRANKLIN-SOMERSET FEDERAL CREDIT UNION",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "US",
"type": null
},
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
}
]
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (ОК) | ОК | Успешный результат | C2CTransferGetCardsResponseBody |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
Card2CardPeerIdType
{
"type": "CARD_ID"
}
Тип идентификатора карты получателя
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| recipient.type | string | false | Тип идентификатора карты получателя |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| recipient.type | CARD_ID | Тип идентификатора карты получателя (Идентификатор карты) |
| recipient.type | CARD_NUMBER | Тип идентификатора карты получателя (Номер карты) |
PeerModel
{
"type": "CARD_ID",
"value": "CC21209220000011"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | Card2CardPeerIdType | true | Тип идентификатора карты получателя |
| value | string | true | none |
C2CTransferCreateRequestBody
{
"amount": {
"currency": "RUR",
"value": 1500,
"minorUnits": 100
},
"sender": {
"cvv": false,
"cardId": "135608210"
},
"recipient": {
"type": "CARD_ID",
"value": "CC21209220000011"
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | object(commons-AmountDto) | true | Сумма перевода, валюта и минорные единицы |
| sender | Sender | true | Данные отправителя |
| recipient | PeerModel | true | Данные получателя |
ConfirmationTypeThreeDs
{
"transferType": "THREE_DS"
}
Тип подтверждения перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferType | string | false | Тип подтверждения перевода |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| transferType | THREE_DS | Тип подтверждения перевода |
ThreeDsData
{
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
Данные для подтверждения через 3DS
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| md | string | true | Данные продавца |
| paReq | string | true | (Payment Request) — запрос на оплату или параметр платежного запроса. Он содержит всю важную информацию о платеже |
| accessUrl | string | true | Адрес (URL/URI) сервера аутентификации 3-D Secure |
| termUrl | string | true | Ссылка для redirect на платежный шлюз банк-эмитента-карты |
ConfirmationInfoThreeDs
{
"type": "THREE_DS",
"threeDs": {
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
}
Данные для подтверждения перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | ConfirmationTypeThreeDs | true | Подтверждение перевода |
| threeDs | ThreeDsData | true | Тип подтверждения перевода |
C2CTransferCreateResponseBody
{
"transferMetaData": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhbGZhLWxh",
"confirmationInfo": {
"type": "THREE_DS",
"threeDs": {
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
}
}
Создание перевода с подтверждением через 3DS
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferMetaData | string | true | JWT метаданные для перевода, пробрасываются фронтом на шаге подтверждения |
| confirmationInfo | ConfirmationInfoThreeDs | true | Данные для подтверждения платежа |
ExecuteTransferRequestThreeDs
{
"md": "CA712B1C6E2FE8A03272020125452070",
"paRes": "PARES"
}
Информация для подтверждения платежа
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| md | string | true | Данные продавца |
| paRes | string | true | Параметр информации о статусе проверки |
C2CTransferExecuteRequestBody
{
"transferMetaData": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhbGZhLWxhYiIsImp0aSI6InFUTm5Icy1fVDNLQTl",
"confirmation": {
"md": "CA712B1C6E2FE8A03272020125452070",
"paRes": "PARES"
}
}
Запрос на исполнение платежа Card2Card (подтверждение 3DS)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferMetaData | string | true | JWT метаданные для перевода, пробрасываются фронтом на шаге подтверждения |
| confirmation | ExecuteTransferRequestThreeDs | true | Данные для подтверждения перевода |
OperationDirection
{
"direction": "INCOME"
}
Тип перевода (входящий/исходящий)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| direction | string | false | Тип перевода |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| direction | INCOME | Входящий перевод |
| direction | OUTCOME | Исходящий перевод |
PeerInfo
{
"name": "string",
"value": "string"
}
Информация об отправителе/получателе перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| name | string | true | Название карты отправителя/получателя |
| value | string | true | Маскированный номер карты отправителя/получателя |
OperationData
{
"reference": "Z033103200000006",
"direction": "INCOME",
"senderInfo": {
"name": "Альфа-карта МИР",
"value": "**6130"
},
"recipientInfo": {
"name": "null",
"value": "**3007"
},
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
Информация об операции
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| reference | string | true | Id операции |
| direction | OperationDirection | true | Тип перевода (входящий/исходящий) |
| senderInfo | PeerInfo | true | Данные отправителя |
| recipientInfo | PeerInfo | true | Данные получателя |
| amount | object(commons-AmountDto) | true | Сумма перевода, валюты и минорных единиц |
C2CTransferExecuteResponseBody
{
"operationData": {
"reference": "Z033103200000006",
"direction": "INCOME",
"senderInfo": {
"name": "Альфа-карта МИР",
"value": "**6130"
},
"recipientInfo": {
"name": "null",
"value": "**3007"
},
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
}
Ответ на запрос на исполнение платежа Card2Card (подтверждение 3DS)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| operationData | OperationData | true | Информация о транзакции |
PeerModelExtended
{
"type": "CARD_ID",
"value": "CC21909220000031",
"isAlfa": true
}
C2CTransferFeeRequestBody
{
"sender": {
"type": "CARD_ID",
"value": "CC21909220000031",
"isAlfa": true
},
"recipient": {
"type": "CARD_ID",
"value": "135608210",
"isAlfa": true
},
"amount": {}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sender | PeerModelExtended | true | Отправитель |
| recipient | PeerModelExtended | true | Получатель |
| amount | object(commons-AmountDto) | true | Сумма операции, валюта и минорные единицы |
C2CTransferFeeResponseBody
{
"fee": {
"value": 10,
"currency": "RUR",
"minorUnits": 100
},
"feeInterest": 10,
"feeMin": {
"value": 0,
"currency": "RUR",
"minorUnits": 100
},
"feeMax": {
"value": 1000,
"currency": "RUR",
"minorUnits": 100
},
"feeConstant": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| fee | object(commons-AmountDto) | false | Общая сумма комиссии |
| feeMax | object(commons-AmountDto) | false | Максимально допустимый размер комиссии |
| feeMin | object(commons-AmountDto) | false | Минимально допустимый размер комиссии |
| feeConstant | object(commons-AmountDto) | false | Постоянная часть комиссии |
| feeInterest | number | false | Процентная часть комиссии |
C2CTransferCardType
{
"type": "DEBIT"
}
Признак Кредитная/Дебетовая карта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | string | false | Признак: кредитная/дебетовая карта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| type | DEBIT | Дебетовая карта |
| type | CREDIT | Кредитная карта |
C2CTransferCardModel
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор карты |
| shortNumber | string | true | Последние 4 цифры карты |
| number | string | true | Маскированный номер карты |
| name | string | true | Имя карты |
| bankName | string | true | Имя банка |
| expirationDate | string(date) | true | Дата действия карты |
| alfaCard | boolean | true | Признак оформления карты в банке |
| paymentSystem | string | true | Платежная система |
| own | boolean | true | Владелец карты |
| cvc | boolean | true | CVC-код |
| type | C2CTransferCardType | false | Дебет/кредит |
| cardSkinType | string | true | Тип карты для отображения на фронте |
| countryCode | string | true | Код страны |
C2CTransferGetCardsResponseBody
{
"sender": [
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
},
{
"id": "CC21209220000011",
"shortNumber": "··3022",
"number": "449654******3022",
"name": "Название карты",
"bankName": "FRANKLIN-SOMERSET FEDERAL CREDIT UNION",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "US",
"type": null
}
],
"recipient": [
{
"id": "CC20209220000091",
"shortNumber": "··3304",
"number": "4700 0*********3304",
"name": "Название карты",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
}
]
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sender | [C2CTransferCardModel] | true | Отправитель |
| recipient | [C2CTransferCardModel] | true | Получатель |
C2CTransferCreateCardRequestBody
{
"number": "2200700144504049",
"recipient": true,
"sender": false,
"expirationDate": "0330",
"description": ""
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер карты |
| recipient | boolean | true | Признак сохранения карты в группу карт-получателей |
| sender | boolean | true | Признак сохранения карты в группу карт-отправителей |
| expirationDate | string(year-month) | true | Дата действия карты |
| description | string | false | Имя карты |
C2CTransferCreateCardResponseBody
{
"id": "CC21808220023780"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор сохраненной карты |
C2CTransferOperationDetails
{
"status": "EXECUTED",
"errorDescription": ""
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | true | Статус перевода |
| errorDescription | string | false | Описание ошибки |
C2CTransferOperationDetailsResponseBody
{
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
},
"details": {
"status": "EXECUTED",
"errorDescription": ""
},
"senderCard": {
"id": "135616292",
"shortNumber": "··8636",
"number": "479004******8636",
"name": "Visa Gold PayWave",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "VISA",
"own": true,
"cvc": false,
"cardSkinType": "CZ",
"countryCode": "RU",
"type": null
},
"recipientCard": {
"id": "135937119",
"shortNumber": "··9516",
"number": "479004******9516",
"name": "Test Card1356655",
"bankName": "АЛЬФА БАНК",
"expirationDate": "0001-01-01",
"alfaCard": true,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "CZ",
"countryCode": "RU",
"type": null
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | object(commons-AmountDto) | true | Сумма операции, валюта и минорные единицы |
| details | C2CTransferOperationDetails | true | Информации о статусе перевода |
| senderCard | C2CTransferCardModel | true | Данные карты отправителя |
| recipientCard | C2CTransferCardModel | true | Данные карты получателя |
Информация по операции
Метод позволяет получить информацию по операции.
Для получения атрибутов счета по номеру необходимо отправить запрос GET accounts/{accountNumber} с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
Code samples
curl -X GET transfer/c2c/operations/{reference} \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Получение детальной информации по операции перевода Card2Card
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| Authorization | header | string | true | Access token |
| reference | path | string | true | Референс операции |
Example responses
200 Response
{
"amount": {
"value": 300000,
"currency": "RUR",
"minorUnits": 100
},
"details": {
"status": "EXECUTED",
"errorDescription": ""
},
"senderCard": {
"id": "95874015",
"shortNumber": "··3631",
"number": "479004******3631",
"name": "Visa Gold PayWave",
"cardSkinType": "CZ",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2022-10-31",
"alfaCard": true,
"paymentSystem": "VISA",
"own": true,
"cvc": false,
"countryCode": "RU"
},
"recipientCard": {
"id": "69235482",
"shortNumber": "··9449",
"number": "555949******9449",
"name": "CashBack NEW MC",
"cardSkinType": "ER",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2024-10-31",
"alfaCard": true,
"paymentSystem": "VISA",
"own": true,
"cvc": false,
"countryCode": "RU"
}
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (ОК) | ОК | Успешный результат | C2CTransferOperationDetailsResponseBody |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
Card2CardPeerIdType
{
"type": "CARD_ID"
}
Тип идентификатора карты получателя
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| recipient.type | string | false | Тип идентификатора карты получателя |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| recipient.type | CARD_ID | Тип идентификатора карты получателя (Идентификатор карты) |
| recipient.type | CARD_NUMBER | Тип идентификатора карты получателя (Номер карты) |
PeerModel
{
"type": "CARD_ID",
"value": "CC21209220000011"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | Card2CardPeerIdType | true | Тип идентификатора карты получателя |
| value | string | true | none |
C2CTransferCreateRequestBody
{
"amount": {
"currency": "RUR",
"value": 1500,
"minorUnits": 100
},
"sender": {
"cvv": false,
"cardId": "135608210"
},
"recipient": {
"type": "CARD_ID",
"value": "CC21209220000011"
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | object(commons-AmountDto) | true | Сумма перевода, валюта и минорные единицы |
| sender | Sender | true | Данные отправителя |
| recipient | PeerModel | true | Данные получателя |
ConfirmationTypeThreeDs
{
"transferType": "THREE_DS"
}
Тип подтверждения перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferType | string | false | Тип подтверждения перевода |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| transferType | THREE_DS | Тип подтверждения перевода |
ThreeDsData
{
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
Данные для подтверждения через 3DS
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| md | string | true | Данные продавца |
| paReq | string | true | (Payment Request) — запрос на оплату или параметр платежного запроса. Он содержит всю важную информацию о платеже |
| accessUrl | string | true | Адрес (URL/URI) сервера аутентификации 3-D Secure |
| termUrl | string | true | Ссылка для redirect на платежный шлюз банк-эмитента-карты |
ConfirmationInfoThreeDs
{
"type": "THREE_DS",
"threeDs": {
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
}
Данные для подтверждения перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | ConfirmationTypeThreeDs | true | Подтверждение перевода |
| threeDs | ThreeDsData | true | Тип подтверждения перевода |
C2CTransferCreateResponseBody
{
"transferMetaData": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhbGZhLWxh",
"confirmationInfo": {
"type": "THREE_DS",
"threeDs": {
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
}
}
Создание перевода с подтверждением через 3DS
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferMetaData | string | true | JWT метаданные для перевода, пробрасываются фронтом на шаге подтверждения |
| confirmationInfo | ConfirmationInfoThreeDs | true | Данные для подтверждения платежа |
ExecuteTransferRequestThreeDs
{
"md": "CA712B1C6E2FE8A03272020125452070",
"paRes": "PARES"
}
Информация для подтверждения платежа
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| md | string | true | Данные продавца |
| paRes | string | true | Параметр информации о статусе проверки |
C2CTransferExecuteRequestBody
{
"transferMetaData": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhbGZhLWxhYiIsImp0aSI6InFUTm5Icy1fVDNLQTl",
"confirmation": {
"md": "CA712B1C6E2FE8A03272020125452070",
"paRes": "PARES"
}
}
Запрос на исполнение платежа Card2Card (подтверждение 3DS)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferMetaData | string | true | JWT метаданные для перевода, пробрасываются фронтом на шаге подтверждения |
| confirmation | ExecuteTransferRequestThreeDs | true | Данные для подтверждения перевода |
OperationDirection
{
"direction": "INCOME"
}
Тип перевода (входящий/исходящий)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| direction | string | false | Тип перевода |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| direction | INCOME | Входящий перевод |
| direction | OUTCOME | Исходящий перевод |
PeerInfo
{
"name": "string",
"value": "string"
}
Информация об отправителе/получателе перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| name | string | true | Название карты отправителя/получателя |
| value | string | true | Маскированный номер карты отправителя/получателя |
OperationData
{
"reference": "Z033103200000006",
"direction": "INCOME",
"senderInfo": {
"name": "Альфа-карта МИР",
"value": "**6130"
},
"recipientInfo": {
"name": "null",
"value": "**3007"
},
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
Информация об операции
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| reference | string | true | Id операции |
| direction | OperationDirection | true | Тип перевода (входящий/исходящий) |
| senderInfo | PeerInfo | true | Данные отправителя |
| recipientInfo | PeerInfo | true | Данные получателя |
| amount | object(commons-AmountDto) | true | Сумма перевода, валюты и минорных единиц |
C2CTransferExecuteResponseBody
{
"operationData": {
"reference": "Z033103200000006",
"direction": "INCOME",
"senderInfo": {
"name": "Альфа-карта МИР",
"value": "**6130"
},
"recipientInfo": {
"name": "null",
"value": "**3007"
},
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
}
Ответ на запрос на исполнение платежа Card2Card (подтверждение 3DS)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| operationData | OperationData | true | Информация о транзакции |
PeerModelExtended
{
"type": "CARD_ID",
"value": "CC21909220000031",
"isAlfa": true
}
C2CTransferFeeRequestBody
{
"sender": {
"type": "CARD_ID",
"value": "CC21909220000031",
"isAlfa": true
},
"recipient": {
"type": "CARD_ID",
"value": "135608210",
"isAlfa": true
},
"amount": {}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sender | PeerModelExtended | true | Отправитель |
| recipient | PeerModelExtended | true | Получатель |
| amount | object(commons-AmountDto) | true | Сумма операции, валюта и минорные единицы |
C2CTransferFeeResponseBody
{
"fee": {
"value": 10,
"currency": "RUR",
"minorUnits": 100
},
"feeInterest": 10,
"feeMin": {
"value": 0,
"currency": "RUR",
"minorUnits": 100
},
"feeMax": {
"value": 1000,
"currency": "RUR",
"minorUnits": 100
},
"feeConstant": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| fee | object(commons-AmountDto) | false | Общая сумма комиссии |
| feeMax | object(commons-AmountDto) | false | Максимально допустимый размер комиссии |
| feeMin | object(commons-AmountDto) | false | Минимально допустимый размер комиссии |
| feeConstant | object(commons-AmountDto) | false | Постоянная часть комиссии |
| feeInterest | number | false | Процентная часть комиссии |
C2CTransferCardType
{
"type": "DEBIT"
}
Признак Кредитная/Дебетовая карта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | string | false | Признак: кредитная/дебетовая карта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| type | DEBIT | Дебетовая карта |
| type | CREDIT | Кредитная карта |
C2CTransferCardModel
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор карты |
| shortNumber | string | true | Последние 4 цифры карты |
| number | string | true | Маскированный номер карты |
| name | string | true | Имя карты |
| bankName | string | true | Имя банка |
| expirationDate | string(date) | true | Дата действия карты |
| alfaCard | boolean | true | Признак оформления карты в банке |
| paymentSystem | string | true | Платежная система |
| own | boolean | true | Владелец карты |
| cvc | boolean | true | CVC-код |
| type | C2CTransferCardType | false | Дебет/кредит |
| cardSkinType | string | true | Тип карты для отображения на фронте |
| countryCode | string | true | Код страны |
C2CTransferGetCardsResponseBody
{
"sender": [
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
},
{
"id": "CC21209220000011",
"shortNumber": "··3022",
"number": "449654******3022",
"name": "Название карты",
"bankName": "FRANKLIN-SOMERSET FEDERAL CREDIT UNION",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "US",
"type": null
}
],
"recipient": [
{
"id": "CC20209220000091",
"shortNumber": "··3304",
"number": "4700 0*********3304",
"name": "Название карты",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
}
]
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sender | [C2CTransferCardModel] | true | Отправитель |
| recipient | [C2CTransferCardModel] | true | Получатель |
C2CTransferCreateCardRequestBody
{
"number": "2200700144504049",
"recipient": true,
"sender": false,
"expirationDate": "0330",
"description": ""
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер карты |
| recipient | boolean | true | Признак сохранения карты в группу карт-получателей |
| sender | boolean | true | Признак сохранения карты в группу карт-отправителей |
| expirationDate | string(year-month) | true | Дата действия карты |
| description | string | false | Имя карты |
C2CTransferCreateCardResponseBody
{
"id": "CC21808220023780"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор сохраненной карты |
C2CTransferOperationDetails
{
"status": "EXECUTED",
"errorDescription": ""
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | true | Статус перевода |
| errorDescription | string | false | Описание ошибки |
C2CTransferOperationDetailsResponseBody
{
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
},
"details": {
"status": "EXECUTED",
"errorDescription": ""
},
"senderCard": {
"id": "135616292",
"shortNumber": "··8636",
"number": "479004******8636",
"name": "Visa Gold PayWave",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "VISA",
"own": true,
"cvc": false,
"cardSkinType": "CZ",
"countryCode": "RU",
"type": null
},
"recipientCard": {
"id": "135937119",
"shortNumber": "··9516",
"number": "479004******9516",
"name": "Test Card1356655",
"bankName": "АЛЬФА БАНК",
"expirationDate": "0001-01-01",
"alfaCard": true,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "CZ",
"countryCode": "RU",
"type": null
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | object(commons-AmountDto) | true | Сумма операции, валюта и минорные единицы |
| details | C2CTransferOperationDetails | true | Информации о статусе перевода |
| senderCard | C2CTransferCardModel | true | Данные карты отправителя |
| recipientCard | C2CTransferCardModel | true | Данные карты получателя |
Исполнение перевода Card2Card (3DS)
Метод предназначен для исполнения перевода с карты на карту с подтверждением через 3DS.
Для исполнения перевода Card2Card (3DS) необходимо отправить запрос POST transfer/c2c/execute с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
Code samples
curl -X POST transfer/c2c/execute \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Body parameter
{
"confirmation" : {
"code" : null,
"md" : "35c2ecc4-54f1-4c71-8649-5fbaa78bf4f4",
"paRes" : "1"
}
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | C2CTransferExecuteRequestBody | true | Тело запроса |
Example responses
200 Response
{
"operationData": {
"reference": "Z033103200000006",
"direction": "OUTCOME",
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
},
"senderInfo": {
"name": "Альфа-карта МИР",
"value": "**6130"
},
"recipientInfo": {
"name": "null",
"value": "**3007"
}
}
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (ОК) | ОК | Успешный результат | C2CTransferExecuteResponseBody |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
Card2CardPeerIdType
{
"type": "CARD_ID"
}
Тип идентификатора карты получателя
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| recipient.type | string | false | Тип идентификатора карты получателя |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| recipient.type | CARD_ID | Тип идентификатора карты получателя (Идентификатор карты) |
| recipient.type | CARD_NUMBER | Тип идентификатора карты получателя (Номер карты) |
PeerModel
{
"type": "CARD_ID",
"value": "CC21209220000011"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | Card2CardPeerIdType | true | Тип идентификатора карты получателя |
| value | string | true | none |
C2CTransferCreateRequestBody
{
"amount": {
"currency": "RUR",
"value": 1500,
"minorUnits": 100
},
"sender": {
"cvv": false,
"cardId": "135608210"
},
"recipient": {
"type": "CARD_ID",
"value": "CC21209220000011"
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | object(commons-AmountDto) | true | Сумма перевода, валюта и минорные единицы |
| sender | Sender | true | Данные отправителя |
| recipient | PeerModel | true | Данные получателя |
ConfirmationTypeThreeDs
{
"transferType": "THREE_DS"
}
Тип подтверждения перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferType | string | false | Тип подтверждения перевода |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| transferType | THREE_DS | Тип подтверждения перевода |
ThreeDsData
{
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
Данные для подтверждения через 3DS
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| md | string | true | Данные продавца |
| paReq | string | true | (Payment Request) — запрос на оплату или параметр платежного запроса. Он содержит всю важную информацию о платеже |
| accessUrl | string | true | Адрес (URL/URI) сервера аутентификации 3-D Secure |
| termUrl | string | true | Ссылка для redirect на платежный шлюз банк-эмитента-карты |
ConfirmationInfoThreeDs
{
"type": "THREE_DS",
"threeDs": {
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
}
Данные для подтверждения перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | ConfirmationTypeThreeDs | true | Подтверждение перевода |
| threeDs | ThreeDsData | true | Тип подтверждения перевода |
C2CTransferCreateResponseBody
{
"transferMetaData": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhbGZhLWxh",
"confirmationInfo": {
"type": "THREE_DS",
"threeDs": {
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
}
}
Создание перевода с подтверждением через 3DS
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferMetaData | string | true | JWT метаданные для перевода, пробрасываются фронтом на шаге подтверждения |
| confirmationInfo | ConfirmationInfoThreeDs | true | Данные для подтверждения платежа |
ExecuteTransferRequestThreeDs
{
"md": "CA712B1C6E2FE8A03272020125452070",
"paRes": "PARES"
}
Информация для подтверждения платежа
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| md | string | true | Данные продавца |
| paRes | string | true | Параметр информации о статусе проверки |
C2CTransferExecuteRequestBody
{
"transferMetaData": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhbGZhLWxhYiIsImp0aSI6InFUTm5Icy1fVDNLQTl",
"confirmation": {
"md": "CA712B1C6E2FE8A03272020125452070",
"paRes": "PARES"
}
}
Запрос на исполнение платежа Card2Card (подтверждение 3DS)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferMetaData | string | true | JWT метаданные для перевода, пробрасываются фронтом на шаге подтверждения |
| confirmation | ExecuteTransferRequestThreeDs | true | Данные для подтверждения перевода |
OperationDirection
{
"direction": "INCOME"
}
Тип перевода (входящий/исходящий)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| direction | string | false | Тип перевода |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| direction | INCOME | Входящий перевод |
| direction | OUTCOME | Исходящий перевод |
PeerInfo
{
"name": "string",
"value": "string"
}
Информация об отправителе/получателе перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| name | string | true | Название карты отправителя/получателя |
| value | string | true | Маскированный номер карты отправителя/получателя |
OperationData
{
"reference": "Z033103200000006",
"direction": "INCOME",
"senderInfo": {
"name": "Альфа-карта МИР",
"value": "**6130"
},
"recipientInfo": {
"name": "null",
"value": "**3007"
},
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
Информация об операции
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| reference | string | true | Id операции |
| direction | OperationDirection | true | Тип перевода (входящий/исходящий) |
| senderInfo | PeerInfo | true | Данные отправителя |
| recipientInfo | PeerInfo | true | Данные получателя |
| amount | object(commons-AmountDto) | true | Сумма перевода, валюты и минорных единиц |
C2CTransferExecuteResponseBody
{
"operationData": {
"reference": "Z033103200000006",
"direction": "INCOME",
"senderInfo": {
"name": "Альфа-карта МИР",
"value": "**6130"
},
"recipientInfo": {
"name": "null",
"value": "**3007"
},
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
}
Ответ на запрос на исполнение платежа Card2Card (подтверждение 3DS)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| operationData | OperationData | true | Информация о транзакции |
PeerModelExtended
{
"type": "CARD_ID",
"value": "CC21909220000031",
"isAlfa": true
}
C2CTransferFeeRequestBody
{
"sender": {
"type": "CARD_ID",
"value": "CC21909220000031",
"isAlfa": true
},
"recipient": {
"type": "CARD_ID",
"value": "135608210",
"isAlfa": true
},
"amount": {}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sender | PeerModelExtended | true | Отправитель |
| recipient | PeerModelExtended | true | Получатель |
| amount | object(commons-AmountDto) | true | Сумма операции, валюта и минорные единицы |
C2CTransferFeeResponseBody
{
"fee": {
"value": 10,
"currency": "RUR",
"minorUnits": 100
},
"feeInterest": 10,
"feeMin": {
"value": 0,
"currency": "RUR",
"minorUnits": 100
},
"feeMax": {
"value": 1000,
"currency": "RUR",
"minorUnits": 100
},
"feeConstant": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| fee | object(commons-AmountDto) | false | Общая сумма комиссии |
| feeMax | object(commons-AmountDto) | false | Максимально допустимый размер комиссии |
| feeMin | object(commons-AmountDto) | false | Минимально допустимый размер комиссии |
| feeConstant | object(commons-AmountDto) | false | Постоянная часть комиссии |
| feeInterest | number | false | Процентная часть комиссии |
C2CTransferCardType
{
"type": "DEBIT"
}
Признак Кредитная/Дебетовая карта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | string | false | Признак: кредитная/дебетовая карта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| type | DEBIT | Дебетовая карта |
| type | CREDIT | Кредитная карта |
C2CTransferCardModel
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор карты |
| shortNumber | string | true | Последние 4 цифры карты |
| number | string | true | Маскированный номер карты |
| name | string | true | Имя карты |
| bankName | string | true | Имя банка |
| expirationDate | string(date) | true | Дата действия карты |
| alfaCard | boolean | true | Признак оформления карты в банке |
| paymentSystem | string | true | Платежная система |
| own | boolean | true | Владелец карты |
| cvc | boolean | true | CVC-код |
| type | C2CTransferCardType | false | Дебет/кредит |
| cardSkinType | string | true | Тип карты для отображения на фронте |
| countryCode | string | true | Код страны |
C2CTransferGetCardsResponseBody
{
"sender": [
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
},
{
"id": "CC21209220000011",
"shortNumber": "··3022",
"number": "449654******3022",
"name": "Название карты",
"bankName": "FRANKLIN-SOMERSET FEDERAL CREDIT UNION",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "US",
"type": null
}
],
"recipient": [
{
"id": "CC20209220000091",
"shortNumber": "··3304",
"number": "4700 0*********3304",
"name": "Название карты",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
}
]
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sender | [C2CTransferCardModel] | true | Отправитель |
| recipient | [C2CTransferCardModel] | true | Получатель |
C2CTransferCreateCardRequestBody
{
"number": "2200700144504049",
"recipient": true,
"sender": false,
"expirationDate": "0330",
"description": ""
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер карты |
| recipient | boolean | true | Признак сохранения карты в группу карт-получателей |
| sender | boolean | true | Признак сохранения карты в группу карт-отправителей |
| expirationDate | string(year-month) | true | Дата действия карты |
| description | string | false | Имя карты |
C2CTransferCreateCardResponseBody
{
"id": "CC21808220023780"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор сохраненной карты |
C2CTransferOperationDetails
{
"status": "EXECUTED",
"errorDescription": ""
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | true | Статус перевода |
| errorDescription | string | false | Описание ошибки |
C2CTransferOperationDetailsResponseBody
{
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
},
"details": {
"status": "EXECUTED",
"errorDescription": ""
},
"senderCard": {
"id": "135616292",
"shortNumber": "··8636",
"number": "479004******8636",
"name": "Visa Gold PayWave",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "VISA",
"own": true,
"cvc": false,
"cardSkinType": "CZ",
"countryCode": "RU",
"type": null
},
"recipientCard": {
"id": "135937119",
"shortNumber": "··9516",
"number": "479004******9516",
"name": "Test Card1356655",
"bankName": "АЛЬФА БАНК",
"expirationDate": "0001-01-01",
"alfaCard": true,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "CZ",
"countryCode": "RU",
"type": null
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | object(commons-AmountDto) | true | Сумма операции, валюта и минорные единицы |
| details | C2CTransferOperationDetails | true | Информации о статусе перевода |
| senderCard | C2CTransferCardModel | true | Данные карты отправителя |
| recipientCard | C2CTransferCardModel | true | Данные карты получателя |
Создание перевода Card2Card
Метод предназначен для создания перевода с карты на карту с подтверждением через 3DS.
Для создания перевода Card2Card необходимо отправить запрос POST transfer/c2c с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
Code samples
curl -X POST transfer/c2c \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Body parameter
{
"amount" : {
"value" : 1500,
"currency" : "RUR",
"minorUnits" : 100
},
"sender" : {
"cvv" : null,
"cardId" : "CC20308220025123"
},
"recipient" : {
"value" : "123731041",
"type" : "CARD_ID"
}
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | C2CTransferCreateRequestBody | true | Тело запроса |
Example responses
200 Response
{
"transferMetaData": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhbGZhLWxh",
"confirmationInfo": {
"type": "THREE_DS",
"threeDs": {
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"paReq": "591017279;AFMB",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
}
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (ОК) | ОК | Успешный результат | C2CTransferCreateResponseBody |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
Card2CardPeerIdType
{
"type": "CARD_ID"
}
Тип идентификатора карты получателя
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| recipient.type | string | false | Тип идентификатора карты получателя |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| recipient.type | CARD_ID | Тип идентификатора карты получателя (Идентификатор карты) |
| recipient.type | CARD_NUMBER | Тип идентификатора карты получателя (Номер карты) |
PeerModel
{
"type": "CARD_ID",
"value": "CC21209220000011"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | Card2CardPeerIdType | true | Тип идентификатора карты получателя |
| value | string | true | none |
C2CTransferCreateRequestBody
{
"amount": {
"currency": "RUR",
"value": 1500,
"minorUnits": 100
},
"sender": {
"cvv": false,
"cardId": "135608210"
},
"recipient": {
"type": "CARD_ID",
"value": "CC21209220000011"
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | object(commons-AmountDto) | true | Сумма перевода, валюта и минорные единицы |
| sender | Sender | true | Данные отправителя |
| recipient | PeerModel | true | Данные получателя |
ConfirmationTypeThreeDs
{
"transferType": "THREE_DS"
}
Тип подтверждения перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferType | string | false | Тип подтверждения перевода |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| transferType | THREE_DS | Тип подтверждения перевода |
ThreeDsData
{
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
Данные для подтверждения через 3DS
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| md | string | true | Данные продавца |
| paReq | string | true | (Payment Request) — запрос на оплату или параметр платежного запроса. Он содержит всю важную информацию о платеже |
| accessUrl | string | true | Адрес (URL/URI) сервера аутентификации 3-D Secure |
| termUrl | string | true | Ссылка для redirect на платежный шлюз банк-эмитента-карты |
ConfirmationInfoThreeDs
{
"type": "THREE_DS",
"threeDs": {
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
}
Данные для подтверждения перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | ConfirmationTypeThreeDs | true | Подтверждение перевода |
| threeDs | ThreeDsData | true | Тип подтверждения перевода |
C2CTransferCreateResponseBody
{
"transferMetaData": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhbGZhLWxh",
"confirmationInfo": {
"type": "THREE_DS",
"threeDs": {
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
}
}
Создание перевода с подтверждением через 3DS
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferMetaData | string | true | JWT метаданные для перевода, пробрасываются фронтом на шаге подтверждения |
| confirmationInfo | ConfirmationInfoThreeDs | true | Данные для подтверждения платежа |
ExecuteTransferRequestThreeDs
{
"md": "CA712B1C6E2FE8A03272020125452070",
"paRes": "PARES"
}
Информация для подтверждения платежа
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| md | string | true | Данные продавца |
| paRes | string | true | Параметр информации о статусе проверки |
C2CTransferExecuteRequestBody
{
"transferMetaData": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhbGZhLWxhYiIsImp0aSI6InFUTm5Icy1fVDNLQTl",
"confirmation": {
"md": "CA712B1C6E2FE8A03272020125452070",
"paRes": "PARES"
}
}
Запрос на исполнение платежа Card2Card (подтверждение 3DS)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferMetaData | string | true | JWT метаданные для перевода, пробрасываются фронтом на шаге подтверждения |
| confirmation | ExecuteTransferRequestThreeDs | true | Данные для подтверждения перевода |
OperationDirection
{
"direction": "INCOME"
}
Тип перевода (входящий/исходящий)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| direction | string | false | Тип перевода |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| direction | INCOME | Входящий перевод |
| direction | OUTCOME | Исходящий перевод |
PeerInfo
{
"name": "string",
"value": "string"
}
Информация об отправителе/получателе перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| name | string | true | Название карты отправителя/получателя |
| value | string | true | Маскированный номер карты отправителя/получателя |
OperationData
{
"reference": "Z033103200000006",
"direction": "INCOME",
"senderInfo": {
"name": "Альфа-карта МИР",
"value": "**6130"
},
"recipientInfo": {
"name": "null",
"value": "**3007"
},
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
Информация об операции
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| reference | string | true | Id операции |
| direction | OperationDirection | true | Тип перевода (входящий/исходящий) |
| senderInfo | PeerInfo | true | Данные отправителя |
| recipientInfo | PeerInfo | true | Данные получателя |
| amount | object(commons-AmountDto) | true | Сумма перевода, валюты и минорных единиц |
C2CTransferExecuteResponseBody
{
"operationData": {
"reference": "Z033103200000006",
"direction": "INCOME",
"senderInfo": {
"name": "Альфа-карта МИР",
"value": "**6130"
},
"recipientInfo": {
"name": "null",
"value": "**3007"
},
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
}
Ответ на запрос на исполнение платежа Card2Card (подтверждение 3DS)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| operationData | OperationData | true | Информация о транзакции |
PeerModelExtended
{
"type": "CARD_ID",
"value": "CC21909220000031",
"isAlfa": true
}
C2CTransferFeeRequestBody
{
"sender": {
"type": "CARD_ID",
"value": "CC21909220000031",
"isAlfa": true
},
"recipient": {
"type": "CARD_ID",
"value": "135608210",
"isAlfa": true
},
"amount": {}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sender | PeerModelExtended | true | Отправитель |
| recipient | PeerModelExtended | true | Получатель |
| amount | object(commons-AmountDto) | true | Сумма операции, валюта и минорные единицы |
C2CTransferFeeResponseBody
{
"fee": {
"value": 10,
"currency": "RUR",
"minorUnits": 100
},
"feeInterest": 10,
"feeMin": {
"value": 0,
"currency": "RUR",
"minorUnits": 100
},
"feeMax": {
"value": 1000,
"currency": "RUR",
"minorUnits": 100
},
"feeConstant": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| fee | object(commons-AmountDto) | false | Общая сумма комиссии |
| feeMax | object(commons-AmountDto) | false | Максимально допустимый размер комиссии |
| feeMin | object(commons-AmountDto) | false | Минимально допустимый размер комиссии |
| feeConstant | object(commons-AmountDto) | false | Постоянная часть комиссии |
| feeInterest | number | false | Процентная часть комиссии |
C2CTransferCardType
{
"type": "DEBIT"
}
Признак Кредитная/Дебетовая карта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | string | false | Признак: кредитная/дебетовая карта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| type | DEBIT | Дебетовая карта |
| type | CREDIT | Кредитная карта |
C2CTransferCardModel
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор карты |
| shortNumber | string | true | Последние 4 цифры карты |
| number | string | true | Маскированный номер карты |
| name | string | true | Имя карты |
| bankName | string | true | Имя банка |
| expirationDate | string(date) | true | Дата действия карты |
| alfaCard | boolean | true | Признак оформления карты в банке |
| paymentSystem | string | true | Платежная система |
| own | boolean | true | Владелец карты |
| cvc | boolean | true | CVC-код |
| type | C2CTransferCardType | false | Дебет/кредит |
| cardSkinType | string | true | Тип карты для отображения на фронте |
| countryCode | string | true | Код страны |
C2CTransferGetCardsResponseBody
{
"sender": [
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
},
{
"id": "CC21209220000011",
"shortNumber": "··3022",
"number": "449654******3022",
"name": "Название карты",
"bankName": "FRANKLIN-SOMERSET FEDERAL CREDIT UNION",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "US",
"type": null
}
],
"recipient": [
{
"id": "CC20209220000091",
"shortNumber": "··3304",
"number": "4700 0*********3304",
"name": "Название карты",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
}
]
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sender | [C2CTransferCardModel] | true | Отправитель |
| recipient | [C2CTransferCardModel] | true | Получатель |
C2CTransferCreateCardRequestBody
{
"number": "2200700144504049",
"recipient": true,
"sender": false,
"expirationDate": "0330",
"description": ""
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер карты |
| recipient | boolean | true | Признак сохранения карты в группу карт-получателей |
| sender | boolean | true | Признак сохранения карты в группу карт-отправителей |
| expirationDate | string(year-month) | true | Дата действия карты |
| description | string | false | Имя карты |
C2CTransferCreateCardResponseBody
{
"id": "CC21808220023780"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор сохраненной карты |
C2CTransferOperationDetails
{
"status": "EXECUTED",
"errorDescription": ""
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | true | Статус перевода |
| errorDescription | string | false | Описание ошибки |
C2CTransferOperationDetailsResponseBody
{
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
},
"details": {
"status": "EXECUTED",
"errorDescription": ""
},
"senderCard": {
"id": "135616292",
"shortNumber": "··8636",
"number": "479004******8636",
"name": "Visa Gold PayWave",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "VISA",
"own": true,
"cvc": false,
"cardSkinType": "CZ",
"countryCode": "RU",
"type": null
},
"recipientCard": {
"id": "135937119",
"shortNumber": "··9516",
"number": "479004******9516",
"name": "Test Card1356655",
"bankName": "АЛЬФА БАНК",
"expirationDate": "0001-01-01",
"alfaCard": true,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "CZ",
"countryCode": "RU",
"type": null
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | object(commons-AmountDto) | true | Сумма операции, валюта и минорные единицы |
| details | C2CTransferOperationDetails | true | Информации о статусе перевода |
| senderCard | C2CTransferCardModel | true | Данные карты отправителя |
| recipientCard | C2CTransferCardModel | true | Данные карты получателя |
Расчет комиссии за перевод Card2Card
Метод предназначен для расчета комиссии за перевод с карты на карту.
Для создания перевода Card2Card необходимо отправить запрос POST transfer/c2c/fee с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
Code samples
curl -X POST transfer/c2c/fee \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Body parameter
{
"sender": {
"type": "CARD_ID",
"value": "string",
"isAlfa": true
},
"recipient": {
"type": "CARD_ID",
"value": "string",
"isAlfa": true
},
"amount": {}
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | C2CTransferFeeRequestBody | true | Тело запроса |
Example responses
200 Response
{
"fee": {
"value": 10,
"currency": "RUR",
"minorUnits": 100
},
"feeInterest": 10,
"feeMin": {
"value": 0,
"currency": "RUR",
"minorUnits": 100
},
"feeMax": {
"value": 1000,
"currency": "RUR",
"minorUnits": 100
},
"feeConstant": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (ОК) | ОК | Успешный результат | C2CTransferFeeResponseBody |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
Card2CardPeerIdType
{
"type": "CARD_ID"
}
Тип идентификатора карты получателя
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| recipient.type | string | false | Тип идентификатора карты получателя |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| recipient.type | CARD_ID | Тип идентификатора карты получателя (Идентификатор карты) |
| recipient.type | CARD_NUMBER | Тип идентификатора карты получателя (Номер карты) |
PeerModel
{
"type": "CARD_ID",
"value": "CC21209220000011"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | Card2CardPeerIdType | true | Тип идентификатора карты получателя |
| value | string | true | none |
C2CTransferCreateRequestBody
{
"amount": {
"currency": "RUR",
"value": 1500,
"minorUnits": 100
},
"sender": {
"cvv": false,
"cardId": "135608210"
},
"recipient": {
"type": "CARD_ID",
"value": "CC21209220000011"
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | object(commons-AmountDto) | true | Сумма перевода, валюта и минорные единицы |
| sender | Sender | true | Данные отправителя |
| recipient | PeerModel | true | Данные получателя |
ConfirmationTypeThreeDs
{
"transferType": "THREE_DS"
}
Тип подтверждения перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferType | string | false | Тип подтверждения перевода |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| transferType | THREE_DS | Тип подтверждения перевода |
ThreeDsData
{
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
Данные для подтверждения через 3DS
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| md | string | true | Данные продавца |
| paReq | string | true | (Payment Request) — запрос на оплату или параметр платежного запроса. Он содержит всю важную информацию о платеже |
| accessUrl | string | true | Адрес (URL/URI) сервера аутентификации 3-D Secure |
| termUrl | string | true | Ссылка для redirect на платежный шлюз банк-эмитента-карты |
ConfirmationInfoThreeDs
{
"type": "THREE_DS",
"threeDs": {
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
}
Данные для подтверждения перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | ConfirmationTypeThreeDs | true | Подтверждение перевода |
| threeDs | ThreeDsData | true | Тип подтверждения перевода |
C2CTransferCreateResponseBody
{
"transferMetaData": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhbGZhLWxh",
"confirmationInfo": {
"type": "THREE_DS",
"threeDs": {
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
}
}
Создание перевода с подтверждением через 3DS
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferMetaData | string | true | JWT метаданные для перевода, пробрасываются фронтом на шаге подтверждения |
| confirmationInfo | ConfirmationInfoThreeDs | true | Данные для подтверждения платежа |
ExecuteTransferRequestThreeDs
{
"md": "CA712B1C6E2FE8A03272020125452070",
"paRes": "PARES"
}
Информация для подтверждения платежа
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| md | string | true | Данные продавца |
| paRes | string | true | Параметр информации о статусе проверки |
C2CTransferExecuteRequestBody
{
"transferMetaData": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhbGZhLWxhYiIsImp0aSI6InFUTm5Icy1fVDNLQTl",
"confirmation": {
"md": "CA712B1C6E2FE8A03272020125452070",
"paRes": "PARES"
}
}
Запрос на исполнение платежа Card2Card (подтверждение 3DS)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferMetaData | string | true | JWT метаданные для перевода, пробрасываются фронтом на шаге подтверждения |
| confirmation | ExecuteTransferRequestThreeDs | true | Данные для подтверждения перевода |
OperationDirection
{
"direction": "INCOME"
}
Тип перевода (входящий/исходящий)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| direction | string | false | Тип перевода |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| direction | INCOME | Входящий перевод |
| direction | OUTCOME | Исходящий перевод |
PeerInfo
{
"name": "string",
"value": "string"
}
Информация об отправителе/получателе перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| name | string | true | Название карты отправителя/получателя |
| value | string | true | Маскированный номер карты отправителя/получателя |
OperationData
{
"reference": "Z033103200000006",
"direction": "INCOME",
"senderInfo": {
"name": "Альфа-карта МИР",
"value": "**6130"
},
"recipientInfo": {
"name": "null",
"value": "**3007"
},
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
Информация об операции
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| reference | string | true | Id операции |
| direction | OperationDirection | true | Тип перевода (входящий/исходящий) |
| senderInfo | PeerInfo | true | Данные отправителя |
| recipientInfo | PeerInfo | true | Данные получателя |
| amount | object(commons-AmountDto) | true | Сумма перевода, валюты и минорных единиц |
C2CTransferExecuteResponseBody
{
"operationData": {
"reference": "Z033103200000006",
"direction": "INCOME",
"senderInfo": {
"name": "Альфа-карта МИР",
"value": "**6130"
},
"recipientInfo": {
"name": "null",
"value": "**3007"
},
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
}
Ответ на запрос на исполнение платежа Card2Card (подтверждение 3DS)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| operationData | OperationData | true | Информация о транзакции |
PeerModelExtended
{
"type": "CARD_ID",
"value": "CC21909220000031",
"isAlfa": true
}
C2CTransferFeeRequestBody
{
"sender": {
"type": "CARD_ID",
"value": "CC21909220000031",
"isAlfa": true
},
"recipient": {
"type": "CARD_ID",
"value": "135608210",
"isAlfa": true
},
"amount": {}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sender | PeerModelExtended | true | Отправитель |
| recipient | PeerModelExtended | true | Получатель |
| amount | object(commons-AmountDto) | true | Сумма операции, валюта и минорные единицы |
C2CTransferFeeResponseBody
{
"fee": {
"value": 10,
"currency": "RUR",
"minorUnits": 100
},
"feeInterest": 10,
"feeMin": {
"value": 0,
"currency": "RUR",
"minorUnits": 100
},
"feeMax": {
"value": 1000,
"currency": "RUR",
"minorUnits": 100
},
"feeConstant": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| fee | object(commons-AmountDto) | false | Общая сумма комиссии |
| feeMax | object(commons-AmountDto) | false | Максимально допустимый размер комиссии |
| feeMin | object(commons-AmountDto) | false | Минимально допустимый размер комиссии |
| feeConstant | object(commons-AmountDto) | false | Постоянная часть комиссии |
| feeInterest | number | false | Процентная часть комиссии |
C2CTransferCardType
{
"type": "DEBIT"
}
Признак Кредитная/Дебетовая карта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | string | false | Признак: кредитная/дебетовая карта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| type | DEBIT | Дебетовая карта |
| type | CREDIT | Кредитная карта |
C2CTransferCardModel
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор карты |
| shortNumber | string | true | Последние 4 цифры карты |
| number | string | true | Маскированный номер карты |
| name | string | true | Имя карты |
| bankName | string | true | Имя банка |
| expirationDate | string(date) | true | Дата действия карты |
| alfaCard | boolean | true | Признак оформления карты в банке |
| paymentSystem | string | true | Платежная система |
| own | boolean | true | Владелец карты |
| cvc | boolean | true | CVC-код |
| type | C2CTransferCardType | false | Дебет/кредит |
| cardSkinType | string | true | Тип карты для отображения на фронте |
| countryCode | string | true | Код страны |
C2CTransferGetCardsResponseBody
{
"sender": [
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
},
{
"id": "CC21209220000011",
"shortNumber": "··3022",
"number": "449654******3022",
"name": "Название карты",
"bankName": "FRANKLIN-SOMERSET FEDERAL CREDIT UNION",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "US",
"type": null
}
],
"recipient": [
{
"id": "CC20209220000091",
"shortNumber": "··3304",
"number": "4700 0*********3304",
"name": "Название карты",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
}
]
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sender | [C2CTransferCardModel] | true | Отправитель |
| recipient | [C2CTransferCardModel] | true | Получатель |
C2CTransferCreateCardRequestBody
{
"number": "2200700144504049",
"recipient": true,
"sender": false,
"expirationDate": "0330",
"description": ""
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер карты |
| recipient | boolean | true | Признак сохранения карты в группу карт-получателей |
| sender | boolean | true | Признак сохранения карты в группу карт-отправителей |
| expirationDate | string(year-month) | true | Дата действия карты |
| description | string | false | Имя карты |
C2CTransferCreateCardResponseBody
{
"id": "CC21808220023780"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор сохраненной карты |
C2CTransferOperationDetails
{
"status": "EXECUTED",
"errorDescription": ""
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | true | Статус перевода |
| errorDescription | string | false | Описание ошибки |
C2CTransferOperationDetailsResponseBody
{
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
},
"details": {
"status": "EXECUTED",
"errorDescription": ""
},
"senderCard": {
"id": "135616292",
"shortNumber": "··8636",
"number": "479004******8636",
"name": "Visa Gold PayWave",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "VISA",
"own": true,
"cvc": false,
"cardSkinType": "CZ",
"countryCode": "RU",
"type": null
},
"recipientCard": {
"id": "135937119",
"shortNumber": "··9516",
"number": "479004******9516",
"name": "Test Card1356655",
"bankName": "АЛЬФА БАНК",
"expirationDate": "0001-01-01",
"alfaCard": true,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "CZ",
"countryCode": "RU",
"type": null
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | object(commons-AmountDto) | true | Сумма операции, валюта и минорные единицы |
| details | C2CTransferOperationDetails | true | Информации о статусе перевода |
| senderCard | C2CTransferCardModel | true | Данные карты отправителя |
| recipientCard | C2CTransferCardModel | true | Данные карты получателя |
Сохранение новой карты для Card2Card перевода
Метод предназначен для сохранения новой карты для Card2Card перевода.
Для создания перевода Card2Card необходимо отправить запрос POST transfer/c2c/cards с access_token, полученным в Alfa ID, со scope = debetcards, и параметрами запроса.
Code samples
curl -X POST transfer/c2c/cards \
-H 'Accept: application/json' \
-H 'Authorization: string' \
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Body parameter
{
"number": "2200700144504049",
"recipient": false,
"sender": true,
"expirationDate": "0225",
"description": ""
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | C2CTransferCreateCardRequestBody | true | Тело запроса |
Example responses
200 Response
{
"id": "CC21909190000001"
}
Responses
| Status | Code responses | Description | Schema |
|---|---|---|---|
| 200 (ОК) | ОК | Успешный результат | C2CTransferCreateCardResponseBody |
| 400 (Bad Request) | invalid_request | Authorization отсутствует в заголовках запроса | ErrorBadRequest |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_endpoint | Эндпоинт не найден или неактивен | ErrorEndpoint |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | ErrorInternal |
| 503 (Service Unavailable) | service unavailable | Сервер временно недоступен | None |
Schemas
Card2CardPeerIdType
{
"type": "CARD_ID"
}
Тип идентификатора карты получателя
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| recipient.type | string | false | Тип идентификатора карты получателя |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| recipient.type | CARD_ID | Тип идентификатора карты получателя (Идентификатор карты) |
| recipient.type | CARD_NUMBER | Тип идентификатора карты получателя (Номер карты) |
PeerModel
{
"type": "CARD_ID",
"value": "CC21209220000011"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | Card2CardPeerIdType | true | Тип идентификатора карты получателя |
| value | string | true | none |
C2CTransferCreateRequestBody
{
"amount": {
"currency": "RUR",
"value": 1500,
"minorUnits": 100
},
"sender": {
"cvv": false,
"cardId": "135608210"
},
"recipient": {
"type": "CARD_ID",
"value": "CC21209220000011"
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | object(commons-AmountDto) | true | Сумма перевода, валюта и минорные единицы |
| sender | Sender | true | Данные отправителя |
| recipient | PeerModel | true | Данные получателя |
ConfirmationTypeThreeDs
{
"transferType": "THREE_DS"
}
Тип подтверждения перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferType | string | false | Тип подтверждения перевода |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| transferType | THREE_DS | Тип подтверждения перевода |
ThreeDsData
{
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
Данные для подтверждения через 3DS
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| md | string | true | Данные продавца |
| paReq | string | true | (Payment Request) — запрос на оплату или параметр платежного запроса. Он содержит всю важную информацию о платеже |
| accessUrl | string | true | Адрес (URL/URI) сервера аутентификации 3-D Secure |
| termUrl | string | true | Ссылка для redirect на платежный шлюз банк-эмитента-карты |
ConfirmationInfoThreeDs
{
"type": "THREE_DS",
"threeDs": {
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
}
Данные для подтверждения перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | ConfirmationTypeThreeDs | true | Подтверждение перевода |
| threeDs | ThreeDsData | true | Тип подтверждения перевода |
C2CTransferCreateResponseBody
{
"transferMetaData": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhbGZhLWxh",
"confirmationInfo": {
"type": "THREE_DS",
"threeDs": {
"md": "AF9C8F863011D98B1DDA1704C21D6DDA",
"paReq": "591017279;AFMB",
"accessUrl": "https://ds1.mirconnect.ru:443/sc1/pareq",
"termUrl": "https://click.alfabank.ru/adfform/auth.jspx"
}
}
}
Создание перевода с подтверждением через 3DS
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferMetaData | string | true | JWT метаданные для перевода, пробрасываются фронтом на шаге подтверждения |
| confirmationInfo | ConfirmationInfoThreeDs | true | Данные для подтверждения платежа |
ExecuteTransferRequestThreeDs
{
"md": "CA712B1C6E2FE8A03272020125452070",
"paRes": "PARES"
}
Информация для подтверждения платежа
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| md | string | true | Данные продавца |
| paRes | string | true | Параметр информации о статусе проверки |
C2CTransferExecuteRequestBody
{
"transferMetaData": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhbGZhLWxhYiIsImp0aSI6InFUTm5Icy1fVDNLQTl",
"confirmation": {
"md": "CA712B1C6E2FE8A03272020125452070",
"paRes": "PARES"
}
}
Запрос на исполнение платежа Card2Card (подтверждение 3DS)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| transferMetaData | string | true | JWT метаданные для перевода, пробрасываются фронтом на шаге подтверждения |
| confirmation | ExecuteTransferRequestThreeDs | true | Данные для подтверждения перевода |
OperationDirection
{
"direction": "INCOME"
}
Тип перевода (входящий/исходящий)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| direction | string | false | Тип перевода |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| direction | INCOME | Входящий перевод |
| direction | OUTCOME | Исходящий перевод |
PeerInfo
{
"name": "string",
"value": "string"
}
Информация об отправителе/получателе перевода
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| name | string | true | Название карты отправителя/получателя |
| value | string | true | Маскированный номер карты отправителя/получателя |
OperationData
{
"reference": "Z033103200000006",
"direction": "INCOME",
"senderInfo": {
"name": "Альфа-карта МИР",
"value": "**6130"
},
"recipientInfo": {
"name": "null",
"value": "**3007"
},
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
Информация об операции
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| reference | string | true | Id операции |
| direction | OperationDirection | true | Тип перевода (входящий/исходящий) |
| senderInfo | PeerInfo | true | Данные отправителя |
| recipientInfo | PeerInfo | true | Данные получателя |
| amount | object(commons-AmountDto) | true | Сумма перевода, валюты и минорных единиц |
C2CTransferExecuteResponseBody
{
"operationData": {
"reference": "Z033103200000006",
"direction": "INCOME",
"senderInfo": {
"name": "Альфа-карта МИР",
"value": "**6130"
},
"recipientInfo": {
"name": "null",
"value": "**3007"
},
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
}
Ответ на запрос на исполнение платежа Card2Card (подтверждение 3DS)
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| operationData | OperationData | true | Информация о транзакции |
PeerModelExtended
{
"type": "CARD_ID",
"value": "CC21909220000031",
"isAlfa": true
}
C2CTransferFeeRequestBody
{
"sender": {
"type": "CARD_ID",
"value": "CC21909220000031",
"isAlfa": true
},
"recipient": {
"type": "CARD_ID",
"value": "135608210",
"isAlfa": true
},
"amount": {}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sender | PeerModelExtended | true | Отправитель |
| recipient | PeerModelExtended | true | Получатель |
| amount | object(commons-AmountDto) | true | Сумма операции, валюта и минорные единицы |
C2CTransferFeeResponseBody
{
"fee": {
"value": 10,
"currency": "RUR",
"minorUnits": 100
},
"feeInterest": 10,
"feeMin": {
"value": 0,
"currency": "RUR",
"minorUnits": 100
},
"feeMax": {
"value": 1000,
"currency": "RUR",
"minorUnits": 100
},
"feeConstant": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| fee | object(commons-AmountDto) | false | Общая сумма комиссии |
| feeMax | object(commons-AmountDto) | false | Максимально допустимый размер комиссии |
| feeMin | object(commons-AmountDto) | false | Минимально допустимый размер комиссии |
| feeConstant | object(commons-AmountDto) | false | Постоянная часть комиссии |
| feeInterest | number | false | Процентная часть комиссии |
C2CTransferCardType
{
"type": "DEBIT"
}
Признак Кредитная/Дебетовая карта
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | string | false | Признак: кредитная/дебетовая карта |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| type | DEBIT | Дебетовая карта |
| type | CREDIT | Кредитная карта |
C2CTransferCardModel
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор карты |
| shortNumber | string | true | Последние 4 цифры карты |
| number | string | true | Маскированный номер карты |
| name | string | true | Имя карты |
| bankName | string | true | Имя банка |
| expirationDate | string(date) | true | Дата действия карты |
| alfaCard | boolean | true | Признак оформления карты в банке |
| paymentSystem | string | true | Платежная система |
| own | boolean | true | Владелец карты |
| cvc | boolean | true | CVC-код |
| type | C2CTransferCardType | false | Дебет/кредит |
| cardSkinType | string | true | Тип карты для отображения на фронте |
| countryCode | string | true | Код страны |
C2CTransferGetCardsResponseBody
{
"sender": [
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
},
{
"id": "CC21209220000011",
"shortNumber": "··3022",
"number": "449654******3022",
"name": "Название карты",
"bankName": "FRANKLIN-SOMERSET FEDERAL CREDIT UNION",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "US",
"type": null
}
],
"recipient": [
{
"id": "CC20209220000091",
"shortNumber": "··3304",
"number": "4700 0*********3304",
"name": "Название карты",
"bankName": "",
"expirationDate": "0001-01-01",
"alfaCard": false,
"paymentSystem": "",
"own": false,
"cvc": false,
"cardSkinType": "",
"countryCode": "",
"type": null
},
{
"id": "135608210",
"shortNumber": "··0095",
"number": "555949******0095",
"name": "CashBack NEW MC",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "MasterCard",
"own": true,
"cvc": false,
"cardSkinType": "ER",
"countryCode": "RU",
"type": "DEBIT"
}
]
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| sender | [C2CTransferCardModel] | true | Отправитель |
| recipient | [C2CTransferCardModel] | true | Получатель |
C2CTransferCreateCardRequestBody
{
"number": "2200700144504049",
"recipient": true,
"sender": false,
"expirationDate": "0330",
"description": ""
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| number | string | true | Номер карты |
| recipient | boolean | true | Признак сохранения карты в группу карт-получателей |
| sender | boolean | true | Признак сохранения карты в группу карт-отправителей |
| expirationDate | string(year-month) | true | Дата действия карты |
| description | string | false | Имя карты |
C2CTransferCreateCardResponseBody
{
"id": "CC21808220023780"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | true | Идентификатор сохраненной карты |
C2CTransferOperationDetails
{
"status": "EXECUTED",
"errorDescription": ""
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| status | string | true | Статус перевода |
| errorDescription | string | false | Описание ошибки |
C2CTransferOperationDetailsResponseBody
{
"amount": {
"value": 100,
"currency": "RUR",
"minorUnits": 100
},
"details": {
"status": "EXECUTED",
"errorDescription": ""
},
"senderCard": {
"id": "135616292",
"shortNumber": "··8636",
"number": "479004******8636",
"name": "Visa Gold PayWave",
"bankName": "АЛЬФА БАНК",
"expirationDate": "2028-12-31",
"alfaCard": true,
"paymentSystem": "VISA",
"own": true,
"cvc": false,
"cardSkinType": "CZ",
"countryCode": "RU",
"type": null
},
"recipientCard": {
"id": "135937119",
"shortNumber": "··9516",
"number": "479004******9516",
"name": "Test Card1356655",
"bankName": "АЛЬФА БАНК",
"expirationDate": "0001-01-01",
"alfaCard": true,
"paymentSystem": "VISA",
"own": false,
"cvc": false,
"cardSkinType": "CZ",
"countryCode": "RU",
"type": null
}
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| amount | object(commons-AmountDto) | true | Сумма операции, валюта и минорные единицы |
| details | C2CTransferOperationDetails | true | Информации о статусе перевода |
| senderCard | C2CTransferCardModel | true | Данные карты отправителя |
| recipientCard | C2CTransferCardModel | true | Данные карты получателя |
Отчеты для внешних потребителей по СБП
Используется токен доступа, полученный по Client Credentials Flow.
Создание заявки на отчет по переводу средств через СБП
Метод предназначен для создания заявки на отчет по переводу средств. Метод инициирует асинхронный процесс формирования отчета.
Для создания заявки на отчет по переводу средств необходимо отправить запрос POST /reports/payments-sbp с access_token, полученным в Alfa ID, со scope = report-sbp, и параметрами запроса.
Code samples
curl -X POST /reports/payments-sbp \
-H 'Accept: application/json' \
-H 'Authorization: Bearer {access-token}'
Header parameters
| Наименование поля | Тип | Предопределенное значение |
|---|---|---|
| Authorization | String | Bearer {access_token} |
Body parameter
{
"type": "2",
"date": "2022-07-30",
"shops": [
[
"F76E",
"F82A",
"F11C",
"F52B"
]
]
}
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| body | body | BaasReportRequest | false | Тело запроса |
Example responses
201 Response
{
"reqId": "34eb7e7e-66db-42fa-9b81-544fed77c871"
}
400 Response
{
"error": "invalid_request",
"error_description": "Request is missing a required parameter: type"
}
401 Response
{
"error": "invalid_token",
"error_description": "The access token provided is expired, revoked, malformed, or invalid for other reasons"
}
403 Response
{
"error": "insufficient_scope",
"error_description": "The request requires higher privileges than provided by the access token"
}
403 Response
{
"error": "access_denied",
"error_description": "The request requires higher privileges than provided"
}
404 Response
{
"error": "unknown_route",
"error_description": "Route is not found or not active"
}
409 Response
{
"error":"report_already_exist",
"error_description":"Incomplete report preparation process found"
}
500 Response
{
"error": "internal_error",
"error_description": "Internal server error"
}
Responses
| Status | Meaning | Description | Schema |
|---|---|---|---|
| 201 (Created) | Created | Идентификатор зарегистрированного запроса | BaseBaasResponse |
| 400 (Bad Request) | invalid_request | Неверные входные параметры запроса | BaseBaasResponse |
| 401 (Unauthorized) | invalid_token | Предоставленный токен просрочен, отозван, имеет неправильный формат или недействителен по другим причинам | ErrorUnauthorized |
| 403 (Forbidden) | insufficient_scope | У пользователя нет прав на использование запрашиваемого сервиса, доступ к которому не предусмотрен настройками scope | ErrorScope |
| 403 (Forbidden) | access_denied | Доступ к счету запрещен | ErrorScope |
| 404 (Not Found) | unknown_route | Маршрут не найден или неактивен | ErrorEndpoint |
| 409 (Report Already Exist) | report_already_exist | Возвращается в случае повторного запроса на генерацию того же отчета (в рамках одного и того же дня) | BaseBaasResponse |
| 429 (Too Many Requests) | too many requests | Cлишком много запросов в заданный период времени | None |
| 500 (Internal Server Error) | internal_error | Внутренняя ошибка сервиса при выполнении обработки запроса | BaseBaasResponse |
Schemas
BaasReportRequest
{
"type": "2",
"date": "2022-07-30",
"shops": [
[
"F76E",
"F82A",
"F11C",
"F52B"
]
]
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| type | string | true | Код типа отчета:1 - Агрегированный отчет;2 - Детализированный отчет |
| date | string | true | Дата, на которую необходимо сформировать отчет |
| shops | [string] | false | Коды магазинов, по которым нужна детализированная информация |
Enumerated Values
| Property | Value | Description |
|---|---|---|
| type | 1 | Агрегированный отчет |
| type | 2 | Детализированный отчет |
BaseBaasResponse
{
"error": "string",
"error_description": "string",
"reqId": "67d08b9d-044d-425e-b826-128502ab892f"
}
Properties
| Name | Type | Required | Description |
|---|---|---|---|
| error | string | true | Код ошибки |
| error_description | string | false | Сообщение об ошибке |
| reqId | string(uuid) | false | Идентификатор запроса на создание отчета |
Release Notes
3 июня 2022
Добавлены методы API по сервису "Электронная подпись":
POST signature/users/{sub}/rsa-certificates/requests/issue Заявка на выпуск RSA-сертификата
POST signature/users/{sub}/rsa-certificates/requests/{id}/operations Отправка заявки а на подпись
PUT signature/users/{sub}/rsa-certificates/requests/operations/{id} Подписание заявки с помощью кода из СМС
GET signature/users/{sub}/rsa-certificates/requests/{id} Получение данных заявки
GET signature/users/{sub}/rsa-certificates/{id} Получение RSA-сертификата
POST signature/users/{sub}/rsa-certificates/{id}/requests/activation Заявка на активацию RSA-сертификата
PUT signature/users/{sub}/sign-settings Заявка на изменение текущего способа подписи
30 июня 2022
Добавлен метод Получение выписки в формате МТ940 GET/accounts/{accountNumber}/transactions/MT940 по сервису "Операции по счетам".
22 августа 2022
Добавлен тип гранта Client Credentials Flow.
2 сентярбря 2022
Добавлен новый метод "Получение DN" сервиса "Электронная подпись".
7 октября 2022
Добавлен новый сервис "Счета эскроу 214-ФЗ". Методы API: * GET build-projects Получение списка объектов строительства застройщика
- POST escrow-orders Создание заявки на резервирование счета эскроу
18 октября 2022
Добавлен новый сервис "B2B-кредиты". Метод API POST loan-applications Отправка данных для скоринга и создание черновика заявки.
FAQ. Часто задаваемые вопросы
Что означает "error_description": "Client was not found"?
В запросе клиента на получение токена авторизации (api/token) указан неверный client_id/client_secret.
Почему возникает "error_description": "The request requires higher privileges than provided by the access token"?
• При запросе кода авторизации переданы не все scopes. Минимально необходимый scope для получения токена - openid.
• Не подписан договор согласия, необходимо указать в запросе на код авторизации параметр prompt=consent. Важно помнить, что этот параметр необходимо указывать при первичном подписании согласия или при переподписании согласия.
Что делать при возникновении "error_description": "Unexpected redirect uri"?
Необходимо указать redirect_uri аналогично тому, который Вы указывали при получении кода авторизации.
Какие причины возникновения "error_description": "access denied"?
• Такого client_id нет/client_id заблокирован.
• Переданный в запросе redirect_url не соответсвует тому, который был указан в заявке на подключение.
• При прямой интеграции происходит попытка аутентификации через пользователя не своей организации.
• При внешней интеграции происходит попытка аутентификации через пользователя своей организации.
Почему возникает ошибка с "error_description": "token not found"?
Вы используете refresh_token более одного раза, его можно использовать только один раз. Если повторно запросить access_token по одному и тому же refresh_token, возникнет данная ошибка. Вам нужно заново получить код авторизации, access_token и обновить его (сделать рефреш).
Какой срок жизни токена?
Значения по умолчанию:
• access_token: 1 час (60 минут);
• refresh_token: 180 дней (259200 минут).
Значения могут быть изменены. Срок жизни токенов можно посмотреть в запросе POST token.
Какой срок жизни кода авторизации?
Значение по умолчанию: 120 секунд. Срок жизни кода авторизации может быть настроен индивидуально.
Какие адреса для запросов использовать?
Sandbox:
Получение кода авторизации - https://id-sandbox.alfabank.ru/oidc/authorize
Получение и обновление токена доступа - https://sandbox.alfabank.ru/oidc/token
Получение информации о профиле представителя ЮЛ/физического лица - https://sandbox.alfabank.ru/oidc/userinfo
Получение client_secret - https://sandbox.alfabank.ru/oidc/clients/{clientId}/client-secret
Методы Alfa API - https://sandbox.alfabank.ru/api
Prom:
Получение кода авторизации - https://id.alfabank.ru/oidc/authorize
Получение и обновление токена доступа - https://baas.alfabank.ru/oidc/token
Получение информации о профиле представителя ЮЛ/физического лица - https://baas.alfabank.ru/oidc/userinfo
Получение client_secret - https://baas.alfabank.ru/oidc/clients/{clientId}/client-secret
Методы Alfa API - https://baas.alfabank.ru/api
Какие счета использовать для получения выписки на тестовом стенде?
Номера счетов:
• 40702810102300000001
• 40702810402300000002
• 40702810002300000003
• 40702978902300000004