Qut Pay Сайт Кабинет База знаний Инструкции Документация API ҚАЗРУС
ГлавнаяБаза знаний → Справочник

Tilda и любые формы: приём оплаты без кода

Обновлено: 2026-09-14 · Версия в Markdown

Коротко

Форм-хук — персональный адрес вашей организации. Как только форма отправляет на него данные, Qut Pay создаёт счёт. Писать код не нужно: в Tilda вы указываете этот адрес в приёмнике «Webhook», в обычной HTML-форме — в атрибуте action.

Адрес выглядит так: https://api.qut.kz/hooks/form/<токен>. Получить его можно в кабинете: Интеграции → форм-хуки → создать.

В ответ приходит ссылка на страницу оплаты. Если включить режим redirect, покупатель попадает на оплату сразу после отправки формы.

Как настроить

  1. Кабинет → Интеграции → создайте форм-хук и дайте ему имя (2-60 символов).
  2. Скопируйте адрес хука.
  3. В Tilda: в настройках формы подключите приёмник «Webhook» и вставьте адрес. В обычной форме: <form method="post" action="https://api.qut.kz/hooks/form/…">.
  4. Отправьте форму один раз. В карточке хука видно число пришедших запросов, число созданных счетов и последнюю ошибку.

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

Хук принимает и application/json, и обычный application/x-www-form-urlencoded. Тело запроса — не больше 32 КБ.

Сопоставление полей

Вручную сопоставлять поля не нужно: хук сам распознаёт самые распространённые имена. Регистр значения не имеет.

ЧтоПринимаемые имена
Суммаamount, sum, summa, price, total, paymentsum, payment.amount, сумма
Телефонphone, tel, telephone, mobile, whatsapp, телефон
Emailemail, e-mail, mail, почта
Имяname, fio, fullname, имя, аты
Описаниеdescription, comment, product, service, tariff, plan, товар, услуга
Номер заказаorderid, order_id, externalorderid, payment.orderid, tranid, formid

Вложенные структуры Tilda тоже разбираются: поля вида payment[amount] разворачиваются на один уровень, а если пришёл список products, сумма считается по нему (цена × количество) и используется как сумма счёта.

Если сумма не найдена, хук отвечает ошибкой invalid_amount — «поле суммы не найдено». Переименуйте поле формы в одно из перечисленных или задайте фиксированную сумму в настройках хука.

Телефон приводится к формату 7XXXXXXXXXX автоматически — клиент может написать его через дефисы, скобки или начиная с восьмёрки.

Значения по умолчанию

В карточке хука задаётся несколько параметров по умолчанию:

ПараметрЧто делает
СуммаФиксированная сумма. Если она задана, сумма из формы игнорируется — удобно для одной услуги или подписки
ОписаниеТекст, который видит покупатель. Используется, когда описания в форме нет. До 60 символов
Тип счётаqr — QR и страница оплаты; phone — счёт уходит прямо в приложение Kaspi покупателя
successUrlСтраница, куда покупатель попадёт после оплаты. Только http(s)
RedirectВместо JSON-ответа покупатель сразу перенаправляется на страницу оплаты

При типе phone поле телефона в форме обязательно, а сумма округляется до целых тенге. Если телефон не пришёл, хук создаст обычный QR-счёт.

Режим redirect

Есть два способа работы.

Ответ JSON (по умолчанию). Хук возвращает HTTP 201 и тело:

{ "ok": true, "invoiceId": "inv_…", "status": "pending",
  "payUrl": "https://api.qut.kz/pay/inv_…", "expiresAt": "…" }

Это подходит для приёмника webhook в Tilda, для n8n, для вашего сервера: берёте payUrl и отправляете клиента туда.

Перенаправление. Если в настройках хука включён Redirect (или вы добавили к адресу ?redirect=1), вместо ответа приходит 302, и браузер уводит покупателя прямо на оплату. Для обычной HTML-формы это самый короткий путь:

