ZoneBilling supports variable billing to handle scenarios when the quantity or amount to charge varies from one service period to the next. Common variable billing scenarios include:
- Utility Usage (Water, Electric)
- Active User Licenses (SaaS, applications that charge per number of users)
- Hourly billing (Professional Services)
ZoneBilling supports three usage types to capture this activity, making it easier to bill for variable billing scenarios.
Before you begin
- Determine if the Subscription Item uses a Rate Type with a variable component
- If so, determine which usage type (Count, Consumption, or Ad Hoc) best fits the use case before configuring supporting records.
Keep In Mind
- A scripted process within ZoneBilling performs an operation to “Rate” variable data. The “Rating” process allows Charges to be properly calculated for Subscription Items handling variable usage.
- Three out-of-the-box records are available for capturing usage data: ZAB Usage Data, ZAB Count Data, and ZAB Ad Hoc Data. However, any custom record may be configured and leveraged during the ‘Rating’ process instead. Additionally, searches of other native NetSuite or custom records may be used.
Usage Types
Determine whether Consumption, Count, or Ad Hoc usage should be employed before configuring supporting records. Data points on the Rate Plan Search Map will further dictate how Consumption, Count, or Ad Hoc usage data align to Charge periods on Subscription Items.
The following usage types may be used to capture variable usage activity:
Consumption
This usage type represents a single date (moment in time) in which a given product or service was consumed.
- Example: A Telecom Company charges clients based on the number of text messages sent
See Consumption Usage for more details.
Count
This usage type represents usage that is active over multiple periods until there is a change (e.g. Count Data can represent the number of active users for a SaaS product). As soon as a user is added or removed the Count Data changes.
- Example: A company leases a gym for its employees and is charged a monthly membership fee for each employee. Most charges are consistent until an employee leaves or a new employee is hired.
See Count Usage for more details.
Ad Hoc
Ad Hoc usage represents usage that doesn’t follow a particular charging or billing cadence. This usage type accommodates an on-demand billing model in which customers are charged and immediately billed for products or services used.
- Example: A streaming service allows customers to purchase movie rentals on demand. A customer can rent multiple movies on the same day, each is billed separately and immediately.
See Ad Hoc Usage for more details.
Consumption vs Count Usage Data
- Consumption Data records are only ‘Rated’ for the Charge Period that they fall within
- Count Data records are rated each Charge Period they are effective in
- Consumption Data records must be imported each Period
- Count Data records only need to be updated when a change occurs, such as the Quantity or End Date
Ad Hoc vs. other Usage Types
Consumption and Count Usage are designed for frequent and predictable usage activity. Both UsageIn progress, preview Types generate one placeholder Charge per Charge Period upon creation, defining the charge period pattern for future incoming usage.
With an Ad Hoc scenario, the Customer cannot determine their user’s behavior; they may use a service once in a year or every other month. Ad Hoc will not generate placeholder charge periods; Charges are only generated when usage is incurred. This helps reduce the number of records created and updated.
Ingesting & Transforming Usage Data
Variable usage is gathered and calculated through a series of record mappings to produce Charges.
The following records and scripted processes are required to support variable billing scenarios:
- Out-of-the-box Consumption, Count, or Ad Hoc Data records.
- Any record in NetSuite may be used to represent one of these usage types.
- Records that make up the ‘Rating Record Structure,’ which is a series of ZoneBilling records that map usage data to usage-based Subscription Items to be ‘Rated’:
- Saved Search
- Rate Plan Search Map
- Rate Plan
- Usage-based Subscription Item
- Execution of the rating process.
- ‘Rating’ is the process of calculating Charges for a Subscription Item with a variable component.
- A scripted process within ZoneBilling runs the operation to evaluate the quantity, rate, and/or amount before creating or updating Charge records.
- Rating occurs before Transactions are created to ensure customers are invoiced for the correct amount.