Клиент — компания, которая под ключ возит оптовые грузы из Китая: закупает товар у поставщиков, собирает его на складе, организует доставку до нужного склада в России и ведёт все расчёты. В одной сделке участвуют менеджеры, закупщики, склад, логисты и бухгалтерия, а деньги ходят в трёх валютах.
Когда мы начали работать вместе, всё это держалось на рабочих чатах и таблицах. Отметкой о выполнении служила реакция «обработал» под сообщением. Название компании мы не раскрываем, а иллюстрации в статье схематичные, с условными данными.
- Чем занимается: закупка в Китае и доставка под ключ, опт
- Команда: около 20 человек — руководство, менеджеры, бухгалтерия
- Роли в системе: клиент, менеджер, закупщик, склад, логист, бухгалтер, руководитель
- Формат: 7 Telegram-ботов, единая база данных, таблицы для контроля
- Валюты: рубли, юани, доллары
- Сроки: первый бот — через 2 месяца, система больше года в работе и продолжает расти
Как было: статус — это реакция в чате
Заказ жил в переписке. Клиент звонил менеджеру, менеджер заносил данные в таблицу, дальше информация расходилась по рабочим чатам: закупщикам, складу, логистам, бухгалтерии. Подтверждением служила реакция под сообщением.
Пока заказов немного, так можно работать. Но у оптовой логистики длинная цепочка, и слабые места такой схемы проявляются быстро:
- Информация теряется. Важное сообщение уезжает вверх под сотней новых, и через неделю уже никто не помнит, кто и что подтвердил.
- Клиенты звонят. Чтобы узнать, где груз, клиенту нужно дозвониться до менеджера, а менеджеру — выяснить это у коллег.
- Рутина съедает время. Менеджер вручную переносит данные из звонков и чатов в таблицы. Чем больше заказов, тем больше людей нужно только на это.
- Деньги сложно сводить. Оплаты в рублях, юанях и долларах, у каждой свой курс и своя дата.
Почему боты
В статье «Telegram-бот или веб-портал» мы писали, что инструмент выбирают по тому, где и как работает человек. Здесь ответ был очевиден:
- клиенты и так сидят в Telegram — им не нужно ставить приложение и запоминать пароль;
- закупщики, склад и логисты работают на ногах, а не за компьютером, телефон всегда в руке;
- главное для всех — быстрые уведомления и короткие действия: подтвердить, отметить, отправить фото.
Но у ботов есть предел: работать с большими массивами данных в чате неудобно. Поэтому в будущем у этой системы будут и боты, и портал. Об этом — в конце.
Что построили
Систему из семи Telegram-ботов — у каждой роли свой: клиент, менеджер, закупщик, склад, логист, бухгалтер и руководитель.
Боты не хранят данные сами по себе — все они работают с одной базой данных. Поэтому любой участник видит один и тот же заказ в актуальном состоянии, только со своей стороны: клиент — статус и фото своего груза, бухгалтер — платежи, руководитель — всю цепочку целиком.
Таблицы остались, но в новой роли. Теперь это не место, где живут данные, а окно в базу: в них наглядно видно всё, что происходит в ботах. Ещё система автоматически подтягивает курс валют и обменивается данными с таблицами партнёров.
Путь заказа
Заказ проходит восемь этапов — от заявки до склада в России:
- Заявка на закупку.
- Расчёт и согласование.
- Получение оплаты — она может прийти и раньше заявки.
- Сбор товара и отгрузка на склад в Китае.
- Прибытие на склад в Китае.
- Отгрузка в Россию.
- Прибытие в РФ.
- Прибытие на нужный склад в России.
Самый насыщенный этап — второй. Менеджер принимает заявку, закупщик узнаёт цену товара, логист — стоимость доставки, бухгалтер сводит всё в итоговый расчёт, и менеджер отправляет его клиенту. Если клиента всё устраивает, он согласовывает заказ, и менеджер передаёт его в работу закупщику, логистам и бухгалтеру. Раньше на такой круг уходили звонки и переписка в нескольких чатах, теперь он проходит через ботов.
На каждом этапе работает своя роль, а клиент получает уведомление: что произошло, когда и кто отвечает — с фото, ссылками и параметрами груза. Звонить менеджеру, чтобы узнать, где груз, больше не нужно.
Три решения, на которых держится система
1. Каждую операцию подтверждает ответственный
Бот не просто пересылает сообщения. Оплату, смену статуса, отгрузку подтверждает ответственный сотрудник прямо в боте, и только после этого заказ идёт дальше. Вместо реакции «обработал» — зафиксированное действие: кто, что и когда сделал.
2. Клиенту — рубли, внутри — три валюты
Клиент видит все суммы в рублях — так ему проще. Внутри система пересчитывает сама: юани идут на закупку у поставщиков, доллары — на логистику. Курс подтягивается автоматически, без ручных сводок.
3. Таблицы как страховка и пульт для важных операций
Длинная цепочка — это всегда риск ошибки. Если ошибка всё же проскочила, её нужно быстро найти и исправить. Листать и править большие объёмы данных в боте неудобно, а в базу данных сотрудники не полезут. Поэтому всё, что происходит в ботах, наглядно видно в таблицах, и там же данные можно поправить.
Есть и операции, которые проводятся только через таблицу. Крупный платёж, например, бухгалтер должен увидеть целиком, а не в виде сообщения в чате. Для таких случаев важные операции и уведомления запускаются прямо из таблицы — после проверки.
Как система росла
Изначально никто не планировал систему из семи ботов. Первым был бот для клиентов, и через два месяца он уже работал. Когда подход себя оправдал, заказчик решил перевести на ботов и сотрудников — и система начала расти роль за ролью.
Дальше было то, что бывает с любым живым проектом:
- Перестройка под новые процессы. Примерно на восьмом месяце процессы в компании изменились настолько, что систему пришлось полностью перестроить. Это нормально: бизнес меняется, и система должна меняться вместе с ним.
- Срочный переезд. Когда начались проблемы с работой Telegram, систему оперативно перенесли на другой сервер, чтобы боты продолжали работать.
- Постоянное развитие. Новые роли, функции, доработки под изменения в процессах — из этого сегодня и состоит основная работа над проектом.
Сам переход тоже дался не сразу. Все привыкли к звонкам и таблицам, которые менеджер заполнял на ходу, и первое время непривычно было и сотрудникам, и клиентам. Со скрипом, но переезд на новую систему удался.
Что получилось
Точных метрик «до и после» нет — их никто не замерял. Но изменения видны и без цифр:
- Меньше ошибок. Каждая операция подтверждена и записана, а не затерялась в чате.
- Меньше рутины. Данные не нужно вручную переносить из звонков и переписки в таблицы.
- Клиенты в курсе без звонков. Каждое движение товара и денег приходит им в бот.
- Руководитель в курсе каждой операции. Он видит всю цепочку, а не собирает её по чатам.
- Тот же объём — меньшей командой. Система позволяет справляться с тем же объёмом заказов меньшей командой.
Мы продолжаем сопровождать проект: техподдержка, консультации, доработки.
Что дальше: бот и портал вместе
Сейчас таблицы закрывают две задачи: контроль данных и важные операции, где нужно видеть картину целиком. Это работает, но таблица — всё-таки не интерфейс для таких задач. Следующий шаг — веб-портал на их месте.
Получится то самое гибридное решение, о котором мы писали в статье про выбор между ботом и порталом: быстрые действия и уведомления — в ботах, работа с большими данными и серьёзные операции — в портале. Данные общие, интерфейс у каждой роли свой.
Технологии
- Бэкенд: Python, FastAPI
- Боты: python-telegram-bot
- Данные: PostgreSQL, Redis
- Фоновые задачи и расписание: Dramatiq, APScheduler — уведомления, синхронизация, регулярные операции
- Таблицы: Google Sheets API
- Инфраструктура: Docker, мониторинг ошибок
Когда бизнес пора выводить из чатов
Рабочие чаты — нормальный старт. Но если вы узнаёте себя в нескольких пунктах, пора задуматься о системе:
- статус заказа — это реакция или сообщение «принял»;
- чтобы узнать, где груз или оплата, нужно спросить у коллеги;
- клиенты регулярно звонят с вопросом «что с моим заказом»;
- менеджеры тратят часы на перенос данных из переписки в таблицы;
- деньги в разных валютах сводят вручную;
- когда сотрудник уходит, вместе с ним пропадает история его заказов.
Начинать с огромной системы не обязательно. В этом проекте всё началось с одного бота для клиентов — и выросло ровно настолько, насколько понадобилось бизнесу.