Перейти к содержимому

Дашборд выручки

Единый экран выручки для финансового директора, руководителей направлений и собственников. Он собирает данные из биллинга, ERP и оставшихся таблиц, применяет одинаковые правила признания и показывает одну и ту же цифру всем, кому она нужна, с детализацией по уровню доступа.

Без такого сервиса выручка живёт в трёх системах, и цифры в них сходятся только после ручной сверки. Разбор итогов месяца начинается с двадцатиминутного выяснения, какая версия окончательная. MRR и ARR в разных отделах считают по своим формулам. Отклонение от плана замечают после закрытия, а на вопрос руководителя «сколько мы заработали» разные сотрудники дают разные ответы.

Дашборд не заменяет бухгалтерскую отчётность: он показывает управленческую картину по согласованным правилам и помогает заметить проблему до закрытия периода.

  • Сводит выручку из всех источников. Подписки из биллинга, разовые услуги из ERP и исторические данные из таблиц приводятся к общим потокам выручки.
  • Считает показатели по одной формуле. MRR, ARR, признанная выручка и удержание выручки рассчитываются один раз и одинаково для всех экранов и выгрузок.
  • Отмечает отклонения в течение месяца. Поток выручки, который отстаёт от плана сверх порога, попадает в список до закрытия периода.
  • Показывает свежесть данных. Рядом с каждой цифрой видно, когда последний раз синхронизировался источник.
  • Даёт разные уровни детализации. Руководство видит карточки показателей и тренды, финансовая служба — таблицы с разбивкой, владелец направления — только свои потоки.
  • Правила признания задают один раз. Выручка признаётся по счёту, по оплате или по оказанию услуги — это решение фиксируется в модели данных для каждого потока. Если две системы считают независимо, цифры снова разойдутся.
  • ARR без ушедших клиентов. Отменённые и приостановленные подписки исключаются автоматически по статусу в биллинге, а не ручными правками. Иначе показатель выглядит лучше реальности.
  • Синхронизация хотя бы раз в сутки. Данные биллинга загружаются по расписанию, а время последней загрузки выводится на дашборде. Устаревшие данные помечаются, а не показываются как текущие.
  • Порог отклонения — по потоку. Для стабильной подписочной выручки 5% — уже сигнал, для проектной — обычная волатильность. Пороги хранятся в настройках.
  • Таблицы можно подключить временно. Потоки, которые пока ведутся в таблицах, загружают импортом CSV рядом с автоматическими источниками и переводят в базу постепенно.
  • Интеграция без переноса. Биллинг и ERP остаются главными системами, дашборд читает их через API или подключение только на чтение. Если BI-система компании уже строит эти отчёты по согласованным формулам, отдельное приложение нужно лишь для операционных действий.
  • Доступ ограничивают на сервере. Руководитель направления не должен видеть выручку чужих направлений ни в виджетах, ни в экспорте.

Промпты рассчитаны на AI-агента (Claude Code, Cursor и аналоги) в Laravel-проекте с установленным Filament 4.x. Отправляйте их по одному: каждый шаг даёт результат, который можно проверить до перехода к следующему.

Создай модели и миграции для дашборда выручки: RevenueStream (название,
владелец, правило признания: по счёту, по оплате, по оказанию),
RevenueEntry (поток, клиент, период, сумма, валюта, источник, внешний
id), Subscription (клиент, тариф, статус, ежемесячная сумма), RevenuePlan
(поток, месяц, плановая сумма, порог отклонения), SyncRun (источник,
время, статус). Добавь фабрики с демо-данными за год.
Сделай фоновые задачи по расписанию для загрузки подписок и счетов из
биллинга и проводок из ERP через API, плюс импорт CSV через Filament
для потоков из таблиц. Каждая загрузка пишет SyncRun, повторная загрузка
той же записи не создаёт дубль.
Сделай сервис расчёта показателей за месяц: MRR и ARR только по
активным подпискам, признанная выручка по правилу потока, удержание
выручки по когортам клиентов. Все экраны и выгрузки должны брать
показатели только из этого сервиса.

Отмените подписку в демо-данных и проверьте, что она исчезла из ARR без ручных правок.

Сделай страницу Filament с виджетами: карточки MRR, ARR и выручки
месяца, график по потокам за 12 месяцев, таблица план-факт по потокам
с подсветкой отклонений выше порога и время последней синхронизации
каждого источника. Превышение порога создаёт уведомление в панели
владельцу потока.
Настрой роли: руководство видит только карточки и тренды, финансовая
служба — всё с детализацией, владелец потока — только свои потоки.
Примени ограничение к виджетам, таблицам и экспорту. Добавь экспорт
показателей за период в CSV.