Telegram message forwarding: personal-account source and bot destination

Maintained by:ChannelFlow
Sign in to a Telegram personal account, choose a group or channel, and configure a bot destination with the correct Chat ID and permissions.
Telegram message forwarding: personal-account source and bot destination
ChannelFlow
Telegram
message forwarding

A Telegram source and a Telegram destination use different connections. The source signs in to your personal account to receive authorized conversations. A bot token is used only when sending to a Telegram bot destination.

1. Connect a personal-account source

  1. Open Source accounts in the selected instance and add a Telegram personal account.
  2. Enter an account label and your phone number, including its country code.
  3. Read the account notice and request the verification code.
  4. In account verification, enter the code Telegram sends to you. If two-step verification is enabled, also enter your password and complete verification.
  5. Confirm the verified state. If the console reports no available node or an unavailable login service, submit feedback.

The login session is saved after verification. Enter codes and passwords only in the login flow you initiated yourself, never in messages to support.

2. Select the source conversation

Create a channel rule, select the personal account, and refresh the conversation list. Choose a group, channel, or private conversation the account can already access.

Manual source entry requires a numeric Chat ID, with any minus sign preserved. -1001234567890 is a format example, not a real configuration value. A source cannot use an @username, a t.me link, a message ID, or a Discord link.

Select a destination and save an enabled rule. A signed-in account waiting for channel configuration still needs a rule; a signed-in account waiting for listener readiness is not yet ready for your test message.

For sending to Discord, follow the webhook or bot section in the Discord guide. The detailed Feishu destination guide is currently in Chinese.

3. Configure a Telegram bot destination

  1. Open the official @BotFather in Telegram and send /newbot. Follow the prompts and store the bot token privately. See Telegram's bot tutorial.
  2. Add the bot to the destination group. For a channel, add it as an administrator with permission to publish. A private recipient must first open the bot and send /start.
  3. Choose Telegram Bot as the ChannelFlow destination.
  4. Enter the bot token and destination Chat ID or public channel @username. Private groups and channels need the correct numeric Chat ID with the minus sign preserved.
  5. Save and enable the rule.

If the destination appears in your personal account's conversation list, you can check its numeric ID there. Otherwise, the bot maintainer can inspect message.chat.id or channel_post.chat.id in official Bot API update data. User IDs and message IDs are not group IDs. A bot using a webhook cannot also use getUpdates; do not change an existing bot's receiving setup just to find an ID. See the Bot API reference.

4. Verify a new message

Wait until the source listener is ready, then ask another authorized member to post a new test message. Match the same identifier in Delivery records and at the actual destination.

Receiving your own outgoing messages and receiving bot-authored messages are controlled by separate source settings. If either is disabled, those messages are unsuitable for a first connection test.

Troubleshooting and limits

  • Signed in but no delivery: check the source conversation, enabled rule, listener status, keyword restrictions, and sender settings.
  • Destination permission error: check that the bot is still a member or administrator and can send messages.
  • Chat not found: check the numeric ID, minus sign, or supported public channel username.
  • Automatic joining: disabled by default. Enabling it changes the account's memberships and is not required to forward conversations you already access.
  • History: personal-account sources receive events after connection and do not scan old messages. Delivery retries apply to events already received, not unseen history.
  • Attachments: text receipt does not prove private files or every media format can be delivered to another platform. Test the actual file and destination separately.

Getting started · Troubleshooting · All documentation

Telegram message forwarding: personal-account source and bot destination | ChannelFlow