# Buy bot setup

# Buy bot setup

The buy bot posts a message in a Telegram group every time someone buys the token it is configured for. Set it up inside Telegram or from the dashboard.

## Overview to your multi-chain buy bot

#### Who may operate it

| Setting | Value |
| --- | --- |
| Allowed | The bot's Memescale owner, or Memescale staff. |
| Telegram group admins | Not included. |
| A non-owner sends a command | No reply. |
| A non-owner taps a button | Alert popup: `Owner / admins only`. |

> **Setting it up turns it on**
>
> The buy bot turns on by itself the moment a save leaves it with both a contract address and at least one group — including when the last group is removed and a new one is added back. Saving with only one of the two never turns it on.

While both are present, the settings-card switch, `/enablebuybot`, Lock It In, and the dashboard toggle turn it on and off.

## Manage your buy bot in Telegram

#### Group path

1. Add the bot to the group and promote it to admin. If it isn't admin yet, it replies `Promote me to admin first, then send /enablebuybot again.`
2. Send `/enablebuybot` in the group. This authorizes the group and adds it to the buy bot's groups (up to 10).
3. If no contract address is set yet, the bot replies `Send the contract address right here and I'll enable it.`
4. Paste the contract address in that same group. Anything that isn't an address is ignored and the prompt keeps waiting.
5. If the address is an EVM address DexScreener doesn't list, the bot asks `Which chain is this token on?` with one button per EVM chain.
6. The bot replies `Done ✅ — $MSAI buys post here.` followed by `Send /buybotsettings if you'd like to customize the layout, emojis, or media.` The group is now live.

*Step 2, if something's already set*

| Situation | Reply |
| --- | --- |
| A contract address is already set | `Buy bot enabled ✅ — buys post here.` |
| The group is already added and the bot is already on | `Buy bot is already enabled for $MSAI here — still running, nothing changed.` |

> **Limit**
>
> Past 10 groups: `Limit reached, we're already in 10 groups. Remove a group first and then send the /enablebuybot again to enable the buy bot.`

#### Starting in a DM

1. Send `/enablebuybot` in a DM with no contract address set. The bot replies `Send the token's contract address and I'll set it up.`
2. Paste the address. The bot looks it up on DexScreener and shows a card: `Found $MSAI — <name>` (or `I couldn't find that token on DexScreener yet — it may be very new.`), the chain, the address, and `Lock it in?`, with **Confirm ✅** / **Cancel** buttons.
3. Tap **Confirm ✅**. The bot saves the contract address and chain. If DexScreener lists links the layout uses, the socials card opens next (see Commands and the settings card); otherwise any missing link is asked for one by one.
4. With a token set but no group yet, the bot replies `No group yet — Send /enablebuybot inside any group I'm an admin in and I'll begin sending alerts right away.`
5. Go to the group, promote the bot to admin, and send `/enablebuybot`.

#### Forking a layout first

1. Send `/forkbuybot`. If the bot already has a custom layout, it warns that the fork will overwrite it.
2. Paste or forward the other bot's buy post — image, GIF or video included. This copies only the body text, size emoji and media. **The buy bot is not enabled and no groups are added.**
3. If the bot already has a token, the forked layout is posted rendered on its latest buy. Then the post-fork wizard opens: links, then media and emoji, then locked in — see Commands and the settings card. It asks for the contract address first; the DexScreener lookup also supplies the project links.
4. Tapping **Lock It In** turns the bot on only if a group is already added. Without one, the final card tells you to send `/enablebuybot` in the group.

## Manage your buy bot in the dashboard

The buy bot is available for Telegram bots only.

#### Dashboard path

1. Open the Buy Bot tab: dashboard → beta tab → Buy Bot.
2. Tap **Set up**.
3. Pick the chain: `Which chain is the token on?` shows one button per supported chain; **Cancel** closes the tab.
4. In Settings, set **Currently enabled in** to a group. Picking a group labelled "unauthorized — picking authorizes it" authorizes it.
5. Enter the **Contract address**.
6. Optional: Layout settings, Emoji settings, media, buttons, body edits.
7. Tap **Save & push**.

> **Warning**
>
> The dashboard's group picker holds one group — picking a new one replaces it. To post in more groups, send `/enablebuybot` in each extra group or use Manage Groups in Telegram.

- [Commands and the settings card](/buy-bot/buybot-commands)
