Blog and knowledge base of the service
Setting up a menu for a Telegram bot in the BOT MARKET
Published: 03.05.2025

The menu in a Telegram bot is a set of buttons that can redirect users to other button menus, send various types of content (for example, text, images, videos, or stickers), or direct them to links — both inside the bot (for example, using UTM tags) and externally (to channels, chats or websites).

Setting up a menu for a Telegram bot in the BOT MARKET

Basic menu settings

Main menu settings.


Main menu settings.-1

The screenshot shows where the control of the main menu is located (it applies to your entire bot, if you do not add special subtle settings, but more on that below) for your bot.


On the right is the main menu control setting. In our case, this is creating buttons for our menu and managing the placement of buttons. Does everything look easy so far? - Let's continue.

Menu management.

This block is mid-level information and you'll have to think a little bit about it, but again nothing super heavy.


When you click on the button – “control” we will see 2 buttons

MENU OPERATION MODE and DELETE THE MENU. If everything is clear with the latter, then the MODE OF OPERATION of the MENU is a very important topic, we will analyze it below.

Menu management.-1

If we click on the OPERATING MODE of the MENU, we will see 3 modes

Menu management.-2
  1. The message menu (inline) is located next to the message and has a semi-transparent appearance. For correct operation, an event must be created - the [TELEGRAM] Event of pressing the built-in button. Without this event, button clicks will be ignored by the bot.


Where can I set up the event of pressing the built-in button? – in the events menu on the left in the navigation menu.(see the screenshot)

Menu management.-3

Send a message every time – any time you click on the inline button, a new chat in the bot is sent.


Edit the message – The message is updated in the chat of the bot without sending a new chat in the bot.


  1. Static menu (Reply) - located at the bottom of the dialog with the bot. When the buttons are clicked, new messages are sent. — this is a set of buttons that appears instead of the user's keyboard. These buttons send preset messages to the bot, as if the user had typed them manually. They are convenient for choosing response options.


The static menu has its own settings, for example, hide it after clicking or make the buttons in your bot a little smaller (see screenshot). This setting is located in the ”management”

Menu management.-4
  1. Delete static menu (delete reply) - removes the menu from the chat where the conversation with the bot is conducted. Since the static menu has a feature to be saved in the dialog until it is automatically deleted.


Menu examples:

Static menu (Reply) and ) Message menu(inline)

Menu management.-5

Adding multilingualism to a telegram bot.

The most difficult block to understand and implement, here you will have to think carefully and re-read this paragraph of the article more than once to implement your ideas in your bot, we will start with the definition of multilingualism.


Multilingualism in the Telegram bot allows users to choose a convenient interface language, making the bot more accessible and convenient for different audiences. The implementation includes language detection, storing translations, and displaying messages in the desired language.


Let's figure out how to do this.

Adding multilingualism to a telegram bot.-1
  1. First, you need to release the multilingual component on the left in the navigation menu. Select the languages you are interested in and add them.


  1. Next, we release the menu, in my case it will be in the free profile button and create an event so that our button can later be configured for a special event (in the “events” tab in the navigation)
Adding multilingualism to a telegram bot.-2
  1. The next step will be to release a script for our menus, and then we need to decide which menu we will have either inline or reply, we will make an example for two at once, so that it can be clearly seen. We will make a multilingual menu using the example of a bot. https://t.me/MULTI_LANGUAGE_BOT_MARKTE_BOT


  1. We are creating a script for changing the language, as shown in the photo below.


The first example is for an embedded script menu or a free message.

Adding multilingualism to a telegram bot.-3

The second example is for a static menu.

Adding multilingualism to a telegram bot.-4
  1. We make buttons for changing the language to Russian or English with a multilingual event. (see screenshot below), this item is the same for both reply and inline menus.
Adding multilingualism to a telegram bot.-5
  1. General multilingual settings for reply and inline menus.


After you have created an event in the script (see point b), you should have an event with the same name (in the "events” tab in the navigation)


An example of what it looks like:

Adding multilingualism to a telegram bot.-6

Next, we set up actions for this event, namely, we connect the script (point d) with this event and save it.


  1. Since we have a menu using multilingual actions for our events, including the buttons in the bot, must also be translated, for this we must set up the translations of our buttons correctly in our multilingual component, we cannot completely trust our automatic translator and therefore it is better to correct the translations manually.
Adding multilingualism to a telegram bot.-7
  1. After you have verified that the translation is correct, we go back to the events and return to where we left off.


  1. Go to the ”edit" tab in our event (point e) and enter the translated word from another language separated by a comma, preserving the signs and attributes that we set for our button in the script, we do this wherever we want to see a translation into another language.


Russians Russian in our case, so the translation of the button will also be comma-separated in Russian in the ”edit" tab, while retaining the attributes.

Adding multilingualism to a telegram bot.-8
  1. Adding a notification about the language change to the user. So that we don't have endless loading when switching languages in our bot, we create a special event that will act as an alert for switching to another language, how do we do this? See below.


We create an arbitrary script with our own text and go to our “favorite“ events tab, then create a multilingual script and attach our newly created script.

Adding multilingualism to a telegram bot.-9

That's it, you've completed setting up the multilingual menu.



  1. What was supposed to happen? We'll show this using the example of a bot. https://t.me/MULTI_LANGUAGE_BOT_MARKTE_BOT


Sample Reply menu:


Adding multilingualism to a telegram bot.-10

An example of an Inline menu:

Adding multilingualism to a telegram bot.-11

Common mistakes when working with menus.

  1. Why is the main menu of the message not working?
Common mistakes when working with menus.-1

Let's analyze the problem into scenarios /start


Let's say you created the main menu and decided to create a menu for another scenario or a free message, but then changed your mind and deleted the buttons, but did not delete the menu itself, then your bot will have an error in the form of a void instead of a menu on that scenario or a free button in the bot.


  1. Inline menu trigger(event) error


Inline buttons may stop working if the trigger (event) is configured with an error or deleted (see screenshot)

Common mistakes when working with menus.-2
  1. To make the inline buttons in the menu work again, add this event (you can do it without linking to the action)

Conclusion

To summarize, in setting up the menu in the Telegram bot

Setting up the menu in the Telegram bot is an important step to improve the user experience. Properly organized ones make interaction with the bot more convenient, understandable and faster, allowing users to easily find the necessary functions and commands.

Comments
to write comments
Comment list is empty. Start now!