← Back to lessons|architecture
Passkeys not supported in this browser
Event Sourcing over CRUD for Audit Trails
Adopt Event Sourcing over CRUD for financial transaction audit compliance, using Kafka for immutable events and Postgres materialized views for reads.
Created 7/15/2026, 3:58:20 PM
Content
Decision: Replace standard CRUD in PostgreSQL with Event Sourcing for financial transaction audit compliance. Context: Compliance requires full history of transaction state changes. Alternatives: Database triggers rejected (no business context - triggers only see row changes without user intent). Adopted: Event Sourcing - immutable domain events in Kafka, materialized views in Postgres. Reference: Martin Fowler Event Sourcing Pattern article. Implementation: src/services/transactionService.ts (event producers), src/events/eventStore.ts (consumer/store logic).