Двухэтапные платежи (преавторизация)

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

Как это работает:

  1. Блокировка средств — сумма замораживается на карте клиента, но не списывается.

  2. Подтверждение или отмена — продавец может либо подтвердить списание, либо отменить платёж.

  3. Автоматическая разблокировка — если платёж не подтверждён в течение установленного срока, средства автоматически разблокируются.


Инициализация платежа с преавторизацией

Для создания платежа с преавторизацией необходимо передать дополнительный параметр preauth. Полный набор параметров описан на странице создания платежа.

GET https://unitpay.ru/api?method=initPayment

Path Parameters

Name
Type
Description

preauth

integer

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

preauthExpireLogic

integer

Поле для логики блокировки платежей с преавторизацией: 0 - при отсутствии запроса на подтверждение или отмену, платеж по истечении срока блокировки на стороне банка-эквайера (~114 часов после создания платежа) будет подтвержден; 1 - при отсутствии запроса на подтверждение или отмену, платеж по истечении срока блокировки на стороне банка-эквайера (~114 часов после создания платежа) будет отменен. Если параметр не будет использован, платеж будет отменен по истечении срока.

{
    "result": {
        "type": "redirect",
        "paymentId": 1234567890,
        "message": "Счет успешно выставлен, ожидается оплата",
        "receiptUrl": "https://unitpay.ru/pay/receipt/1234567890-454ac183ac",
        "statusUrl": "https://unitpay.ru/pay/receipt/1234567890-454ac183ac",
        "redirectUrl": "https://unitpay.ru/pay/redirect/1234567890-454ac183ac"
    }
}

Подтверждение платежа с преавторизацией

Для подтверждения платежа с преавторизацией (списания заблокированных на карте плательщика средств) выполните этот запрос:

GET: https://unitpay.ru/api?method=confirmPayment
     params[paymentId]=2142345678
     params[secretKey]=secretkey

Обязательные параметры

Name
Type
Description

paymentId

integer

ID платежа в системе UnitPay

secretKey

string

Секретный ключ проекта, доступен в настройках проекта

{ "message": "Платеж успешно подтвержден" }

Отмена платежа с преавторизацией

Для отмены платежа с преавторизацией (разблокировки средств на карте плательщика) выполните следующий запрос:

GET: https://unitpay.ru/api?method=cancelPayment
     params[paymentId]=2142345678
     params[secretKey]=secretkey

Path Parameters

Name
Type
Description

paymentId

integer

ID платежа в системе UnitPay

secretKey

string

Секретный ключ проекта, доступен в настройках проекта

{ "message": "Блокировка успешно отменена" }

Last updated

Was this helpful?