Telegram bots
All 13 coins for physical goods, real-world services and sales on your own site. Digital goods sold inside Telegram stay on Telegram Stars.
One-shot integration
Get an API key and an integration prompt from our Telegram bot. Paste the prompt into your coding agent and start taking crypto payments. No API docs to read.
Get connected in 3 steps
Open our Telegram bot. In seconds you get your API key and an integration prompt for your coding agent.
Claude Code, Cursor or any other coding agent reads our docs and writes the integration: the payment link, the webhook and the signature check.
We check the payment on-chain, block fake coins, then send your server a signed webhook. Ship the order.
Coins
13 coins on 12 networks
Networks: Tron (TRC-20) · TON · Ethereum (ERC-20) · BNB Chain (BEP-20) · Solana · Polygon · Base · Avalanche C-Chain · Bitcoin · Litecoin · Dogecoin · Monero
You send them the payment link. They pay the exact amount from any wallet before the deadline, and your server gets a signed webhook.
How does my buyer pay?We watch all 12 networks and send your server a signed webhook when a payment is confirmed.
Read the crypto payment API docsTelegram
One API key works for all three. Telegram’s rules decide which coins can show where, and the checkout follows them.
All 13 coins for physical goods, real-world services and sales on your own site. Digital goods sold inside Telegram stay on Telegram Stars.
Telegram allows only TON coins in Mini Apps, so the checkout shows GRAM and USDT on TON, on your own domain.
Accept USDT on 8 networks, USDC on 5, plus BTC, ETH, GRAM and 8 more coins, with payment links, signed webhooks and payouts you approve, from one API.
How to accept crypto payments in a Telegram bot
Create a crypto payment link with one API call. Your server hears back once, with a signed webhook, when the money is checked on-chain. No node to run, no polling, no forms.
This is the whole integration
Step 1
Open our Telegram bot. In seconds you get your API key and an integration prompt for your coding agent. Test mode works right away.
Get your API keyRavelo Bot
bot
Your test API key is ready:
rvk_test_8f3k…x9Kp
Step 2
Create a payment link with its own amount and address. Send it in a chat, an email or on your site.
POST /v1/payment-intents
{
"order_ref": "1042",
"asset_id": "usdt-tron",
"amount": "25000000" // 25 USDT
}
201 Created
{
"status": "requires_payment",
"instructions": { "address": "TQ7a…3fK" }
}
Step 3
From any wallet: the exact amount, before the deadline, with a QR code.
Order #1042
14:5925.00 USDT
TQ7a…3fK · TRON (TRC-20)
Pay before 12:30
Step 4
We check the payment on-chain, block fake coins, then send your server a signed webhook. Ship the order.
POST https://your-bot.app/webhook
ravelo-signature: verified
{
"type": "payment_intent.succeeded",
"data": { "order_ref": "1042", … }
}You ship the order. That’s it.
Developers
A REST API with TypeScript and Python SDKs, quickstart docs and a test mode. Every webhook is signed, so your server can prove it came from us. Keys can create payments and prepare payouts. Only you can approve money going out.
API keys can create payments and prepare payouts. None of them can send money out. That takes your approval.
Send the same request twice with one idempotency key and you get one payment, not two.
Each API and MCP call is logged: which key, which tool, what it asked for.
Create a payment link
import { Ravelo } from "@ravelo/sdk";
const ravelo = new Ravelo({
apiKey: process.env.RAVELO_TEST_KEY,
baseUrl: process.env.RAVELO_API,
});
// 25 USDT on TRON, in base units (6 decimals)
const intent = await ravelo.paymentIntents.create({
order_ref: "1042",
asset_id: "usdt-tron",
amount: "25000000",
});
console.log(intent.instructions.address); // send your buyer here
Verify a webhook
import { verifyWebhook } from "@ravelo/sdk";
// Verify the raw bytes exactly as they arrived
const event = await verifyWebhook(
rawBody,
req.headers["ravelo-signature"],
process.env.RAVELO_WEBHOOK_SECRET,
); // throws if the body or signature was forged
if (event.type === "payment_intent.succeeded") {
ship(event.data.order_ref);
}
Coding agents
Paste the integration prompt from our bot into your coding agent.
Claude Code, Cursor or any other coding agent reads our docs and writes the integration: the payment link, the webhook and the signature check. Connect our MCP server and your assistant can also create payment links and check payments. It never approves a payout. You do.
Integrate Ravelo crypto payments
into this project.
API key (test): rvk_test_••••
1. Read the docs: https://ravelopay.app/llms.txt
2. Add a /buy command that creates a
payment link with one API call.
3. Add a webhook that checks the
signature and ships the order.
4. Run one test payment.
Security
Every order gets its own payment link and checkout page: priced in crypto or your currency, with the exact amount, a QR code and a deadline.
We only count coins from verified token contracts. A look-alike token never marks an order paid.
The order shows exactly what arrived and when. Nothing is ready to ship until the full amount is in.
Two separate states, so your code ships only when the money is final. A visit to your thank-you page never counts.
We watch all 12 networks. Your server hears from us only when a payment changes.
Payouts
Money leaves only when you say so.
Withdraw to your saved addresses. A new address waits 24 hours before it can receive money. Your backend or your AI assistant can prepare a payout or a refund, but nothing moves until you approve it with your fingerprint, your face or a security key.

