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

Оплата в веб-браузере

Обновлено 31 января 2023

Проводить оплату с помощью SmartPay можно в любом сайте или веб-приложении, открытом в браузере. Для этого нужно отправить HTTP-запрос, авторизованный с помощью эксплуатационного токена, и обработать платежную форму.

О том как использовать SmartPay в смартапах читайте в разделе Способы подключения платежей.

Платеж может быть одностадийным или двухстадийным.

Чтобы совершать оплату в веб-браузере:

  1. Создайте проект SmartPay.

  2. Отправьте заявку на использование сервиса по адресу developer@sberdevices.ru.

    В заявке нужно указать, что вы хотите использовать SmartPay для оплаты в интернете. Сообщите идентификатор проекта SmartPay и запросите поддержку параметра partner_client_id. Параметр используется для идентификации пользователя в процессе оплаты.

  3. Получите эксплуатационный токен, для авторизации запросов к SmartPay.

  4. Создайте счет с помощью запроса POST /invoices.

  5. Вызовите метод оплаты POST /invoices/{invoice_id}.

    Добавьте в запрос следующие параметры:

    • Блок user_id:

      "user_id": {
      "partner_client_id": "<идентификатор пользователя>"
      },

      Где partner_client_id — уникальный идентификатор пользователя, который вам нужно присвоить самостоятельно в процессе оплаты.

    • Блок operations, который сообщает SmartPay, что в ответе нужно вернуть ссылку на страницу оплаты:

      "operations": [
      {
      "operation": "payment",
      "code": "new",
      "value": "0"
      }
      ],
    • Параметр return_url — адрес, на который нужно перенаправить пользователя в случае успешной оплаты.

    • Параметр fail_url — адрес, на который нужно перенаправить пользователя в случае отмены или неуспешной оплаты.

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

    curl --location --request POST 'https://smartmarket.online.sberbank.ru/smartpay/v1/invoices/0000001' \
    --header 'Authorization: Bearer <эксплуатационный токен>' \
    --header 'Content-Type: application/json' \
    --data-raw '{
    "user_id": {
    "partner_client_id": "<идентификатор партнера>"
    },
    "operations": [
    {
    "operation": "payment",
    "code": "new",
    "value": "0"
    }
    ],
    "return_url": "https://sberdevices.ru/payment/success",
    "fail_url": "https://sberdevices.ru/payment/fail"
    }'
  6. SmartPay возвращает в ответе URL платежной формы, на который надо перенаправить клиента для прохождения оплаты (form_url).

  7. Переадресуйте клиента на форму оплаты.

    Платежная форма
  8. После успешной оплаты заказа пользователь будет перенаправлен по адресу, указанному в поле return_url запроса POST/invoices/{invoice_id}.

    В случае отмены или неуспешной оплаты пользователь будет перенаправлен по адресу, указанному в поле fail_url.

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

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