К статье
Практический материал

Автоматизация · 15 мин

Как подключить СКУД к 1С и настроить учёт рабочего времени

Пошаговая инструкция по подключению СКУД к 1С: способы интеграции, настройка обмена данными, учёт рабочего времени, типичные ошибки и проверка результата.

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

Подключить СКУД к 1С можно несколькими способами: через готовый модуль интеграции от производителя оборудования, через обмен файлами выгрузки, через прямое чтение базы данных СКУД или через разработку собственной обработки на встроенном языке 1С. Выбор зависит от модели контроллеров, используемой конфигурации 1С и требований к глубине интеграции — от простого импорта событий до автоматического формирования табеля.

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

Что понадобится перед началом интеграции

Сначала зафиксируйте исходные данные: марку и модель контроллеров СКУД (Perco, ZKTeco, Parsec, RusGuard, Iron Logic и другие), версию программного обеспечения СКУД, конфигурацию и релиз 1С. От этого зависит доступный способ обмена: одни системы имеют готовые модули для 1С, другие умеют только выгружать отчёты в файлы.

Определите, какая задача решается интеграцией. Самая частая — автоматическое заполнение табеля учёта рабочего времени в 1С:ЗУП. Реже требуются: контроль доступа в 1С по пропускам, учёт посетителей, расчёт поденных оплат, контроль нахождения сотрудников на территории для производственной безопасности. От цели зависит, какие данные нужно передавать и как часто.

Назначьте ответственного за правила обработки данных. Кто-то должен решить: как округлять время (до 5, 10, 15 минут), что считать опозданием, как обрабатывать проходы без пары (вход без выхода), что делать с проходами в выходные. Без этих правил любая интеграция даст спорные результаты при расчёте зарплаты.

Модель СКУДPerco, ZKTeco, Parsec и др.

Есть ли у производителя готовый модуль интеграции с 1С

Конфигурация 1СЗУП, УПП, ERP, самописная

Есть ли штатные механизмы загрузки данных о времени

Цель интеграцииТабель, контроль, аналитика

Какие события передавать: все проходы или только первый вход и последний выход

Права доступаБаза СКУД и 1С

Есть ли учётные записи с правами чтения данных СКУД и записи в 1С

Способы подключения СКУД к 1С

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

Готовый модуль интеграции от производителя СКУД. Некоторые вендоры поставляют обработки или расширения для 1С, которые забирают события напрямую из системы контроля доступа. Это самый быстрый путь: модуль обычно содержит настройки расписания обмена, сопоставление сотрудников и типовые правила формирования табеля. Ограничение — поддерживаются только определённые конфигурации и релизы, а доработка под нестандартные правила может быть платной.

Обмен через файлы выгрузки. СКУД формирует отчёт о проходах в формате CSV, Excel или XML, а обработка в 1С загружает этот файл и создаёт документы. Способ универсален и работает почти с любой системой, но требует либо ручного запуска выгрузки, либо настройки автоматического формирования файла по расписанию средствами СКУД или планировщика Windows.

Прямое чтение базы данных СКУД. Большинство систем контроля доступа хранят события в MS SQL Server, Firebird или PostgreSQL. Обработка в 1С подключается к этой базе через COM-объект ADO или внешний источник данных и читает таблицу событий напрямую. Способ даёт обмен в режиме, близком к реальному времени, но требует знания структуры базы конкретной СКУД и осторожности: прямая запись в базу СКУД недопустима, только чтение.

Разработка через API. Современные СКУД предоставляют REST API или SDK. В 1С пишется обработка, которая обращается к API по HTTP, получает события в формате JSON и обрабатывает их. Это самый гибкий вариант, но и самый трудоёмкий — нужен разработчик, знакомый и с 1С, и с документацией API конкретной системы.

Сравнение способов интеграции

Модуль производителя

Быстрый старт и поддержка вендора, но зависимость от совместимости версий и ограниченная гибкость

Обмен файлами

Универсально и просто в отладке, но требует ручного контроля и уязвимо при сбоях выгрузки

Чтение базы СКУД

