Клиент пришёл к нам с проблемой ручного расчёта зарплат, которая тормозила рост бизнеса. Бухгалтеры тратили часы, чтобы собрать данные по каждому филиалу, каждому продавцу, вычесть возвраты, применить разные ставки. При любом изменении мотивации процесс повторялся заново.
Мы сделали систему, которая автоматически считает зарплаты. Администраторы сами меняют настройки, разработчики для этого не нужны. Руководители видят данные по филиалам в реальном времени, а система не требует доработок при масштабировании.
Какие условия были у клиента на старте
Компания занималась розничными продажами. На момент обращения бизнес активно рос: несколько филиалов, роли сотрудников от линейного до директора, план выхода на зарубежный рынок. При этом зарплаты и премии считались бухгалтерами вручную.
Руководители видели данные по филиалам с задержкой — мотивация сотрудников строилась на устаревшей информации. При росте бизнеса риск потери синхронизации только увеличивался.
Сам клиент сформулировал задачу так: «предоставить удобный инструмент сотрудникам для просмотра ключевых данных филиалов, включая бонусы, выполнение планов, обороты, список заказов и возвратов».
То есть нужна была единая система, которая:
- автоматически собирала данные по продажам и возвратам из учётной системы (МойСклад и др.);
- рассчитывала зарплату и премии для каждого сотрудника по его роли;
- давала наглядный дашборд и для бухгалтера, и для директора, и для самих работников.
В чём была проблема
До нашего проекта всё строилось на Excel-файлах. Бухгалтер тратил часы, чтобы собрать данные по каждому филиалу, каждому продавцу, вычесть возвраты, применить разные процентные ставки. При любом изменении системы мотивации процесс повторялся заново — а система менялась часто.
Клиент хотел видеть не только итоговые цифры, но и прозрачную логику: почему у одного продавца такой бонус, а у другого другой. И иметь возможность корректировать эту логику без привлечения разработчиков.
После анализа выделили такие риски:
- риск ошибок из-за человеческого фактора;
- потеря времени бухгалтерии на рутину;
- руководители видели данные с опозданием, а при расширении в другие страны риск десинхронизации только рос.
Какие решения рассматривали
У нас было два основных пути:
- Написать жёсткий код под текущие формулы.
Плюс — быстро и просто. Минус — при любом изменении правил расчёта (например, новый коэффициент или новая роль «стажёр») снова вызывать специалиста, править код и тестировать. - Разработать конструктор формул, где администратор сам собирает расчёт из переменных.
Плюс — максимальная гибкость, не нужно программистов для настройки. Минус — больше времени на разработку.
Выбрали второй вариант, потому что клиент планировал масштабироваться и менять систему мотивации. Плюс системой планировали пользоваться именно бухгалтеры и руководители, поэтому было важно сделать её понятной для них, а не только для разработчика.
Как реализовывали
1. Выделили базовые показатели, на которых строился расчёт
Мы проанализировали задачи клиента и на основе этого создали набор переменных. Они автоматически подтягивались из данных продаж:
- Оборот филиала (за период)
- Оборот сотрудника
- Возвраты филиала
- Возвраты сотрудника
Эти показатели было нельзя редактировать вручную — они рассчитывались системой на основе заказов и возвратов.
Система автоматически подтягивает данные по обороту, оплатам и возвратам — бухгалтеру не нужно вводить их вручную
2. Добавили возможность создавать свои переменные
Клиент смог создавать переменные самостоятельно, например:
- Коэффициент за перевыполнение плана
- Районный коэффициент
Администратор сам создаёт новые переменные, например, коэффициент для стажёров или бонус за перевыполнение плана
3. Сделали простой конструктор с формулами без кода
Мы реализовали визуальный конструктор, в котором администратор сам выбирает переменные без помощи разработчика. Например:
Если Оборот_сотрудника > 1_000_000, то Бонус = Оборот_сотрудника * 0.05, иначе Бонус = Оборот_сотрудника * 0.02 Вычесть Возвраты_сотрудника * 0.3.
Особенность: одна и та же переменная может использоваться в разных формулах с разными значениями. Например, для директора «Оборот филиала» в его формуле имеет больший вес, чем для продавца — там большее влияние имеют личные продажи.
Настройка расчёта занимает минуты: администратор собирает формулу из готовых переменных без помощи разработчика
4. Настроили формулы для разных должностей
Мы сразу заложили поддержку разных ролей: директор филиала, продавец, стажёр, курьер, установщик. Для каждой должности — своя логика расчёта. При добавлении новой роли администратор просто создаёт для неё формулы из готовых переменных.
5. Учли объём данных
В системе были десятки тысяч заказов. Приходилось анализировать расхождения — например, оборот в МойСклад не сходился с расчётным. Мы добавили механизмы сверки общих цифр по филиалам, чтобы найти ошибку интеграции.
С какими трудностями столкнулись
- Интеграция с МойСклад иногда падала из-за большого объёма данных. Нужно было время на стабилизацию и донастройку.
- На старте было неочевидно, правильно ли считается сумма бонуса. Приходилось вручную смотреть аномалии: например, почему у стажёра бонус выше, чем у директора. Из-за этого клиент поначалу сомневался в корректности расчётов — но после перепроверки выясняли, что расхождения были из-за старых данных или особенностей учёта.
Все сложности решили в первые недели после запуска, дальше система работала стабильно.
Что получил клиент в результате
- Автоматизацию рутины. Бухгалтерия перестала тратить часы на расчёт зарплат — теперь это делается автоматически.
- Прозрачность и доверие. Каждый сотрудник через личный кабинет стал видеть свои показатели и бонусы. Руководитель получил доступ к динамике по филиалам в реальном времени, без ожидания закрытия месяца.
- Гибкость. Когда менялись правила мотивации — добавляли новый коэффициент, меняли процент — администратор сам правил формулы в конструкторе. Не было ни одного обращения к разработчикам по этому поводу.
- Масштабируемость. Система легко пережила расширение нескольких филиалов и рост числа сотрудников. Никакой десинхронизации, даже если бы открывались зарубежные офисы.
- Сокращение человеческих ошибок. Исключили фактор «забыл учесть возврат» или «не ту ставку поставил».
Если ваша компания тоже устала от ручных расчётов зарплат и бонусов в Excel — возможно, вам нужно не покупать дорогую систему, а просто автоматизировать самую больную точку. Мы в «Чили.Лаб» умеем находить такие решения и прозрачно их реализовывать. Напишите нам — покажем, как такая же система может работать в вашем бизнесе.