Оплата в Telegram Mini App: приём крипты внутри мини-приложения
Оплата в Telegram Mini App объяснена: приём крипты внутри мини-приложения, что Qvard планирует для чекаута мини-приложения и рабочий путь через API.
Оплата в Telegram Mini App означает, что магазин в виде веб-приложения внутри Telegram принимает крипту за свои товары. Qvard планирует чекаут для мини-приложений, и он ещё не выпущен. Статья объясняет, как работала бы такая оплата, и путь, который работает сегодня: бэкенд мини-приложения создаёт платёж через API, открывает платёжную страницу и подтверждает заказ по webhook.
Что такое оплата в мини-приложении
Telegram Mini App — это веб-приложение, которое открывается внутри чата. Оплата в мини-приложении означает, что клиент выбирает товар в приложении и платит за него, не покидая Telegram надолго.
Статус: чекаут мини-приложений в дорожной карте
Нативный чекаут Qvard для Telegram Mini App ещё не выпущен, и статья не описывает его как доступный. Рабочий путь ниже использует живой API, платёжную страницу и webhook.
Что работает сегодня
Бэкенд мини-приложения создаёт платёж запросом POST /api/v1/payment с заголовком x-api-key, получает redirectUrl и открывает клиенту платёжную страницу. Затем webhook передаёт финальный статус бэкенду, который открывает товар.
Ключ храните на бэкенде
Мини-приложение работает в браузере клиента, поэтому ключ API никогда не должен попадать во фронтенд-код. Только бэкенд вызывает POST /api/v1/payment.
x-api-key: sk_live_…
{
"id": "order_1024",
"price": 149.99,
"paymentSystemId": 12
}
// 201 Created
{
"data": {
"id": "8f3k2a1c",
"redirectUrl": "https://my.qvard.com/pay/8f3k2a1c"
},
"code": 201,
"message": "success",
"status": true
}Открывайте товар по webhook
Мини-приложение показывает товар как открытый только после того, как webhook передаст id и статус paid для этого заказа. До этого товар остаётся закрытым, даже если клиент вернулся в приложение.
План на нативный чекаут мини-приложения
Когда выйдет нативный чекаут, окно оплаты может открываться внутри приложения. До этого логику заказа и webhook держите на бэкенде, чтобы позже менялся только фронтенд.
FAQ
Может ли Telegram Mini App принимать крипту сегодня?
Да. Бэкенд мини-приложения создаёт платёж через API, открывает платёжную страницу и открывает товар после того, как webhook подтвердит статус paid. Нативный чекаут мини-приложений — в дорожной карте.
Может ли мини-приложение вызывать платёжный API напрямую из браузера?
Нет. Ключ API храните на бэкенде и вызывайте платёжный endpoint только оттуда.
Должен ли клиент покидать мини-приложение?
Сегодня для оплаты открывается платёжная страница, а результат возвращается в мини-приложение через ваш бэкенд и webhook.
Как протестировать оплату в мини-приложении?
Создайте тестовый платёж для тестового товара, оплатите его на платёжной странице и проверьте, что товар открывается после webhook.
