Usage, Invoices, and Cancellation
Define the billable event, event time, billing boundary, correction rules, and treatment of late-arriving usage.
How to apply it
Store immutable usage events with tenant, metric, quantity, timestamp, and idempotency key. Snapshot invoice prices and line items. Define proration, refunds, tax handling, failed payments, cancellation timing, data access, and deletion schedules.
Worked example
A unique organization-and-event key prevents retrying the same usage event from double-counting it.
Common mistakes to avoid
Incrementing counters without auditability or silently changing the meaning of a billable unit.
Practice task
Implement this concept in the capstone. Add one positive test, one negative or failure-path test, and a short note explaining the trade-off you chose.
- Define the billable event, event time, billing boundary, correction rules, and treatment of late-arriving usage.
- Store immutable usage events with tenant, metric, quantity, timestamp, and idempotency key.
What is the strongest production practice for Usage, Invoices, and Cancellation?