Revvly
Docs
Worked example

Meet Acme Corp.

Follow one fictional customer from signup through their first expansion. Every concept in the docs shows up exactly once.

A worked example

Meet Acme Corp.

A fictional customer we follow through the whole flow.

  1. 01
    The Tenant
    You — 'Acme SaaS' — run your subscription business on Revvly in USD.
  2. 02
    The Region
    You've set up a 'US' region with USD as its default currency and CAD as a supported alternate.
  3. 03
    The Meter
    You've defined a 'seat' Meter — the quantity carries forward between periods and is billed on the highest value observed, so customers are charged on their peak seat count in the period.
  4. 04
    The Variable Component
    On top of 'seat' you publish a flat-rate Variable Component v1: $5 per seat per month, 10 included for any subscription that bundles it.
  5. 05
    The Catalog
    You compose an 'Analytics Module' (pinning the seats component v1) and a 'Professional Bundle' (pinning Analytics Module v1 plus a 'priority-support' flag).
  6. 06
    The Price
    The Professional Bundle resolves to $49 USD / month from a Global default Variable Component Price, with seats above 10 priced at the flat rate.
  7. 07
    The Customer
    Acme Corp signs up — a Client in the US region.
  8. 08
    The Subscription
    They subscribe to the Professional Bundle v1, monthly, starting April 23. The subscription pins Bundle Professional v1 and Analytics Module v1. A CREATED event fires: +$49 MRR.
  9. 09
    The Usage
    Two weeks in, Acme reaches 15 active seats. Subscription Variable Usage records peak=15. The next invoice will include 5 × $5 = $25 in overage seats.
  10. 10
    The Expansion
    Acme upgrades to Bundle Professional v2 (a new published version of the bundle). An Expansion is recorded with a prorated charge of $18.33. An EXPANDED event fires: +$25 MRR.
  11. 11
    The Private Deal
    Mid-year, you negotiate Acme down to $3 per seat. A Custom Pricing Agreement targets the seats component, overrides the unit price axis, and takes effect at their next renewal.
  12. 12
    The Discount
    To sweeten the deal further, you apply a 10% discount on the base price for the next three renewals — previewed against the upcoming invoice before saving. It stacks with nothing else, so the Best-wins stacking mode is moot for now.
  13. 13
    The Invoice
    Next cycle, Revvly issues invoice ACME-00001 for $74 — base plan plus seat overage. Pending → Paid moves the receivable through Finance.
  14. 14
    The Renewal
    Thirty days before the anniversary, Acme appears in the Renewal queue. You approve the renewal action; at the boundary Revvly applies the pending Custom Pricing Agreement, decrements the discount's remaining renewals, issues the renewal invoice, and writes a RENEWED lifecycle event.