ym88659208ym87991671
Автоматическая оплата Android | Документация для разработчиков

Автоматическая оплата Android

Обновлено 2 февраля 2024

Схема взаимодействия

Схема оплаты

Сценарий автоматической оплаты

Если оплата происходит через эквайринг Сбербанка и уже известен sbolBankInvoiceId, тогда следует воспользоваться автоматической оплатой. Для автоматической оплаты необходимо воспользоваться методом payWithBankInvoiceId. Ниже представлен список параметров метода.

Параметры метода

ОбъектТипФорматОбязательныйОписание
apiKeyStringANS..512ДаКлюч Клиента для работы с сервисами платежного шлюза через SDK Пример: eyJhbGciOiJFUzI1NiJ9.eyJjc24iOiI3MjNiM2U3OWI4NjU2MzU2NTg2YTE5MDBhMzA3Y2JiNDJmZDEwZDc2Iiwic3ViIjoiQ049V2ViVGVzdCIsImlzcyI6IkNOPVdlYlRlc3QiLCJpYXQiOjE1ODgxNTA3ODgsImp0aSI6InVyQmdGMEl0NXI3UFhrUkFQeDFIOVEiLCJleHAiOjE2MTU0MjIxMDYwfQ.HdIG_ch3gXhNiX03oskOVBYACUa5iZCcuZVYQaesB_adc95MjbQdy5bm7gNYpBuVCDc_7XUCdKlLeP52H2_oVA
merchantLoginStringANS..512ДаLogin партнера для работы с сервисами платежного шлюза
bankInvoiceIdStringANS..512ДаУникальный номер (идентификатор) заказа в Платежном шлюзе Банка Необходимо передавать значение sbolBankInvoiceId (передается в externalParams) из ответа на Запрос регистрации заказа
languageStringA..2НетЯзык локализации интерфейсов Пример: RU
appPackageStringANS..512ДаPackage приложения (он же BuildConfig.APPLICATION_ID) Вашего приложения, по которому необходимо вернуть Плательщика после аутентификации в СберБанк Онлайн Пример: merchant.favorite.shop
orderNumberStringANS..36ДаУникальный номер (идентификатор) заказа в системе Клиента Пример: 5f3f7d10-7005-7afe-b756-f73001c896b1
activityContextContext-ДаЛюбой контекст Вашего приложения который может запускать новую Activity

Вызов метода payWithBankInvoiceId

Метод payWithBankInvoiceId является входной точкой в SDK и должен быть вызван только по клику на кнопку Оплатить, которая идет в комплекте с SDK.


SPaySdkApp.getInstance().payWithBankInvoiceId(
activityContext = context,
apiKey = API_KEY,
merchantLogin = CLIENT_NAME,
bankInvoiceId = BANK_INVOICE_ID,
orderNumber = ORDER_NUMBER,
appPackage = APP_PACKAGE,
language = LANGUAGE
) { paymentResult ->
when (paymentResult) {
is PaymentResult.Success -> {
//do something on success
doOnSuccess()
}
is PaymentResult.Error -> {
//do something on error
doOnError(paymentResult.merchantError)
}
is PaymentResult.Processing -> {
//do something on processing
doOnProcessing();
}
}
}
ПАО Сбербанк использует cookie для персонализации сервисов и удобства пользователей.
Вы можете запретить сохранение cookie в настройках своего браузера.