Revenue — how this works
In the app: /revenue
How it works
Stripe webhooks post payment, refund, and payout events straight into a payments ledger. This page only reads that ledger — Today/MTD totals, the 30-day trend, and the row-by-row table below are never computed live from Stripe on page load.
Data source
src/lib/revenue/paymentsRepo.ts, populated by src/lib/revenue/stripeIngest.ts's Stripe webhook handler.
Troubleshooting
A number looks wrong or stale? Check /tools for Stripe's live/mocked status first — a mocked webhook means no new rows land here at all. If Stripe is live, compare a row's "View in Stripe ↗" link against the dashboard directly.
Vendors: stripe — check Tools for live/mocked status.
Who can see this: admin, closer