Telegram

Accept crypto payments in Telegram: planned and working today

How to accept crypto payments in Telegram: a bot-based flow, what the Qvard Telegram checkout plans and the working path with the API today.

Accepting crypto payments in Telegram means a customer pays for an order inside a chat with your bot. Qvard plans a Telegram checkout, and it is not released yet. This guide explains the flow and the path that works today: the bot creates a payment through the API, the button leads to the hosted page and the webhook confirms the order.

Why Telegram is a useful channel

Many shops and communities already sell through Telegram bots and channels. A payment step inside the chat removes the need to send the customer to a separate site before the order is placed.

Status: the Telegram checkout is on the roadmap

A native Qvard checkout inside Telegram is not released yet, and this article does not describe it as available. The working flow below uses the live API, the hosted payment page and the webhook.

What works today

The bot’s backend creates a payment with POST /api/v1/payment and the x-api-key header, receives a redirectUrl and sends it to the customer as a button. The customer pays on the hosted page, and the webhook delivers the final status to your backend.

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
}

The bot’s server call

Send the order id as id and the price in USD as price from the bot’s backend. Keep the API key in server configuration. The bot should never hold the key in the chat logic that customers can see.

Show the order in the chat

Send the customer a short message with the order summary and the button that opens the redirectUrl. Use plain language and show the total, so the customer knows what they are paying for.

Confirm the order on the webhook

When the webhook delivers the id and the status paid, mark the order as paid and send the confirmation in the chat. A click on the button does not confirm the order by itself.

FAQ

Is there a native Qvard checkout inside Telegram today?

Not yet. The Telegram checkout is on the roadmap. Today the bot uses the API, a button with the redirectUrl and the webhook.

Does the customer need to leave Telegram?

The payment page opens from the button. The conversation stays in the chat, and the result returns to the bot through your webhook.

Can I use this with a bot I already have?

Yes. Add the payment call and the button to your existing bot logic, and handle the webhook in your backend.

How do I test the bot flow?

Create a demo invoice from a test order, pay it on the hosted page and check that the bot confirms the order after the webhook.

Related articles

Related articles