Обмен почти в реальном времени, но нужен доступ к СУБД и знание структуры данных

API / SDK

Максимальная гибкость и двусторонний обмен, но требует разработки и сопровождения

Подготовка данных: сопоставление сотрудников и точек прохода

Ключевая проблема любой интеграции — связать карточку сотрудника в СКУД с физическим лицом в 1С. В СКУД сотрудник идентифицируется номером карты или внутренним ID, в 1С — ссылкой на справочник «Физические лица» или «Сотрудники». Нужна таблица соответствия, которую заполняют один раз и поддерживают при приёме и увольнении персонала.

Практичный подход — хранить номер карты СКУД в дополнительном реквизите или сведении физического лица в 1С. Тогда обработка загрузки находит сотрудника по номеру карты из события прохода. Альтернатива — сопоставление по табельному номеру, если он одинаков в обеих системах, но на практике номера часто расходятся.

Отдельно настройте соответствие точек прохода. В СКУД каждое событие привязано к считывателю: «Турникет центральный вход», «Дверь цеха №2» и так далее. Для табеля обычно нужны только проходы через основные входы, а внутренние двери игнорируются. Составьте список считывателей, которые участвуют в учёте рабочего времени, и настройте фильтрацию в обработке загрузки.

Типичные ошибки на этапе подготовки
01
Сопоставление по ФИО вместо уникального идентификатора — однофамильцы и переименования ломают загрузку
02
Учёт всех считывателей без фильтрации — внутренние двери создают десятки лишних событий и искажают расчёт времени
03
Отсутствие процедуры для новых сотрудников — карта выдана, соответствие в 1С не создано, время не учитывается
04
Игнорирование уволенных — события по непогашенным картам падают в ошибки загрузки

Настройка обмена: пошаговый порядок действий

Ниже — типовой порядок настройки на примере загрузки через файл или прямое чтение базы. Конкретные шаги зависят от выбранного способа, но логика одинакова.

Сначала добейтесь, чтобы СКУД выгружала события за тестовый период (2–3 дня) в том виде, в котором их будет получать 1С: файл выгрузки или доступ к таблице событий. Проверьте, что в данных есть номер карты, дата и время события, идентификатор считывателя и направление прохода (вход/выход). Если направление не определяется, придётся вычислять его по типу считывателя.

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

После отладки настройте автоматический запуск. В файловом варианте это регламентное задание 1С, которое забирает файл из сетевой папки (выгрузку по расписанию настраивают в СКУД или планировщике Windows). При прямом чтении базы — регламентное задание с периодичностью от одного раза в день до нескольких раз в час. Обязательно ведите журнал загрузки: дата, количество обработанных событий, число ошибок сопоставления.

Порядок настройки обмена
  1. 1
    Получите тестовую выгрузку событий из СКУД и проверьте состав полей
  2. 2
    Заполните соответствие номеров карт сотрудникам в 1С
  3. 3
    Настройте фильтр считывателей, участвующих в учёте времени
  4. 4
    Настройте обработку загрузки и отладьте её на тестовом периоде
  5. 5
    Сверьте результат с фактическим табелем за тестовый период
  6. 6
    Включите регламентное задание и настройте журналирование загрузок

Пример чтения событий из базы СКУД через ADO

Для прямого чтения базы MS SQL из 1С используется COM-объект ADODB.Connection. Ниже упрощённый фрагмент, показывающий принцип подключения. Имена таблиц и полей зависят от конкретной СКУД — их нужно взять из документации производителя или определить по структуре базы.

bsl
Подключение = Новый COMОбъект("ADODB.Connection");
СтрокаПодключения = "Provider=SQLOLEDB;Data Source=SERVER;Initial Catalog=SKUD;User ID=reader;Password=***";
Подключение.Open(СтрокаПодключения);
Запрос = "SELECT CardNumber, EventTime, ReaderID FROM Events WHERE EventTime >= &Period";
Результат = Подключение.Execute(Запрос);
Пока НЕ Результат.EOF Цикл
    // обработка события
    Результат.MoveNext();
КонецЦикла;

Загрузка данных в 1С:ЗУП и формирование табеля

