Назад в блог
Корпоративные решения

Система учёта посетителей: вход, пропуска и журнал

Что делает система учёта посетителей и как её внедрить? Предварительная регистрация, документ и согласие на входе, гостевые пропуска, уведомление принимающего сотрудника, отметка выхода, список находящихся в здании и сроки хранения данных.

Ziyaretçi TakipGüvenlikKVKKKurumsal Yazılım

Система учёта посетителей фиксирует, кто приходит в здание или на объект, к кому, когда входит и выходит и какой пропуск получает. Коротко: её задача не перенести бумажный журнал в компьютер, а в любой момент точно знать, кто сейчас находится внутри. Для этого нужны три вещи: предварительная регистрация, проверка на входе и отметка выхода, такая же обязательная, как отметка входа.

Зачем нужна система учёта посетителей?

Бумажный журнал фиксирует приход, но редко фиксирует уход. Во время учебной тревоги или реальной эвакуации у охраны есть список тех, кто пришёл сегодня, но нет списка тех, кто внутри сейчас. Почерк трудно разобрать, один и тот же человек каждый раз заново пишет свои данные, а найти прошлый визит можно только листая страницы. Система решает все три проблемы: записи можно искать, повторных гостей система узнаёт, а список для эвакуации формируется одним нажатием.

  • Предварительная регистрация: принимающий сотрудник заранее вносит гостя, гость получает приглашение с датой и временем.
  • Вход: охрана или ресепшен проверяет личность, гость подтверждает уведомление об обработке данных, номер пропуска привязывается к визиту.
  • Уведомление: при приходе гостя принимающий сотрудник сразу получает сообщение или письмо, никто не ждёт в холле.
  • Выход: пропуск сдаётся, время выхода фиксируется; несданный пропуск остаётся открытым и попадает в отчёт в конце дня.
  • Отчёты: кто внутри прямо сейчас, визиты за период, стоп-лист и частые поставщики.

Основная запись это визит, а не посетитель

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

Система без отметки выхода бесполезна при эвакуации. Выход должен быть таким же обязательным шагом, как вход, а незакрытые визиты должны автоматически попадать в отчёт в конце дня.

Какие данные собирать на входе?

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

Гостевые пропуска и список «кто сейчас внутри»

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

type Visit = {
  id: string;
  visitorName: string;
  hostEmployeeId: string;
  checkInAt: Date;
  checkOutAt: Date | null;
  badgeNo: string | null;
};

// Evacuation list: everyone who is still inside right now.
function stillInside(visits: Visit[]): Visit[] {
  return visits.filter((v) => v.checkOutAt === null);
}

// Badges not returned at the end of the day are flagged, not silently closed.
function openAtEndOfDay(visits: Visit[], dayEnd: Date): Visit[] {
  return visits.filter((v) => v.checkOutAt === null && v.checkInAt < dayEnd);
}

Кто что должен видеть?

Ресепшен видит список на сегодня, начальник охраны ищет по истории, сотрудник видит только своих гостей, а стоп-лист редактирует только уполномоченный руководитель. Если такое разделение не построено на ролях с самого начала, либо все видят всё, либо никто не может работать; подход описан в статье роли пользователей и авторизация (RBAC). Если в приглашениях нужно подтверждать телефон, в тот же процесс можно добавить SMS OTP подтверждение.

Готовый продукт или заказная разработка?

Для офиса с одним входом часто достаточно готового решения на планшете. Заказная разработка оправдана, когда есть несколько зданий и проходных, интеграция с турникетами, отдельные правила для подрядчиков и поставщиков, подтверждение инструктажа по технике безопасности или общий список пользователей с кадровой системой. Перед решением задайте два вопроса: сколько минут сегодня уходит на ответ «кто внутри» и с какими системами должны обмениваться данные о визитах?

Итог

Хорошая система учёта посетителей считает визит основной записью, делает выход обязательным, собирает минимум данных и сама соблюдает сроки хранения. Если хотите вместе спроектировать процесс приёма гостей и доступа для вашего объекта, загляните на страницу корпоративные решения или напишите нам через форму запросить смету.

Let's Build Your Project

Get a free consultation for your website, mobile app, or corporate software project.

Get a Free QuoteExplore our Corporate Solutions service