CASE / OPENEDSHOOSHVPN
← все кейсыTelegram-бот · VPNгод · 2024длительность · 5 недельОткрыть вживую

ShooshVPN

VPN внутри Telegram-бота: подписка, оплата и ключ — в три тапа, без приложений и личного кабинета.

S
ShooshVPN
bot · online
99.9% uptime
Выбери тариф — оплата прямо здесь 👇
6 мес · 699 ₽
💳 Оплатить 699 ₽
Оплачено · ключ готов
vless://a4f2…@de.sh:443
WireGuard / VLESS · DE node
сообщение…
Подписка
6 месяцев
активна· до 14.09
Узлы
DE · Frankfurt12 ms
NL · Amsterdam18 ms
FI · Helsinki21 ms
Автопродлениевкл
напомним за 1 день
ключ за ~5 сек
01 / CONTEXTКонтекст

Контекст

Запрос был простой и честный: человек открывает Telegram, выбирает тариф, платит — и сразу получает рабочий ключ. Без сайта, без регистрации, без «скачайте наш клиент». Весь продукт живёт внутри одного бота.

Сложность не в интерфейсе, а в инфраструктуре под ним: выдача и ротация ключей, привязка к подписке, автопродление и оплата прямо в чате должны работать без ручного вмешательства круглые сутки.

02 / BRIEFЗадача

Задача

  1. 01Подписки с разными сроками и тарифами прямо в боте
  2. 02Оплата без выхода из Telegram
  3. 03Моментальная выдача ключа и QR после оплаты
  4. 04Ротация ключей и автопродление подписки
  5. 05Стабильная работа узлов без ручного администрирования
03 / SOLUTIONРешение

Решение

/ step 01

Тариф и оплата в чате

Бот показывает тарифы инлайн-кнопками, оплата идёт через Telegram Payments — счёт открывается прямо в диалоге, подтверждение приходит вебхуком за пару секунд.

/ step 02

Выдача ключа за секунды

После оплаты бот генерирует конфиг (WireGuard/VLESS), привязывает его к подписке и отправляет ключ строкой и QR-кодом — копируешь или сканируешь и подключаешься.

/ step 03

Автопродление и ротация

За день до конца подписки бот напоминает и предлагает продлить в один тап. Ключи можно перевыпустить кнопкой — старый отзывается, новый прилетает в чат.

/ step 04

Узлы и аптайм

Узлы и сам бот упакованы в Docker, с health-чеками и автоперезапуском. Если узел деградирует — трафик уходит на здоровый, пользователь этого не замечает.

04 / STACKАрхитектура

Архитектура

PythonaiogramWireGuardVLESSTelegram PaymentsDockerPostgreSQL

Ядро — асинхронный бот на aiogram: вся логика тарифов, состояний подписки и платёжных вебхуков. Состояние пользователей и ключей хранится в PostgreSQL, генерация конфигов вынесена в отдельный сервис выдачи поверх WireGuard и VLESS.

Узлы, бот и воркер продлений запускаются в Docker. Планировщик каждый день проверяет истекающие подписки, шлёт напоминания и отзывает ключи у неоплаченных — без участия администратора.

05 / RESULTSРезультаты

Результаты

0тапа
от тарифа до оплаты
~0сек
выдача ключа
Авто
продление подписки
0.0%
аптайм узлов
06 / HONESTЧто не получилось с первого раза

Что не получилось с первого раза

  • Сначала конфиг генерировался синхронно в обработчике платежа — при всплеске оплат бот подвисал и часть пользователей видела «ключ выдаётся» дольше минуты. Вынесли выдачу в отдельную очередь, время стабилизировалось до нескольких секунд.
  • Первые автопродления списывали и выдавали новый ключ, но не всегда отзывали старый — у части аккаунтов копились висящие конфиги. Добавили строгую привязку «один активный ключ на подписку» с отзывом при ротации.
07 / VOICEСлово клиента
Хотелось, чтобы человек просто заплатил и пользовался, а не разбирался в настройках. В итоге всё уместилось в один бот: оплатил — получил ключ — подключился.
AR
Anton R.
Основатель сервиса · ShooshVPN
08 / TEAMКоманда

Команда

DK
Бот и инфраструктура
SY
Backend
AL
DevOps · узлы
09 / ROADMAPЧто дальше

Что дальше

  • Реферальная программа внутри бота
  • Выбор локации узла перед выдачей ключа
  • История платежей и чеки в чате
10 / RELATEDСвязанные кейсы