Terug naar Blog
Facturatie

Telegram Bot Crypto Betalingen: 2026 Setup Gids (USDT, BTC, USDC)

Hoe accepteer je crypto betalingen in een Telegram bot in 2026 — CryptoBot, Telegram Payments 2.0 API, USDC betaallinks, en het simpelste no-code pad.

20 mei 20268 min lezen
P
PayRequest Team
Payments Experts

Een creator runt een Telegram-kanaal met 12.000 abonnees en verkoopt premium signaaltoegang voor $30 per maand. De helft van haar publiek zit in landen waar Stripe niet werkt. PayPal heeft haar account in 2024 bevroren wegens "high-risk activity". Overboekingen vanuit Argentinië kosten de klant meer dan het abonnement zelf.

Ze schakelde over naar crypto-only betalingen in haar Telegram-bot. Klanten tappen op een knop in de chat, betalen $30 in USDT via CryptoBot's wallet, en de bot voegt ze automatisch toe aan het premium kanaal. Conversie ging van 3% naar 11%, churn halveerde, en ze kreeg geen "ik kan niet betalen" berichten meer.

Dit patroon — Telegram + crypto — is een van de snelst groeiende betaalcategorieën in 2026. Het komt vooral voor bij creators, online onderwijs, software unlocks, en elke dienst waar de klantenkring wereldwijd en crypto-vertrouwd is. Deze gids breekt af hoe je het opzet, de drie integratie-paden, en welke past bij jouw use case.

Belangrijkste Punten

  • Drie integratie-paden: gehoste betaallink (eenvoudigst), CryptoBot + Telegram Payments 2.0 API (meest native), eigen Web3 met Telegram Mini Apps (meest flexibel)
  • CryptoBot is Telegram's de facto crypto-provider — ondersteunt BTC, ETH, USDT, TON en een handvol altcoins; leeft binnen Telegram als bot
  • USDC werkt niet native met CryptoBot — om USDC binnen Telegram te accepteren, genereer je een betaallink vanuit een extern facturatieplatform en stuur je die als bot-bericht
  • Je hoeft geen node te draaien of smart contracts uit te rollen — moderne botframeworks (grammy, python-telegram-bot) plus een payment provider token zijn genoeg
  • Webhook-verificatie is cruciaal — controleer altijd de signature op betaalbevestigings-callbacks om nep "paid" events te voorkomen

Waarom Telegram Bots en Crypto Zo Goed Samengaan

Drie dingen maken Telegram ongebruikelijk geschikt voor cryptobetalingen vergeleken met Discord, WhatsApp of Slack.

De Bot Payments 2.0 API levert native UI

Telegram's payment API (sinds 2018, uitgebreid in 2.0) geeft bots een standaard "Pay"-knop die native in de chat verschijnt. De gebruiker tapt Pay, ziet het bedrag, tapt Confirm, en de transactie gebeurt — zonder Telegram te verlaten, zonder een browser te openen, zonder walletadressen te kopiëren. Discord en WhatsApp hebben hier geen equivalent voor.

CryptoBot loste het in-chat crypto wallet probleem op

CryptoBot (@CryptoBot) is een Telegram-native crypto-wallet die andere bots als payment provider kunnen gebruiken. Gebruikers melden zich één keer aan (het is gewoon een Telegram-bot die ze berichten sturen), laden geld op via on-ramp of transfer, en vanaf dat moment is elke cryptobetaling in Telegram twee taps. Dit is veel soepeler dan de typische "open MetaMask, plak adres, bevestig gas, ga terug naar oorspronkelijke app" web3-flow.

De TON Foundation subsidieert het ecosysteem actief

Telegram's moederecosysteem investeert zwaar in TON (The Open Network), dus Telegram-native cryptobetalingen krijgen eersteklas API-behandeling, integratiebeurzen en frequente feature-updates. In 2026 is TON de snelste, goedkoopste chain voor Telegram-gebonden betalingen — fees onder een cent, sub-seconde bevestigingen.

Pad 1: Stuur een Crypto Betaallink als Bot-Bericht (Eenvoudigst)

De simpelste integratie gebruikt Telegram's payment API helemaal niet. Je bot genereert een crypto betaallink via een gehost platform en stuurt die als gewoon bericht.

