Audit & PHI logging
How Tenelix structures clinical, billing, and admin audit — and how to query it.
Tenelix emits structured events for every clinical, billing, and admin action. Events flow into dedicated log channels, are tenant-aware, and are queryable from the audit dashboard or your SIEM.
Channels
| Channel | Purpose |
|---|---|
phi | PHI access — every read of a patient record |
billing_audit | Invoice / payment lifecycle events (M7) |
forms_audit | Form publish / archive / version events |
auth_audit | Login, role change, permission grant |
default | Application logs |
Event shape
All audit events share a base shape:
{
"tenant_id": "uuid",
"user_id": "uuid",
"request_id": "uuid",
"action": "patient.read",
"resource_type": "Patient",
"resource_id": "uuid",
"metadata": { ... },
"timestamp": "ISO-8601"
}
Every event carries tenant_id and request_id. Filter incidents by tenant. Forward to your SIEM. Nothing slips through unattributed.
Override audit
Some actions support an admin override path — for example, clearing a
patient through Awaiting Payment without taking payment. Overrides leave
typed columns (override_by_user_id, override_reason,
override_marker = "[CLEARED WITHOUT PAYMENT]") on the affected
record. The override log is immutable.