Introduction
I recently sat down to model the data for a payments + notification-feed
system: customers, projects, a double-entry ledger, PIX payouts, and a
WhatsApp delivery outbox. The kind of domain where one wrong column breaks an
invariant nobody notices until money goes missing.






