Техническое задание: Telegram-бот для продажи цифровых учебных материалов

Цель проекта

Создать автоматизированного Telegram-бота для продажи цифровых продуктов (PDF-файлы, ссылки, доступ к курсам) по подготовке к выпускным экзаменам. Ключевая особенность - проведение платежей непосредственно внутри Telegram без перенаправления пользователя во внешние сервисы.

Основной функционал для пользователей

  • Каталог товаров: Иерархическая структура: Экзамен (ОГЭ/ЕГЭ) → Предмет → Конкретный продукт. Каждый товар имеет название, описание, цену, год выпуска и тип доступа (файл, ссылка, закрытый канал).
  • Внутренняя оплата: Использование Telegram Payments (Invoice API). Пользователь совершает платеж, не покидая чат с ботом.
  • Автоматическая выдача: После успешной оплаты бот мгновенно предоставляет доступ к купленному материалу (отправляет файл, ссылку или добавляет в приватный канал).
  • Профиль и история покупок: Раздел «Мои покупки», где пользователь может повторно получить доступ ко всем приобретенным материалам.
  • Поддержка: Встроенный FAQ и кнопка для связи со службой поддержки.

Функционал админ-панели

  • Управление каталогом: добавление, редактирование и удаление товаров, категорий.
  • Просмотр статистики: количество пользователей, история платежей, финансовые отчеты.
  • Список всех заказов с возможностью ручной выдачи доступа.
  • Система рассылок (PUSH): отправка сообщений всем пользователям или сегментам (все, только покупатели, подписчики определенного экзамена).
  • Доступ к админ-панели по Telegram ID.

Технические требования

  • Стек: Python 3.10+, предпочтительно фреймворк aiogram.
  • База данных: На начальном этапе допустимо использование SQLite, но архитектура должна быть совместима с переходом на PostgreSQL.
  • Конфигурация: Все чувствительные данные (токены, ключи) должны храниться в переменных окружения.
  • Способ работы: На выбор исполнителя - webhook или long polling.
  • Структура БД: Минимальный набор таблиц: users, products, orders, admins.
  • Надежность: Обязательное логирование всех операций (ошибки, успешные платежи). Реализация механизма проверки статуса транзакций.

Требования к пользовательскому опыту (UX)

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

Разработка системы электронной очереди для грузового транспорта на границе

Требуется создать веб-приложение для организации и управления электронной очередью прохождения границы грузовыми автомобилями. Система должна быть удобной для пользователей и администраторов.