What is a subscription?
Last updated
Was this helpful?
Last updated
Was this helpful?
Enterprise subscriptions are very complex compared to B2C subscriptions, such as gym memberships or online streaming services, which cost a simple flat fee every month.
Not only are enterprise deals highly negotiated, but once the deal is closed, the subscription will most likely undergo a number of changes throughout its lifetime; different quantities, add-ons, renewals etc.
The timeline below shows how a customer starts with an Enterprise product with 1000 users, which grows to 1500 and then also subscribes to a Advanced API plan, which also grows in clients.
A subscription is a relationship between an account and a product plan.
An account can subscribe to multiple different product plans on different products. Bunny's quote builder helps the user co-term the subscriptions so the customer doesn't drown in invoices.
The only way a subscription can be created or updated is via a quote. This is a fundamental principle in Bunny and the quotes act as a transaction history of what happened to an account's subscriptions.
All subscriptions are based on products in the product catalog. Quoting the mechanism that copies charges from the product catalog to an account's subscriptions. Consider the diagram below.
The solid lines in the diagram show how the objects are related to each other and the dotted lines show how data is copied from products to quotes to subscriptions. If you are a developer working on subscriptions via Bunny's API, this is very important to understand. If you are merely going to use Bunny's user interface, just appreciate that we have made this complex process simple.
It's important to note that charges are actually copied to a quote and then copied onto the account's subscriptions. This means that if you subsequently make price changes in the product catalog, they will not automatically affect accounts subscribing to that product. The reason for this is that each account is a separate contract with the customer and you don't want to just bulk change contracts across your customer base.
By default, price override is performed on quotes, but for self-service subscriptions where customers will always get the latest pricing, price override is disabled. This causes subscriptions to be updated with the latest pricing from the product catalog when they are auto-renewed.