Skip to main content
Полный перечень полей — в глоссарии.

Назначение раздела

Раздел «Бонусы сотрудников» показывает, как в компании начисляются и списываются бонусные баллы клиентам, кто из сотрудников оформил каждую операцию, и как эти операции влияют на текущий баланс. Несмотря на название раздела в общей структуре метрик, здесь отслеживается не начисление бонусов сотрудникам, а работа сотрудников с бонусной программой клиентов: отчёт показывает, какие бонусные операции провёл каждый сотрудник, что удобно для контроля и сверки. Раздел состоит из трёх отчётов:
  • Баланс бонусов — список клиентов с их текущим остатком бонусных баллов.
  • Сводка по бонусам — агрегированные цифры: общий оборот, сколько начислено и сколько списано за период.
  • История операций — построчный журнал всех бонусных транзакций с фильтрами по типу операции, по сотруднику и по клиенту.

Модель данных

Бонусный счёт клиента

У каждого клиента может быть один бонусный счёт (связь один-к-одному). Счёт хранит только текущий остаток баллов.
Баланс бонусов не редактируется вручную и не задаётся напрямую. Каждый раз при сохранении счёта система пересчитывает его заново как сумму всех связанных транзакций. Поэтому единственный способ изменить баланс — создать, изменить или удалить транзакцию; редактирование самого счёта в обход транзакций не имеет смысла, значение всё равно будет перезаписано пересчитанной суммой.

Транзакция по бонусам

Каждая транзакция — это одно начисление или одно списание баллов по счёту конкретного клиента. Начисления сохраняются положительной суммой, а списания — отрицательной; это и есть способ, которым система различает направление движения баллов при подсчёте итогов.
На одну заявку аренды допускается не более одной транзакции с типом «Начисление». Это защищает от двойного начисления бонусов за одну и ту же аренду. Одновременно с этим для одной заявки может существовать несколько транзакций списания — ограничение действует только на начисление.

Логика и побочные эффекты

Что происходит при создании операции

  1. Сотрудник (или автоматическая логика оформления аренды) создаёт транзакцию — начисление (положительной суммой) или списание (отрицательной суммой).
  2. Сразу после сохранения транзакции бонусный счёт клиента автоматически пересчитывается: новый баланс — это сумма всех транзакций счёта на текущий момент (начисления и списания складываются с учётом своего знака).
  3. Если счёт связан с активной электронной картой лояльности (кошелёк на устройстве клиента), при изменении баланса автоматически отправляется уведомление об обновлении карты, чтобы отображаемый на карте баланс не расходился с фактическим. Если такой карты нет, уведомление не отправляется.
  4. Если операция — списание, дополнительно создаётся (или обновляется, если уже существует) связанная финансовая проводка на сумму списания, отражающая, что клиент оплатил часть аренды бонусами, а не деньгами. Для начисления такая проводка не создаётся — начисление не является платежом.
Такая же логика пересчёта и уведомления срабатывает и при удалении транзакции: баланс счёта пересчитывается заново без учёта удалённой операции. При удалении списания связанная финансовая проводка автоматически не удаляется и не корректируется.
Так как баланс всегда пересчитывается по факту существующих транзакций, отчёт «История операций» показывает наравне с каждой строкой транзакции ещё и текущий итоговый баланс счёта клиента на момент запроса отчёта — это не баланс на дату конкретной операции, а актуальный остаток на сейчас.

Период отчёта

Все три отчёта принимают период (дату начала и дату окончания). Если период не передан явно, по умолчанию используется текущий календарный месяц: с первого числа текущего месяца по первое число следующего месяца.
  • В отчёте «Баланс бонусов» период не влияет на сами цифры баланса (баланс всегда актуальный на текущий момент), только на возможность фильтрации/сортировки списка.
  • В отчёте «Сводка по бонусам» период влияет только на суммы начисленного и списанного — общий оборот считается за всё время без ограничения по периоду (см. ниже).
  • В отчёте «История операций» период ограничивает, какие транзакции попадают в список — по дате создания операции.

Отчёт «Баланс бонусов»

Список всех бонусных счетов клиентов компании с их текущим остатком. Поддерживается поиск по имени и телефону клиента, а также сортировка по идентификатору, клиенту и сумме баланса (записи без значения сортировки не выпадают из списка, а показываются последними).

Отчёт «Сводка по бонусам»

Три агрегированных показателя, посчитанных на лету по всем бонусным транзакциям компании.
Показатель «Общая сумма транзакций» не учитывает выбранный период — это сумма вообще всех транзакций компании за всё время. Кроме того, это именно суммарный net-итог с учётом знака (списания хранятся отрицательными и поэтому уменьшают эту сумму), а не сумма масштаба оборота без учёта направления операций. Только «Начислено за период» и «Списано за период» реально ограничены выбранными датами. Это может сбивать с толку при чтении отчёта: первая цифра не согласуется по смыслу с двумя остальными и не отражает общий объём операций.
Списания в базе хранятся как отрицательные суммы транзакций, поэтому при подсчёте показателя «Списано за период» значение дополнительно меняет знак на положительный — чтобы в отчёте оно читалось как обычная положительная величина, а не как отрицательное число.

