Интеграция платежного шлюза СберPay в мобильное приложение

Интеграция платежного шлюза СберPay в мобильное приложение Мы часто сталкиваемся с ситуацией, когда после интеграции СберPay пользователь подтверждает оплату в СберБанк Онлайн, но приложение не получает callback — деплинк не срабатывает, или приложение СберБанк не установлено. Без fallback-механи

Разработка и поддержка любых видов мобильных приложений:

Информационные и развлекательные мобильные приложения
Новостные приложения, игры, справочники, онлайн-каталоги, погодные, фитнес и здоровье, туристические, образовательные, социальные сети и мессенджеры, квиз, блоги и подкасты, форумы, агрегаторы
Мобильные приложения электронной коммерции
Интернет-магазины, B2B-приложения, маркетплейсы, онлайн-обменники, кэшбэк-сервисы, биржи, дропшиппинг-платформы, программы лояльности, доставка еды и товаров, платежные системы
Мобильные приложения для управления бизнес-процессами
CRM-системы, ERP-системы, управление проектами, инструменты для команды продаж, учет финансов, управление производством, логистика и доставка, управление персоналом, системы мониторинга данных
Мобильные приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, платформы предоставления электронных услуг, платформы кешбека, видеохостинги, тематические порталы, платформы онлайн-бронирования и записи, платформы онлайн-торговли

Это лишь некоторые из типы мобильных приложений, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента.

Услуги, которые мы предлагаем
Показано 1 из 1Все 1734 услуг
Интеграция платежного шлюза СберPay в мобильное приложение
Средний
~2-3 дня

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • image_mobile-applications_feedme_467_0.webp
    Разработка мобильного приложения для компании FEEDME
    895
  • image_mobile-applications_xoomer_471_0.webp
    Разработка мобильного приложения для компании XOOMER
    782
  • image_mobile-applications_rhl_428_0.webp
    Разработка мобильного приложения для компании RHL
    1216
  • image_mobile-applications_zippy_411_0.webp
    Разработка мобильного приложения для компании ZIPPY
    1079
  • image_mobile-applications_affhome_429_0.webp
    Разработка мобильного приложения для компании Affhome
    1002
  • image_mobile-applications_flavors_409_0.webp
    Разработка мобильного приложения для компании FLAVORS
    597

Интеграция платежного шлюза СберPay в мобильное приложение

Мы часто сталкиваемся с ситуацией, когда после интеграции СберPay пользователь подтверждает оплату в СберБанк Онлайн, но приложение не получает callback — деплинк не срабатывает, или приложение СберБанк не установлено. Без fallback-механизма платёж зависает, а статус проверяется только через сервер. В этой статье — проверенные решения для iOS и Android с деплинками, fallback и асинхронной проверкой.

Прямая интеграция через Сбербанк Эквайринг даёт в 3 раза больше контроля над статусами платежей по сравнению с агрегаторами, но требует тщательной настройки. Через агрегаторы СберPay подключается в 2 раза быстрее, если SDK уже в проекте. Дополнительно, экономия на комиссиях при прямой интеграции может достигать 30%, а доля успешных платежей — 98% при корректной обработке deeplink и fallback.

Какой способ интеграции выбрать: агрегатор или прямой эквайринг?

Критерий Через агрегатор (ЮKassa, CloudPayments) Напрямую через Сбербанк Эквайринг
Скорость подключения 1–2 дня (уже есть SDK) 3–5 дней (регистрация мерчанта, тестовая среда)
Управление статусами Частично на стороне агрегатора Полный контроль через REST API
Требования к серверу Минимальные (токены) Серверная регистрация заказов, проверка статусов
Deeplink-обработка Встроена в SDK Нужно реализовывать самостоятельно
Сложность интеграции Низкая Средняя (прямая работа с API)

Через агрегатор. Если у вас уже есть ЮKassa, CloudPayments или Robokassa — СберPay можно включить как дополнительный paymentMethodType без отдельной интеграции. ЮKassa, например, поддерживает sberbank как тип метода оплаты, и SDK сам открывает диплинк в СберБанк Онлайн.

Через Сбербанк Эквайринг напрямую. Нужна отдельная регистрация мерчанта в Сбербанке, подключение к тестовой среде 3dsec.sberbank.ru и прямая работа с REST API.

Почему нельзя полагаться только на deeplink-возврат?

