Перейти к содержанию

Система Быстрых Платежей (SBP)

Процесс проведения оплаты

Процесс проведения платежа этим методом содержит следующие этапы:

  1. Вы инициируете запрос на оплату.
  2. Система направляет запрос провайдеру платежного метода. СБП генерирует QR-код для проведения оплаты.
  3. Вы получаете ответ и перенаправляете клиента на полученный URL.
  4. Клиент получает QR-код и проводит оплату.
  5. Вам приходит автоматическое уведомление о статусе платежа, если в запросе на проведение оплаты был передан параметр notification_url.

Для данного альтернативного способа оплаты поддерживаются следующие операции:


Оплата

Запрос

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

Параметр Тип данных Описание
method object Секция параметров способа оплаты.
type
* обязательный

string sbp
Ответ

Ответ на запрос оплаты будет дополнительно содержать секцию form со ссылкой для перехода к странице с QR-кодом. Направьте клиента на URL, переданный как значение параметра form.action.


Запрос статуса операции

Запрос

Если необходимо дополнительно узнать статус платежа, отправьте запрос получения статуса платежа.

Ответ

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


Возврат средств клиенту

Запрос

Если необходимо вернуть платеж клиенту, отправьте запрос возврата средств c UID транзакции оплаты.

Ответ

Ответ будет содержать статус транзакции, а также иную информацию о транзакции согласно описанию запроса возврата средств.

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

Info

Данная интеграция поддерживает только валюту RUB.

Оплата

Процесс проведения оплаты

  1. Покупатель инициирует платеж на сайте торговца.
  2. Торговец отправляет запрос оплаты в Overpay.
  3. Overpay присылает в ответе URL на страницу СБП с QR-кодом для оплаты.
  4. Торговец перенаправляет покупателя на полученный URL.
  5. Покупатель сканирует QR-код, выбирает банк из списка доступных, перенаправляется в приложение выбранного банка и подтверждает оплату. Также покупатель может отсканировать код из банковского приложения.
  6. Торговец получает автоматическое уведомление о результате транзакции.
  7. Торговец уведомляет покупателя о результате оплаты.
Запрос

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

Параметр Тип данных Описание
request object
return_url * обязательный
string URL, на который будет возвращен покупатель после завершения транзакции.
method object Секция параметров способа оплаты.
type * обязательный
string sbp
customer object Секция информации о покупателе.
first_name * обязательный
string Имя покупателя.
last_name * обязательный
string Фамилия покупателя.
email * обязательный
string Адрес электронной почты покупателя.
phone * обязательный
string Номер телефона покупателя со знаком +.
Пример запроса
{
  "request": {
    "amount": 100000,
    "currency": "RUB",
    "description": "description",
    "return_url": "https://merchant.ltd/return",
    "customer": {
      "first_name": "John",
      "last_name": "Doe",
      "phone": "+111111111111",
      "email": "example@example.com"
    },
    "method": {
      "type": "sbp"
    }
  }
}
Ответ

Ответ на запрос оплаты будет дополнительно содержать секцию form со ссылкой для перехода к странице с QR-кодом. Направьте покупателя на URL, переданный как значение параметра form.action.

Пример ответа
{
  "transaction": {
    "uid": "debf8377-3546-462e-b372-5c3a18838de5",
    "type": "payment",
    "status": "pending",
    "amount": 100000,
    "currency": "RUB",
    "description": "description",
    "created_at": "2024-04-03T19:55:38Z",
    "updated_at": "2024-04-03T19:55:39Z",
    "method_type": "sbp",
    "receipt_url": "https://backoffice.overpay.io/customer/transactions/debf8377-3546-462e-b372-5c3a18838de5/8190f452c202e3d6e8ae1bf654bad55fae5a74143f7fed92f2be7879664ccb47",
    "payment": {
      "status": "pending",
      "gateway_id": 3878,
      "ref_id": "601318084",
      "message": "Transaction was initialized."
    },
    "sbp": {
      "type": "sbp"
    },
    "customer": {
      "first_name": "John",
      "last_name": "Doe",
      "email": "example@example.com",
      "phone": "+111111111111",
      "ip": null
    },
    "manually_corrected_at": null,
    "message": "Transaction was initialized.",
    "test": false,
    "billing_address": {
      "first_name": "John",
      "last_name": "Doe",
      "email": "example@example.com",
      "phone": "+111111111111"
    },
    "additional_data": {
      "payment_method": {
        "type": "alternative"
      }
    },
    "gateway": {
      "iframe": true
    },
    "form": {
      "action": "https://qr.nspk.ru/AD100001EB6TL7KF8CCAD8DD0HLMCS5V?type=02&bank=100000000143&sum=100000&cur=RUB&crc=1479",
      "method": "GET",
      "fields": []
    }
  }
}

