Как сделать бота для продаж в Telegram: пошаговая инструкция 2026
Коротко
---
Узнайте, как создать бота для продаж в Telegram с нуля на VPS, используйте современные инструменты и автоматизируйте продажи — пошаговая инструкция 2026 года.
---
Создание бота для продаж в Telegram — это отличный способ автоматизировать взаимодействие с клиентами, повысить эффективность продаж и расширить присутствие вашего бизнеса. В этой статье мы подробно расскажем, как разобраться в теме, выбрать подходящие инструменты и настроить полноценного торгового бота на практике, используя VPS-сервер.
Почему стоит использовать Telegram-бота для продаж
Telegram — одна из самых популярных платформ для коммуникации и бизнеса. Благодаря API и простоте интеграции, создание собственного бота позволяет:
- Автоматизировать обработку заказов и оплат
- Поддерживать клиентов в реальном времени
- Рассылать акции и новости
- Вести учет продаж и аналитики
Современные решения позволяют сделать бота не только удобным, но и мощным инструментом продаж.
Что нужно для создания бота для продаж
Перед тем как приступить к настройке, определимся с основными компонентами:
- VPS-сервер — для размещения бота и его логики
- Telegram Bot API — платформа для взаимодействия с Telegram
- Язык программирования — Python (наиболее популярный для таких задач)
- База данных — для хранения товаров, заказов и клиентов (например, SQLite или PostgreSQL)
- Платежные системы — интеграция с платежными шлюзами для автоматической оплаты
- Инструменты разработки — IDE, Git, Docker (по желанию)
---
Шаг 1. Регистрация бота в Telegram
- 01Откройте Telegram и найдите бота .
- 02Создайте нового бота командой /newbot.
- 03Укажите название и уникальное имя (username).
- 04Получите токен API — он понадобится для взаимодействия.
Совет: храните токен в защищенном месте, например, в файле конфигурации на VPS.
---
Шаг 2. Настройка VPS-сервера
Для размещения бота вам потребуется VPS-сервер. Можно использовать такие провайдеры, как SANSARA, которые предоставляют быстрый и надежный хостинг.
Минимальные требования:
- Linux-дистрибутив (Ubuntu 22.04 или новее)
- 1-2 ГБ оперативной памяти
- 1 CPU
- Не менее 10 ГБ диска
Установка необходимых компонентов:
`bash
sudo apt update && sudo apt upgrade -y
sudo apt install python3 python3-pip -y
pip3 install virtualenv
mkdir telegram_bot_sales cd telegram_bot_sales python3 -m venv venv source venv/bin/activate
pip install python-telegram-bot sqlalchemy requests `
---
Шаг 3. Создание основного файла бота
Создайте файл bot.py. В нем реализуйте основные функции:
- Обработка команд /start, /catalog, /cart, /order
- Вывод товаров
- Обработка корзины
- Оформление заказа и оплата
Пример минимальной структуры:
`python import logging from telegram import Update, InlineKeyboardButton, InlineKeyboardMarkup from telegram.ext import ApplicationBuilder, CommandHandler, CallbackQueryHandler, ContextTypes import os
TOKEN = os.getenv('TELEGRAM_BOT_TOKEN')
logging.basicConfig(level=logging.INFO)
PRODUCTS = { 1: {'name': 'Кофе', 'price': 300}, 2: {'name': 'Чай', 'price': 200}, 3: {'name': 'Кофеварка', 'price': 5000}, }
user_carts = {}
async def start(update: Update, context: ContextTypes.DEFAULT_TYPE): await update.message.reply_text('Добро пожаловать! Используйте /catalog для просмотра товаров.')
async def catalog(update: Update, context: ContextTypes.DEFAULT_TYPE): keyboard = [ [InlineKeyboardButton(f"{prod['name']} - {prod['price']}₽", callback_data=f"add_{pid}")] for pid, prod in PRODUCTS.items() ] reply_markup = InlineKeyboardMarkup(keyboard) await update.message.reply_text('Выберите товар:', reply_markup=reply_markup)
async def button(update: Update, context: ContextTypes.DEFAULT_TYPE): query = update.callback_query await query.answer()
data = query.data user_id = query.from_user.id
if data.startswith('add_'): pid = int(data.split('_')[1]) cart = user_carts.setdefault(user_id, {}) cart[pid] = cart.get(pid, 0) + 1 await query.edit_message_text(f"Товар добавлен в корзину. Используйте /cart для просмотра.")
async def cart(update: Update, context: ContextTypes.DEFAULT_TYPE): user_id = update.message.from_user.id cart = user_carts.get(user_id, {}) if not cart: await update.message.reply_text('Ваша корзина пуста.') return
message = 'Ваша корзина:\n' total = 0 for pid, qty in cart.items(): prod = PRODUCTS[pid] line_total = prod['price'] * qty total += line_total message += f"{prod['name']} x{qty} — {line_total}₽\n" message += f"Общая сумма: {total}₽" await update.message.reply_text(message)
async def order(update: Update, context: ContextTypes.DEFAULT_TYPE): user_id = update.message.from_user.id cart = user_carts.get(user_id, {}) if not cart: await update.message.reply_text('Ваша корзина пуста.') return
total = sum(PRODUCTS[pid]['price'] * qty for pid, qty in cart.items())
await update.message.reply_text(f'Оформление заказа на сумму {total}₽. Переведите деньги и напишите /pay для подтверждения.')
if name == 'main': application = ApplicationBuilder().token(TOKEN).build()
application.add_handler(CommandHandler('start', start)) application.add_handler(CommandHandler('catalog', catalog)) application.add_handler(CommandHandler('cart', cart)) application.add_handler(CommandHandler('order', order)) application.add_handler(CallbackQueryHandler(button))
application.run_polling() `
Обратите внимание: это базовая структура. В реальном проекте потребуется интеграция с платежными шлюзами, базой данных и обработка заказов.
---
Шаг 4. Интеграция платежных систем
Для автоматизации продаж важно подключить платежные системы, такие как Robokassa, YooMoney или Stripe, которые поддерживают API для автоматической оплаты.
Общий принцип:
- 01Создайте аккаунт в выбранной платежной системе.
- 02Получите API-ключи.
- 03В боте реализуйте создание платежных ссылок/кнопок.
- 04После успешной оплаты — автоматически подтверждайте заказ.
Пример интеграции с YooMoney (на Python):
`python import requests
def create_payment(amount, comment): url = " " headers = { 'Authorization': 'Bearer YOUR_ACCESS_TOKEN', 'Content-Type': 'application/json' } data = { "amount": str(amount), "comment": comment, "label": "order_id_12345",
} response = requests.post(url, headers=headers, json=data) if response.status_code == 200: payment_url = response.json().get('confirmation_url') return payment_url return None `
Далее, после оплаты, API платежной системы возвращает статус, который необходимо обрабатывать.
---
Шаг 5. Хранение данных и автоматизация
Для хранения товаров, заказов и клиентов используйте базы данных. В 2026 году рекомендуется использовать PostgreSQL или SQLite:
`python
import sqlite3
conn = sqlite3.connect('sales_bot.db') cursor = conn.cursor()
cursor.execute(''' CREATE TABLE IF NOT EXISTS orders ( id INTEGER PRIMARY KEY AUTOINCREMENT, user_id INTEGER, total_amount INTEGER, status TEXT, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ) ''') conn.commit() `
Автоматизация обработки заказов и интеграции с платежами — важная часть развития бота.
---
Шаг 6. Тестирование и запуск
Перед запуском убедитесь, что:
- все функции работают корректно
- платежи проходят успешно
- данные сохраняются в базе
- бот стабильно работает на VPS
Запускайте бота в режиме tmux или systemd, чтобы он работал 24/7.
---
Итог
Создание бота для продаж в Telegram — это комплексный процесс, включающий регистрацию в API, настройку VPS, программирование логики заказа и интеграцию платежных систем. Используя современные инструменты и платформы, вы можете автоматизировать весь цикл продаж и увеличить доход.
Компания SANSARA предоставляет быстрый и надежный хостинг на VPS, что упрощает запуск подобных решений в 2026 году. Важное значение имеет автоматизация процессов и безопасность данных клиентов.
Если у вас есть вопросы или нужен индивидуальный подбор решений — обращайтесь к специалистам SANSARA, мы поможем реализовать проект любой сложности.
Ещё по теме
Читайте также
CTA · VPSVDS
Личный VPS — без терминала и очередей
Регистрация, импорт профиля и стабильный канал на телефон и компьютер. Тот же принцип, о котором мы пишем в блоге — на практике.