Skip to main content
Вернуть средства платежа на адрес. Использует движок выплат (списание с баланса). URL: https://api.oblodai.com/v1/payment/refund · Аутентификация: обязательна · Идемпотентность: заголовок Idempotency-Key или тройка (платёж, адрес, сумма).
Примеры используют хелпер call() и переменные $SECRET/$PUBLIC_ID — их определение см. в Как подписать запрос. Проще не писать подпись руками, а взять SDK.

Параметры запроса

string
Идентификатор платежа.
string
Ваша ссылка на заказ платежа.
string
Адрес назначения возврата. По умолчанию — payer_address, адрес, с которого пришли деньги.
string
Сеть.
string
Частичная сумма. По умолчанию — вся полученная.
Минимально необходимое: uuid или order_id. Всё остальное — по мере надобности.
address необязателен. Не передавайте его — и возврат уйдёт на payer_address платежа. Обязателен он только для Bitcoin/UTXO: у таких платежей нет единого отправителя, payer_address пуст, и без явного адреса вы получите 400 refund.no_address.

Заголовки

Любое уникальное значение (≤255 символов), одинаковое во всех повторах одного возврата. Повтор вернёт тот же ответ и заголовок Idempotent-Replayed: true. → Идемпотентность

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

Обычный случай — вернуть всё плательщику. Ни адреса, ни суммы указывать не надо:

Пример ответа


Коды ошибок


Нюансы

  • Адрес по умолчанию — адрес плательщика. Шлюз запоминает, откуда пришли деньги (payer_address), и без явного address возвращает туда же. На аккаунтных сетях (EVM, Tron, Solana, TON) отправитель известен всегда. На Bitcoin/UTXO единого отправителя нет — там address обязателен.
  • Возврат по API‑ключу авто‑одобряется и уходит сразу — как на адрес плательщика, так и на любой другой (отдельное подтверждение через /v1/payout/approve не требуется, как и для обычной выплаты). Поэтому не передавайте address без нужды и перепроверяйте его, если передаёте: отправленный возврат не остановить.
  • Валюта возврата — та, что фактически пришла. Возврат деноминирован в монете платежа и не пересчитывается по новому курсу. Если счёт был в USD, а заплатили USDT, вернётся USDT — ровно столько, сколько пришло. Курсовую разницу шлюз не компенсирует.
  • Идемпотентность. Заголовок Idempotency-Key либо тройка (платёж, адрес, сумма). Суммарно нельзя вернуть больше оплаченного.
  • Кто несёт нашу комиссию при возврате — настраивается через refund-fee-config.
  • Автоматический (не ручной) возврат недоплаты/переплаты настраивается отдельно — autorefund.
  • Много возвратов сразуPOST /v1/refund/batch (до 5000 за один запрос).
  • Что уже возвращено по счёту, видно в полях refunds[] и refund_status ответа POST /v1/payment/info.

Связанные страницы

POST /v1/payment/autorefund/get · /set

POST /v1/refund/batch

массовые возвраты.

Кто платит комиссию возврата

Возвраты платежей

Объект платежа

payer_address, refunds[], refund_status.