ym88659208ym87991671
SDK Java | Документация для разработчиков

SDK Java

Обновлено 8 октября 2025

Единый интерфейс для работы с ключевыми сервисами Sber API: авторизация, H2H, моментальные платежи, зарплатные проекты и другие операции.

Основные модули:

  • СберБизнес ID - базовый модуль авторизации (получение, обновление, отзыв токенов, смена клиентского секрета, информация о пользователе)

  • Компаниям - модуль прямой интеграции (H2H) для корпоративных клиентов

  • Моментальные платежи - модуль для быстрых платежных операций

Требования:

  • Java версия 1.8 или выше.

  • Необходимо установить банковский TLS сертификат в truststore вашего приложения.

Сборка библиотеки

Если вы хотите собрать библиотеку из исходного кода, выполните команду:

./gradlew :build-src:clean :build-src:buildInstantPayment :build-src:buildH2h

Собранные fatJar файлы (со всеми зависимостями) будут расположены в директории build-src/build/libs. Вы можете подключить их напрямую к своему проекту или использовать как референс для переноса кода.

Установка и настройка

Способы установки

Скачайте исходный код проекта и установите его в ваш локальный репозиторий.

Настройка сертификатов

Для работы с Sber API необходимо добавить TLS сертификат.

Требования: Java 1.8+

Способ 1: Добавление в truststore JDK

  • Добавьте банковский сертификат в хранилище JDK:
keytool -importcert -alias <alias> -file <cert_path> -keystore <path_to_cacerts> -storepass changeit

Способ 2: Указание пути в коде (гибкий вариант)

  • Укажите путь к сертификату при создании HttpClientFactory

Подключение зависимостей

Gradle

repositories {
flatDir {
dirs("/path/to/SDK/")
}
}

dependencies {
implementation("ru.sberbank.sbbol.sberbusinessapi:sdk-instantpayment:release-1.0.0-SNAPSHOT")
implementation("ru.sberbank.sbbol.sberbusinessapi:sdk-h2h:release-1.0.0-SNAPSHOT")
}

Maven

<repositories>
<repository>
<id>local-sdk-repo</id>
<url>file:///path/to/SDK/</url>
</repository>
</repositories>

<dependencies>
<dependency>
<groupId>ru.sberbank.sbbol.sberbusinessapi</groupId>
<artifactId>sdk-instantpayment</artifactId>
<version>release-1.0.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>ru.sberbank.sbbol.sberbusinessapi</groupId>
<artifactId>sdk-h2h</artifactId>
<version>release-1.0.0-SNAPSHOT</version>
</dependency>
</dependencies>

Использование SDK

Модуль "СберБизнес ID"

Сервис авторизации СберБизнес ID построен на базе протокола OAuth 2.0, с использованием типа авторизации Authorization Code Flow и с дополнительными параметрами и значениями, определенными протоколом OpenID Connect.

Авторизация с помощью СберБизнес ID позволяет платформе партнера получить информацию о клиенте банка и выполнять операции от имени клиента банка в системе СберБизнес.

Инициализация клиента:

HttpClientFactory httpClientFactory = HttpClientFactory.of()
.host("https://auth-server.url")
.customCertPath("/path/to/cert.p12")
.customCertPassword("password")
.build();

AuthorizationApiClient authClient = new AuthorizationApiClientImpl(httpClientFactory);

Основные методы:

МетодОписание
getAccessToken()Получение токена доступа
getRefreshToken()Обновление токена
changeClientSecret()Смена секрета клиента
revokeToken()Отзыв токена
getUserInfo()Информация о пользователе

Модуль "Моментальные платежи"

Моментальные платежи – это сервис для организации расчетов, который позволяет формировать и отслеживать статус платежного поручения, где плательщиком выступает юридическое лицо или индивидуальный предприниматель, а получателем средств может быть юридическое лицо, физическое лицо или бюджетная организация.

Создание платежа:

InstantPaymentApi paymentsApi = new InstantPaymentApiImpl(httpClientFactory);

PaymentInvoiceRequest request = PaymentInvoiceRequest.builder()
.amount(100.50f)
.payeeAccount("40702810...")
.build();

PaymentInvoiceResponse response = paymentsApi.createPaymentInvoice(accessToken, request);

Генерация URL для подписания:

После создания платежа необходимо перенаправить пользователя в СберБизнес для подписания.

String url = paymentsApi.buildPaymentUrl(
externalId,
"https://callback.url",
CryptoprofileType.SMS,
"https://bank-host",
false
);

Модуль "Компаниям" (H2H)

Сервис для совершения операций в рамках одной организации.

Работа с платежными поручениями:

H2hApi h2hApi = new H2hApiImpl(httpClientFactory);

// Создание платежного поручения
FintechPayment payment = h2hApi.createPayment(accessToken, paymentRequest);

// Получение статуса
FintechPaymentDocState state = h2hApi.getPaymentDocState(accessToken, externalId);

Управление сертификатами:

МетодОписание
certificateRequest()Запрос нового сертификата
activateCert()Активация сертификата
getCertState()Проверка статуса сертификата

Дополнительная информация:

  • Генерация PKCE: В SDK встроены утилиты для безопасной генерации code_verifier и code_challenge для потока OAuth 2.0 PKCE.

  • Поддержка функционала: Помимо платежей, SDK поддерживает работу с зарплатными ведомостями и получение выписок.

  • Тестовое окружение: Для работы в тестовом контуре используйте сертификаты Минцифры russiantrustedca.pem.

Заметили ошибку?

Выделите текст и нажмите Ctrl + Enter, чтобы сообщить нам о ней

ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей. Вы можете запретить сохранение cookie в настройках своего браузера.