Merchant API

Accept payments in your own bot

Get a token, create invoices from your code and handle a webhook for every payment. A sandbox key lets you test payments end to end before release.

8 coins · 16 networks on one balance
The API tokens and webhooks screen
Webhook delivered
Sandbox
Getting started

How to connect the Merchant API

From a token to your first webhook — four steps.

Step 1

Get a token

Create an app in the bot and get your Merchant API key.

Step 2

Create an invoice

One API call — amount, coin, description and the webhook address.

Step 3

Show the payment link

Hand the user a link or a button — the payment happens inside Telegram.

Step 4

Handle the webhook

Receive the payment event and release the goods or access in your own service.

What you get

Payments as part of your own product

Invoices are created by request and statuses arrive by webhook — the rest is yours to define.

Token and sandbox

A separate key for testing: rehearse the payment process before it reaches real users.

Invoices from code

Create, cancel and check invoices with plain HTTP requests — no SDK required.

Recurring charges

Subscriptions as a product: the user agrees once, then charges run on schedule through the Merchant API.

Payment webhooks

The event fires right after payment and retries on failure, so no order state is lost.

Docs and examples

Method reference, error codes and ready-made request examples in the help center.

How it all works in detail — in the help center

8 coins · 16 networks on one balance

GRAM BTC ETH SOL BNB LTC DOGE TRX
USDTTRC-20 · ERC-20 · BEP-20 · TON · SOL USDCERC-20 · BEP-20 · SOL

Run a channel? Sell in Telegram?

See the page as your role sees it — the feature set changes to match.

For creators For sellers For developers
Earn

Earnings on your balance you don’t have to think about

Move part of your balance to Earn — it accrues automatically and the payout lands in your wallet. You can add funds to Earn or withdraw at any time.

Annual rate Accrues every hour
USDT 4% first 500 USDT 1% above 500
GRAM 6% first 300 GRAM 3% above 300
Paid into the wallet daily at 00:30 UTC No fee in or out
The Earn screen
The withdrawal confirmation screen
Address matches
Security

Verified before it leaves, not after

A withdrawal is the only operation that moves funds out of the wallet. Here is what happens around the moment you tap “Confirm”.

  • Before you confirm
  • Address, network and memo in full No “4f3a…9c2b”: you see exactly where the funds are going and on which network.
  • An allow-list of addresses Optional: withdrawals can go only to addresses you saved in advance.
  • PIN or Face ID Confirmation is required for every withdrawal, not once per session.
  • You tap “Confirm”
  • And even after that
  • A delay on large amounts The withdrawal is not sent instantly — there is still time to change your mind and cancel it.
  • An AML check on the transaction The transaction is screened before the funds reach the recipient.
  • A notification for every operation If something happens without you, you are the first to know.

The security section in the help center

Terms

Terms you can see up front

The amount to be charged is always shown before you confirm — there are no hidden fees.

Deposits to the wallet Credited after network confirmations
No fee
Transfers by username inside Telegram The crypto never goes on-chain, so there is no network fee to pay
No fee
Swap in the wallet Rate, fee and final amount on the swap screen
Shown before you confirm
On-chain withdrawal Address, network and memo are checked before sending
Network fee only
Adding funds to Earn and withdrawing from Earn Funds are never locked for a fixed term
No fee

Current fees and minimums are shown in the app. The full list is in the help center.

USDT GRAM BTC ETH SOL BNB LTC DOGE
8 coins · 16 networks — one balance

No need for a separate wallet per network: deposit and withdraw through whichever network suits you.

TRC-20 · ERC-20 · BEP-20 · TON · SOL · BTC · LTC · DOGE

online Live support in Telegram
My TRC-20 withdrawal hasn’t arrived — what should I do? Looking at the transaction now — we’ll answer right here in the chat.
@tgpayhelpbot
FAQ

Frequently asked questions

The short version on the wallet, transfers, Earn and taking payments.

No. The wallet is created the first time you open @tgpaycryptobot — there is no login, no password and no seed phrase. Access is tied to your Telegram account.

Eight coins and sixteen networks: GRAM, BTC, ETH, SOL, BNB, LTC, DOGE and TRX, plus USDT on five networks and USDC on three. You pick the network when you deposit or withdraw — each one has its own address.

Enter their username — no address is needed, the transfer stays inside the wallet and there is no network fee. If they don’t have a wallet yet, send a check: they will claim it themselves.

You move part of your balance to Earn and it accrues automatically. The rate has two tiers: on USDT it is 4% a year on the first 500 USDT and 1% on anything above that; on GRAM it is 6% on the first 300 GRAM and 3% above. It accrues every hour, and the payout arrives in your wallet daily at 00:30 UTC. You can add funds to Earn or withdraw at any time, with no fee.

A check is crypto as a link or a QR code. It can be made for a single recipient or for several claims, protected with a password, limited by an expiry date, restricted to subscribers of your channels or to Telegram Premium users. Once created, a check can be paused, its amount and number of claims edited, or deleted — whatever is left returns to your balance.

Transfers by username carry no network fee; a network fee is deducted when you withdraw. The swap fee and the final amount are shown before you confirm, and the current values and minimums are in the app and in the help center.

Issue invoices right in the bot, and for automation plug in the Merchant API: invoices are created with a request and a webhook arrives when one is paid. The method reference is in the help center.

All the answers are in the help center Can’t find your answer? Write to @tgpayhelpbot

Open your wallet in a minute

Launch @tgpaycryptobot in Telegram — the wallet is already there, ready to receive crypto.

Viewing as:
Personal For creators For sellers For developers