Security & audit
Built to be examined.
A regulatory platform should welcome scrutiny. This page is the tour we give a bank's IT, risk, and audit teams, in the same words.
Tenant isolation
Every row of bank data carries its institution, and isolation is enforced by the database itself through PostgreSQL row-level security. Application code cannot opt out of it.
Immutable lineage
Each figure traces to the load, batch, and timestamp that produced it. Corrections supersede prior records; nothing is silently overwritten.
Reproducible returns
Sealed calculation runs are hashed on their input values. A past return can be regenerated exactly, figure by figure, in front of an examiner.
Maker-checker signing
Returns require a preparer and an approver, each signing under their own identity. Signed PDFs are certified so that any later change is detectable.
Encryption
TLS in transit and encryption at rest. Vendor credentials live in a dedicated encrypted vault, retrieved per use and never echoed back.
Access control
Role-based access with a read-only examiner role for supervision. Every mutation carries an audit event with the actor and a stated reason.