<form method="post" action="https://api.qut.kz/hooks/form/ТОКЕН?redirect=1">
  <input name="amount" value="5000" type="hidden">
  <input name="name" placeholder="Имя">
  <input name="phone" placeholder="Телефон">
  <button type="submit">Оплатить</button>
</form>

Собственный механизм webhook в Tilda страницу не меняет, поэтому там используют не redirect, а payUrl из ответа — либо ставят обычный блок с формой, которая отправляется прямо на адрес хука.

Проверочный запрос Tilda

Сохраняя адрес webhook, Tilda отправляет пустой запрос с признаком test. Хук распознаёт его, отвечает { "ok": true, "test": true } и счёт не создаёт. Кнопка «Проверить» в Tilda проходит нормально, а в кабинете не появляется лишний счёт.

Остановка хука и смена токена

Адрес хука не секретный, но он открыт: создать счёт может любой, кто его знает. Поэтому:

В счетах, созданных через хук, в metadata остаётся идентификатор хука и признак source: "form" — по нему в отчётности видно, из какой формы пришёл платёж.

Как читать ошибки

ОшибкаHTTPЧто произошло
hook_not_found404Неверный адрес или токен был заменён
hook_paused410Хук остановлен, включите его в кабинете
invalid_amount422Поле суммы не найдено или это не число
invalid_phone422Неверный формат телефона
tariff_limit_reached429Исчерпан месячный лимит счетов

Последняя ошибка видна и в карточке хука — при настройке формы это самый быстрый способ понять, что не так. Полный список: Каталог ошибок.

Вопросы и ответы

Сайт не на Tilda, а на другом конструкторе. Подойдёт? Да. Годится всё, что умеет отправлять POST: Webflow, форма WordPress, свёрстанный вручную HTML, автоматизация после Google Forms.

Форма отправилась, а счёта нет. Посмотрите строку «последняя ошибка» в карточке хука. Чаще всего дело в том, что имя поля суммы не распознано или форма прислала пустую сумму.

Как я узнаю об оплате? Уведомление приходит в кабинет, в Telegram-бота или на ваш вебхук. Если нужна автоматизация — заведите события в n8n: Автоматизация в n8n.

Можно ли одной формой продавать разные товары? Да: пусть из формы приходят и описание, и сумма. Один хук обработает все позиции.

Нужно, чтобы сумму вводил сам покупатель. Так можно? Можно — оставьте поле суммы в форме открытым и не задавайте фиксированную сумму в настройках хука.

Этот способ действительно обходится без программиста? Да. Есть и другие пути начать без кода: Нет программиста — как начать.

Связанные статьи

Автоматизация в n8n: готовые workflow для Qut PayДва готовых workflow для n8n — создание счёта и приём вебхуков с проверкой подписи. Импорт, credential, секрет, Raw Body и сценарий «форма → счёт → оплата → уведомление».Приём Kaspi для интернет-магазинаПолная схема от корзины до статуса «оплачен»: счёт, страница оплаты, вебхук. Способы без кода для Tilda, WooCommerce и OpenCart, и путь через API для самописного сайта.Нет программиста — как начатьПять способов работать без кода: счета вручную из кабинета, постоянные ссылки на оплату, Telegram-бот, модули WooCommerce и OpenCart, форм-хук для Tilda.Как создать первый счётДва способа: вручную из кабинета за два поля или одним запросом к API. Первый счёт разумно сделать в песочнице и там же симулировать оплату.Каталог ошибок — что возвращает API и что делатьВсе основные коды ошибок Qut Pay API по группам: авторизация, привязка Kaspi, счета, возвраты, лимиты тарифа, вебхуки, подписки. Причина и решение для каждой.

Остались вопросы? WhatsApp +77788813333 · kazprose@gmail.com
Написать можно и из кабинета: Поддержка.

Qut Pay — независимый сервис, не аффилирован с АО «Kaspi Bank». Kaspi и Kaspi Pay — товарные знаки их правообладателя.