Compliance & Audit Trail
ISO 9001, ISO 27001, and GDPR compliance features with automated audit trails, compliance reports, and regulatory evidence packages.
Last updated: 2025-02-18
Compliance & Audit Trail
Certexi is designed from the ground up for regulatory compliance. The immutable event ledger, cryptographic verification, and comprehensive evidence capture provide the foundation for ISO 9001, ISO 27001, and GDPR compliance.
Standards Support
ISO 9001 — Quality Management
Certexi supports ISO 9001 requirements through:
- Document control — All procedures versioned and tracked in Nextcloud
- Record keeping — Immutable event ledger with complete audit trail
- Process monitoring — Real-time KPIs and workflow metrics
- Nonconformity management — Incident tracking with corrective actions
- Management review — Automated compliance reports and dashboards
ISO 27001 — Information Security
Information security controls implemented:
- Access control — Role-based access with least-privilege defaults (see RBAC)
- Cryptography — SHA-256 hashing, Merkle tree anchoring, TLS 1.3
- Operations security — Structured logging, vulnerability scanning, change management
- Communications security — HTTPS enforced, API rate limiting, input validation
- Supplier relationships — Nextcloud integration audit logging
GDPR — Data Protection
Data Processing
Certexi processes personal data (operator names, photos, location data). Ensure your Data Processing Agreement (DPA) covers all data categories and processing activities.
- Data minimization — Only collect what's necessary for operations
- Purpose limitation — Data used only for customs workflow management
- Storage limitation — Configurable data retention policies
- Right to access — Data export in standard formats
- Right to erasure — Soft-delete with audit trail preservation
- Data portability — Full export via API or bulk download
Compliance UI Components
Audit Log Entry
<Card className="w-full"> <CardContent className="p-3"> <div className="flex items-center gap-3"> <Badge className="bg-blue-500 text-white text-[10px] shrink-0">CREATE</Badge> <div className="flex-1 min-w-0"> <div className="text-sm font-medium">Transport Unit Created</div> <div className="text-xs text-muted-foreground">TU-2025-00042 — operator: carlos.mendez</div> </div> <div className="text-right shrink-0"> <div className="text-xs font-mono">14:32:07 UTC</div> <div className="text-[10px] text-muted-foreground font-mono">sha256:a4f2e8...</div> </div> </div> </CardContent> </Card>
ISO Compliance Checklist
<Card className="w-80"> <CardHeader className="pb-2"> <CardTitle className="text-sm">ISO 9001 Checklist</CardTitle> <CardDescription>Transport Unit TU-2025-00042</CardDescription> </CardHeader> <CardContent className="space-y-2"> <div className="flex items-center gap-2 text-sm"> <div className="w-4 h-4 rounded-full border-2 bg-green-500 border-green-500 text-white flex items-center justify-center text-[10px]">✓</div> <span>Entry documentation</span> </div> <div className="flex items-center gap-2 text-sm"> <div className="w-4 h-4 rounded-full border-2 bg-green-500 border-green-500 text-white flex items-center justify-center text-[10px]">✓</div> <span>Weight verification</span> </div> <div className="flex items-center gap-2 text-sm"> <div className="w-4 h-4 rounded-full border-2 bg-green-500 border-green-500 text-white flex items-center justify-center text-[10px]">✓</div> <span>Visual inspection</span> </div> <div className="flex items-center gap-2 text-sm"> <div className="w-4 h-4 rounded-full border-2 border-muted-foreground/30 flex items-center justify-center text-[10px]" /> <span className="text-muted-foreground">Supervisor approval</span> </div> <div className="flex items-center gap-2 text-sm"> <div className="w-4 h-4 rounded-full border-2 border-muted-foreground/30 flex items-center justify-center text-[10px]" /> <span className="text-muted-foreground">Exit seal verification</span> </div> <Progress value={60} className="h-1.5 mt-2" /> <div className="text-xs text-muted-foreground text-right">3/5 complete</div> </CardContent> </Card>
Audit Trail
Every action in Certexi creates an immutable audit record:
| Field | Description |
|---|---|
timestamp | Precise UTC timestamp |
operator | Authenticated user who performed the action |
action | What was done (create, update, approve, reject) |
entity | What was affected (transport unit, slot, event) |
evidence | Associated photos, scans, readings |
hash | SHA-256 hash of the event bundle |
merkle_root | Daily Merkle tree root for batch verification |
Tamper Detection
The cryptographic chain ensures audit trail integrity:
- Each event is hashed individually (SHA-256)
- Daily events are combined into a Merkle tree
- Merkle roots are anchored via Flowhash Core
- Any modification to historical events breaks the hash chain
- Verification can be performed offline using the proof data
Compliance Reports
Automated Report Generation
Certexi generates compliance reports on demand or on schedule:
- Daily operations summary — Throughput, incidents, approvals
- Weekly compliance digest — Non-conformities, corrective actions, KPIs
- Monthly management review — Trend analysis, SLA compliance, risk assessment
- Annual audit package — Full evidence bundle for external auditors
Report Formats
- PDF with digital signatures
- CSV/Excel for data analysis
- JSON for system integration
- Structured archive (.zip) with evidence files
Incident Management
When non-conformities are detected:
- Detect — Automated alerts or manual reporting
- Record — Incident logged with severity, category, and evidence
- Investigate — Root cause analysis using the Time Machine
- Correct — Corrective action assigned and tracked
- Verify — Follow-up verification with evidence
- Close — Incident closed with lessons learned
Data Retention
Configurable retention policies per data category:
| Data Type | Default Retention | Configurable |
|---|---|---|
| Audit events | 7 years | Yes |
| Evidence photos | 5 years | Yes |
| CCTV recordings | 90 days | Yes |
| Transport unit records | 7 years | Yes |
| Operator activity logs | 2 years | Yes |
Legal Hold
Data subject to legal proceedings or regulatory investigation can be placed on legal hold, overriding normal retention policies.