В 1С:ЗУП 3.1 для учёта фактического времени по данным СКУД обычно используют документ «Данные для расчёта зарплаты» с настроенным шаблоном или специализированные механизмы, которые появляются при установке модулей интеграции. События проходов преобразуются в часы явки по графику работы сотрудника: система сравнивает первый вход и последний выход с плановым графиком и определяет отработанное время.

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

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

Проверка результата и контроль качества данных

После запуска интеграции первые 2–4 недели проводите параллельный учёт: табель формируется и по старой схеме, и по данным СКУД, расхождения разбираются вручную. Это единственный надёжный способ выявить ошибки сопоставления сотрудников, неверные правила округления и неучтённые сценарии.

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

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

Контрольные точки

Как проверить результат

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

Каждое событие с номером карты находит сотрудника в 1С

Тревожный признак

В журнале загрузки есть записи «сотрудник не найден»

Полнота данных
Норма

Число событий в выгрузке СКУД равно числу обработанных в 1С

Тревожный признак

Часть событий теряется без объяснения в журнале

Корректность табеля
Норма

Явки по СКУД совпадают с фактическим присутствием при выборочной проверке

Тревожный признак

Систематические сдвиги времени, лишние или пропущенные дни

Спорные ситуации
Норма

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

Тревожный признак

Правила округления дают результаты, отличающиеся от регламента компании

Ограничения, риски и когда нужен специалист

Самостоятельная настройка оправдана, если у производителя СКУД есть готовый модуль для вашей конфигурации 1С, а правила учёта времени простые — один график, один вход, стандартные допуски. В этом случае достаточно следовать инструкции вендора и провести тщательное тестирование.

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

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

Маршрут решения

Как выбрать путь внедрения

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

Часто задаваемые вопросы

Можно ли подключить СКУД к 1С без программиста?

Да, если производитель СКУД предлагает готовый модуль интеграции для вашей конфигурации — его настройка обычно сводится к установке расширения, заполнению соответствий и включению расписания обмена. Для обмена через файлы, чтение базы или API без навыков разработки в 1С не обойтись.

Какие конфигурации 1С поддерживают работу со СКУД?

Чаще всего интеграцию настраивают с 1С:ЗУП, где данные о проходах превращаются в табель учёта рабочего времени. Также возможна интеграция с 1С:ERP, 1С:КА и самописными конфигурациями — там данные СКУД обычно пишутся в собственные регистры и используются для отчётов и контроля.

Что делать, если сотрудник прошёл по чужой карте?

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

Как часто должна происходить загрузка данных из СКУД?

Для табеля достаточно одной загрузки в день — обычно ночью, после завершения всех смен. Если данные нужны для оперативного контроля присутствия, настраивают загрузку каждые 15–60 минут. Слишком частый обмен не нужен: он повышает нагрузку, не давая практической пользы для расчёта.

Можно ли выгружать список сотрудников из 1С в СКУД автоматически?

Да, это стандартный сценарий двусторонней интеграции: при приёме сотрудника в 1С данные о нём передаются в СКУД для заведения пропуска, при увольнении — блокируются. Реализуется через API системы контроля доступа или штатный импорт СКУД из файла, который формирует обработка 1С. Прямая запись в базу СКУД для этой цели не используется.

Что делать при расхождении данных СКУД и табеля?

Сначала проверьте журнал загрузки: не потеряны ли события и все ли карты сопоставлены. Затем сверьте правила округления и допуски с регламентом компании. Если технически всё корректно, расхождение обычно вызвано кадровыми ситуациями — больничным, отгулом, проходом без карты — и решается документальным оформлением в 1С, а не правкой данных СКУД.

Итог

Что важно запомнить

Интеграция СКУД с 1С сводится к трём вещам: выбору способа обмена (модуль вендора, файлы, чтение базы или API), аккуратному сопоставлению карт сотрудников и формализации правил учёта времени. Первые недели ведите параллельный учёт и контролируйте журнал загрузки. Данные СКУД — основание для табеля, но кадровые документы в приоритете, а запись в базу СКУД из 1С недопустима.