Telegram bot and CRM for automating customer requests
A Telegram bot and CRM for receiving and managing customer requests.
WSH LeadFlow is a system for automating the intake and processing of customer requests, developed by the WSH LAB studio. The project is aimed at companies that need to collect customer inquiries in one place, control how they are handled and make managers’ work easier.
The customer opens the Telegram bot, chooses a service and fills in a request form. The system saves the contact details, the task description and a convenient time to get in touch in a PostgreSQL database. The manager gets a notification and can start handling the inquiry.
Status: live MVPWhat it looks like
A bot for customers and a company CRM workspace in a Telegram Mini App.





About the project
Staff can view and search requests, change statuses, leave comments, use reply templates and see the action history.
The architecture supports multiple companies with data separation and access-rights checks. An API on FastAPI and a CRM web interface on React were built, designed to work on mobile as well.
WSH LeadFlow is a universal product for any type of business. The system has standard request forms, for example for a barbershop or a car service, and the option to create a form for your own organization’s profile. The project is in development and testing.
Key features
Receiving requests via Telegram
Receiving inquiries through a Telegram bot with a choice of service.
Collecting customer data
Contacts, address, task description and a convenient time to get in touch.
Manager notifications
The manager gets a notification when an inquiry arrives.
Status management
From a new request to completion or rejection.
Search and filtering
By status, number, name and phone.
Comments and history
Request handling history with authors named.
Companies and access
Separation of companies and staff access checks.
Statistics
Request statistics by status and card viewing through the CRM API.
How it works
Opening the bot
The customer follows the company’s Telegram link and starts a conversation.
Choosing a service
The bot offers the available services and asks for the necessary data.
Creating a request
The information is saved to the database and the manager gets a notification.
Handling the inquiry
The manager reviews the request, changes its status, adds comments and uses reply templates.
Tracking the result
Staff follow the inquiry history, request lists and statistics by status.
Technologies and stack
| Backend | Python 3.13, FastAPI, Uvicorn |
|---|---|
| Telegram | aiogram 3.31, Telegram Bot API |
| Database | PostgreSQL 18, psycopg 3.2 |
| Frontend | React, TypeScript, Vite, HTML, CSS |
| Infrastructure | Cloudflare Workers, Tunnel, DNS |
| Security | HMAC sessions, Telegram WebApp initData, CORS |
| Additional | Pydantic 2, argon2-cffi |
| Development | GitHub |