```javascript // Pseudo-code met grammy framework bot.command("subscribe", async (ctx) => { const link = await payrequest.createPaymentLink({ amount: 30, currency: "USD", methods: ["usdc-base", "usdt-tron"], metadata: { telegram_user_id: ctx.from.id } }) await ctx.reply(`Tap om te abonneren: ${link.url}`) })

// Luister naar webhook van PayRequest app.post("/webhook", (req, res) => { if (req.body.event === "payment.completed") { const telegramId = req.body.metadata.telegram_user_id bot.api.sendMessage(telegramId, "Betaling bevestigd! Welkom.") grantChannelAccess(telegramId) } res.send("ok") }) ```

De gebruiker tapt op de link, opent hem in zijn browser (of Telegram's in-app browser), betaalt vanuit MetaMask/Coinbase Wallet/Phantom, en jouw webhook-handler geeft toegang.

Voordelen: geen Telegram Payments 2.0 setup, werkt voor elke crypto-asset op elke chain, makkelijk te integreren met bestaande facturatieplatforms. Nadelen: betaling gebeurt in een browser, niet in de chat — iets meer wrijving dan de native Pay-knop.

Dit is het juiste pad als je (a) USDC of andere assets wilt accepteren die CryptoBot niet ondersteunt, (b) al een facturatieplatform hebt voor fiat-betalingen en crypto op hetzelfde dashboard wilt, of (c) geen crypto-specifieke providerrelatie wilt beheren.

Pad 2: CryptoBot + Telegram Payments 2.0 API (Meest Native)

Wil je de Pay-knop native binnen de Telegram-chat laten verschijnen, dan gebruik je Telegram's Bot Payments 2.0 API met CryptoBot als payment provider.

Stappen:

  1. Open @CryptoBot in Telegram, tap op "Crypto Pay" en registreer je bot. Je krijgt een API-token.
  2. Geef die token door aan Telegram's BotFather als payment provider token (zoals je dat met Stripe zou doen).
  3. In je botcode roep je `sendInvoice` aan met de titel, beschrijving, currency code (USDT, BTC, TON), prijs en de CryptoBot provider token.
  4. Verwerk `pre_checkout_query` om te bevestigen dat de bestelling nog geldig is.
  5. Verwerk `successful_payment` om de bestelling uit te voeren.

```python # python-telegram-bot voorbeeld async def subscribe(update, context): await context.bot.send_invoice( chat_id=update.effective_chat.id, title="Premium Kanaal", description="30 dagen premium signalen", payload="sub-premium-30d", provider_token=CRYPTOBOT_TOKEN, currency="USDT", prices=[LabeledPrice("Abonnement", 3000)] # 30.00 USDT, in cent )

async def successful_payment(update, context): user_id = update.message.from_user.id await grant_channel_access(user_id) await update.message.reply_text("Welkom bij premium!") ```

Voordelen: betaling gebeurt volledig binnen Telegram, geen externe browser, soepele UX, CryptoBot regelt wallet/on-ramp. Nadelen: beperkt tot assets die CryptoBot ondersteunt (geen USDC, geen Solana, geen Polygon), gebruikers moeten al een CryptoBot-wallet hebben of aanmaken, en je bent afhankelijk van CryptoBot's uptime en KYC-beleid.

Dit is het juiste pad als jouw publiek al crypto-native is en je specifiek de in-chat native Pay-knop wilt.

Pad 3: Telegram Mini Apps + Web3 (Meest Flexibel)

Voor complexe use cases — NFT-verkoop, on-chain abonnementen, multi-asset wallets, DEX-achtige swaps — bouw je een Telegram Mini App die een volledige web3-interface binnen Telegram opent. De gebruiker tapt op een knop, een mini-browser opent *binnen* Telegram met jouw dApp, en hij verbindt MetaMask of TonKeeper.

Dit is het pad dat NFT-marktplaatsen, play-to-earn games en DeFi-bots op Telegram gebruiken. Het vereist echte frontend-engineering — React, ethers.js of web3.js, walletconnect-integratie, smart contract calls — en is overkill voor simpele "accepteer crypto voor een abonnement" use cases. Sla over tenzij je een specifieke reden hebt.

Hoe Verifieer Je dat Betalingen Echt Zijn (Sla Dit Niet Over)

De meest voorkomende fout in Telegram crypto-botsetups is vertrouwen op client-side of ongetekende bevestigingen. Hier is het minimum om misbruik te voorkomen:

Voor Pad 1 (gehoste betaallink)
  • Stel je webhook-URL in het dashboard van het betaalplatform in
  • Verifieer de webhook-signature op elke binnenkomende request (HMAC-SHA256 met je webhook-secret)
  • Match het `metadata.telegram_user_id` veld met de gebruiker aan wie je de link oorspronkelijk stuurde
  • Vertrouw nooit een betaalbevestiging die binnenkomt zonder een getekende webhook
Voor Pad 2 (CryptoBot + Telegram Payments API)
  • Telegram tekent de `successful_payment` update automatisch — vertrouw alleen updates die via Telegram's officiële getUpdates of webhook binnenkomen
  • Verifieer dat de `telegram_payment_charge_id` uniek is (voorkomt replay-aanvallen)
  • Sla charge IDs op in je database met een `processed` flag
Voor Pad 3 (eigen Web3)
  • Wacht op minstens 1 bevestiging op TON, 2 bevestigingen op Polygon/Base, 6 bevestigingen op Bitcoin voor je uitlevert
  • Verifieer dat de on-chain transactie overeenkomt met het verwachte bedrag, ontvangstadres en token contract
  • Gebruik een dienst als Alchemy of QuickNode voor betrouwbare webhook-levering

Veelvoorkomende Valkuilen

Een paar dingen waar eerste-keer-bouwers tegenaan lopen:

  • Facturen alleen naar privé-chats sturen: Telegram's Bot Payments API werkt niet in kanalen of groepen — alleen in 1-op-1 chats met de bot. Run je een betaald kanaal, stuur dan de factuur in een privé-DM van de bot, niet in het kanaal zelf.
  • pre_checkout_query vergeten: Telegram verlangt dat je bot binnen 10 seconden reageert op `pre_checkout_query`. Doe je dat niet, dan faalt de betaling. Zet een handler op, zelfs als hij alleen `ok=true` retourneert.
  • Currency code hoofdletterverschil: Telegram verwacht currency codes in hoofdletters (USDT, BTC, TON). Kleine letters geven "invalid currency"-fouten.
  • Verwarring over prijseenheid: net als Stripe verwacht Telegram prijzen in de kleinste eenheid (cent, satoshi, nanoTON). 30,00 USDT is 3000, geen 30. Controleer de decimalen voor elke asset dubbel.
  • Webhook-levering zonder HTTPS: Telegram POST't alleen webhooks naar HTTPS-endpoints. Test je lokaal, gebruik dan ngrok of tailscale om je lokale server bloot te stellen.

Wanneer Crypto Bot Betalingen Géén Match Zijn

Sla het crypto-in-Telegram patroon over als:

  • Jouw publiek vooral in markten zit waar Stripe/PayPal al prima werken (US, UK, NL, DE, FR voor B2C)
  • Gemiddelde orderwaarde onder €10 ligt — zelfs goedkope chains voegen UX-wrijving toe vergeleken met een tap met de kaart
  • Je terugbetalingen nodig hebt — on-chain transacties zijn onomkeerbaar, en "terugbetalen" betekent handmatig crypto terugsturen
  • Je gereguleerde goederen verkoopt (alcohol, leeftijdsgebonden content, financieel advies) waar on-chain identiteitsverificatie wettelijk verplicht is

Voor iedereen anders — wereldwijde creators, online onderwijs, software unlocks, signaaldiensten, B2B-diensten met internationale klanten — is Telegram + crypto in 2026 de meest wrijvingsloze manier om een chat-native publiek te monetiseren.

Een Praktische Eerste-week Setup

Wil je tegen het eind van volgende week een werkende crypto-betalende Telegram-bot:

  1. Dag 1: Bouw een basis-bot met grammy (Node.js) of python-telegram-bot. Krijg `/start` en `/help` werkend.
  2. Dag 2: Kies je pad — link-gebaseerd (Pad 1) voor USDC/multi-asset, CryptoBot (Pad 2) voor native in-chat.
  3. Dag 3: Voor Pad 1, meld je aan bij PayRequest en verbind een USDC-ontvangstwallet. Voor Pad 2, registreer je bot bij @CryptoBot en pak de API-token.
  4. Dag 4: Implementeer het `/subscribe` commando dat of een betaallink stuurt of `sendInvoice` aanroept. Voeg een webhook-handler voor bevestigingen toe.
  5. Dag 5: Test met een echte €1–5 betaling vanuit je eigen wallet. Verifieer dat de bot toegang verleent bij bevestiging.
  6. Dag 6: Voeg foutafhandeling, replay-attack bescherming en een fallback-bericht toe voor gebruikers zonder CryptoBot-wallet.
  7. Dag 7: Deploy naar productie. Voeg een "Hoe te betalen"-bericht toe dat de flow uitlegt aan eerste gebruikers.

Hoe PayRequest Telegram Bot Betalingen Afhandelt

PayRequest's crypto betaallinks werken met elk Telegram bot framework — je bot genereert een link via de API, stuurt hem als bericht, en krijgt een webhook wanneer de betaling bevestigd is.

Wat zit erin:

  • USDC op Base als standaard crypto-rail (CryptoBot ondersteunt geen USDC; wij wel)
  • Multi-method links — dezelfde link accepteert USDC, kaart, iDEAL of PayPal afhankelijk van wat de klant prefereert
  • Webhook signature verificatie ingebouwd met je platform-secret
  • Metadata-veld om betalingen te taggen met Telegram user IDs zodat je bot bevestigingen kan routeren
  • Hetzelfde dashboard voor crypto en fiat — geen aparte reconciliatie voor je Telegram-omzet
  • 2% fee met maximum van €25/transactie — hetzelfde als fiat, geen crypto-specifieke opslag

Voor Telegram-creators en botoperators die een USDC + fiat hybride checkout willen, verbind PayRequest en voeg cryptobetalingen toe aan je bot in een middag.

Frequently Asked Questions

Can a Telegram bot accept cryptocurrency payments in 2026?

Yes. There are three paths: (1) Telegram's native Bot Payments 2.0 API with a crypto-supporting provider like CryptoBot, which gives users a payment button inside the chat; (2) generate a one-time crypto payment link from a billing platform like PayRequest and send it as a message; (3) implement a custom Web3 flow using Telegram Mini Apps with TON or another chain. Option 2 is the simplest and works with USDC, USDT, BTC, and ETH out of the box.

What's CryptoBot and how does it work with Telegram?

CryptoBot (@CryptoBot) is a Telegram-native payment provider built on the TON ecosystem that lets bots accept Bitcoin, Ethereum, USDT, TON, and a handful of altcoins. You register your bot with CryptoBot, get an API token, and use Telegram's standard sendInvoice method with CryptoBot's provider token. Users tap Pay, approve in their CryptoBot wallet (also a Telegram bot), and the funds appear in your merchant balance.

Do I need to write code to accept crypto in a Telegram bot?

Not necessarily. If you use a hosted payment platform like PayRequest, you generate a crypto payment link in the dashboard and your bot just sends that link as a message — no API integration, no smart contracts. If you want native in-chat invoices (with the Pay button inside Telegram), you'll need a basic bot using node-telegram-bot-api, python-telegram-bot, or grammy, plus 30–50 lines of code to call sendInvoice with a crypto provider token.

How does Telegram Bot Payments 2.0 work with cryptocurrency?

Telegram's Bot Payments 2.0 API treats crypto providers the same way it treats traditional payment processors. You request a provider_token from a payment provider (Stripe for fiat, CryptoBot for crypto), then call sendInvoice with a title, description, currency code, and price. Telegram renders the payment UI natively in the chat. For crypto, the currency code is typically the asset ticker (BTC, USDT, TON) and the amount is in the smallest unit.

Is it safe to accept crypto payments through a Telegram bot?

Yes, provided you (1) never hold private keys inside your bot's environment, (2) use a reputable provider like CryptoBot or a hosted payment link service, (3) verify webhook signatures on payment confirmation callbacks, and (4) wait for the required number of on-chain confirmations before fulfilling. The biggest risk in Telegram crypto bots is phishing impersonation — always verify your bot's @username and add a verified badge if possible.

Can I accept USDC instead of TON in a Telegram bot?

Yes. CryptoBot supports USDT but not USDC natively. To accept USDC inside Telegram, the cleanest workflow is generating a payment link from a multi-chain billing platform that supports USDC on Base or Polygon, and sending that link as a bot message. The user taps it, opens MetaMask or Coinbase Wallet, completes the payment, and your bot receives a webhook confirmation when the on-chain transaction is finalized.

Deel dit artikel

Klaar om te beginnen?

Sluit je aan bij duizenden bedrijven die PayRequest gebruiken om sneller betaald te worden.

Aan de slag