Возврат средств

Запрос

Отправьте стандартный запрос возврата средств. Сумма возврата не должна превышать сумму родительской транзакции. Для одной транзакции оплаты можно совершить несколько транзакций возврата средств при условии, что сумма возвратов не превышает сумму соответствующей им родительской транзакции.

Выплата

Процесс проведения выплаты

  1. Торговец отправляет в Overpay запрос на выплату, указав в запросе bank_code. Запросите список доступных банков и соответствующих bank_code у службы технической поддержки или у вашего менеджера.
  2. Overpay высылает торговцу ответ с промежуточным статусом.
  3. Торговец получает автоматическое уведомление о результате транзакции.
Запрос

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

Параметр Тип данных Описание
method object Секция параметров способа выплаты.
type * обязательный
string sbp
account_number * обязательный
string Номер телефона получателя выплаты со знаком +.
bank_code * обязательный
string Код банка получателя выплаты. Запросите список доступных банков и соответствующих bank_code у службы технической поддержки или у вашего менеджера.
customer object Секция информации о покупателе.
first_name string Имя покупателя.
last_name string Фамилия покупателя.
email string Адрес электронной почты покупателя.
phone string Номер телефона покупателя.
Пример запроса
{
  "request": {
    "amount": 20000,
    "currency": "RUB",
    "description": "description",
    "test": true,
    "method": {
      "type": "sbp",
      "account_number": "+123456789123",
      "bank_code": "100000000202"
    }
  }
}
Ответ
Пример ответа
{
  "transaction": {
    "uid": "2757482e-4490-4c8c-a223-f554a21dc370",
    "type": "payout",
    "status": "pending",
    "amount": 20000,
    "currency": "RUB",
    "description": "description",
    "created_at": "2024-04-04T13:40:40Z",
    "updated_at": "2024-04-04T13:40:40Z",
    "manually_corrected_at": null,
    "method_type": "sbp",
    "receipt_url": "https://backoffice.overpay.io/customer/transactions/2757482e-4490-4c8c-a223-f554a21dc370/1aa3bd868381ee7766b02261b03abd12526e30f85a194938719e5ab4c28e2b28",
    "payout": {
      "status": "pending",
      "gateway_id": 3878,
      "message": "Transaction was initialized.",
      "bank_code": 100
    },
    "sbp": {
      "type": "sbp"
    },
    "customer": {
      "email": null,
      "ip": null
    },
    "message": "Transaction was initialized.",
    "test": true,
    "billing_address": {},
    "additional_data": {
      "payment_method": {
        "type": "alternative"
      }
    }
  }
}

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

Info

Данная интеграция поддерживает только валюту RUB.

Оплата

Процесс проведения оплаты

  1. Покупатель инициирует платеж на сайте торговца.
  2. Торговец отправляет запрос оплаты в Overpay.
  3. Overpay присылает в ответе URL на страницу СБП с QR-кодом для оплаты.
  4. Торговец перенаправляет покупателя на полученный URL. Время жизни ссылки – 30 минут.
  5. Покупатель сканирует QR-код, выбирает банк из списка доступных, перенаправляется в приложение выбранного банка и подтверждает оплату. Также покупатель может отсканировать код из банковского приложения.
  6. Торговец получает автоматическое уведомление о результате транзакции.
  7. Торговец уведомляет покупателя о результате оплаты.
Запрос

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

Параметр Тип данных Описание
request object
return_url * обязательный
string URL, на который будет возвращен покупатель после завершения транзакции.
ip *обязательный
string IP-адрес покупателя.
method object Секция параметров способа оплаты.
type * обязательный
string sbp
Пример запроса
{
  "request": {
    "amount": 8111,
    "currency": "RUB",
    "description": "description",
    "ip": "127.0.0.1",
    "test": false,
    "tracking_id": "your_uniq_number",
    "return_url": "https://return-url",
    "method": {
      "type": "sbp"
    }
  }
}
Ответ

Отправьте покупателя на URL, указанный в параметре form.action.

