Клиент согласовал не ту смету: версии и подтверждение в боте
Спор о том, какую смету согласовал клиент, начинается с файла, который правили поверх. Разбираю, как бот хранит версии сметы, привязывает ответ клиента к номеру версии, проверяет замер до расчёта и считает старые сметы по их прайсу.
Коротко (TL;DR)
- Спор «я соглашался на другую сумму» возникает, когда у сметы нет версий: файл правят поверх, а клиент отвечает «ок» в переписке, где непонятно, к какому файлу это относится.
- Лекарство простое: утверждённая смета больше не меняется, любая правка создаёт новую версию, а ответ клиента записывается вместе с номером версии.
- Чтобы правок было меньше, бот проверяет замер до расчёта: пустые поля, нулевая высота, проёмы больше стены, работы без цены.
- Прайс загружается из Excel, и старые сметы считаются по ценам своей версии прайса.
- Цены по моему прайсу: бот в мессенджере от 30 000 ₽, бот для бизнеса с ролями и расчётом от 80 000 ₽, автоматизация документов от 60 000 ₽.
Сделаю под ключ: разберу задачу, назову срок и цену. Чтобы начать, напишите в Telegram одной фразой.
Разработка Telegram-ботовВерсия сметы это зафиксированный снимок расчёта с номером, датой, автором и ценами прайса на момент расчёта. После утверждения её нельзя править: любое изменение создаёт следующую версию, а согласие клиента записывается к конкретному номеру. Тогда на вопрос «какую смету видел клиент и с чем он согласился» есть один ответ, и искать его в чатах не нужно.
Откуда берётся спор «я согласовал другую смету»
Картина знакомая любой ремонтной или подрядной компании. Замерщик съездил на объект, сметчик собрал расчёт в Excel, менеджер отправил файл клиенту. Клиент попросил убрать одну комнату, файл поправили и отправили ещё раз. Потом выяснилось, что забыли откосы, файл поправили снова. В чате теперь три файла с одинаковым названием, а клиент написал «давайте» где-то между вторым и третьим.
Через месяц бригада заканчивает работу, и клиент говорит, что соглашался на меньшую сумму. Менеджер листает переписку, сметчик ищет нужный файл на диске, руководитель пытается вспомнить, кто и когда добавил строку. Обычно никто не врёт: у каждой стороны в голове своя версия, потому что версий на самом деле не было, был один файл, который правили поверх.
Похожий вопрос был прямо в ТЗ ремонтной компании, которое я разбирал в кейсе про бота для заявок, замеров и смет: какую версию сметы видел клиент и с чем он согласился. Ниже то, как я предлагаю это закрыть.
Каждая правка = новая версия
Правило одно, и от него зависит всё остальное: утверждённая смета не меняется. Если руководитель утвердил версию 2, а клиент попросил убрать позицию, бот создаёт версию 3. Версия 2 остаётся в истории со всеми строками, ценами и итогом.
У каждой версии хранится:
- номер и дата создания;
- кто её собрал и кто утвердил;
- замеры по помещениям, из которых она посчитана;
- версия прайса, по которой взяты цены;
- комментарий к правке: что изменили и почему.
Черновик тоже можно отправить клиенту для ориентира, но в PDF на нём крупно стоит «Не утверждено». Это мелочь, которая снимает целый класс споров: клиент не может сослаться на черновую цифру как на обещание.
Возврат на доработку тоже оставляет след. Кнопка «Вернуть» у руководителя требует комментарий, так что через месяц видно, почему версия 2 не ушла клиенту в исходном виде.
Ответ клиента привязан к версии
Вторая половина решения: согласие клиента записывается к номеру версии. Клиент получает PDF и кнопки «Согласен» и «Есть вопросы». Нажал «Согласен», в истории появилась запись: версия 3, дата, время, кто ответил.
Если после этого смету изменили, согласие на старую версию на новую не переносится. Новая версия уходит клиенту заново и ждёт отдельного ответа. Звучит бюрократично, но именно здесь обычно и ломается процесс: менеджер добавил «мелочь» в смету, а клиент узнал о ней только из акта.
В переписке «ок» висит в воздухе. Нажатие кнопки под конкретным документом относится только к нему. Электронной подписью это не становится, и юридическую силу такого подтверждения я бы оценивал вместе с юристом компании. Но для разговора с клиентом и для внутреннего разбора записи «версия 3 согласована такого-то числа» обычно хватает.
Сравнение версий: что изменилось
Когда версий несколько, клиент и руководитель хотят видеть разницу без перечитывания сорока строк. Поэтому у сметы есть экран сравнения: какие строки добавлены, какие убраны, где изменился объём или цена, на сколько сдвинулся итог.
Клиенту такая сводка часто нужнее самого PDF. «Убрали покраску потолка в детской, добавили откосы на два окна, итог меньше на столько-то» читается за минуту. Менеджеру она экономит звонок с объяснениями, руководителю показывает, кто из замерщиков чаще всего пропускает позиции.
Замер по помещениям и проверки перед расчётом
Половина новых версий появляется из-за ошибок замера. Поэтому первым делом я навожу порядок во вводе замеров, красивая смета подождёт.
Замер ведётся по помещениям: длина, ширина, высота, проёмы. Бот сразу считает площадь пола, потолка и стен за вычетом проёмов и одинаково принимает запятую и точку. Фото привязываются к конкретному помещению и подписываются, галерея телефона больше не нужна. Если пропала связь, замерщик продолжает с последнего сохранённого шага. Подробнее о работе замерщика на телефоне я писал в статье про приложение для замерщика и выездного мастера.
Перед расчётом бот проверяет:
- нет ли пустых полей и нулевой высоты;
- не больше ли проёмы площади стен;
- у всех ли работ есть цена в прайсе;
- не нажал ли кто-то кнопку расчёта дважды, чтобы не появился второй расчёт и дубли фото.
Если проверка не прошла, смета не отправляется, и бот пишет, что именно исправить. Работа, которой нет в прайсе, уходит руководителю: пока ей не назначат цену, смету завершить нельзя. Объём я считаю до трёх знаков после запятой, деньги до копеек, чтобы итог в PDF совпадал с суммой строк.
Если такой процесс у вас уже болит, его можно собрать в боте для сотрудников в Telegram: замерщик, руководитель и менеджер работают в одном месте, а история пишется сама.
Прайс из Excel и цены старых смет
Прайс у подрядчиков почти всегда живёт в Excel, и переносить его руками в систему никто не хочет. Поэтому прайс загружается файлом. Бот разбирает его и показывает ошибки списком: пустая цена, дубль позиции, текст вместо числа. Пока ошибки не исправлены, новый прайс не включается.
Важная деталь: прайс тоже версионируется. Подняли цены в марте, но смета, согласованная в феврале, продолжает считаться по февральскому прайсу. Иначе любое обновление прайса тихо меняет итог у всех открытых объектов, и спор возникает на ровном месте. Строка сметы при этом считается одинаково у всех замерщиков: объём, умноженный на цену из прайса.
Если хочется, чтобы клиент видел примерную цену ещё до замера, это отдельная история про бот-квиз для расчёта сметы в переписке. Квиз даёт вилку и тёплую заявку, а версия сметы появляется уже после замера.
История для спора
Всё вместе даёт историю заявки, которую можно открыть через месяц и прочитать как протокол: кто создал заявку, кто ездил на замер, какие фото сделаны в каком помещении, какие версии сметы были, кто их утверждал и возвращал с каким комментарием, на какую версию и когда ответил клиент.
При споре руководитель открывает карточку объекта и видит, что клиент согласовал версию 3, а версия 4 с дополнительными работами отправлена и ответа на неё нет. Разговор сразу становится предметным. Как фиксировать этапы и допработы уже после старта ремонта, я разбирал в статье про сметы, этапы и оплату у бригад.
Отдельно про права. Замерщик видит только свои заявки и не может утвердить собственную смету. При переназначении прежний исполнитель теряет доступ. Уволенного сотрудника отключают одной кнопкой, его история остаётся. Права проверяются на сервере при каждом действии, иначе история перестаёт быть доказательством.
Как я это делаю
Так я подошёл к проекту ремонтной компании: сначала разобрал ТЗ и показал каждое требование экраном бота, до того как писать код. Заказчик видит, что происходит с версией после правки и что блокирует отправку, и может поправить меня на картинках. Подробности в кейсе РемКонтроль; там же честно сказано, что презентация передана, а решение за заказчиком.
Мой порядок работы:
- Прошу прайс в Excel, правила расчёта, образец сметы с реквизитами, скидки и коэффициенты. Без них сроки не держатся.
- Выписываю вопросы по формулам: как считаются откосы, есть ли минимальная стоимость выезда, НДС, округления.
- Описываю путь заявки по шагам и роли: кто создаёт, кто утверждает, кто отправляет клиенту.
- Делаю версии и привязку ответа клиента сразу, в первой версии бота. Достроить их потом дороже, потому что придётся разбирать старые сметы.
- Запускаю пилот на одном типе ремонта и двух-трёх сотрудниках, на реальных заявках.
Смету по фото и ИИ я не обещаю: расчёт идёт по прайсу и формулам компании. Почему автоматический расчёт по фото пока рано продавать, объяснял в разборе сервиса расчёта смет. Бот, сервер, домен и код принадлежат компании.
Сколько стоит
Цены по моему прайсу, итог считаю после разбора процесса:
- Бот в мессенджере: от 30 000 ₽, от 1 недели. Подходит, если нужно только отправлять смету клиенту и записывать его ответ к версии.
- Бот для бизнеса с ролями, замерами, расчётом по прайсу и версиями: от 80 000 ₽, от 2 недель.
- Автоматизация процессов и документов (PDF сметы по шаблону, договор из сметы, загрузка прайса): от 60 000 ₽, от 2 недель.
- Поддержка после запуска: от 20 000 ₽ в месяц.
Если процесс у вас пока живёт в Excel и чатах, можно начать с малого: версии и подтверждение клиента, а замеры и роли добавить вторым шагом. Для мастеров-одиночек есть отдельная подборка про расчёты, сметы и автоматизацию для подрядчиков.
Частые вопросы
Можно ли оставить Excel и просто добавить версии?
Можно хранить прайс в Excel и загружать его в бота. Саму смету лучше собирать в системе: тогда версия, замеры и ответ клиента связаны между собой, а файл на диске можно перезаписать незаметно.
Клиент не пользуется Telegram. Что тогда?
Логика и данные живут на сервере, мессенджер только окно. Клиенту можно отправить ссылку на страницу сметы с кнопкой согласия или подключить второй мессенджер, это отдельная оценка без переделки ядра.
Нажатие кнопки «Согласен» заменяет подпись под сметой?
Электронной подписью оно не является. Это запись в истории с датой и номером версии. Нужна ли подпись под договором и сметой в вашем случае, решайте с юристом; бот может сформировать документ для подписи из согласованной версии.
Что будет со старыми сметами, если я подниму цены?
Ничего. Каждая смета помнит версию прайса, по которой посчитана. Новые цены применяются к новым расчётам.
Коротко о главном
Спор о «не той смете» почти всегда начинается с файла, который правили поверх. Версии сметы, неизменная утверждённая версия и согласие клиента, записанное к номеру, убирают этот спор до того, как он случится. Проверки замера до расчёта уменьшают число правок, а прайс с версиями не даёт обновлению цен задним числом поменять итог.
Если хотите разобрать свой процесс от замера до согласования, напишите мне в Telegram слово «ВЕРСИЯ». Попрошу образец вашей сметы и прайс и скажу, с чего начать.
Бот для смет с версиями и согласованием
Напишите одной фразой, что нужно. Отвечу, что подойдёт, сколько займёт и сколько стоит. Сообщение уже подготовлено.
- Замер по помещениям с фото и проверками до расчёта
- Смета по прайсу из Excel, версии прайса и сметы
- Согласие клиента, привязанное к номеру версии
- История заявки для разбора спора
Разборы, кейсы и практика — без воды. Выходит регулярно, читать 3–5 минут.


