Every admin mutation writes a row to the audit log — event edits, tier price changes, promo code creation, branding updates, staff logins. Filter by user, action, subject, date range. See the field-level diff. The line item enterprise auditors, legal teams and DPDP compliance reviews ask for.
event.updated, tier.deleted, promocode.created. Namespaced by subject type + verb.No manual instrumentation. Add or remove records on any of these models and the log gets a row.
[REDACTED] before write.Client runs a paid conference. Ticket goes live at ₹5,000. Sunday evening someone opens the admin, edits the price to ₹500 (missed a zero), doesn't notice. By Monday 9am, 47 tickets have sold at ₹500. Revenue loss: ₹2.1 lakh. The founder wants to know: who did this?
Without an audit log the answer is a WhatsApp thread. "Was it you?" "No, but I logged in to check the branding on Saturday." "Rohit had the admin open yesterday too." Nobody remembers. Nobody can prove anything. The mistake gets absorbed as a lesson learned. Whoever did it never gets pulled aside.
With an audit log, the answer is a filter. Open Audit Log → filter by tier.updated → sort by time → there's the row. "Rohit, 18 Aug 21:47, changed price from 5000 to 500." Two-minute investigation, one clear conversation, no repeat mistake.
Also: enterprise buyers and legal auditors ask for this by name. "Do you have an audit trail?" is a yes-or-no gate. Now it's a yes.
[REDACTED] in the diff.