ChainPass Documentation
Everything you need to know to sell — and buy — access to Telegram channels with on-chain crypto payments. If anything is unclear, open @ChainPassBot and tap 📩 Support.
Introduction
ChainPass is a non-custodial crypto payment gateway for private Telegram channels. It lets a channel owner sell subscriptions (weekly, monthly, lifetime — any duration) that are paid on-chain and delivered automatically.
Three principles drive the design:
- Non-custodial. Buyers pay directly to the owner's wallet. ChainPass watches the blockchain to confirm the payment; it never holds, forwards or freezes anyone's funds.
- Fully automatic. Invoicing, payment matching, invites, renewal reminders, expiry removal, referrals and support tickets all run inside the bot with no manual work.
- Transparent. Service fees are simple (see Fees), collected on-chain to public treasury addresses anyone can audit, and never billed as an invoice to the owner.
The whole product lives in one Telegram bot: @ChainPassBot. There is no web dashboard to sign up for and no API keys to manage.
Quick start — sellers
You need: a private Telegram channel you administer, and a wallet address to receive payouts. Setup takes about two minutes.
1. Start the wizard
Open @ChainPassBot and send /sell.
2. Connect your channel
Add the bot as an administrator of your private channel with at least these permissions:
- Invite users via link — so paid members receive their one-time invite
- Ban users — so expired members can be removed
The wizard verifies the admin rights automatically and moves on.
3. Set your payout wallet
Paste the address where you want to be paid. Every sale is sent by the buyer directly to this address — double-check it. You can change it later from your dashboard.
4. Choose networks
Pick which networks you accept (see Supported networks). You can enable one or several.
5. Define your plans
Enter plans as <days> <usd> pairs, one per line, using life for lifetime:
7 15
30 40
life 75
That creates a $15 weekly, a $40 monthly and a $75 lifetime plan. Prices are set in USD; buyers pay the equivalent in crypto at the live market rate when the invoice is created.
6. Share your sale link
The wizard gives you a personal link in the form:
https://t.me/ChainPassBot?start=c_<your-slug>
Anyone who opens it lands on your channel's sales page with your plans and can pay immediately. Put it in your channel bio, pinned messages, ads and cross-promos.
Quick start — buyers
Buying access takes under a minute:
- Open the channel's sale link (or send
/buyin the bot if you've visited it before). - Pick a plan. You'll see the price in USD and the exact crypto amount at the current rate.
- Choose a payment method — ✅ Wallet payment if you're sending from your own wallet, or 🏦 CEX payment if you're withdrawing from an exchange like Binance or Bybit. Details in Payment methods.
- Send the shown amount to the shown address on the shown network. Sending on a different network means the funds are lost — always check.
- Get your invite. As soon as the transaction is confirmed on-chain, the bot sends you a one-time invite link to the channel. This is usually a matter of seconds after confirmation.
After buying, use /status to see your plan, expiry date and a one-tap 🔄 Renew button, and /ref to get your referral link (see Referral program).
Plans & limits
| Limit | Value |
|---|---|
| Plans per channel | 6 — any mix of durations, e.g. 7d / 30d / 90d / lifetime |
| Channels per owner | 5 (unlimited with No-Fee Lifetime) |
| Plan pricing | Any USD amount; converted to crypto at live market rate per invoice |
| Plan duration | Any number of days, or life for lifetime |
- Renewals extend. Buying again before expiry adds the new period on top of the remaining days — subscribers never lose time by renewing early.
- Lifetime is forever. A lifetime subscription never expires and is never downgraded, even if the member later buys a shorter plan.
- Editable any time. Change plan names, durations and prices from your dashboard; changes apply to new purchases only.
Owner dashboard
Send /mychannels and pick a channel to open its dashboard. From there you can:
- 📈 Stats — revenue and subscription counts for your channel.
- 💎 Edit plans — add, change or remove plans (same
days usdformat as the wizard). - 👛 Edit wallet — update your payout address. Applies to all new invoices immediately.
- 🎁 Grant — give a user free access for N days (or lifetime) without a payment — useful for mods, promos and giveaways.
- 👥 Subscribers — list of active subscribers with plan and expiry.
- 📣 Broadcast — message all your subscribers (see Broadcasts).
- ⏸ Pause / resume sales — temporarily hide your sales page.
- 📩 Support contact — choose who receives your buyers' support tickets (see Support system).
- 💸 Fees — your current fee rate, accrued balance, and the No-Fee Lifetime upgrade.
Broadcasts
From your dashboard you can send a message to every subscriber of your channel — announcements, renewal promos, migration notices. You'll see a preview and a confirmation step before anything is sent, and a delivery report when the broadcast finishes.
Support system
ChainPass includes a per-channel ticket system so buyers never have to hunt for the right person to DM.
For buyers
Tap 📩 Support in the menu (or send /support), pick which channel your question is about — or "ChainPass bot" for platform questions — and type your message. You'll get the reply right in the bot, marked "Reply from … support".
For owners
By default, tickets about your channel come to you as a DM from the bot, with a one-tap ✍️ Reply button. You can delegate this: in the dashboard, set 📩 Support contact to any teammate (by @username or ID — they must have started the bot once). Platform-level questions are handled by the ChainPass team.
Payment methods
Every invoice offers two ways to pay. Both end the same way — an on-chain transfer to the owner's wallet — but they're matched differently, so pick the one that matches how you're actually sending:
✅ Wallet payment
For payments sent from a wallet you control (MetaMask, Rabby, Trust, hardware wallets, …).
- Send the shown amount from your own address.
- A small tolerance (±0.3%) absorbs rounding, so minor precision differences are fine.
- Matched by amount and timing against the invoice; the closest matching transfer wins.
🏦 CEX payment
For withdrawals sent directly from an exchange (Binance, Bybit, OKX, …), where you can't control the sending address.
- The invoice shows a unique exact amount (the last decimals are specific to your invoice).
- Withdraw exactly that amount — the unique amount is how the payment is attributed to you, since exchange withdrawals come from shared addresses.
- If your exchange charges the withdrawal fee on top (most do), you're fine. If it deducts the fee from the amount, add the fee so the received amount is exact.
Matching & timing
- The bot scans new blocks continuously while any invoice is pending; confirmation-to-invite is typically seconds.
- Invoices expire after 6 hours. Payment method is locked once chosen — if you picked CEX but want to pay from a wallet (or vice versa), start a fresh purchase instead of reusing the old invoice.
- Creating a new invoice for the same channel cancels your previous pending one, so you can safely restart.
Supported networks
| Network | Coin | Status | Explorer |
|---|---|---|---|
| Robinhood Chain | ETH | ✅ Live | explorer.mainnet.chain.robinhood.com |
| BNB Smart Chain | BNB | ✅ Live | bscscan.com |
| Solana | SOL | 🔜 Coming soon | solscan.io |
Owners choose which networks each channel accepts. Prices are always set in USD; the crypto amount is computed at the live market rate when the invoice is generated, so neither side carries exchange-rate risk during the payment window.
Subscription lifecycle
- Purchase confirmed → the buyer receives a one-time invite link and joins the channel. The owner gets a sale notification.
- Active → the buyer can check plan and expiry with
/status, renew any time (renewals extend the current expiry), and open support tickets. - 3 days before expiry → automatic reminder with a renew button.
- 1 day before expiry → final reminder.
- Expiry → if not renewed, the member is automatically removed from the channel. They can come back any time by buying again.
Lifetime subscriptions skip steps 3–5: they never expire and are never removed.
Referral program
Every user has a personal referral link, available via /ref. When someone joins through it and buys:
- the referrer earns +7 days on their own subscription;
- the new user gets +3 bonus days on the plan they buy.
For owners this is free, built-in growth: your existing subscribers are rewarded for bringing in new paying members, and the bonus days cost you nothing in fees.
Fees & No-Fee Lifetime
The price list
| Plan | Cost | Notes |
|---|---|---|
| Standard | 3% per sale | +1% for each additional active channel under the same owner (e.g. 2 channels = 4% on each sale) |
| No-Fee Lifetime | $250 one-time | 0% forever, unlimited channels, wipes any outstanding fee balance |
There are no monthly costs, setup costs or minimums. Buyers never pay extra — the fee is on the seller's side only.
How fees are collected — you're never billed
Because ChainPass is non-custodial, we can't (and don't want to) skim each payment. Instead:
- Each sale accrues its fee (e.g. 3% of $40 = $1.20) to your fee balance. Nothing is charged; the full sale went to your wallet.
- When your accrued balance grows to cover the price of a plan a buyer is purchasing, that single sale is routed to the ChainPass treasury instead of your wallet.
- The buyer's experience is identical — they pay, they get access. You receive the usual sale notification, marked "collected by ChainPass", and your balance is settled (any overshoot is credited back against future fees).
Net effect: over time you keep 97% of revenue (at the 3% rate) without ever receiving an invoice, sending a payment, or having funds pass through a third party.
You can see your current rate, accrued balance and full history any time with /fees or from My channels → 💸 Fees.
No-Fee Lifetime
A one-time $250 payment (in crypto, to the treasury) that permanently sets your fee rate to 0%, removes the 5-channel limit, and clears any accrued fee balance. If you're doing steady volume, it typically pays for itself within weeks. Upgrade from the /fees page.
Treasury transparency
All ChainPass service revenue — fee settlements and No-Fee Lifetime purchases — lands on fixed, public treasury addresses. Nothing else ever touches them: owner payouts go directly from buyer to owner and never pass through the treasury. That means anyone can audit exactly what ChainPass earns, on-chain, at any time.
EVM Treasury
Robinhood Chain BNB Smart Chain0x757B188cfA96E2Ea40Bf61c21884aae602ECAea6
Solana Treasury
Solana — reserved for upcoming supportFoPD7UELNPnsVXXtiP7GiXruE2J56ddseXj6yzh2ctUU
Command reference
| Command | Who | What it does |
|---|---|---|
/start | Everyone | Open the main menu (or a channel's sales page via a c_… link) |
/menu | Everyone | Back to the main menu from anywhere |
/buy | Buyers | Reopen the last sales page, or pick among your subscribed channels |
/status | Buyers | Your subscriptions: plan, expiry, renew buttons |
/ref | Everyone | Your referral link and bonus stats |
/sell | Owners | Connect a new channel (guided wizard) |
/mychannels | Owners | Dashboards for your connected channels |
/fees | Owners | Fee rate, accrued balance, No-Fee Lifetime upgrade |
/support | Everyone | Open a support ticket |
/help | Everyone | Short built-in guide |
/cancel | Everyone | Abort the current wizard/input |
Troubleshooting
"I paid but didn't get the invite"
- Check you sent on the network shown in the invoice — right coin, wrong network is the #1 cause and is unrecoverable.
- CEX method: the received amount must be exact. If your exchange deducted its withdrawal fee from the amount, the payment can't match — contact support with your transaction hash.
- Wallet method: amounts far outside the ±0.3% tolerance won't match automatically — contact support with the tx hash.
- If the invoice expired (6 h) before you paid, contact support with the tx hash; payments are kept on record for matching review.
"The invite link doesn't work"
Invite links are one-time. If it was consumed or expired before you joined, open /status and contact support — access can be re-issued since your subscription is already active.
"My buyers pay but don't get invited" (owners)
Almost always: the bot lost (or never had) admin rights in your channel. Re-add it as admin with invite users + ban users permissions.
Anything else
Tap 📩 Support in the bot — tickets about a channel go to that channel's team, platform questions go to ChainPass staff.