Что должен фиксировать audit trail в EWA?
Он должен восстанавливать каждое решение и движение денег от начала до конца.
Больше, чем история правок табеля
Нужно проследить профиль, место, работу, утверждение, ставку, политику, расчёт, eligibility, счёт, операцию, банк, сверку и payroll.
Audit профиля работника
Сохранять создание и изменения идентичности, статуса, места, кода, счёта и устройства с actor, временем, до/после, причиной и источником.
Audit работы и утверждения
Связать утверждение с версией данных; хранить источник, значение, утверждающего, правки, причину, повторное утверждение и затронутые операции.
Audit политики и конфигурации
Хранить ID/version политики, даты, область, значения, автора, утверждающего, активацию и завершение; решение помнит использованную версию.
Audit Earned Wage Engine
Хранить утверждённую работу, ставку, период, полученное, резерв, источник, snapshot и результат для воспроизведения расчёта.
Audit Eligibility Engine
Хранить работника, время, сумму, версию, правила, результат и reason code: eligible, мало работы, проверка не завершена, клиент выключен или pending.
Audit операции
Хранить transaction/request/idempotency ID, работника, маскированный счёт, сумму, статусы, ответ банка, ссылку, retry, ручное действие и итог.
Audit pending и retry
При timeout хранить время отправки, отсутствующий ответ, переход pending, расследование, решение retry, ID и доказательство финального статуса.
Audit Reconciliation
Хранить источник, файл/snapshot, дату, ключ, совпадения, расхождения, код, owner, действие и доказательство закрытия.
Audit отражения в payroll
Прослеживать период, успех/ошибку/pending, полученный итог, сумму payroll, утверждающего, bridge report и расхождения, чтобы удержать один раз.
Event log или только updated_at?
updated_at не показывает actor, поле, до/после, причину и затронутое решение; нужен отдельный журнал.
Минимальные поля события
Событие включает ID, entity type/ID, actor, action, timestamp, before, after, reason code, correlation ID, source и approval.
| Field | Meaning |
|---|---|
| Event ID | Event identifier |
| Entity type | Work, policy, transaction, payroll |
| Entity ID | Related record |
| Actor | Person or system |
| Action | Create, edit, approve, send, reconcile |
| Timestamp | Time |
| Before | Previous value |
| After | New value |
| Reason code | Reason |
| Correlation ID | Event-chain link |
| Source | App/API/Sheet/ERP/bank |
| Approval | Approver if required |
Защита журнала от изменений
Обычные пользователи не удаляют logs; чтение по ролям, изменение журналируется, часы синхронны, данные маскируются, retention по политике.
Audit не означает хранить всё вечно
Сохранять достаточно для доказательства и работы, но не копировать полные ID, счета, геолокацию, лица и лишние данные; использовать ссылку, маску или hash.
Кому нужен доступ?
Работник, менеджер, payroll, операции, техника и audit/legal видят только свой объём; доступ к защищённым logs тоже фиксируется.
Разбор жалоб
Timeline показывает изменённую работу, actor, новое утверждение, policy version, операцию, полученный итог и новый расчёт.
KPI качества
Измерять actor/reason, сквозную трассировку, пропущенный correlation ID, неутверждённые правки, отсутствие доказательства, время расследования и невоспроизводимые жалобы.
Частые вопросы
Audit нужен только аудиторам?
Нет, он нужен операциям, поддержке, инцидентам, сверке и жалобам.
Нужно логировать каждое открытие приложения?
Не обязательно; важны события, влияющие на данные, права, решения и деньги.
Чем это отличается от статьи 135?
Статья 135 — правки табеля; эта — вся цепочка EWA.
Хранить ли полные защищённые данные?
Нет по умолчанию; нужны минимизация и ролевой доступ.
Заключение
Хороший журнал восстанавливает решение и денежный поток до payroll, делая EWA объяснимой и контролируемой.
Author: Do Huy Le — Tổng Giám Đốc, Nhan Kiet Manpower Supply Co., Ltd.
EWA: Hotline 0937.022.655 · Email info@nhankiet.vn · EWA