Техническое задание: Разработка чат-бота для кофейни

Цель проекта

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

Основные требования к функционалу

Пользовательская часть (клиентский интерфейс бота):

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

Административная часть (админ-панель):

  • Панель управления меню: добавление, редактирование, удаление позиций, изменение цен.
  • Просмотр и управление текущими и архивными заказами.
  • Изменение статусов заказов.
  • Простой и интуитивно понятный веб-интерфейс для администрирования.
  • Базовая аналитика (количество заказов за период).

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

  • Язык программирования: чистый Python.
  • Библиотека для работы с Telegram API: python-telegram-bot или аналог.
  • Для админ-панели можно использовать легкий фреймворк (например, Flask или Django) или реализовать взаимодействие через специальные команды в Telegram.
  • Данные должны храниться в структурированной базе данных (SQLite, PostgreSQL или MySQL).
  • Код должен быть чистым, документированным и готовым к развертыванию.

Что ожидается от исполнителя

Исполнитель должен предоставить работающее решение, исходный код, инструкцию по установке и настройке, а также провести краткое демонстрационное объяснение функционала. Все детали реализации (архитектура базы данных, структура проекта) будут согласованы в процессе обсуждения.

Интеграция передачи идентификатора клиента и кастомизация сообщений в мессенджере

Требуется настроить передачу параметра clientID при переходе по ссылке в мессенджере и реализовать замену текста сообщения. Существующее решение частично работает, но передача идентификатора не осуществляется.