Getting Started

How to create your first membership bot in InviteMember

Yury Smykalov avatar
Written by Yury Smykalov
Updated over a week ago

It's easy to get started with InviteMember.

In this tutorial, we'll create a membership bot for a business called Daily Yoga Workouts (not a real project, just an example). 

If you want to skip the tutorial and check out the result, here you go: @YogaMemberBot.

Create Project

To begin, open @InviteMemberBot in Telegram. Click START.

The bot will send you a welcome message, and then you'll see the Add project button. Click it.

Send your project name to the bot. That's what your clients will see when they open your bot.

Well done! Now that you've given your project a name, you'll be asked to add your first resources. 

Add Resources (Telegram Channels & Groups)

Create your members-only area

What will your members-only area look like? 

In Telegram, it can be a combination of private channels and groups. The first time you do a project, you'll be able to create a channel or group:

You can check out our articles about how to create them:

Channels are great for content delivery (newsletters, signals, videos, podcasts, etc.) while groups are great for communities (mastermind groups, QA, support groups, etc.).

You can have multiple channels and groups managed by one membership bot!

Add your channels and groups in InviteMember

After you've named your project, you'll be asked what would you like to create first — a Paid Telegram Channel or a Paid Telegram Group. Whichever option you choose, you'll see a short video showing the next steps:

To add a Telegram Channel, you'll need to add @InviteMemberBot to channel admins and forward a message from the channel to the bot. 

Here is a detailed tutorial:
How To Add a Telegram Channel

To add a Telegram Group to InviteMember, you'll need to add @InviteMemberBot to group admins and post a message to the group with a mention of @InviteMemberBot.

Here is a detailed tutorial:
How To Add a Telegram Group

Please contact @InviteMemberSupportBot if you need any assistance.

Add a Subscription Plan

After adding your first Telegram Channel or Group, you'll need to create a Subscription Plan. A subscription plan defines what your customer will get, how much, and how often will he pay. 

The first thing you'll be asked to do is to select a currency to charge your customers in, and how often and how much will they have to pay.

In this tutorial we'll create a "Monthly" subscription plan for this project:
How To Add a Subscription Plan

Great! Now that your project has its first resource and that you've started creating your first subscription plan, it's time to create your membership bot.

Create a Telegram Bot with BotFather

Why do you need this

Your membership bot will be a small application that lives inside the Telegram ecosystem. It will have a name, a username, and a profile picture and will appear just like a real person in the user's contact list.

After setting your first subscription plan price, you'll see a video explaining how to create your membership bot and get its API token:

Register a new bot

Open @BotFather in Telegram and send /newbot command. Pick your bot name and username:

@BotFather will send you a unique string called API token:

Keep this token secret!

Customize your bot

If you wish to customize your bot (set profile picture, about, and description), please follow this tutorial:
How To Create a Telegram Bot

My new bot doesn't reply

Your membership bot application is now registered in Telegram. But if you launch it — it will do nothing until you send its API token to the InviteMemberBot. Why? Because your newly created bot doesn't have a backend (server) yet.

Now we're ready to make your membership bot alive! Just paste the token you got from @BotFather in the @InviteMemberBot chat:

InviteMember will check your token and will register itself as your Telegram Bot backend. Now, your bot is alive!

After doing this you'll be asked to add your first payment option.

Add a Payment Option

InviteMember supports many payment providers, including Stripe, PayPal, Skrill, and CoinPayments.

You can see the full list of our payment providers in this article:

What Payment Options Are Available?

For new projects, we recommend using our test modes (Stripe Test, PayPal Test, Razorpay Test, Skrill Test, and Paystack Test). These payment methods allow you to test how your bot works without a real credit/debit card. 

Now you'll see your project menu for the first time, in here you can edit it, add more resources, create more subscription plans, and add more payment options:

In this tutorial, we'll connect Stripe in test mode:
How To Add Stripe (Test Mode)

Once you're ready to start receiving payments, you'll have to disconnect any Test Mode payment option and connect them in Live Mode.

Check your membership bot

Now that you've added a payment option and your project's ready, you can open your membership bot and click START

It will show your project's name and description, and the buttons for your subscription plans:

Try clicking the button with the subscription plan name. The bot will show you the benefits of this particular plan and let you subscribe with the payment methods you added:

For example, Click Credit/Debit Card (TEST MODE). The bot will generate an invoice and send you a button:

Click this button, and a payment webpage will show up. We added Stripe Test for this bot, and now we can check the bot with a test card (4242 4242 4242 4242, expire: any, CVV: any):

After the payment, @YogaMemberBot will send you a confirmation message with the buttons to join the channels/groups you paid for:

At the same moment, the project owner will receive a notification:

Now it's time to build your bot! Please contact us at @InviteMemberSupportBot if you need any help.


I can't enable Add Users permission

In some Telegram clients (iOS, for example) there is a known bug — you can't enable Add Users permission for the bot. 

The workaround is to enable this permission in another Telegram app. We recommend Telegram Desktop.

Did this answer your question?