Техническое задание: Telegram-бот для онлайн-покупок
Необходимо разработать многофункционального Telegram-бота, который будет служить платформой для онлайн-покупок через интегрированное мини-приложение (mini-apps).
Основные цели проекта
- Создание удобного интерфейса для пользователей, позволяющего совершать покупки прямо в Telegram.
- Реализация надежной и гибкой системы промокодов.
- Обеспечение стабильной работы и масштабируемости бота.
Ключевые функциональные требования
1. Интеграция с мини-приложением (Mini Apps)
- Бот должен открывать и взаимодействовать с веб-приложением для выбора товаров и оформления заказов.
- Обеспечить передачу данных (например, выбранных товаров, суммы заказа) из мини-приложения в бота для дальнейшей обработки.
2. Система промокодов
- Реализовать механизм создания, активации и валидации промокодов.
- Каждый промокод должен иметь:
- Срок действия (дата начала и окончания).
- Тип скидки (фиксированная сумма или процент).
- Лимит использований (общий и/или на одного пользователя).
- Внедрить панель управления (админку) для создания и мониторинга промокодов.
3. Отслеживание и аналитика
- Вести журнал использования каждого промокода: кто, когда и для какого заказа его применил.
- Реализовать автоматическую проверку срока годности промокодов при попытке активации.
- Предоставлять администратору статистику по эффективности промокодов.
4. Технические требования
- Язык разработки: Python.
- Использование актуальных библиотек для работы с Telegram Bot API (например, aiogram, python-telegram-bot).
- Код должен быть чистым, документированным и готовым к развертыванию.
- Обязательно использование базы данных (например, PostgreSQL, SQLite) для хранения данных о пользователях, заказах и промокодах.
Результат работы
- Полностью рабочий Telegram-бот, размещенный на сервере заказчика или исполнителя (по договоренности).
- Исходный код проекта с комментариями.
- Краткая инструкция по запуску и администрированию.