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

Сотрудники, роли и доступы в IZI

Опубликовано: · Обновлено: (12 дней назад)· IZI Team

Система ролей в IZI — это набор разрешений, привязанных к двум уровням: организации (сеть целиком) и клубу (конкретная точка). Роль — не должность, а профиль доступа: один сотрудник может иметь разные роли в разных клубах одной сети. Ключевой факт: базовый доступ кассира и право редактировать тарифы — два разных разрешения, и это разделение намеренное. Ниже — как система устроена, какие разрешения что дают и как не дать лишнего никому, кому это не нужно.

В IZI доступ организован по двум уровням, и понимание этой иерархии — основа правильной настройки.

Уровень организации — это то, что относится ко всей сети. Здесь живут: управление пользователями и ролями, интеграции (платёжные шлюзы, кассовые провайдеры), группы игроков, промо-кампании, автоматизации, теги транзакций, журнал действий. Разрешения уровня организации начинаются с org.*.

Уровень клуба — операционная работа в конкретной точке. Зал, кассовые смены, сессии, барные заказы, аналитика, склад, тарифы, оборудование. Разрешения уровня клуба начинаются с club.*.

Роль одновременно содержит разрешения обоих уровней. Когда вы добавляете сотрудника, вы указываете: к каким клубам он имеет доступ и с какой ролью. Один сотрудник — разные роли в разных клубах.

Владелец организации — особая позиция. Только владелец имеет доступ к настройкам организации (org.settings). Никакая кастомная роль, даже с «Полным доступом», эти настройки не открывает — это аппаратное ограничение на уровне системы.

Флаг «Полный доступ» в роли — даёт все разрешения организации и всех клубов сразу, без ручного выбора. Две операции доступны только ролям с этим флагом: управление пользователями и ролями, а также создание новых клубов. Рядовой роли эти функции недоступны, даже если вручную выбрать все остальные разрешения.

В IZI из коробки есть две системные роли:

РольДля когоЧто можетЧего нельзя
Администратор (ADMINISTRATOR)Старший персонал, управляющийПолный доступ ко всем функциям клубов и организацииИзменить настройки самой организации — только у владельца
IZI Техническая ПоддержкаСлужебнаяСлужебный доступ IZIНазначить сотруднику; создана системой

Помимо «Администратора», в IZI нет других встроенных ролей для персонала. Все остальные профили доступа вы создаёте сами через Организация → Роли → «Добавить». Типичные кастомные роли, которые операторы создают для клуба с несколькими сотрудниками:

Пример кастомной ролиНабор разрешенийЧто делает
Кассирclub.baseЗал, сессии, оплаты, бар, профили игроков, кассовая смена
Старший администраторclub.base + финансовые операцииВсё выше плюс возвраты, инкассация, пополнение/списание баланса
Управляющий клубаclub.base + аналитикаВсё выше плюс просмотр отчётов KPI, выручки, смен
Контент-менеджерclub.catalogРедактирование тарифов, продуктов, расписаний, скидок
Аналитикclub.analytics.*Только просмотр аналитики, без доступа к залу и кассе

Системная роль «Администратор» — это fullAccess: true. Назначать её стоит осознанно: такой пользователь видит и может изменить всё, включая роли других сотрудников.

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

Тренер или инструктор. Работает с игроками — создаёт профили, смотрит историю сессий, назначает группы. При этом ему не нужна касса и аналитика выручки. Роль: club.base без финансовых операций и аналитики.

Бар-менеджер. Управляет каталогом продуктов бара — создаёт, редактирует, устанавливает цены. Ему не нужен доступ к тарифам и игровым сессиям. Роль: club.catalog с ограничением только на продуктовые категории (на уровне UI это настраивается через выбор нужных разрешений в группе «Настройки клуба»).

Ивент-куратор. Настраивает промо-кампании и группы игроков для турниров. Работает на уровне организации. Роль: org.campaigns + org.playerGroups без операционного доступа к клубам.

Финансовый аналитик. Смотрит отчёты по выручке, сменам, аналитику бара — не работает с залом. Роль: club.analytics.kpi + club.analytics.daily + club.analytics.bar + club.analytics.shifts.

Технический персонал. Управляет оборудованием — добавляет и настраивает компьютеры, зоны, экраны. Роль: club.equipment + club.screensavers + club.iziBoot.config.

Правило простое: если должность требует доступа к одной функции, создайте роль только с этой функцией. Избыточные права — источник случайных изменений и сложностей при аудите.

Вот полная карта разрешений по группам — то, из чего строится любая роль:

