From zero to a working referral bot
Picture what you're building.
You create your own bot. Here's the flow:
Three things. Create whatever you're missing now.
You sign up inside @taklifchi_robot.
/startGet a token from BotFather. Takes a minute.
/newbotbiology_course_bot. If it's taken, pick another1234567890:AAF3cfHWy6zKf4hFS8yWnpxuwYkXdDdrNiE/revoke.Your bot goes live.
Copy the token and send it to @taklifchi_robot. Write nothing else — just the token itself.
Within seconds you'll get “✅ Bot is live!”. Your message is deleted immediately — the token doesn't stay in the chat.
The most important step. This is where people get stuck.
The bot can't find your channel on its own. Add it to both channels.
All the setup happens here.
In @taklifchi_robot pick your project → 🛠 Admin panel. Or tap the Panel button at the bottom of the chat.
The first screen shows a “Finish the setup” checklist. It always points at your next step, so you can't get lost.
You set the rule: how many invites earn what reward.
Without this, people will game your campaign.
The campaign page has a ⏳ Retention time setting. An invite only counts if the person stays in the channel that long.
The bot also scores new and suspicious accounts. A high score puts the invite “in review” — you approve or reject it in the panel.
Check it yourself before sharing.
/startNow you need people.
| Symptom | Cause and fix |
|---|---|
| Bot says “no campaign” | The campaign status isn't Active, or the start date hasn't arrived. Check the campaign page. |
| Link says “expired” | The bot isn't an admin in the reward channel, or lacks the “Invite users via link” right. Step 6. |
| Channel missing from the list | The bot hasn't seen it yet. Post a message in the channel or re-add the bot as admin. |
| Invites aren't counted | People must join the source chat, not the reward. Also: during retention the status stays “pending”. |
| Reward wasn't granted | The goal isn't met, or invites are “in review”. Panel → Users → that person. |
| The panel won't open | Close and reopen the bot — that's how Telegram refreshes the Mini App cache. |