Кнопка СБП от Яндекса

О кнопке СБП

Что это такое

Кнопка СБП от Яндекса позволяет оплатить пользователю через систему быстрых платежей. При авторизации пользователю будут доступны его привязанные СБП-счета, а также возможность привязать новый. Также доступна оплата через систему быстрых платежей без авторизации.

Особенности

  • Работает как на десктопных, так и мобильных устройствах — через приложения или мобильный веб.
  • Покупатель может оплатить без входа в аккаунт Яндекса.
  • При оплате по кнопке СБП бонусы в виде скидок, кешбэка не применяются.

Зачем подключать

Для бизнеса СБП Only упрощает процесс оплаты: меньше шагов для покупателя — выше конверсия в мобильном приложении.

Как подключить

Шаг 1. Согласуйте подключение

Напишите вашему менеджеру интеграции в Яндекс Пэй. После согласования для вашего магазина включат поддержку СБП Only.

Варианты интеграции

  • С интеграцией мобильного SDK — доступен App2App flow с высокой долей авторизации.
  • Без интеграции мобильного SDK — доступен App2Web flow, где больше пользователей не авторизованы.

Web2Web flow — оплата проходит в браузере уже привязанным счетом или новым счетом с переходом в приложение банка.

Web2Web flow — оплата проходит в браузере уже привязанным счетом или новым счетом через сканирование QR-кода.

Примечание

Для десктопного и мобильного веба используется единый сценарий интеграции.

Шаг 2. Добавьте параметр flowв запрос создания заказа

При вызове метода /orders передайте:

Параметр Значение Описание
flow SBP_ONLY Включает оплату по СБП. Работает только со значением CARD в параметре availablePaymentMethods
availablePaymentMethods ["CARD"] Обязательное значение параметра при использовании flow: "SBP_ONLY"

Пример запроса

curl -X POST 'https://sandbox.pay.yandex.ru/api/merchant/v1/orders' \
  --header 'Authorization: Api-Key <MERCHANT_ID>' \
  --header 'Content-Type: application/json' \
  --data '{
    "orderId": "<MERCHANT_ORDER_ID>",
    "cart": {
      "items": [
        {
          "productId": "1",
          "total": "10",
          "quantity": { "count": 1 },
          "title": "Apple Watch"
        }
      ],
      "total": { "amount": "10" }
    },
    "availablePaymentMethods": ["CARD"],
    "currencyCode": "RUB",
    "preferredPaymentMethod": "CARD",
    "redirectUrls": {
      "onError": "https://test.pay.yandex.ru/web/playground/psp-like?merchantPspLike2_custom=<MERCHANT_ORDER_ID>",
      "onSuccess": "https://test.pay.yandex.ru/web/playground/psp-like?merchantPspLike2_custom=<MERCHANT_ORDER_ID>"
    },
    "flow": "SBP_ONLY"
  }'

Шаг 4. Обработайте ответ

В ответе вы получите paymentUrl. Перенаправьте покупателя по этой ссылке для завершения оплаты.

Как это выглядит для покупателя

Мобильные и десктопные устройства

  1. Покупатель нажимает кнопку оплаты СБП от Яндекса.
  2. Открывается форма оплаты, где доступны привязанные СБП-счета клиента. При необходимости можно добавить новый.
  3. Покупатель выбирает счет и нажимает Оплатить.
  4. После оплаты покупатель возвращается на ваш сайт или в приложение.

Мобильные устройства

  1. Покупатель нажимает кнопку оплаты СБП от Яндекса.
  2. Открывается экран Яндекс Пэй с брендингом сервиса. На экране покупателю предлагается выбрать банк для оплаты через СБП.
  3. Покупатель выбирает банк для оплаты через СБП.
  4. Открывается приложение банка для подтверждения платежа.
  5. После оплаты покупатель возвращается на ваш сайт или в приложение.

Десктопные устройства

  1. Покупатель нажимает кнопку оплаты СБП от Яндекса.
  2. Открывается экран Яндекс Пэй с брендингом сервиса. На экране покупателю предлагается отсканировать QR-код для оплаты через СБП.
  3. Покупатель сканирует QR-код камерой телефона или сканером в приложении банка.
  4. При сканировании камерой телефона на экране покупателю предлагается выбрать банк для оплаты через СБП.
  5. Покупатель выбирает банк для оплаты через СБП.
  6. Открывается приложение банка для подтверждения платежа.
  7. После оплаты покупатель возвращается на ваш сайт.

Макеты интерфейса доступны в Figma.

Тестирование

Тестовая среда

Используйте URL тестовой среды:

https://sandbox.pay.yandex.ru/api/merchant/v1/orders

Тестирование мобильного сценария в браузере

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

Тестирование API

  1. Создайте заказ методом /orders с параметрами:

    • flow: "SBP_ONLY"
    • availablePaymentMethods: ["CARD"]
  2. Перейдите по полученной ссылке paymentUrl.

  3. Убедитесь, что открывается экран оплаты через СБП.

    Как выглядит экран оплаты

  4. Проверьте завершение оплаты:

    Сценарий Результат Статус заказа
    Покупатель подтвердил платеж Редирект на redirectUrls.onSuccess CAPTURED
    Покупатель отменил платеж или истек таймаут Редирект на redirectUrls.onError FAILED
  5. Сообщите вашему менеджеру интеграции о результатах тестирования.

Примечание

После успешного тестирования менеджер интеграции включит СБП Only в боевой среде.

Переход в продакшен

После успешного тестирования и подтверждения от менеджера интеграции, используйте продовый URL:

https://pay.yandex.ru/api/merchant/v1/orders

Процесс интеграции аналогичен тестовой среде:

  1. Создайте заказ с параметрами flow: "SBP_ONLY" и availablePaymentMethods: ["CARD"].
  2. Перенаправьте покупателя по полученной ссылке paymentUrl.
  3. Обработайте результат оплаты по редиректу на onSuccess или onError.