Products
Usage, fixed and subscription products, and how they map to rates.
A product is one line item on an invoice. Its name is what your customer sees. A product has no price of its own: prices live on rate cards.
Metronome's reference: Create a product · Update a product · Archive a product. These pages are the source of truth for every field; metro's page covers how metro handles it. What metro wraps, endpoint by endpoint: Metronome API coverage.
Types
| Type | What it bills | Needs |
|---|---|---|
USAGE | A billable metric's quantity | billable_metric_id |
SUBSCRIPTION | A recurring charge per unit, usually seats | A SUBSCRIPTION rate with billing_frequency |
FIXED | A one-off or scheduled amount | Priced on the commit or scheduled charge that uses it |
COMPOSITE | A percentage of other products | composite_product_ids or composite_tags |
PROFESSIONAL_SERVICE | Services | Enabled per tenant |
How it connects
Rates reference product_id. Commits, credits, scheduled charges and overrides reference product_id, or match product tags through applicable_product_tags.
Gotchas
- A product's
typecan't change. To switch, archive it, create a new one, and re-point everything that used it. - Updates are scheduled at an on-the-hour
starting_at. Updatingtagsreplaces the list. products/getreturnsdata.currentanddata.initial; there is no top-leveldata.name.- Archiving a product only blocks new rates. Existing entitled rates keep billing, and there is no remove-rate endpoint. Close rates with
entitled: falsefirst. - Metronome doesn't stop two entitled products on one rate card from using the same metric. If that happens, every event bills twice.
How metro handles it
| Command | Does |
|---|---|
metro product inspect --product-id <id> --sandbox --plan | A read plan for one product |
metro product retire preview --file retire.json --sandbox | Offline preview that closes rates with entitled: false and price: 0 before any archive |
metro ratecard create preflight | Checks every product exists, isn't archived, and that a SUBSCRIPTION rate points at a SUBSCRIPTION product |
Metronome docs: Create a product.