Technical task for the development of a Telegram bot
Goal: to create a Telegram bot for automating interaction between clients, performers, and administration. The bot should be simple, convenient, have authorization by phone number, a role system, and scalability options. This document is intended for calculating the cost and timelines of development.
1. Main roles
Client — creates a request, adds participants, receives statuses.
Performer — adds positions, comments, and marks completion.
Consultant / designer — attaches materials and comments.
Supplier / logistics — confirms execution and deadlines.
Administrator — manages users and requests.
2. Core functionality
Welcome message and user role selection.
Creation and editing of requests.
Adding participants (performers, consultants, etc.).
Editing and confirming positions.
Notification system for new requests and status changes.
Integration with Google Sheets or Airtable.
Admin panel with filtering by roles and statuses.
Support for multiple languages (Ukrainian, Russian).
3. Examples of dialogue scenarios
User: 'Create a request' → Bot: 'Please specify the city and type of task' → after filling out, the bot creates a card and notifies the administrator.
Performer: 'Add position' → Bot prompts to enter the name and quantity → saves data to the table.
Client: 'Check status' → Bot shows the current stage of request execution.
4. Notification and reporting system
Notifications in Telegram when creating or changing a request.
Reports in the form of tables (Google Sheets / Excel).
Automatic daily or weekly activity summary.
5. Interface and UX
Menu with buttons and emojis.
No more than 3 levels of nesting.
Language switching by command.
Color palette: charcoal gray, jade green, gold, white.
Minimalist design without text overload.
6. Technical requirements
Telegram Bot API.
Python (Aiogram / FastAPI) or Node.js (Telegraf).
Database PostgreSQL / Firebase / Google Sheets.
Authorization by phone number (Telegram ID).
Scalable architecture.
Adaptation for mobile devices and WebApp interface.
7. Development stages
1. Processing scenarios and interface (UX, dialogue structure).
2. Development of MVP (client + performer + administrator).
3. Connecting additional roles and integrations.
4. Testing, configuring notifications, and launch.
5. Support and scaling.
8. Technical support and project handover
After launch, a week of testing is planned with the possibility of edits. The source code must be commented and supplemented with a brief installation and configuration guide.
The document can be used to estimate the cost and timelines of development. The goal is to create a reliable, understandable, and scalable interaction tool.