Пример ответа
{
  "transaction": {
    "uid": "8209bb9d-3f99-43bc-a502-37f3899eab42",
    "type": "payment",
    "status": "pending",
    "amount": 8111,
    "currency": "RUB",
    "description": "description",
    "created_at": "2024-06-25T14:31:25Z",
    "updated_at": "2024-06-25T14:31:25Z",
    "method_type": "sbp",
    "receipt_url": "https://backoffice.overpay.io/customer/transactions/8209bb9d-3f99-43bc-a502-37f3899eab42/7677cb7cad037d0fdf61791104106b1034f07a39e769145d912484ebeb4bdbb9?language=en",
    "payment": {
      "status": "pending",
      "gateway_id": 4152,
      "ref_id": "2019561",
      "message": "Transaction was initialized."
    },
    "sbp": {
      "type": "sbp"
    },
    "customer": {
      "email": null,
      "ip": "127.0.0.1"
    },
    "manually_corrected_at": null,
    "message": "Transaction was initialized.",
    "tracking_id": "your_uniq_number",
    "test": false,
    "language": "en",
    "additional_data": {
      "payment_method": {
        "type": "alternative"
      }
    },
    "gateway": {
      "iframe": true
    },
    "form": {
      "action": "https://qr.nspk.ru/AS100001ORTF4GAF80KPJ53K186D9A3G?type=01&bank=100000000007&crc=0C8A",
      "method": "GET",
      "fields": []
    }
  }
} 

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

Info

Данная интеграция поддерживает только валюту RUB.

Оплата

Процесс проведения оплаты

  1. Покупатель инициирует платеж на сайте торговца.
  2. Торговец отправляет запрос оплаты в Overpay.
  3. Overpay присылает в ответе параметры для создания HTML-формы для оплаты. Время жизни ссылки form.action – 15 минут.
  4. Торговец создает HTML-форму для оплаты, используя значения параметров из ответа.
  5. Торговец перенаправляет покупателя на форму для оплаты.
  6. Покупатель подтверждает оплату.
Запрос

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

Параметр Тип данных Описание
request object
return_url * обязательный
string URL, на который будет возвращен покупатель после завершения транзакции.
method object Секция параметров способа оплаты.
type * обязательный
string sbp
customer object Секция информации о покупателе.
email * обязательный
string Адрес электронной почты покупателя.
phone * обязательный
string Номер телефона покупателя без +.
Пример запроса
{
  "request": {
    "amount": 10000,
    "currency": "RUB",
    "description": "description",
    "test": false,
    "tracking_id": "your_uniq_number",
    "return_url": "https://return-url",
    "customer": {
      "phone": "1234567890",
      "email": "example@example.com"
    },
    "method": {
      "type": "sbp"
    }
  }
}
Ответ

Создайте HTML-форму, используя параметры из секции form. Отправьте покупателя на форму для завершения оплаты.

Пример ответа
{
    "transaction": {
        "uid": "19088621-95e0-4100-b0a8-1717c69a9600",
        "type": "payment",
        "status": "pending",
        "amount": 10000,
        "currency": "RUB",
        "description": "description",
        "created_at": "2024-07-03T12:21:16Z",
        "updated_at": "2024-07-03T12:21:16Z",
        "method_type": "sbp",
        "receipt_url": "https://backoffice.overpay.io/customer/transactions/19088621-95e0-4100-b0a8-1717c69a9600/863e4e14692a6698664f758c39177d6b2c03f8f3de6e233e1020d098a7b0428f",
        "payment": {
            "status": "pending",
            "gateway_id": 4163,
            "message": "Transaction was initialized."
        },
        "sbp": {
            "type": "sbp"
        },
        "customer": {
            "email": "example@example.com",
            "phone": "1234567890",
            "ip": null
        },
        "manually_corrected_at": null,
        "version": 0,
        "message": "Transaction was initialized.",
        "tracking_id": "your_uniq_number",
        "test": false,
        "billing_address": {
            "email": "example@example.com",
            "phone": "1234567890"
        },
        "additional_data": {
            "payment_method": {
                "type": "alternative"
            }
        },        
        "gateway": {
            "iframe": true
        },
        "form": {
            "action": "https://payment-page",
            "method": "POST",
            "fields": [
                {
                    "name": "amount",
                    "value": "100.00",
                    "type": "hidden"
                },
                {
                    "name": "amountcurr",
                    "value": "RUB",
                    "type": "hidden"
                },
                {
                    "name": "currency",
                    "value": "EXT",
                    "type": "hidden"
                },
                {
                    "name": "number",
                    "value": "a241a368c8hu9639786382d7592e34",
                    "type": "hidden"
                },
                {
                    "name": "description",
                    "value": "www.site.com",
                    "type": "hidden"
                },
                {
                    "name": "trtype",
                    "value": "1",
                    "type": "hidden"
                },
                {
                    "name": "phone",
                    "value": "0987654321",
                    "type": "hidden"
                },
                {
                    "name": "email",
                    "value": "1@example.com",
                    "type": "hidden"
                },
                {
                    "name": "account",
                    "value": "ACC041111",
                    "type": "hidden"
                },
                {
                    "name": "signature",
                    "value": "6A886FJ609RITN5960HIYK403D5170CA3EBB55",
                    "type": "hidden"
                }
            ]
        }
    }
}

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

