← All articles
How the Telegram-bot purchase flow works
A step-by-step flow: from /start to an active subscription without touching a card.
Why a TG bot
For our audience, a card isn't always an option. Russian cards often fail. Kazakhstan cards work but not everywhere. USDT and BTC work everywhere, including Iran and China. Inside Telegram there's also Crypto Bot — inline USDT/BTC payment without leaving the chat.
User path
/start— welcome, language pick, "Try for free" button.- Trial: the bot hands out a 1-hour config without a subscription — the user checks that it works at all.
- Plan selection — cards with prices in ₽ and USDT.
- Payment — SBP (Russian cards), Kaspi (Kazakhstan), Crypto Bot (inline USDT/BTC), USDT to address.
- Delivery: once payment is confirmed the bot sends the
logrus://URI and a QR for setup.
Things we had to get right
- USDT confirmation time: 10–30 minutes on TRC-20, usually less. The bot shows "confirming" and polls confirmations every minute.
- Crypto Bot refunds: returned via the Crypto Bot API within minutes, no deadline.
- Trial abuse: one trial per Telegram ID + device fingerprint. Simple guard, does the job.
Numbers
First quarter after launch:
- Trial → purchase: 34%
- USDT share of payments: 48%
- Crypto Bot share: 19%
- Cards (SBP + Kaspi): 33%
USDT plus Crypto Bot together is roughly 67% of payments. The audience pays in crypto more eagerly than we expected.
What's next
In progress: an in-bot referral program — invite a friend, get 1 month free. TG IDs are already in our stack, so this is literally one table and 200 lines of code.