Features

Features decorate plans in Bunny's customer portal and are used for provisioning tenants in your platform.

Features are the feature flags or entitlements your product supports. In the Superdesk example, there are over a dozen features in total and each plan supports a different set of features as shown below.

Consider this example from our Superdesk sample company. Each with their own set of features.

Starter Business Enterprise
$100/user/year $200/user/year $300/user/year
5 agents 25 agents Unlimited agents
Ticketing Ticketing Ticketing
API API API
Reporting Reporting Reporting
Customer portal Customer portal Customer portal
  Skill-based routing Skill-based routing
  Social media integration Social media integration
  Automation Automation
    Voice calling
    Multilingual support
    SLAs

Whenever a new tenant is created, it must be initialized with a set features that tells the platform what the customer is allowed to do with the product. For example, if a customer signed up online for the Starter plan, the customer’s new tenant must be initialized with ticketing, API, reporting and customer portal.

Every time a subscription is updated, Bunny will send a new message to the platform, telling it what features the tenant now has.

Features kindsLink to Features kinds section

There are four different kinds of features:

  • Boolean – This simply means that plan has the feature
  • Feature group – Use this to group larger number of features in different sections
  • Quantity – Use this kind for features that have values that denote quantities.
  • Value – This means that when the feature is used on a plan it must also be provided with a value. For example, the feature support could have the values standard and premium.

If you are using Bunny to provision tenants in your platform, it is important that you use the quantity kind for quantities so that the value shows up in the right attribute in the JSON payload.

UnitsLink to Units section

Some features can also have a quantity. For example, if a product is priced by number of users, you would define a Quantity feature called User and turn on Is a chargable unit. This allows you to use the feature as a unit of measurement on product plan charges.

How many decimals a unit’s price has is set on each charge with Price decimals, not on the feature. See Charges.

If you are using Bunny’s SaaS Integration, units will also be used in the communication with the SaaS environment to set user limits, report usage etc.

Tracking usage with unitsLink to Tracking usage with units section

Features can be used to track usage in your platform. For example, your platform can send Bunny updates on how many users a customer has or how many text messages has been sent in a month and these updates can become the basis for usage-based billing.

You can also use feature to track other types of usage that may not be related to billing, but customer engagement. For example, a Learning Management Solution would want to track how many courses a customer has defined and how many courses are being attended each month. This could be handled by the features Courses Created and Courses Attended and be reported on in Bunny’s analytics.