entitlement
to true
for the corresponding subscription rate (for example, Good - Monthly).
Use the contract to set quantity, proration behavior, and collection behavior: in-advance or in-arrears.
Metronome doesn’t distinguish between types of subscription, such as a recurring platform fee or a seat-based subscription. quantity
defines how many subscriptions a customer has. Most commonly, this models how many seats a customer is entitled to.
flat
rate.price
and billing_frequency
.entitlement
state. If you have more than one subscription rate on your rate card, Metronome recommends defaulting them to false
and enabling them when provisioning a contract.rate-cards/addRate
to add subscription products to a rate card:
true
for the given rate AND provide a subscription config for Metronome to invoice for the subscription.billing_frequency
and the product_id
given that a single product_id
may map to multiple rates.
If necessary, override the relevant subscription rate to true
for Metronome to invoice for that rate.
If you want to issue a discount, include that using the override functionality.
subscriptions
config on the create contract call. Specify:
subscription_rate
Similar to overrides, specify which subscription rate on your rate card this config applies to using the billing_frequency
and product_id
.
collection_schedule
Either advance
or arrears
.
initial_quantity
The current quantity for the subscription. For seats, this is the initial seat count. For a platform license, this is likely just 1
.
proration
Define whether to prorate for mid-period quantity changes and whether mid-period changes should invoice immediately or on the next billing cycle.
/contracts/create
to create a new contract with a subscription:
add_subscription
action on the edit contract endpoint. Make sure the entitlement
for the relevant subscription rate is also set to true
.
update_subscription
action on the edit contract endpoint. Either pass the new total count through quantity
or the difference between the previous count through quantity_delta
. Updates scheduled with the same starting_at
are applied in the order they are submitted in. Quantity changes are invoiced based on the proration settings in the subscription config on the contract.
This call shows an example of using /contracts/edit
to change a subscription seat count:
transition
object. Set type
to renewal
.