Отчёт «История операций»

Построчный журнал всех бонусных транзакций за выбранный период, отсортированный от новых к старым. Особенности отчёта:
  • Транзакции с нулевой суммой в отчёт не попадают — они считаются техническими и не несут отчётной ценности.
  • Доступен поиск по имени клиента.
  • Доступна фильтрация по типу операции (начисление/списание) и по сотруднику, оформившему операцию.
  • В отчёте также подтягиваются вспомогательные данные по связанной заявке аренды (статус заявки и сумма скидки по заявке), если операция связана с конкретной арендой.

Как это используется

Типичный сценарий: клиент оформляет или закрывает аренду, и в рамках этого сотрудник вручную либо автоматической логикой начисляет клиенту бонусные баллы за аренду или списывает часть баллов клиента в счёт оплаты. Раздел «Бонусы сотрудников» даёт руководству возможность:
  • проверить, у кого из клиентов какой накопленный остаток бонусов (отчёт «Баланс бонусов»);
  • быстро увидеть общий масштаб бонусной программы и её динамику за месяц (отчёт «Сводка по бонусам»);
  • проконтролировать, кто из сотрудников какие операции с бонусами проводил, и сверить операции с конкретными арендами (отчёт «История операций»).
Так как списание бонусов автоматически создаёт связанную финансовую проводку, отчёты по кассе и по бонусам должны быть согласованы: сумма списанных бонусов клиента отражается и как уменьшение оплаты деньгами по аренде.

Особенности поведения

  • Поле «текущий баланс счёта» в отчёте истории операций всегда показывает актуальный остаток на момент запроса отчёта, а не баланс, который был на дату конкретной исторической операции — это может ввести в заблуждение при просмотре старых записей.
  • Транзакции с нулевой суммой полностью исключаются из отчёта истории операций (но не из сводки и не влияют на баланс иначе, чем любые другие транзакции), поэтому подсчёт количества операций «на глаз» по списку истории не совпадёт с фактическим количеством записей в базе.
  • При создании операции списания автоматически создаётся или обновляется связанная финансовая проводка на сумму списания (сумма в проводке хранится с противоположным знаком относительно бонусной транзакции); для начисления такая проводка не создаётся. Проводка обновляется только при создании/сохранении бонусной транзакции — при удалении транзакции списания проводка не удаляется и не корректируется автоматически.
  • Суммы списания в базе хранятся отрицательными значениями, поэтому показатель «Списано за период» в сводке вычисляется с переменой знака на положительный.
  • Если период не передан в запросе, по умолчанию используется текущий календарный месяц (с первого числа текущего месяца по первое число следующего).
  • При удалении бонусной транзакции баланс счёта тоже автоматически пересчитывается и по счёту тоже отправляется уведомление об обновлении карты лояльности (только если у счёта есть активная невоидированная карта в кошельке) — это симметрично созданию транзакции.

Связанные страницы

Глоссарий: Бонусы сотрудников

Полный перечень полей бонусного счёта и транзакций.

Метрики и аналитика

Общий обзор всех отчётов раздела метрик и аналитики.

Обзор и общая сводка

Дневная сводка по компании: доход, заявки и детализация — точка входа в аналитику.

Финансы: список, PnL, движение денег

Финансовые отчёты компании: список операций, прибыли и убытки, движение денег.

Транзакции

Сводка транзакций: разбивка по видам оплаты и постраничный список операций.

Штрафы

Учёт штрафов по арендам: автоматическое начисление, штрафы вручную и статус оплаты.

Скидки

История применения скидок к арендам и сводная группировка по каждой скидке из справочника.

Депозиты

Залоги по аренде: денежные и предметные, статусы и фактические платежи.

Услуги

Метрики дополнительных услуг: общая сводка, список по видам, по исполнителям и история.

Зарплаты и субаренда сотрудников

Расчёт зарплат по выполненным действиям и учёт субаренды инвентаря сотрудникам.

Амортизация и окупаемость инвентаря

Амортизация единиц инвентаря и накопленная окупаемость дохода по группам и единицам.

Эффективность инвентаря

Загрузка и простой инвентаря по комплектам, группам и отдельным единицам.

Рефералы и клиенты

Реферальная программа (агенты и начисления) и клиентская аналитика: рост, отток, LTV.

Смены сотрудников

Список и детализация рабочих смен персонала на точках проката.

Модули: доставки, мастерская, воронки, склад, инвентаризации

Отчётность прикладных модулей: доставки, мастерская, воронки продаж, продажи и инвентаризации.