Техническое задание: Telegram-бот маркетплейс для 3D-печати

Цель проекта

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

Основной функционал

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

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

  • Бот должен быть написан на Python с использованием библиотеки aiogram или аналогичной.
  • Обязательно использование базы данных (предпочтительно PostgreSQL) для хранения пользователей, заказов, транзакций.
  • Реализация безопасного механизма оплат и вывода средств (интеграция с платежным агрегатором).
  • Система должна быть масштабируемой и иметь логирование ключевых действий.

Что необходимо предоставить

  • Исходный код проекта с комментариями.
  • Инструкцию по развертыванию и настройке.
  • Описание архитектуры базы данных.