Dashboard
Create payment links through the API, or build your own checkout on it. Every payment lands in one dashboard, tracked from paid to withdrawn.
Total value
$9,640.62
In USD, at hourly prices
Available
$9,315.62
Ready to withdraw
Pending
$250.00
Being verified on-chain
On hold
$75.00
24h address wait
+25.00 USDT
Order #1042 · TRON (TRC-20)
+140.00 USDT
Order #1041 · TON
−450.00 USDT
Payout · Saved wallet
+0.42 ETH
Order #1039 · Ethereum
Paid, ready to ship and withdrawn, with every transfer that arrived.
Export payments and payouts as CSV for your accountant.
Invite a co-founder or a developer. Each person sees and does only what their role allows.
Available, pending and on hold, always shown apart. You always know what you can withdraw.
Refund all or part of an order to a checked address. Refunds can never add up to more than the buyer paid.
Build against test mode, then switch to your live key. Test payments never move real money.
Pricing
When you get paid
3% per payment
Taken from each confirmed payment. No fixed fee on top, so small sales stay cheap: a $5 sale costs 15¢.
Get your API keyFAQ
What developers ask before they plug us in. Missing something? Ask us in Telegram.
Get your API key from our Telegram bot in seconds, with an integration prompt for your coding agent. One API call creates your first payment link in test mode. Live payments start as soon as your account is switched on.
Ready instructions for your coding agent, such as Claude Code or Cursor. The bot sends them with your API key. Paste them in, and the agent adds a payment link and a verified webhook to your project. Then you run a test payment.
USDT on Tron (TRC-20), TON, Ethereum (ERC-20), BNB Chain (BEP-20), Solana (SPL), Polygon, Base and Avalanche C-Chain. USDC on Ethereum (ERC-20), Solana (SPL), Polygon, Base and Avalanche C-Chain. ETH on Ethereum and Base. Plus BTC, GRAM, SOL, TRX, BNB, POL, AVAX, LTC, DOGE and XMR, each on its own network. GRAM is TON’s own coin, formerly called Toncoin.
You send them the payment link. They pay the exact amount from any wallet before the deadline, and your server gets a signed webhook.
Yes, within Telegram’s rules: all 13 coins in plain bots for physical goods, real-world services and your own site, and GRAM and USDT on TON in Mini Apps.
Only for digital goods and services sold inside Telegram: Telegram requires Stars for those. For physical goods, real-world services and sales on your own website, you can take crypto with Ravelo.
We check it on-chain and against verified coin contracts before it counts. A look-alike token never marks an order paid.
No. We watch all 12 networks and send your server a signed webhook when a payment is confirmed.
No. It can create payment links and prepare a refund or payout. Only you approve one, with a passkey.
3% of each confirmed payment. No setup or monthly fee. Network costs are shown before your buyer pays and before you approve a payout.
Yes, ones you set: per payout, per day and per month. A new withdrawal address waits 24 hours before it can receive money, so a stolen login can’t empty your balance.
Open the bot: you get your API key and an integration prompt. Paste the prompt into your coding agent, or make one API call yourself. We watch the chain.