Где хранятся данные Telegram-бота: сервер, база данных и резервные копии
Что из данных бота хранит Telegram, а что лежит на вашем сервере и в базе данных. Куда уходят сообщения, где держать файлы и резервные копии.
Содержание 8 разделов
Данные Telegram-бота хранятся в двух местах. Переписка и файлы лежат на серверах Telegram, как в любом другом чате. А всё, что бот запоминает о клиентах (заявки, заказы, телефоны, на каком шаге человек остановился), хранится в базе данных на сервере владельца бота. Там же работает и сам бот: его код Telegram у себя не держит. Разберём по порядку, что где лежит.
Какие данные бота хранит Telegram
На стороне Telegram остаются четыре вещи:
- Аккаунт бота: имя, username, описание, аватар и команды, их задают в @BotFather.
- Переписка. Чат с ботом хранится в облаке Telegram, как любой другой.
- Файлы, которые прислали боту или отправил сам бот. Бот получает на каждый файл идентификатор
file_idи может скачать файл размером до 20 МБ. - Очередь обновлений. Сообщения, которые бот ещё не забрал, Telegram держит до 24 часов.
При этом бот не может запросить у Telegram историю чата: в Bot API такого метода нет, и каждое сообщение бот видит один раз, в момент получения. Если бот не записал заявку в свою базу, через API её потом не достать.
Куда уходят сообщения бота
- Клиент пишет боту Сообщение уходит на серверы Telegram.
-
Telegram передаёт его серверу бота
Либо сам отправляет запрос на адрес бота (вебхук), либо сервер бота регулярно забирает новые сообщения методом
getUpdates. - Код бота обрабатывает сообщение Понимает, на каком шаге клиент, записывает заявку в базу, при необходимости уведомляет менеджера или передаёт данные в CRM.
- Бот отвечает Сервер отправляет ответ через Bot API, и клиент видит его в чате.
Telegram здесь работает почтальоном. Он доставляет сообщения в обе стороны, но что ответить и куда записать заявку, решает сервер бота. Если тот же бот работает и в MAX, схема похожая: сообщения идут через серверы MAX, а база клиентов общая и лежит у вас.
Где хранятся боты: сервер
Сам бот представить просто: это программа, которая круглосуточно работает на сервере. Обычно это арендованный виртуальный сервер (VPS) с Linux, простому боту хватает тарифа от 300 ₽ в месяц. На сервере лежат код бота, настройки с токеном, по которому бот работает с Telegram (как его хранить, разбираем в статье о токене Telegram-бота), логи и часто сама база данных.
На домашнем компьютере бот тоже запустится, для проверки идеи этого хватит. Но выключили компьютер, и бот замолчал. Как выбрать тариф и провайдера, рассказываем в статье про сервер для Telegram-бота.
База данных Telegram-бота
База хранит всё, что бот должен помнить между сообщениями:
| Данные | Что внутри | Где лежат |
|---|---|---|
| Пользователи | Telegram ID, имя, телефон, отметка о согласии | Основная база |
| Заявки и заказы | Услуга, дата, сумма, статус | Основная база |
| Состояние диалога | На каком шаге клиент, что уже выбрал | Redis или основная база |
| Каталог и тексты | Товары, цены, ответы бота | Основная база, правится из админки |
| Файлы | Фото, документы, голосовые | file_id в базе, сами файлы в Telegram или в своём хранилище |
Основной базой обычно служит PostgreSQL или MySQL, для шага диалога и кеша рядом ставят Redis, а SQLite, база в одном файле, годится для прототипа. Менеджерам в базу лезть не нужно: заявки, клиентов и тексты бота выводят в админ-панель.
Отдельно про владение. Сервер и база должны быть оформлены на вас: если они записаны на личный аккаунт подрядчика, при расставании с ним данные придётся выпрашивать. У нас исходный код и доступы остаются у клиента. Если бот собран в конструкторе, база лежит у конструктора, и выгрузить её можно в тех пределах, которые он позволяет.
Файлы: оставить в Telegram или скачать к себе
Для каталога и картинок в ответах бота достаточно хранить file_id: по нему бот отправляет файл повторно, не загружая заново. Документы, которые нужны надолго (договоры, сканы, фото повреждений для страховой), надёжнее скачивать в своё хранилище. Так их можно открыть из админки, они попадают в резервные копии и не зависят от Telegram, у которого в России с февраля 2026 года фото и видео грузятся с перебоями. Стандартный Bot API отдаёт боту файлы до 20 МБ.
Резервные копии
Копия базы делается автоматически, не реже раза в сутки, и хранится отдельно от основного сервера, у другого провайдера или в объектном хранилище. Как настроить копии и что делать при сбое, рассказываем в статье о персональных данных в Telegram-боте.
В какой стране должен стоять сервер
Если в базе имена и телефоны граждан России, ответ простой: в России. С 1 июля 2025 года собирать и хранить такие данные в базах за рубежом запрещено (ч. 5 ст. 18 152-ФЗ), и резервных копий это тоже касается. Сервер за границей подходит только ботам, которые персональные данные не собирают.
Частые вопросы
Где хранятся боты в Telegram?
Сам бот работает на сервере своего владельца, обычно на арендованном VPS. Telegram хранит аккаунт бота и переписку с ним, а код и база клиентов лежат на сервере бота.
Хранит ли Telegram переписку с ботом?
Да, как любой другой чат. Но бот не может запросить эту историю: он получает каждое сообщение один раз и всё нужное должен сразу записать в свою базу.
Можно ли восстановить старые сообщения бота?
Через Bot API нельзя. Если бот не сохранил сообщение в базу или не переслал его менеджеру, оно останется только в чате у клиента.
Какая база данных нужна Telegram-боту?
Для бота с клиентами обычно берут PostgreSQL или MySQL, для шагов диалога и кеша добавляют Redis. Главное, чтобы база копировалась по расписанию.
Что будет с данными, если сервер бота отключится?
Новые сообщения Telegram держит в очереди до 24 часов и отдаст боту после запуска. Данные с самого сервера, если он не поднимется, вернёт только резервная копия.