Общая информация о бизнес-картах
Бизнес-карта - это платежный инструмент, предназначенный для использования в деловых операциях. Привязана к банковскому счету компании или индивидуального предпринимателя.
Бизнес-карты могут использовать:
- Сотрудники компании для оплаты деловых расходов, таких как командировочные расходы, оплата товаров и услуг, связанных с бизнесом, а также для снятия наличных денег.
- Владельцы бизнеса или индивидуальные предприниматели (в случае, если у них есть отдельная карта).
Доступныe операции:
- Оплата товаров и услуг в торговых точках и онлайн магазинах, принимающих к оплате карты.
- Снятие наличных в банкоматах.
- Переводы между своими счетами и другими счетами (как внутри страны, так и за рубежом).
- Использование в качестве инструмента для контроля расходов сотрудников.
Бизнес-карты помогают компаниям контролировать и управлять деловыми расходами своих сотрудников. С помощью бизнес-карт сотрудники могут оплачивать только необходимые для работы расходы, что упрощает учет и контроль над затратами.
Кроме того, бизнес-карты могут предлагать различные бонусы и скидки для пользователей, такие как кэшбэк, льготные условия кредитования и т.д.
Подробно о бизнес-картах можно узнать на сайте.
Схема работы продукта
- Графическое описание
- Текстовое описание
Шаг | Что делаем | Подробности |
---|---|---|
1 | Авторизуйте Пользователя с помощью СберБизнес ID | Подробно о подключении и работе сервиса СберБизнес ID рассказали в соответствующем разделе документации. |
2 | Получите информацию по бизнес-картам Пользователя | Ресурс /fintech/api/v2/corporate-cards/list позволит вам получить информацию о всех бизнес-карта Пользователя, чей токен доступа (access_token) будет использоваться в запросе. |
3 | Получите данные для перевода | Разработайте для Пользователя форму для заполнения данных. Эти данные потребуются для расчета комиссия за перевод и для создания перевода по бизнес-карте |
4 | Создайте заявление на перевод и получите размер комиссии | Опциональное действие, которое будет актуалено, если перевод получателю будет осуществляться по номеру карты: С помощью ресурса /fintech/api/v2/corporate-cards/transfer/public-key получите ключ шифрования. Ключем вы сможете зашифровать номер карты получателя.Ресурс /fintech/api/v2/сorporate-cards/transfer/commission позволит вам создать черновик заявления на перевод по бизнес-карте и в ответе на успешный запрос получить информацию о размере комиссии за перевод.Далее вам потребуется подтверждение на осуществление перевода от Пользователя. Если условия перевода устраивают Пользователя, то переходите к следующему шагу. |
5 | Подпишите заявление на перевод | Создайте ЭП к заявлению на перевод (подробно о подписании документов в Sber API). Подписывать документ необходимо ЭП Пользователя, чей токен доступа (access_token) используется в запросах API. С помощью ресурса /fintech/api/v2/corporate-cards/sign-and-approve и идентификатора (externalId) ранее созданного черновика заявления на перевод по бизнес-карте вы сможете передать ЭП. Банк начнет обработку заявления на перевод. |
6 | Проверьте статус и корректность оплаты (в разработке) | С помощью ресурса /fintech/api/v2/сorporate-cards/transfer/{externalId}/status получите информацию о статусе исполнения заявления на перевод по его externalId , либо с помощью ресурса /fintech/api/v2/сorporate-cards/transfer/list получите список заявлений пользователя и статусов по ним за указанный период. Информация позволит вам разработать механизмы реакции вашей Платформы на разные стадии переводов. |
Варианты реализации
Для облегчения восприятия ниже описаны общие сценарии использования сервиса. Используйте их как отправную точку или идею финальной реализации.
Триггером запуска того или иного сценария могут быть действия пользователя, регламентный запуск по времени, наступление определенных событий и другое.
Получение списка бизнес-карт
Шаги
- Получить список бизнес-карт и информации по ним
Участники usecase
- Пользователь - сотрудник вашей компании либо представитель ЮЛ/ИП, от лица которого он работает в рамках вашего сервиса (Платформа)
- Платформа - любой web-ресурс (интернет-магазин, облачный сервис, мобильное приложение и т.д.) либо ваша внутренняя система (ERP, учетная система и др.), которую используют Пользователи
- Sber API - в контексте usecase представляет из себя запросы и ресурсы Sber API, к которым обращается Платформа
Предварительные условия
- Пользователь имеет пользовательский профиль в СберБизнес своей компании
- Пользователь находится в пространстве Платформы
- Пользователь прошел авторизацию с помощью СберБизнес ID
Результат применения
- Получена информация о всех бизнес-карт Пользователя.
Используемые запросы
№ | Метод | Точка вызова | Описание | Операция в scope | Шаг в схеме |
---|---|---|---|---|---|
1 | /fintech/api/v2/corporate-cards/list | Получение информации по бизнес-картам | CORPORATE_CARDS | 1. Получить список бизнес-карт | |
2 | /fintech/api/v2/oauth/token | Обновление токена доступа | openid | 1. Получить список бизнес-карт |
Перевод по бизнес-карте (платформа)
Сценарий подходит для платформенной интеграции - функциональностью переводов по бизнес-картам будут пользоваться клиенты вашей платформы.
В схеме отсутствует возможность автматизированного подписания заявления на перевод по бизнес-карте, поэтому вам потребуется реализовать механизим переадресации пользователя в пространство СберБизнес на созданное заявление.
Шаги
- Получить данные для перевода
- Создать заявление на перевод и получить размер комиссии
- Подписать заявление на перевод
Участники usecase
- Пользователь - сотрудник вашей компании либо представитель ЮЛ/ИП, от лица которого он работает в рамках вашего сервиса (Платформа)
- Платформа - любой web-ресурс (интернет-магазин, облачный сервис, мобильное приложение и т.д.) либо ваша внутренняя система (ERP, учетная система и др.), которую используют Пользователи
- Sber API - в контексте usecase представляет из себя запросы и ресурсы Sber API, к которым обращается Платформа
Предварительные условия
- Успешно выполнен сценарий "Получение информации по бизнес-картам"
- Платформа сохранила идентификаторы активных бизнес-карт Пользователя
Результат применения
- Подписано заявление на перевод по бизнес-карте
Используемые запросы
№ | Метод | Точка вызова | Описание | Операция в scope | Шаг в схеме |
---|---|---|---|---|---|
1 | /fintech/api/v2/corporate-cards/transfer/public-key | Получение ключа шифрования | CORPORATE_CARDS | 2. Создать заявление на перевод и получить размер комиссии | |
2 | /fintech/api/v2/сorporate-cards/transfer/commission | Создание заявления на перевод по бизнес-карте | BUSINESS_CARDS_TRANSFER | 2. Создать заявление на перевод и получить размер комиссии |
Перевод по бизнес-карте (ERP)
Сценарий подходит для интеграций по компании или холдингу для реализации в рамках своей учетной системы (например, ERP).
В схеме можно использовать автоматизированное подписание документа. Данная возможность доступна только при использовании ЭЦП сотрудника вашей компании.
Подробнее об использовании ЭЦП в Sber API можно почитать в одноименном разделе.
Шаги
- Получить данные для перевода
- Создать заявление на перевод и получить размер комиссии
- Подписать заявление на перевод
Участники usecase
- Пользователь - сотрудник вашей компании либо представитель ЮЛ/ИП, от лица которого он работает в рамках вашего сервиса (Платформа)
- Платформа - любой web-ресурс (интернет-магазин, облачный сервис, мобильное приложение и т.д.) либо ваша внутренняя система (ERP, учетная система и др.), которую используют Пользователи
- Sber API - в контексте usecase представляет из себя запросы и ресурсы Sber API, к которым обращается Платформа
Предварительные условия
- Успешно выполнен сценарий "Получение информации по бизнес-картам"
- Платформа сохранила идентификаторы активных бизнес-карт Пользователя
Результат применения
- Подписано заявление на перевод по бизнес-карте
Используемые запросы
№ | Метод | Точка вызова | Описание | Операция в scope | Шаг в схеме |
---|---|---|---|---|---|
1 | /fintech/api/v2/corporate-cards/transfer/public-key | Получение ключа шифрования | CORPORATE_CARDS | 2. Создать заявление на перевод и получить размер комиссии | |
2 | /fintech/api/v2/сorporate-cards/transfer/commission | Создание заявления на перевод по бизнес-карте | BUSINESS_CARDS_TRANSFER | 2. Создать заявление на перевод и получить размер комиссии | |
3 | /fintech/api/v2/corporate-cards/sign-and-approve | Подписать заявление на перевод по бизнес-карте | BUSINESS_CARDS_TRANSFER | 3. Подписать заявление на перевод |
Проверка статуса перевода
Шаги
- Выбрать предпочтительный метод API,
- Отобразить результат исполнения запросов.
Участники usecase
- Пользователь - сотрудник вашей компании либо представитель ЮЛ/ИП, от лица которого он работает в рамках вашего сервиса (Платформы)
- Платформа - любой web-ресурс (интернет-магазин, облачный сервис, мобильное приложение и т.д.) либо ваша внутренняя система (ERP, учетная система и др.), которую используют Пользователи
- Sber API - в контексте usecase представляет из себя запросы и ресурсы Sber API, к которым обращается Платформа
Предварительные условия
- Для получения списка заявлений и статусов переводов по ним: получен (обновлен) токен авторизации пользователя.
- Для получения статуса конкретного заявления: получен (обновлен) токен авторизации пользователя, известен
externalId
, указанный при отправке заявления на перевод.
Результат применения
- Платформа получила информацию о статусе перевода (-ов).
Используемые ресурсы
№ | Метод | Точка вызова | Описание | Операция в scope | Шаг в схеме |
---|---|---|---|---|---|
1 | /fintech/api/v2/сorporate-cards/transfer/{externalId}/status | Получение статуса заявления на перевод | BUSINESS_CARDS_TRANSFER | 1. Выбор метода API | |
2 | /fintech/api/v2/сorporate-cards/transfer/list | Получение списка заявлений на перевод | BUSINESS_CARDS_TRANSFER | 1. Выбор метода API |
Выбор способа перевода
В зависимости от типа перевода (перевод B2B или B2P) карта получателя может быть указана разными способами.
Переводы B2P
Переводы с бизнес-карт Сбера физическому лицу могут осуществляться с помощью:
- Указания номера карты получателя (любая карта ПАО «Сбербанк» и других банков-эмитентов РФ). В этом случае в заявлении на перевод заполняется поле encryptedCardNumber, а phoneNumber не заполняется;
- Указания номера телефона получателя (карта ФЛ ПАО «Сбербанк»). В этом случае в заявлении на перевод должно заполняться поле phoneNumber (формат заполнения поля: 79000000000), а encryptedCardNumber не заполняется.
Переводы B2B
В случае перевода с бизнес-карты Сбера юридическому лицу перевод осуществляется только с указанием номера карты получателя (любая карта ПАО Сбербанк и других банков-эмитентов РФ). В заявлении на перевод заполняется поле encryptedCardNumber, а phoneNumber не заполняется.
Шифрование номера карты получателя
В поле encryptedCardNumber не допускается передача номера карты получателя в открытом виде, значение номера карты должно быть обязательно зашифровано. Для шифрования номера карты необходимо получить публичный ключ. Номер карты перед шифрованием не должен содержать пробелов и спецсимволов. Получившуюся строку необходимо зашифровать, используя алгоритм RSA шифрования "RSA/OAEP" с ключом длиной 2048.
RSA/OAEP (Optimal Asymmetric Encryption Padding) - это алгоритм шифрования, разработанный для улучшения безопасности и защиты от атак на основе подобранных открытых текстов в асимметричных системах шифрования. RSA/OAEP использует ключ длиной 2048 бит, что является достаточно длинным и сложным для обеспечения безопасности.
Пример: Строка перед шифрованием - 0000000000000000
Зашифрованная строка - HlaeIHXXEcGT1bFxo1NlpAzpr+kJ2IQrcxVdvDTep6xjsmD1FDb+6NIyLT
Для получения публичного ключа шифрования необходимо отправить GET-запрос /fintech/api/v2/corporate-cards/transfer/public-key
Переадресация на заявление на перевод
Для начала обработки платежного документа Банком оно должно быть подписано. При создании документа с помощью запроса API, документ также появляется в клиентской части СберБизнес Пользователя.
Можно облегчить пользовательский сценарий, если Пользователю сразу открыть упрощенный интерфейс СберБизнес только с данными платежного документа. Для открытия упрощенного интерфейса СберБизнес потребуется сформировать ссылку и переадресовать по ней пользователя. Перейдя по ссылке на страницу заявления на перевод, Пользователь пройдет аутентификацию и подпишет документ. При успешном подписании сервис вернет Пользователя на вашу Платформу.
- Модель ссылки
- Пример
Ссылка переадресации выглядит следующим образом:
{контур Банка}/ic/ufs/corporate-cards/index.html#/transfer-creator/{externalid}?backUrl={backUrl}
Переменная | Описание | Дополнительная информация |
---|---|---|
{контур Банка} | адрес Банка, на который делается запрос для открытия страницы сервиса оплаты | - Тестовый контур https://efs-sbbol-ift-web.testsbi.sberbank.ru:9443 - Промышленный контур СМС-пользователь https://sbi.sberbank.ru:9443 |
{externalid} | уникальный идентификатор платежного документа | Данный идентификатор присваивает ваша Платформа на шаге создания черновика платежного поручения |
{backUrl} | страница возврата, на которую Банк вернет пользователя Клиента после успешного подписания черновика платежного поручения | - backUrl нужно закодировать URLEncode; - Если не указать backUrl в ссылке, пользователи не смогут после подписания платежного поручения вернуться на Платформу; - Если backUrl будет отличаться от адреса вашей платформы, который указали при регистрации в Банке, то при возврате клиента на backUrl он будет видеть ошибку. |
https://sbi.sberbank.ru:9443/ic/ufs/corporate-cards/index.html#/transfer-creator/d4fbfe27-ee37-4451-b224-8113a06c44a3?backUrl=https://www.example.ru/