Info

Данная интеграция поддерживает только валюту RUB.

Оплата

Процесс проведения оплаты

  1. Покупатель инициирует платеж на сайте торговца.
  2. Торговец отправляет запрос оплаты в Overpay.
  3. Overpay присылает в ответе URL на страницу СБП с QR-кодом для оплаты.
  4. Торговец перенаправляет покупателя на полученный URL. Время жизни ссылки по умолчанию – 15 минут.
  5. Покупатель сканирует QR-код, выбирает банк из списка доступных, перенаправляется в приложение выбранного банка и подтверждает оплату. Также покупатель может отсканировать код из банковского приложения. При открытии ссылки на мобильном устройстве, покупателю сразу отображается список банковских приложений для завершения оплаты.
  6. Торговец получает автоматическое уведомление о результате транзакции.
  7. Торговец уведомляет покупателя о результате оплаты.
Запрос

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

Параметр Тип данных Описание
request object
return_url * обязательный
string URL, на который будет возвращен покупатель после завершения транзакции.
method object Секция параметров способа оплаты.
type * обязательный
string sbp
Пример запроса
{
    "request": {
        "amount": 100000,
        "currency": "RUB",
        "description": "description",
        "return_url": "https://merchant.ltd/return",
        "method": {
            "type": "sbp"
        }
    }
}
Ответ

Отправьте покупателя на URL, указанный в параметре form.action.

Пример ответа
{
    "transaction": {
        "uid": "ff907a25-c194-44bb-b3ec-9a943f89f863",
        "type": "payment",
        "status": "pending",
        "amount": 100000,
        "currency": "RUB",
        "description": "description",
        "created_at": "2024-09-23T13:21:05Z",
        "updated_at": "2024-09-23T13:21:06Z",
        "method_type": "sbp",
        "receipt_url": "https://backoffice.overpay.io/customer/transactions/ff907a25-c194-44bb-b3ec-9a943f89f863/fc6fcec74ae131c4afad01db10a2abd209b91b0b4e54c8af65a38485bbcdd245",
        "payment": {
            "status": "pending",
            "gateway_id": 4497,
            "ref_id": "3960848",
            "message": "Transaction was initialized."
        },
        "sbp": {
            "type": "sbp"
        },
        "customer": {
            "email": null,
            "ip": null
        },
        "manually_corrected_at": null,
        "version": 0,
        "message": "Transaction was initialized.",
        "test": false,
        "additional_data": {
            "payment_method": {
                "type": "alternative"
            }
        },      
        "gateway": {
            "iframe": false
        },
        "form": {
            "action": "https://qr.nspk.ru/AD100066PTMO2TOG8S1B64I8GGMR32GR",
            "method": "GET",
            "fields": []
        }
    }
} 

Возврат средств

Запрос

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

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

Оплата

Процесс проведения оплаты

  1. Покупатель инициирует платеж на сайте торговца.
  2. Торговец отправляет запрос оплаты в Overpay.
  3. Overpay присылает в ответе URL для перенаправления покупателя.
  4. Торговец перенаправляет покупателя на полученный URL. Если ссылка открыта на десктопе: показывается QR-код, который покупатель может отсканировать камерой мобильного устройства или через банковское приложение. Если ссылка открыта на мобильном устройстве: покупателю сразу отображается список доступных банковских приложений для завершения оплаты. Если у покупателя нет подходящих приложений, то открывается браузер на странице НСПК, откуда покупатель может перейти в web-версию мобильного банка, если выбранный банк предоставляет такую возможность.
  5. Покупатель завершает платеж в приложении банка или в web-версии мобильного банка.
  6. Торговец получает автоматическое уведомление о результате транзакции.
  7. Торговец уведомляет покупателя о результате оплаты.
