Инструкция по подключению сервиса "Безопасные сделки" на тестовом стенде
📋 Оглавление
- Пререквизиты
- Этап 1: Работа со Сбер API
- Этап 2: Работа с номинальным счетом и УКЭП
- Этап 3: Регистрация и тестирование
- Дополнительная информация
Пререквизиты
Перед началом работы убедитесь, что выполнены следующие условия:
-
Открыт расчетный счет в Сбере и заключен договор ДБО «СберБизнес»
- Как сделать: обратитесь в любое отделение Сбера. Список офисов
-
Изучена договорная документация по сервису
- Где найти: на сайте Банка
Этап 1: Работа со Сбер API
Шаг 1.1: Подключение к каналу Сбер API
Пройдите все шаги по подключению к Сбер API по инструкции.
🔍 Важно Убедитесь, что в личном кабинете СББОЛ на тестовом стенде среди доступных
scopeприсутствуетNOMINAL_ACCOUNTS. Если его нет, обратитесь в поддержку:supportdbo2@sberbank.ru.
Результат: Подключение к Сбер API завершено, личный кабинет готов к работе.
Шаг 1.2: Настройка TLS-сертификатов
Установите и проверьте сертификаты по инструкции.
Результат: TLS-сертификаты для тестового стенда установлены и проверены.
Шаг 1.3: Получение кода авторизации
Пройдите все шаги для получения кода авторизации по инструкции.
- Сформируйте URL для запроса авторизации.
Правила заполнения параметров для запроса /v2/oauth/authorize:
| Параметр | Как заполнять | Пример | Описание |
|---|---|---|---|
| scope | openid NOMINAL_ACCOUNTS | openid NOMINAL_ACCOUNTS | Всегда одно и то же значение |
| response_type | code | code | Всегда одно и то же значение |
| client_id | Взять значение из личного кабинета | 9223376456675586 | Выдается при подключении к SberAPI |
| state | Произвольный набор символов | abc123 | Подробное описание соответствующего параметра |
| nonce | Произвольный набор символов | abc123 | Подробное описание соответствующего параметра |
Пример URL:
https://efs-sbbol-ift-web.testsbi.sberbank.ru:9443/ic/sso/api/v2/oauth/authorize?redirect_uri=https://www.sberbank.ru/ru/person&nonce=80012c9c-1b9a-449e-a8d5-75100ea698ac&state=296014df-dbc8-4559-ab32-041bf5064a40&scope=openid+NOMINAL_ACCOUNTS&response_type=code&client_id=1958729756739688446
- По этой ссылке перейдите в браузер на страницу авторизации. После ввода аутентификационных данных браузер вернет Вас на Redirect_uri вместе с кодом авторизации (в адресной строке отобразится значение query-параметра «code», что и будет являться кодом авторизации).
Пример кода авторизации:
Результат: В адресной строке у клиента отобразится значение query-параметра «code», что и будет являться кодом авторизации.
Шаг 1.4: Обменяйте полученный код авторизации на токены доступа для тестового стенда
Обменяйте код авторизации на access и refresh токены, реализуйте их автоматическое обновление по инструкции.
Результат: Получены токены доступа для тестового стенда.
Этап 2: Работа с номинальным счетом и тестовым сертификатом
Шаг 2.1: Открытие номинального счета на тестовом стенде
Передайте в адрес поддержки продукта (prom_teh_safe_pay@sberbank.ru) данные для от крытия номинального счета на тестовом стенде.
🔍 Важно Данные (ИНН, КПП, ОГРН, clientId) необходимо присылать из тестового СберБизнеса (они отличаются от реальных).
Результат: Открыт номинальный счет на тестовом стенде. Клиенту в ответ придет письмо с номером номинального счета на тестовом стенде, который необходимо сохранить для дальнейшего использования.
Шаг 2.2: Получение тестового сертификата для работы с тестовым стендом
⚠️ Обязательное требование: каждый POST-запрос в API «Безопасные сделки» должен содержать валидную электронную подпись. Проверка ЭП осуществляется перед обработкой любого POST-запроса.
Для тестирования использовать настоящий УКЭП нельзя. Следует воспользоваться тестовым сертификатом, выпущенным с помощью любого тестового УЦ. Например, можно воспользоваться тестовым УЦ КриптоПро .
Вспомогательная информация при выпуске тестового сертификата с помощью УЦ КриптоПро :
-
Перейдите в раздел Сформировать ключи и отправить запрос на сертификат;
-
Подтвердите установку КриптоПро ЭЦП Browser plug-in и расширение для браузера;
-
В разделе Идентифицирующие сведения укажите данные организации из тестового СберБизнеса;
-
В разделе Тип требуемого сертификата выберите Сертификат проверки подлинности клиента;
-
В разделе Параметры ключа в поле CSP выберите Crypto-pro gost r 34.10-2012 cryptographic service provider;
-
В разделе Параметры ключа установите флаг Пометить ключ как экспортируемый (в случае, если хотите разместить сертификат на сервер);
-
В разделе Дополнительные пара метры в поле Алгоритм хэширования выберите ГОСТ Р 34.11-2012 256 бит.
-
Нажмите на кнопку Выдать (пароль на контейнер задавать необязательно);
-
На странице с информацией о результатах выдачи сертификата нажмите на кнопку Установить этот сертификат.
Результат: Получен тестовый сертификат для подписания запросов на тестовом стенде.
Этап 3: Регистрация и тестирование
Шаг 3.1: Добавление в белые списки на тестовом стенде
Передайте в адрес поддержки продукта (prom_teh_safe_pay@sberbank.ru) строку подписи над произвольным контентом
С правилами наложения подписи можно ознакомиться на странице
Результат: Ваша площадка добавлена в белые списки для работы с API.
Шаг 3.2: Регистрация площадки на тестовом стенде
Зарегистрируйте площадку на тестовом стенде с помощью вызова метода POST/signup.
ℹ️Примечание Не забудьте подписать запрос в соответствии с правилами на ложения подписи.
Результат: Площадка зарегистрирована на тестовом стенде и может начать процесс тестирования. Клиенту в ответ придет параметр nominalAccountId, который необходимо сохранить для дальнейшего использования.
Шаг 3.3: Процесс тестирования
Чек-лист прохождения этапа тестирования с сервисом Безопасные сделки
| № | Что необходимо сделать | Как это сделать | Результат |
|---|---|---|---|
| 1 | Добавить бенефициара(-ов) в реестр | С помощью вызова метода POST/beneficiaries/create | Бенефициар(-ы) добавлен в реестр В ответ на запрос придет параметр beneficiaryId, который необходимо сохранить для дальнейшего использования |
| 2 | Пополнить баланс бенефициара(-ов) на тестовом стенде | Напишите письмо на адрес поддержки продукта (prom_teh_safe_pay@sberbank.ru) для пополнения баланса бенефициара В письме необходимо указать значения параметров: nominalAccountId - ХХХХХХХХ-ХХХХ-ХХХХ-ХХХХ-ХХХХХХХХХХХХХ beneficiaryId - ХХХХХХХХ-ХХХХ-ХХХХ-ХХХХ-ХХХХХХХХХХХХХ docAmount - ХХХ (сумма в копейках) docPurpose - Пополнение счета | Баланс бенефициара(-ов) пополнен Все готово для реализации и тестирования площадкой всех методов API |
| 3 | Ознакомиться со всеми возможностями (методами API) сервиса Безопасные сделки | Ознакомиться со всеми доступными методами API сервиса Безопасные сделки можно по ссылке | Клиент ознакомился со всеми возможностями (методами API) сервиса Безопасные сделки |
| 4 | Ознакомиться с особенностями работы с возвратами на номинальном счете | Ознакомиться с особенностями работы с возвратами можно, изучив соответствующий пункт в разделе Дополнительная информация на данной стр анице | Клиент ознакомился с особенностями работы с возвратами на номинальном счете |
| 5 | Ознакомиться с рекомендациями по использованию API | Ознакомиться с рекомендациями по использованию API можно по ссылке в соответствующем разделе | Клиент ознакомился с рекомендациями по использованию API |
| 6 | Ознакомиться с особенностями работы с тестовым стендом | Ознакомиться с особенностями работы с тестовым стендом можно, изучив соответствующий пункт в разделе Дополнительная информация на данной странице | Клиент ознакомился с особенностями работы с тестовым стендом |
| 7 | Ознакомиться с рекомендациями по формированию назначения платежа при пополнении номинального счета на промышленном стенде | Ознакомиться с рекомендациями по формированию назначения платежа при пополнении номинального счета можно, изучив соответствующий пункт в разделе Дополнительная информация на данной странице | Клиент ознакомился с рекомендациями по формированию назначения платежа при пополнении номинального счета на промышленном стенде |
| 8 | Провести тестирование | Реализовать и проверить сценарии работы вашей площадки с сервисом Безопасные сделки | Этап тестирования с сервисом Безопасные сделки завершен |
| 9 | Провести демо реализации | Напишите письмо в адрес поддержки продукта (prom_teh_safe_pay@sberbank.ru) для демонстрации демо реализации в online формате | Клиент провел демо реализации совместно с командой продукта |
Дополнительная информация
Узнать о возникновении таких транзакций возврата можно при помощи вызова метода GET/refunds.
Единственное решение при поступлении данных возвратов - повторное создание смарт-контракта и повторное подтверждение шага смарт-контракта с корректными реквизитами получателя.
В случае возникновения ошибки при внутреннем переводе средств (Сбер-Сбер) в рамках подтверждения смарт-контракта, средства не будут списаны с номинального счета, а транзакция перейдет в ошибку.
- Возврат платежа при выводе средств по реквизитам счета.
- Отказ платежа при переводе между бенефициарами в рамках одного номинального счета.
- Отказ платежа при выводе средств по Системе быстрых платежей (СБП) в направлении В2С.
- Гарантированный отказ платежа при выводе средств по СБП В2С, если номер телефона получателя содержит "5".
С целью корректного распределения платежей в реестре бенефициаров рекомендуем при формировании документа на пополнения номинального счета указывать в назначении платежа:
- для Бенефициаров — корпоративных клиентов (ЮЛ, ИП)
- ИНН Бенефициара и реквизиты Договора–основания (договор между бенефициаром и владельцем номинального счета).
Пример: «Пополнение ном. счета по бенефициару ИНН 7788995544, по договору от 15.04.2024 № 385-58, без НДС».
- для Бенефициаров — физических лиц
- ФИО в именительном падеже (полностью) и реквизиты Договора–основания (договор между бенефициаром и владельцем номинального счета).
Пример: «Пополнение ном. счета по бенефициару Иванов Иван Иванович, по договору от 15.04.2024 № 385-78, без НДС».