Skip to content

One-shot integration

The crypto payment gateway for Telegram bots and crypto services.

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

  1. Open our Telegram bot. In seconds you get your API key and an integration prompt for your coding agent.

  2. Claude Code, Cursor or any other coding agent reads our docs and writes the integration: the payment link, the webhook and the signature check.

  3. We check the payment on-chain, block fake coins, then send your server a signed webhook. Ship the order.

Coins

Accept USDT, USDC, BTC, ETH, GRAM and 8 more coins

13 coins on 12 networks

  • AVAX
  • BNB
  • BTC
  • DOGE
  • ETH
  • GRAM
  • LTC
  • POL
  • SOL
  • TRX
  • USDC
  • USDT
  • XMR

Networks: Tron (TRC-20) · TON · Ethereum (ERC-20) · BNB Chain (BEP-20) · Solana · Polygon · Base · Avalanche C-Chain · Bitcoin · Litecoin · Dogecoin · Monero

Your buyer pays from any wallet

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 the chains. You ship.

We watch all 12 networks and send your server a signed webhook when a payment is confirmed.

Read the crypto payment API docs

Telegram

Built for Telegram bots, Mini Apps and crypto services.

One API key works for all three. Telegram’s rules decide which coins can show where, and the checkout follows them.

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.

Mini Apps

Telegram allows only TON coins in Mini Apps, so the checkout shows GRAM and USDT on TON, on your own domain.

Crypto services and websites

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

One call to get paid. One webhook to ship.

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

  1. Step 1

    Get your API key

    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 key

    Ravelo Bot

    bot

    /start

    Your test API key is ready:

    rvk_test_8f3k…x9Kp

  2. Step 2

    One call

    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
    POST /v1/payment-intents
    {
      "order_ref": "1042",
      "asset_id": "usdt-tron",
      "amount": "25000000"        // 25 USDT
    }
    
    201 Created
    {
      "status": "requires_payment",
      "instructions": { "address": "TQ7a…3fK" }
    }
    
  3. Step 3

    Your buyer pays

    From any wallet: the exact amount, before the deadline, with a QR code.

    Order #1042

    14:59

    25.00 USDT

    TQ7a…3fK · TRON (TRC-20)

    Pay before 12:30

  4. Step 4

    One webhook

    We check the payment on-chain, block fake coins, then send your server a signed webhook. Ship the order.

    webhook
    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

One crypto payment API, SDKs and webhooks you can verify.

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.

  • Keys that can’t drain you

    API keys can create payments and prepare payouts. None of them can send money out. That takes your approval.

  • Safe to retry

    Send the same request twice with one idempotency key and you get one payment, not two.

  • Every call on record

    Each API and MCP call is logged: which key, which tool, what it asked for.

Read the crypto payment API docs

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

Or integrate in one prompt.

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.

What the bot sends you, ready to paste into your coding agent:
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

We check every payment, so you never ship for fake money.

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.

Fake coins blocked

We only count coins from verified token contracts. A look-alike token never marks an order paid.

Underpaid, late or wrong coin

The order shows exactly what arrived and when. Nothing is ready to ship until the full amount is in.

Paid, then ready to ship

Two separate states, so your code ships only when the money is final. A visit to your thank-you page never counts.

No node to run

We watch all 12 networks. Your server hears from us only when a payment changes.

Payouts

Payouts you approve

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

Every payment, balance and payout in one place.

Create payment links through the API, or build your own checkout on it. Every payment lands in one dashboard, tracked from paid to withdrawn.

  • Every payment’s status

    Paid, ready to ship and withdrawn, with every transfer that arrived.

  • CSV statements

    Export payments and payouts as CSV for your accountant.

  • Team roles

    Invite a co-founder or a developer. Each person sees and does only what their role allows.

  • Balances by coin

    Available, pending and on hold, always shown apart. You always know what you can withdraw.

  • Full or partial refunds

    Refund all or part of an order to a checked address. Refunds can never add up to more than the buyer paid.

  • Test and live keys

    Build against test mode, then switch to your live key. Test payments never move real money.

Pricing

Pricing: 3% per payment, no setup or monthly fee

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 key
  • Buyer pays 100 USDT, you get 97 USDT
  • No setup fee, no monthly fee
  • Test mode is free
  • Network cost shown before each payout

FAQ

Crypto payment gateway FAQ

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.

Start accepting crypto payments today.

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.