CRM Telegram Bot
**CRM system in the format of a Telegram bot + web admin panel for small businesses.** Management of contacts, deals, tasks, and documents directly from the messenger.
### Features
* **Contacts and deals:** creation/editing/search, pagination. Sales funnel with stages, linking to contacts, history of changes.
* **Tasks:** priorities, deadlines, linking to deals/contacts. Filter "mine/all", automatic reminders.
* **AI/OCR:** photo of business card/invoice/receipt → OpenAI Vision extracts data → with 1 click a contact or deal is created.
* **Reports:** export to Excel and PDF (support for Cyrillic), graphs. Integration with Google Sheets (export/import).
* **Inline mode:** quick search for contacts and deals from any Telegram chat.
* **Automation:** morning digest, task reminders, auto-cleaning of files.
* **Web admin panel:** SQLAdmin with authorization for managing data through the browser + client documentation.
* **Roles (4 levels):** User → Manager → Admin → Super Admin.
* **Tracking:** Telegram notifications when visiting the admin panel and documentation.
### Stack
Python 3.12, aiogram 3.24, FastAPI, SQLAlchemy 2 (async), Alembic, PostgreSQL 16, Redis 7, OpenAI Vision API, Docker Compose, Nginx, SSL, VPS.
### Security
Data validation, rate limiting, connection pooling, protection against race conditions, security headers, non-root Docker, structured logging, centralized error handler.
### Features
* **Contacts and deals:** creation/editing/search, pagination. Sales funnel with stages, linking to contacts, history of changes.
* **Tasks:** priorities, deadlines, linking to deals/contacts. Filter "mine/all", automatic reminders.
* **AI/OCR:** photo of business card/invoice/receipt → OpenAI Vision extracts data → with 1 click a contact or deal is created.
* **Reports:** export to Excel and PDF (support for Cyrillic), graphs. Integration with Google Sheets (export/import).
* **Inline mode:** quick search for contacts and deals from any Telegram chat.
* **Automation:** morning digest, task reminders, auto-cleaning of files.
* **Web admin panel:** SQLAdmin with authorization for managing data through the browser + client documentation.
* **Roles (4 levels):** User → Manager → Admin → Super Admin.
* **Tracking:** Telegram notifications when visiting the admin panel and documentation.
### Stack
Python 3.12, aiogram 3.24, FastAPI, SQLAlchemy 2 (async), Alembic, PostgreSQL 16, Redis 7, OpenAI Vision API, Docker Compose, Nginx, SSL, VPS.
### Security
Data validation, rate limiting, connection pooling, protection against race conditions, security headers, non-root Docker, structured logging, centralized error handler.