Администрирование клуба (club.base) — базовый набор для операционной работы:

  • Зал, заказы, барные заказы, клиенты и группы
  • Создание и завершение сессий
  • Приём оплаты, пополнение баланса
  • Открытие и закрытие кассовой смены
  • Просмотр устройств и зон

Настройки клуба — управление структурой клуба (требует club.catalog):

  • Создание и редактирование тарифов, тарифных групп, скидок
  • Управление продуктами и категориями бара
  • Расписания работы
  • Оборудование (устройства, зоны, экраны)

Аналитика (club.analytics.*) — каждый раздел — отдельное разрешение:

  • club.analytics.kpi — ключевые метрики (выручка, ARPU, загрузка)
  • club.analytics.daily — ежедневная динамика
  • club.analytics.bar — аналитика бара
  • club.analytics.tariff — аналитика тарифов
  • club.analytics.sessions — сессии
  • club.analytics.clients — клиентская база
  • club.analytics.shifts — отчёты по сменам
  • club.analytics.bonus — бонусная программа
  • club.analytics.topupBonus — бонусы при пополнении
  • club.analytics.suspicious — подозрительные операции
  • club.analytics.promo_codes — промокоды
  • club.analytics.pricing_simulator — симулятор ценообразования

Финансовые операции — каждая операция — отдельная галка:

  • Пополнение игрового баланса
  • Списание игрового баланса
  • Пополнение бонусного баланса
  • Списание бонусного баланса
  • Возврат (club.finance.op.refund)
  • Инкассация (club.finance.op.cashCollection)
  • Перевод между счетами (club.finance.op.accountTransfer)
  • Управление кассами (club.finance.cashboxes)

Отмена и восстановление тарифа — отдельные разрешения:

  • club.orders.cancelTariff — отменить активный тариф
  • club.orders.restoreTariff — восстановить отменённый тариф

Разрешения уровня организации:

  • org.integrations — платёжные провайдеры и кассовые конфигурации
  • org.playerGroups — группы игроков
  • org.campaigns — push-уведомления и кампании
  • org.promoCodes / org.promoCampaigns — промокоды и акции
  • org.automation — правила автоматизаций
  • org.audit — журнал действий
  • org.transactionTags — теги транзакций

Только при полном доступе (requireFullAccess: true):

  • Управление пользователями и ролями (org.users, org.roles)
  • Создание новых клубов

Только для владельца (ownerOnly: true):

  • Настройки организации (org.settings)

Зависимости работают каскадно: если вы выдаёте club.catalog, система автоматически подтягивает club.base, club.schedules и club.equipment — потому что редактирование каталога требует доступа к расписаниям и оборудованию. При выборе разрешений в CRM эта цепочка разворачивается автоматически.

Журнал действий (org.audit) — инструмент постфактумного контроля. Открывается через Организация → Журнал и доступен только пользователям с разрешением AuditLogRead.

Что логируется. Все мутации через CRM: создание и завершение сессий, проведение платежей, пополнение и списание балансов, возвраты, изменение тарифов, добавление продуктов, управление пользователями. Каждая запись содержит: кто, когда, что именно изменил.

Сценарии использования:

  • Пробитая скидка. Открываете детализацию транзакции — видите сотрудника, который провёл скидку, время и сумму.
  • Несанкционированное изменение тарифа. Через журнал видно кто и когда изменил параметры тарифа, даже если изменение уже отменено.
  • Спорный возврат. Каждый возврат атрибутирован конкретному пользователю и времени операции.
  • Проверка смены. Смена сотрудника, открытие и закрытие кассы — всё в журнале с таймстемпами.

Кто видит журнал. Только пользователи с org.audit. Рядовой кассир журнал не видит и не знает о его существовании в интерфейсе. Это стандартная практика: инструмент контроля не должен быть виден тому, кого контролируют.

Хранение. История действий не удаляется при удалении пользователя. Если сотрудник уволен и его аккаунт удалён — операции за период его работы остаются в журнале с привязкой к его идентификатору.

Передача смены. В IZI каждая кассовая смена привязана к конкретному пользователю. Сотрудник открывает смену → работает → закрывает. Следующий сотрудник открывает свою смену. Это создаёт чёткую границу ответственности: каждая операция за период смены атрибутирована тому, кто её открыл.

Что делать при передаче смены:

  1. Уходящий сотрудник закрывает кассовую смену через CRM
  2. Принимающий открывает свою смену
  3. Расхождения по кассе видны в аналитике смен (club.analytics.shifts) — они фиксируются на конкретную смену и пользователя

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

