LeadFlow
Telegram CRM для збору заявок, ведення клієнтів, планування контактів і роботи команди в одному чаті.

Про проєкт
LeadFlow — комерційний Telegram-бот із публічною формою заявки та закритими командами CRM для співробітників. Бот зберігає заявки, ролі, нотатки, нагадування й незавершені діалоги у Supabase PostgreSQL; окремий вебінтерфейс і база даних не потрібні.
Задача
Зробити приймання заявок доступним через Telegram, а подальшу роботу з клієнтами — контрольованою за ролями, зі збереженням стану діалогів і нагадувань після перезапуску бота.
Що реалізовано
Публічний покроковий сценарій збирає ім’я, контакт, компанію, опис запиту, джерело та бажаний час наступного контакту; перед записом клієнт перевіряє й підтверджує дані.
Команди CRM доступні лише співробітникам, чий Telegram ID і роль збігаються із серверним списком доступу та активним записом у Supabase.
Перегляд списку й картки заявки, пошук за статусом та життєвий цикл: new, contacted, qualified, proposal, won, lost.
Редагування даних заявки, нотатки, призначення відповідального та заплановані нагадування про наступний контакт.
Зведена статистика показує загальну кількість заявок, нові за день, майбутні контакти й розподіл за статусами.
PostgreSQL зберігає заявки, ролі, діалоги й чергу нагадувань; APScheduler обробляє нагадування, Docker спрощує запуск сервісу.
Технології
Архітектура та роль технологій
- Python
- Обробка даних, автоматизація та серверні компоненти.
- PostgreSQL
- Реляційне зберігання пов’язаних даних і транзакційна узгодженість.
- Docker
- Відтворювані середовища й контейнерний запуск компонентів.
Як це працює
- Користувач запускає бота й заповнює покрокову форму заявки або співробітник створює її командою /new.
- Перед збереженням бот показує введені дані для підтвердження; публічні заявки мають денний ліміт.
- Співробітник переглядає заявку, змінює статус і дані, додає нотатку або призначає наступний контакт.
- Планувальник надсилає нагадування призначеному співробітнику; дані та незавершені діалоги зберігаються у Supabase.
Галерея проєкту
Є задача? Знайдемо рішення.
Розкажіть, що потрібно зробити. Уточнимо деталі та запропонуємо наступний крок.
Обговорити проєкт

