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

Необходимо разработать с нуля чат-бота для мессенджера Telegram, который будет автоматизировать процесс приёма заказов от клиентов и управление ими для небольшой кофейни.

Основные цели проекта

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

Требования к функционалу бота (пользовательская часть)

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

Требования к админ-панели

  • Управление каталогом товаров: добавление, редактирование, удаление позиций, изменение цен.
  • Просмотр списка всех активных и завершённых заказов в реальном времени.
  • Возможность изменять статус заказа.
  • Просмотр контактных данных клиента (имя, номер телефона для связи).
  • Панель должна быть реализована как веб-интерфейс или отдельный модуль бота с авторизацией.

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

  • Язык программирования: чистый Python (без использования конструкторов ботов, например, ChatFuel).
  • Использование официального API Telegram (библиотека aiogram или python-telegram-bot).
  • Для хранения данных использовать базу данных (SQLite, PostgreSQL или MySQL).
  • Чистый, структурированный и документированный код.
  • Возможность простого развёртывания на сервере (VPS).

Что нужно предоставить по итогу

  • Исходный код проекта на GitHub/GitLab или в архиве.
  • Краткую инструкцию по установке и настройке.
  • Документацию по основным функциям и структуре базы данных.
  • Рабочего бота в тестовом режиме для демонстрации функционала.

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