Несколько клубов. Сотрудник может быть добавлен в несколько клубов одной организации с разными ролями в каждом. Это нормальная конфигурация для управляющего сетью, который, например, имеет полный доступ в трёх клубах и только аналитику — ещё в двух.

Чек-лист при увольнении сотрудника:

  • Убедитесь, что его кассовая смена закрыта
  • Удалите пользователя из организации (Организация → Пользователи → удалить)
  • Проверьте что он не является единственным с «Полным доступом» — иначе потеряете возможность управлять ролями

Связанные материалы: Что такое IZI · Настройки клуба в CRM · Бонусы при пополнении · Тарифы и ценообразование · Бар и склад

Описание разрешений основано на конфигурации IZI CRM (accessGroups.ts, permissionOwner.ts). Набор разрешений может расширяться с новыми версиями платформы. Конкретные права доступны в разделе Организация → Роли вашего аккаунта.

Частые вопросы

Какие роли есть в IZI по умолчанию?

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

Чем владелец отличается от пользователя с полным доступом?

Владелец организации — единственный, кто имеет доступ к настройкам организации (org.settings). Пользователь с флагом «Полный доступ» получает все разрешения организации и всех клубов, но настройки организации — только у владельца. Кроме того, только пользователь с «Полным доступом» может управлять другими пользователями и ролями, а также создавать новые клубы.

Что может администратор смены?

Сотрудник с базовыми разрешениями клуба (club.base) видит зал, создаёт и завершает сессии, принимает оплаты, пополняет балансы, работает с барными заказами, создаёт и редактирует профили игроков, открывает и закрывает кассовую смену. Он не может менять тарифы, редактировать каталог продуктов или смотреть аналитику — если эти разрешения не добавлены в роль явно.

Как создать кастомную роль?

Зайдите в Организация → Роли → кнопка «Добавить». Задайте название, выберите разрешения уровня организации и клуба из чек-листов, сохраните. Роль сразу доступна для назначения любому пользователю. Флаг «Полный доступ» в роли — альтернатива ручному выбору: он автоматически даёт все разрешения.

Можно ли запретить кассиру менять тарифы?

Да. Разрешение на редактирование каталога (club.catalog) — это отдельный ключ, который не входит в базовый набор сотрудника. Кассир с club.base не может создавать, редактировать или удалять тарифы, продукты, скидки и расписания. Чтобы это предотвратить — просто не добавляйте club.catalog в роль.

Что такое разрешения уровня клуба и уровня организации?

Разрешения уровня организации (org.*) — действия во всей сети: интеграции, теги транзакций, группы игроков, промо-кампании, автоматизации. Разрешения уровня клуба (club.*) — операции в конкретном клубе: зал, касса, аналитика, каталог, склад. Роль одновременно содержит оба уровня, и сотрудник получает доступ согласно пересечению своей роли и клубов, в которые он добавлен.

Можно ли дать сотруднику доступ только к некоторым клубам сети?

Да. При добавлении пользователя указывается, к каким клубам он имеет доступ. Один и тот же сотрудник может иметь разные роли в разных клубах — например, быть старшим администратором в одном и кассиром в другом.

Как заблокировать сотрудника?

Удалите его из организации в разделе Пользователи. После этого токен сессии инвалидируется и вход с его учётными данными становится невозможен. Удаление пользователя не стирает историю его действий в журнале — операции остаются атрибутированы его аккаунту.

Журнал действий — где смотреть?

Организация → Журнал (требует разрешения org.audit). Журнал фиксирует мутации: кто, когда, какое действие совершил. Доступен пользователям с разрешением AuditLogRead. Обычные сотрудники журнал не видят — только владелец или пользователи с явно выданным org.audit.

Можно ли посмотреть кто пробил скидку?

Да. Каждая транзакция хранит идентификатор пользователя, который её создал. Через журнал действий (org.audit) или в детализации транзакции видно какой сотрудник провёл скидку, возврат или ручную корректировку баланса.

Двухфакторная авторизация — есть в IZI?

На уровне организации двухфакторная авторизация сейчас не является встроенной функцией CRM. Дополнительный уровень защиты обеспечивается через смену кассовых смен (каждый администратор открывает свою смену), ролевой моделью без избыточных прав и журналом действий для пост-фактум аудита.

Сотрудник уволился — что делать с его аккаунтом?

Удалите пользователя из организации в разделе Управление пользователями (требует роли с флагом «Полный доступ»). Сессии немедленно инвалидируются. История операций за период его работы остаётся в журнале с привязкой к его аккаунту — это важно для аудита и закрытия смен.