A Telegram bot for selling VPN subscriptions tailored for Remnawave.
- 🛒 Shop: Users can select tariffs and purchase subscriptions.
- 🎁 Trial: Automated issuance of trial keys via Remnawave API.
- 💳 Payments: User-friendly payment flow (Modular architecture: Stars, Yookassa, Platega, Tribute).
- 🏷 Promo Codes: System for discounts (Fixed amount or Percentage).
- 🌍 Multi-language: Support for English and Russian (Auto-detected).
- 👤 Profile: View balance and subscription status.
Note: Commands execute only for users listed in
ADMIN_IDSin.env.
/admin- Open the Admin Panel to manage plans, users, and settings via UI buttons.
- A Linux server (VPS) with Docker and Docker Compose installed.
- A domain name (required for Webhook payments like YooKassa).
git clone https://github.com/masseselsev/remnabot.git
cd remnabot
cp .env.example .env
nano .envFill in the required fields in .env:
BOT_TOKEN: From @BotFather.REMNAWAVE_URL&REMNAWAVE_API_KEY: From your Remnawave panel.ADMIN_IDS: Your Telegram ID.WEBHOOK_URL: Your domain URL (e.g.,https://your-domain.com/webhook).
docker compose up -d --buildThe bot will start on port 127.0.0.1:8000. You must configure a Reverse Proxy (Nginx, Caddy, etc.) to forward HTTPS requests from your domain to this local port.
To update the bot to the latest version:
git pull origin main
docker compose down
docker compose up -d --buildA script is provided to backup the database: scripts/backup_db.sh.
Add it to your crontab to run daily:
crontab -e
# Add line: 0 3 * * * /path/to/remnabot/scripts/backup_db.shТелеграм-бот для продажи VPN подписок, разработанный специально для панели Remnawave.
- 🛒 Магазин: Выбор тарифов и покупка подписок.
- 🎁 Пробный период: Автоматическая выдача ключей через Remnawave API.
- 💳 Платежи: Модульная система оплаты (Stars, ЮКасса, Platega, Tribute).
- 🏷 Промокоды: Скидки (фиксированная сумма или процент).
- 🌍 Мультиязычность: Поддержка русского и английского (автоопределение).
- 👤 Профиль: Просмотр баланса и статуса подписки.
Примечание: Команды работают только для пользователей, указанных в
ADMIN_IDSв файле.env.
/admin- Открыть Админ-панель для управления тарифами, пользователями и настройками через визуальное меню.
- Linux сервер (VPS) с установленным Docker и Docker Compose.
- Доменное имя (обязательно для приема платежей, например, через ЮКассу).
git clone https://github.com/masseselsev/remnabot.git
cd remnabot
cp .env.example .env
nano .envЗаполните обязательные поля в .env:
BOT_TOKEN: От @BotFather.REMNAWAVE_URLиREMNAWAVE_API_KEY: Из вашей панели Remnawave.ADMIN_IDS: Ваш Telegram ID.WEBHOOK_URL: URL вашего домена (например,https://your-domain.com/webhook).
docker compose up -d --buildБот запустится на порту 127.0.0.1:8000. Вы должны настроить Reverse Proxy (Nginx, Caddy и т.д.) для перенаправления HTTPS запросов с вашего домена на этот локальный порт.
Чтобы обновить бота до последней версии:
git pull origin main
docker compose down
docker compose up -d --buildВ папке scripts/ есть скрипт для бэкапа базы данных: backup_db.sh.
Рекомендуем добавить его в crontab для ежедневного запуска:
crontab -e
# Добавьте строку: 0 3 * * * /path/to/remnabot/scripts/backup_db.sh