Запрос

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

Параметр Тип данных Описание
request object
return_url * обязательный
string URL, на который будет возвращен покупатель после завершения транзакции.
method object Секция параметров способа оплаты.
type * обязательный
string sbp_deeplink
Пример запроса
{
    "request": {
        "amount": 100000,
        "currency": "RUB",
        "description": "description",
        "return_url": "https://merchant.ltd/return",
        "method": {
            "type": "sbp_deeplink"
        }
    }
}
Ответ

Отправьте покупателя на URL, указанный в параметре form.action.

Пример ответа
{
    "transaction": {
        "uid": "6436319e-9471-4a37-955e-caf38404e166",
        "type": "payment",
        "status": "pending",
        "amount": 100000,
        "currency": "RUB",
        "description": "description",
        "created_at": "2024-12-26T11:04:02Z",
        "updated_at": "2024-12-26T11:04:02Z",
        "method_type": "sbp_deeplink",
        "receipt_url": "https://backoffice.overpay.io/customer/transactions/6436319e-9471-4a37-955e-caf38404e166/6bc187992f2697d112677ef0cadf772b8d28a6ab49ad6644b7b0245fd8a8f763",
        "payment": {
            "status": "pending",
            "gateway_id": 4772,
            "ref_id": "2bad37ec-874f-416b-bee1-c490edd8cc16",
            "message": "Transaction was initialized."
        },
        "sbp_deeplink": {
            "type": "sbp_deeplink"
        },
        "customer": {
            "email": null,
            "ip": null
        },
        "manually_corrected_at": null,
        "version": 0,
        "message": "Transaction was initialized.",
        "test": false,
        "additional_data": {
            "payment_method": {
                "type": "alternative"
            }
        },
        "smart_routing_verification": {
            "status": "skipped",
            "data": null
        },
        "gateway": {
            "iframe": true
        },
        "form": {
            "action": "https://qr.nspk.ru/AD100073NTMRD90L96CQO6UCDJA4DR7O",
            "method": "GET",
            "fields": []
        }
    }
}  

Возврат средств

Запрос

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

Выплата

Процесс проведения выплаты

  1. Торговец отправляет в Overpay запрос на выплату, указав в запросе bank_code.
  2. Overpay высылает торговцу ответ с промежуточным статусом.
  3. Торговец получает автоматическое уведомление о результате транзакции.
Запрос

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

Параметр Тип данных Описание
method object Секция параметров способа выплаты.
type * обязательный
string sbp_deeplink
account_number * обязательный
string Номер телефона получателя выплаты в международном формате без знака +.
bank_code * обязательный
string Код банка получателя выплаты.
Пример запроса
{
  "request": {
    "amount": 20000,
    "currency": "RUB",
    "description": "description",
    "test": true,
    "method": {
      "type": "sbp_deeplink",
      "account_number": "123456789123",
      "bank_code": "100000000202"
    }
  }
}
Ответ
Пример ответа
{
    "transaction": {
        "uid": "628994ee-1416-44c2-83b8-911209f3d70f",
        "type": "payout",
        "status": "pending",
        "amount": 108,
        "currency": "RUB",
        "description": "108",
        "created_at": "2024-12-26T11:48:45Z",
        "updated_at": "2024-12-26T11:48:47Z",
        "manually_corrected_at": null,
        "method_type": "sbp_deeplink",
        "receipt_url": "https://backoffice.overpay.io/customer/transactions/628994ee-1416-44c2-83b8-911209f3d70f/9de6fac6b341bf438e22bbbf547487587f62188a04f8dd0b018eed9adc6a5506?language=en",
        "payout": {
            "status": "pending",
            "gateway_id": 4764,
            "ref_id": "31a10280-2145-4ce7-a186-1e61ecb85603",
            "message": "",
            "bank_code": ""
        },
        "sbp_deeplink": {
            "type": "sbp_deeplink",
            "bank_code": "100000000202",
            "account_number": "123456789123"
        },
        "customer": {
            "email": null,
            "ip": "127.0.0.1"
        },
        "version": 0,
        "message": "",
        "tracking_id": "your_uniq_number",
        "test": false,
        "language": "en",
        "additional_data": {
            "payment_method": {
                "type": "alternative"
            }
        },
        "smart_routing_verification": {
            "status": "skipped",
            "data": null
        }
    }
}