Онлайн-школа просила принимать оплату и открывать доступ к курсам без администратора.
Продавали через сайт на Tilda, дальше всё шло руками - заявка падала на почту, администратор сверял поступление, заводил ученика и отправлял ссылки на материалы в личные сообщения.
Кто оплачивал ночью или в выходные, ждал доступ до утра, часть таких покупателей потом просила возврат.
Материалы лежали россыпью по разным ссылкам, на один курс их набиралось четыре-пять штук.
Цифр по продажам не видел никто - сколько куплено, какой курс берут чаще, на каком уроке ученики останавливаются.
Бот принимает оплату и открывает доступ сам, администратор в этой цепочке больше не нужен.
Оплата картой и СБП, после успешного платежа ученику открываются материалы курса прямо в боте - модули, уроки, видео и файлы внутри одного меню.
Сайт на Tilda остался витриной: кнопка оплаты на странице связана с ботом, покупка с сайта доходит до ученика в Telegram без ручного переноса.
Вход по разовому коду на почту, аккаунт один и на сайте, и в боте, то-есть доступ не разъезжается по двум базам.
Что здесь ломается чаще всего - оплата прошла, а уведомление о ней до бота не доехало, и ученик сидит с чеком без курса.
Сделал повторную проверку статуса платежа по расписанию и ручную выдачу доступа кнопкой из админки на такой случай.
Админка - курсы и уроки, тексты и медиа правит владелец без разработчика, список учеников с датой покупки и открытыми курсами, статистика по продажам и по каждому курсу.
Стек - Python, aiogram 3, PostgreSQL, ЮKassa, интеграция с Tilda, VPS в РФ, ежедневный бэкап базы.
Доступ выдаётся в момент оплаты, ночные покупки перестали ждать администратора до утра.
Сам администратор из процесса вышел, за ним остались спорные оплаты и вопросы учеников по содержанию.
Сдал раньше срока и почти без участия школы, а продажи по каждому курсу владелец теперь видит в админке - раньше этих цифр не было ни у кого.
Школе остались исходники, админка, доступ к серверу и инструкция по запуску и перезапуску бота.
После сдачи добавили промокоды на курсы и письмо с чеком после оплаты.