Платёжные ссылки — Обзор
Платёжная ссылка — это распространяемый URL, который высаживает
покупателя в размещённый checkout, который вы уже настроили. Никакого
SDK, никакой серверной интеграции — выпустите её в панели, поделитесь,
и тот же webhook payment.settled сработает, когда средства
подтвердятся on-chain.
Под капотом платёжная ссылка является CheckoutSession — «платёжная ссылка» это просто имя со стороны панели для сессии, которая не была создана через инициированный покупателем поток SDK. Тот же контракт webhook, тот же on-chain расчёт, те же комиссии.
Типичные применения:
- Выставление счёта разовому клиенту без написания кода
- Страницы продаж, где команда разработки не собирается подключать кастомную корзину в этом квартале
- B2B follow-up — вставьте ссылку в email и считайте дело сделанным
- Страницы фиксированных чаевых в стиле «Buy me a coffee»
Создание ссылки
Сегодня только через панель:
- Войдите в панель мерчанта
- Payments → Payment Links → + New link
- Выберите один из двух путей:
- New order — введите позиции, валюту, информацию о клиенте и опциональные метаданные. Панель создаст Order и платёжную ссылку одним вызовом.
- Existing order — выберите заказ в
PENDING(например, покупатель забросил предыдущую ссылку). Переиздаёт свежую ссылку, обеспеченную тем же заказом, так что история заказа остаётся целой.
- Save → панель показывает URL
https://checkout.infraio.xyz/cst_…с кнопкой копирования и скачиваемым QR-кодом. Test-mode ссылки используютcheckout-dev.infraio.xyz, чтобы окружение было закодировано в имени хоста.
Каждая платёжная ссылка сегодня одноразовая: как только покупатель
заплатил, сессия в COMPLETED. Если сессия истекает до оплаты (TTL
по умолчанию 30 минут), откройте страницу деталей заказа и нажмите
Re-create link, чтобы выпустить свежую против того же заказа.
Что видит покупатель
- Покупатель попадает на
checkout.infraio.xyz/<session_key>— тот же размещённый UI checkout, который вы получили бы от сессии, созданной через SDK. - Проходит стандартный поток выбор актива → отправка средств → ожидание подтверждения, описанный в Checkout — Обзор.
payment.settledсрабатывает на вашем webhook с заказом, intent’ом, квитанцией, on-chain tx hash и числом подтверждений — тот же payload, что и у любого другого рассчитанного платежа. См. Webhooks для схемы.
Что даёт вам панель
Уровень платёжных ссылок сегодня поставляется с:
- Список — каждая ссылка, которую вы выпустили, с курсорной пагинацией, со статусом, суммой, номером родительского заказа, клиентом, истечением и однокликовым открытием URL покупателя.
- Фильтры — статус (
ACTIVE/COMPLETED/EXPIRED/CANCELED), диапазон дат и полнотекстовый поиск по номеру заказа, имени клиента, email или external ref. - Экспорт CSV — один клик, учитывает текущие фильтры.
- KPI-полоса — счётчики по статусам, привязанные к текущему
окружению (
livevstest) через заголовокX-Environment, чтобы цифры всегда совпадали с тем, что показывает таблица. - Страница деталей — сводка заказа, история сессий (каждая попытка для этого заказа), история on-chain со ссылками на block explorer и действие Re-create link для сессий, истекших до оплаты.
Ограничения сегодня
- Нет программного API — ссылки должны создаваться в панели. SDK
может создавать эквивалентные одноразовые сессии через
POST /b2b/v1/checkout-sessions/quick(см. Справочник API), но UX «долгоживущего распространяемого URL» пока только в панели. - Нет per-buyer аутентификации — любой с URL может заплатить. Модель одноразовости частично смягчает это; полное связывание идентичности покупателя в roadmap ниже.
- Брендинг глобальный — ссылка использует ваш общемерчантский логотип, фирменный цвет и border-radius из Settings → Branding. Переопределение брендинга per-link пока не вынесено в UI панели.
Roadmap
То, что мы знаем, что хотим, по приоритетам сверху вниз:
- Программное создание — endpoint
POST /b2b/v1/payment-links, отзеркаливающий двухтабовый диалог панели и возвращающий тот жеcheckout_url. Естественно дополняет список + отзыв. - Истечение по времени — ссылка валидна до конкретной даты, а не только пока TTL сессии не истёк. Нужно для потоков выставления счетов, где «срок 14 дней» — естественный дедлайн.
- Многоразовые ссылки — Stripe-стиль страниц для нескольких покупателей (донаты, чаевые, повторяющиеся счета). Сегодня каждая ссылка одноразовая.
- Per-buyer идентичность — привязать ссылку к конкретному email или кошельку, чтобы её нельзя было переслать.
- Генерация QR на стороне API — панель сейчас отрисовывает QR-коды на клиенте; вынос этого в API для печати этикеток и встроенных квитанций в списке.
См. также
- Концепции → Сессии — что происходит на уровне сессии и intent’а, пока покупатель платит.
- Checkout → Обзор — что реально видит покупатель.
- Webhooks → Обзор — событие
payment.settled, на которое реагирует ваш сервер.