Шаблон

Закрытый клуб по подписке

Продавайте доступ в закрытую группу или канал Telegram. Оплатившие получают личное приглашение сразу после подтверждения платежа. Со Stripe раз в неделю бот убирает тех, чья подписка закончилась.

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

  1. /start
  2. 🔓 Откройте доступ к «Клуб дизайнеров»! Оформите подписку — и получите вход в закрытую группу или канал Telegram. Я беру на себя оплату, отправляю персональное приглашение и автоматически слежу за вашим доступом. 👇
    🔓 Оформить подписку
  3. 🔓 Оформить подписку
  4. 📧 Почти готово! На какой email Stripe отправить чек об оплате?
  5. sam@example.com
  6. ✅ Защищённая оплата готова! Как только Stripe подтвердит платёж, я сразу пришлю персональное приглашение в Telegram. 🎟️
    💳 Перейти к оплате
  7. 🎉 Оплата подтверждена — добро пожаловать! Ваше персональное приглашение в Telegram готово. Нажмите кнопку ниже, чтобы войти. 👇
    🎟️ Открыть приглашение
Участник оформляет подписку, платит и получает приглашение

Как это работает

  • Пользователь нажимает «Вступить» и вводит email для чека
  • Бот создаёт оплату у выбранного провайдера и отправляет ссылку или счёт
  • После оплаты провайдер уведомляет бота
  • Бот проверяет статус платежа и только после подтверждения создаёт персональную ссылку-приглашение
  • Со Stripe бот раз в нужный период проверяет статус подписки
  • Активная подписка — участник остаётся. Истекла — бот убирает его из канала и уведомляет

Что нужно для запуска

  • Telegram Payments (по умолчанию): в @BotFather откройте Payments для вашего бота, подключите поддерживаемого платёжного провайдера, скопируйте provider token и вставьте его в FlowCastle: настройки бота > Card payments (provider token). Шаг оплаты уже собран как блок ACCEPT_PAYMENT с ветками «оплачено/не оплачено» на Telegram Stars (XTR); после добавления токена переключите его на Card. Автоматическая проверка подписок требует Stripe, поэтому с Telegram Payments еженедельный аудит не устанавливается — продлевайте и отключайте доступ вручную или выберите Stripe.
  • Заполните STRIPE_SECRET_KEY в настройках модуля Stripe.
  • Добавьте URL вебхука Stripe в Stripe Dashboard — адрес есть внутри сценария.
  • Stripe: оставьте установленный модуль Stripe, используйте реальный recurring Price ID, настройте вебхук оплаты и проведите тестовую оплату подписки перед приглашением участников. Только вариант Stripe устанавливает автоматический еженедельный аудит подписок; если вы перешли на Stripe после установки с другим провайдером, создайте рассылку аудита вручную.
  • Только Stripe: еженедельный аудит подписок устанавливается черновиком рассылки («Membership Access Audit»). Откройте «Рассылки» и запланируйте её, когда оплата заработает, — до этого никто не удаляется автоматически.
  • YooKassa: установите модуль YooKassa (yokassa@1.0.0) и укажите shopId и secretKey в форме настройки модуля — действие оплаты берёт их из модуля, в сценарии они не хранятся. Шаг оплаты уже настроен на создание ссылок YooKassa. Продления ручные, автоматический аудит подписок не устанавливается (нужен Stripe).
  • Другой провайдер: замените шаг-заглушку оплаты на действие модуля или HTTP-запрос этого провайдера, сохраните payment id/status/link в переменные и добавьте вебхук или ручное подтверждение перед выдачей доступа в Telegram. Автоматический аудит подписок не устанавливается (нужен Stripe).
  • Страница после оплаты (Stripe/YooKassa): вопрос настройки заполняет одной и той же страницей и checkoutSuccessUrl, и checkoutCancelUrl; позже отредактируйте переменные, если нужны разные страницы.
  • Добавьте бота администратором в целевой канал или группу с правами на приглашение и удаление участников.
  • Целевой канал можно указать публичной ссылкой вида https://t.me/privateclub, @username или числовым ID на -100.
  • Чтобы получать уведомления о каждом новом оплатившем участнике, отметьте контакты вашей команды тегом «owner» на странице «Контакты». Тогда действие «Уведомить владельца» отправит им email участника, ID подписки и контакт.

Подробности

Полезно знать

  • Для работы нужен бот с правами администратора в целевом канале или группе; для Stripe — установленный модуль Stripe.
  • Для каждого участника создаётся персональная ссылка-приглашение — не общая, которую можно переслать.
  • Автоматическая проверка подписок (рассылка по расписанию + проверка подписки + удаление участника) устанавливается только в варианте Stripe: другие провайдеры не позволяют проверить статус подписки автоматически, поэтому там аудит не устанавливается, а сценарий проверки статуса остаётся пустым.
  • Сценарий выдачи доступа проверяет статус платежа перед созданием приглашения; события без подтверждённой оплаты фиксируются без сообщений.
  • Периодическая проверка подписок работает как рассылка по расписанию — создаётся черновиком, вы активируете сами.
  • Целевой канал указывается как публичная ссылка (https://t.me/...), @username или числовой ID.

Частые вопросы

  • Какой способ оплаты использовать: Telegram Payments, Stripe, YooKassa или другой провайдер?
  • Какой Stripe Price ID использовать для плана?
  • В какой канал или группу получают доступ участники?
  • Как часто проверять статус подписки (для Stripe)?

Что важно помнить

  • Не добавляйте пользователей в канал до подтверждения оплаты от провайдера.
  • Не используйте общую ссылку-приглашение — только персональную для каждого участника.
  • Не создавайте контент сообщества в этом боте — он только управляет доступом.

Сценарий этого бота

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

Превью только для чтения · 4 сценарияОткрыть превью на весь экран ↗

Готовы собрать на этой основе?

Скопируйте шаблон в своё пространство и меняйте любое сообщение, кнопку и действие — ничего не заблокировано.