Deeplink-возврат — ненадёжный источник истины. Пользователь может закрыть приложение до редиректа, отменить платёж в самом СберБанк Онлайн, или произойдёт сбой сети в момент возврата. Поэтому мы всегда реализуем серверную проверку статуса через getOrderStatusExtended с периодическим поллингом (например, каждые 5 секунд до 30 секунд). На основе полученного статуса (0 — зарегистрирован, 1 — оплачен, 2 — отменён) обновляем UI приложения.

Что делать, если приложение СберБанк не установлено?

При прямой интеграции нужно обязательно реализовать fallback. Если resolveActivity (Android) или canOpenURL (iOS) возвращает false — открываем formUrl в браузере. Браузерный flow ведёт на веб-версию СберPay, где пользователь может авторизоваться через Сбер ID.

// Android — fallback через браузер val sberPayUri = Uri.parse(formUrl) val intent = Intent(Intent.ACTION_VIEW, sberPayUri) if (intent.resolveActivity(packageManager) != null) { startActivity(intent) } else { openInBrowser(formUrl) // fallback } 
// iOS — fallback через SFSafariViewController if let url = URL(string: formUrl), UIApplication.shared.canOpenURL(url) { UIApplication.shared.open(url) } else { presentSafari(url: formUrl) } 

Как правильно обработать возврат из СберБанк Онлайн?

После подтверждения платежа в СберБанк Онлайн система редиректит на returnUrl, который вы указали при регистрации заказа. В iOS нужен Universal Link или URL Scheme, в Android — Intent Filter с правильным scheme и host.

<!-- AndroidManifest.xml --> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="yourapp" android:host="payment" android:pathPrefix="/result" /> </intent-filter> 
Пример обработки на Swift
func handlePaymentCallback(url: URL) { guard let components = URLComponents(url: url, resolvingAgainstBaseURL: false) else { return } if let orderId = components.queryItems?.first(where: { $0.name == "orderId" })?.value { checkOrderStatus(orderId: orderId) } } 

После возврата проверяем статус заказа на сервере:

GET https://securepayments.sberbank.ru/payment/rest/getOrderStatusExtended.do ?orderId=uuid-order-id&userName=...&password=... 
Параметр Тип Описание
orderId string UUID заказа, возвращённый при регистрации
userName string Логин мерчанта в системе Сбербанка
password string Пароль мерчанта

Ключевой момент: не доверяйте только deeplink-возврату. Статус платежа нужно всегда проверять через серверный запрос getOrderStatusExtended.

Типичные ошибки при интеграции

  • Отсутствие fallback при отсутствии СберБанк — пользователь видит чёрный экран. Всегда проверяем resolveActivity/canOpenURL.
  • Неверная настройка returnUrl — схема должна совпадать с зарегистрированной в манифесте.
  • Пропуск серверной проверки статуса — платёж может считаться неуспешным, хотя деньги списаны.
  • Игнорирование требований App Store Review Guidelines (Section 5.1) по обработке платежей.

Мы имеем 5+ лет опыта интеграции платёжных шлюзов и гарантируем корректную работу деплинков и fallback-механизмов. Наши инженеры сертифицированы по платформе Сбербанка. Свяжитесь с нами для получения консультации по техническим вопросам или закажите интеграцию СберPay.

Процесс работы над интеграцией

  1. Аналитика и выбор схемы — оценка текущего платёжного стека, подбор агрегатора или прямой интеграции.
  2. Проектирование — разработка последовательности запросов, схемы деплинков, fallback-сценариев.
  3. Реализация — написание серверной части (регистрация заказа, проверка статуса) и клиентской (открытие деплинка, обработка возврата).
  4. Тестирование — проверка на тестовом контуре (3dsec.sberbank.ru), эмуляция ошибок (отсутствие СберБанк, сбой сети).
  5. Деплой — публикация в App Store и Google Play с корректными схемами URL и Universal Links.

Сроки ориентировочно

от 2 до 5 дней в зависимости от выбранной схемы и готовности серверной части. Стоимость рассчитывается индивидуально — свяжитесь с нами, оценим проект за один рабочий день.

Что входит в работу

  • Подготовка технической документации с описанием флоу платежей и обработки ошибок.
  • Настройка доступов к тестовому и боевому контурам Сбербанка.
  • Обучение вашей команды основам поддержки и диагностики.
  • Гарантийная поддержка 30 дней после запуска.