/v1/payment/link · /list · /info · /toggle
Платёжная ссылка — многоразовый URL оплаты, который вы просто даёте покупателю (в письме, в чате,
кнопкой на сайте). Каждый, кто по ней платит, получает свой отдельный счёт — ссылку можно
использовать сколько угодно раз.
Базовый URL: https://api.oblodai.com · Аутентификация: обязательна (управление ссылками).
Страница оплаты по ссылке — публичные методы, без ключа.
Примеры используют хелпер
call() и переменные $SECRET/$PUBLIC_ID — их определение см. в
Как подписать запрос. Проще не писать подпись руками, а взять
SDK.Три режима суммы
Главное решение при создании ссылки — кто задаёт сумму.POST /v1/payment/link — создать ссылку
Параметры запроса
string
Заголовок на странице оплаты.
string
Описание на странице оплаты.
string
обязательно
Режим суммы:
fixed | open | range.string
обязательно
Валюта цены — фиат (
USD, EUR, RUB, …) или монета. Список — pricing_currencies из GET /v1/currencies.string
Сумма — для
fixed. Обязательна в этом режиме.string
Нижняя граница: «пол» для
open (необязателен) и минимум для range (обязателен).string
Верхняя граница — для
range. Обязательна в этом режиме.string
Валюта расчёта (монета), закреплённая за ссылкой. Пусто — монету выбирает покупатель.
string
Сеть расчёта, закреплённая за ссылкой. Пусто — сеть выбирает покупатель.
int64
по умолчанию:"0"
Срок жизни ссылки, секунд от момента создания.
0 (по умолчанию) — ссылка бессрочная.Обязательность полей зависит от
amount_mode — см. таблицу режимов выше.expires_in: 0 — ссылка живёт, пока вы её не выключите через /toggle. Это
нормальный режим для кнопки «Поддержать» на сайте. Ограниченный срок нужен только под разовую акцию.
Закрепление монеты и сети. Если задать pinned_currency + pinned_network — все платежи по
ссылке пойдут в этой монете и сети. Если оставить пустыми — покупатель выберет монету и сеть сам
(счёт создастся валюто‑агностичным). Промежуточный вариант (закрепить
только сеть, оставив монету на выбор) смысла не имеет: закрепляйте либо оба поля, либо ни одного.
Пример запроса
Пример ответа
url — это и есть то, что вы даёте покупателю: ставите ссылкой на кнопку, шлёте в письме, кладёте в
QR‑код.
POST /v1/payment/link/list — список ссылок
Параметры запроса
int64
Сколько ссылок вернуть.
int64
Смещение.
Пример ответа
string
Идентификатор ссылки.
string
Что видит покупатель.
string
Что видит покупатель.
string
fixed | open | range.string
Валюта цены.
string
Сумма при
fixed. Присутствует, только если задана.string
Границы суммы. Присутствуют только те, что заданы.
string
Границы суммы. Присутствуют только те, что заданы.
string
Закреплённые монета и сеть. Отсутствуют, если выбирает покупатель.
string
Закреплённые монета и сеть. Отсутствуют, если выбирает покупатель.
bool
Работает ли ссылка сейчас.
string
Публичный URL страницы оплаты.
string
Момент истечения (ISO 8601). Отсутствует у бессрочной ссылки.
string
Время создания.
POST /v1/payment/link/info — ссылка и её платежи
Параметры запроса
string
обязательно
Идентификатор ссылки.
int64
Пагинация списка платежей.
int64
Смещение.
Пример ответа
Та же карточка ссылки, что в/list, плюс массив payments — все счета, порождённые этой ссылкой:
POST /v1/payment/info по его uuid.
POST /v1/payment/link/toggle — включить / выключить
Выключенная ссылка перестаёт открываться: публичные методы отдают404 paylink.not_found, новые
счета по ней не создаются. Уже созданные счета продолжают жить и оплачиваться.
Параметры запроса
string
обязательно
Идентификатор ссылки.
bool
обязательно
false — выключить, true — включить обратно.Пример ответа
Коды ошибок
Ошибки, которые возникают при оплате покупателем (
paylink.amount_required, paylink.below_min,
paylink.above_max, paylink.not_positive), — на странице публичных методов.
Нюансы
- Каждый checkout — новый счёт. Ссылка — не счёт, а «фабрика счетов»: каждый checkout создаёт новый инвойс со своим адресом и своим сроком жизни.
- Комиссия, скидки, минимумы, допуски — как у обычного счёта. Платёж по ссылке проходит ровно
тот же путь, что
POST /v1/payment, и точно так же присылает вебхуки. - Цена в фиате работает.
currencyможет быть любым из 23 поддерживаемых фиатов, а не толькоUSD— см. Форматы сумм и денег. order_idу платежей по ссылке нет — вы его не задаёте (покупатель приходит без вашего контекста). Сопоставляйте платежи со ссылкой через/link/info— поuuidсчёта из вебхука.
Связанные страницы
GET /v1/link/{id} · POST /v1/link/{id}/checkout
публичная страница оплаты.
POST /v1/payment
Объект платежа
GET /v1/currencies
какие валюты цены и какие монеты доступны.