Components

Components allow you to introduce additional “line items” to your Products that are often expressed as “add-ons”, upsold features, or pay-per-use items. See the blog post about quantity-based components that introduces the Components feature in general.

>

Components are defined at the Product Family level, and are therefore available to all Products within the Family.

Quantity-Based and On/Off Components associated with a Subscription are billed in advance along with the product, while Metered Component usage is billed in arrears. See Setting Component Allocations for more information.

Creating Components

To create a component:

  • Select the Products tab
  • Select “Create Component”
  • Choose the type of component you’d like to create
  • Please read-on to understand how to create components and which component to choose for your application

After you’ve selected which component you’d like to create, you’ll need to enter some descriptive information about the component. Please be as specific as possible. This data will flow through to subscriber statements.

Component Name

Give a name to your component that is compact and suitable for use on statements. The length of this field is purposefully restricted.

Unit Name

Specify what the component is measured in. This entry should be in lowercase and singular form. Chargify may elect to properly pluralize this unit name when constructing reports.

Description

Give your subscribers an exact idea of what component they are purchasing. Provide as much detail, as this information will be displayed on the Public Signup Page, versus the statement.

Price Points

Component price points allows you to charge customers different amounts for the same component. You will be able to define multiple prices and pricing schemes, and then choose which price point to use for each subscription.

Alternately, keep it simple and have just one price point for each component.

Example:

You sell a widget for $1.00 per unit, but for a segment of your customers you want to sell it for $2.00 or $3.00 per unit.

In this case you would have three price points:

  • A default price point for $1.00 per unit.
  • A second price point for $2.00 per unit.
  • A third price point for $3.00 per unit.

All new subscriptions will use the $1.00 per unit default pricing, unless you specify a different price point. You can change the price point associated with a subscription at anytime.

Price Point Webinar

During the initial release of price points, Chargify presented the user base with an informative webinar. This webinar covers many aspect of how to use, implement and edit price points.

Single Price Point

By default, the component pricing editor will create one, static, price point for your component. If you only have one price for a component, enter the details required and save your component.

Multiple Price Points

Create individual pricing schemes for each individual price point by adding another price point to your pricing setup:

As an example, you may have:

  • Price Point AAA:
    • Pricing Scheme: Per Unit
    • Unit Price: $10.00
  • Price Point BBB:
    • Pricing Scheme: Volume
    • Quantities 1 - 100: $50
    • Quantities 101 - 200: $25

The above setup is expressed in the sample image below:

Default Price Point

After you’ve set up multiple price points and saved your work, you may now adjust which price point is the default for the component. Let’s take a look at the example below:

As you can see, the “MSRP Helmet” is the default price point. For all new subscribers, this will be the default product they are charged in your Site.

To change the default price point for a subscription, simply click on the gear icon of the price point you’d like to change. Select make default. This will transition the selected price point to the default price point.

The result will display the new price point as the default. You can easily change the default price point for your components. Please be aware this is a global change and will affect only new subscribers to the component.

Moving Subscriptions Between Price Points

When editing a component, you can also move subscriptions between price points.

Locking Subscriptions into Component Price Points

If you’re using multiple price points, you may want to lock all existing subscriptions that are not currently using a component into a price point to ensure that any possible future component usage gets charged at a specific price. An example scenario would be a component price increase: you want to increase the price of a component for any new subscriptions, but ensure that all existing subscriptions get the original component price (if ever used).

Subscriptions can be locked into a price point from the component edit page. If any subscriptions exist that are not currently using the component, a ‘Lock Subscriptions’ option will be available for each price point.

Archive / Unarchive a Price Point

At any time, you can archive a price point, as long as it isn’t the default price point.

Archived price points can be viewed by toggling them in the UI, and can be unarchived from the dropdown menu.

User Access

Define whether or not to allow a user to make updates to the component amount via the Billing Portal

Tax Settings

Define whether or not the component is subject to taxes.

Tax Type

Select or fill in the appropriate tax for the type of component offered. This is especially important when using the Avalara service to tax based on locale. If a tax type is not specified, Chargify will use the Product’s tax code to determine the tax rate for component charges.

If you’re not sure which Avalara tax code relates to your component, you can click the ‘View List of Tax Codes’ link to view Avalara’s tax code search page.

Editing Components

Once you have created a Component, it will appear under the Product Family on the Products tab. You can make changes to the component by clicking the ‘Edit’ link

Recurring period for components

All components follow the same recurring period as the product that your Subscriber has purchased. For example, if you have a Subscriber that has purchased a product that has a recurring period of 1 month, the component applied to that Subscription will be charged every month.

This also applies to products that are annual, as well. If you have a product that has a recurring period of 12 months, charges for the component will be assessed annually as well.

Trial periods and components

Please pay close attention to when you add your components to a subscription. The moment when you add a component to a subscription can result in two different behaviours outlined below:

  • If product has trial, components added at time of signup are not charged. These will be charged at the time of the renewal. This will be the product cost + component cost.

  • If the component allocation is done during the trial period, after signup, the charges assessed will follow the pricing scheme is selected with the component allocation like normal.

Components & Product Families

Components are defined on the Product Family level, and are available to all Products within the Family. To create any Component for a Product Family, start on the “Products” tab and click “Create a Component”.

Next, you’ll be able to choose what type of component to create.

If you create a product in "Product Family A", it will not be available in "Product Family B". You must recreate the component in each Product Family to make it available across Product Families.

Setting Component allocations on Subscriptions

Once a Component has been defined for a Product Family, any Subscription to a Product within that Family may have usage or allocation data reported in order to assess charges for them at the end of the period.

For more information, please see Setting Component Allocations.

Metered Components

The difference between the two is that a Metered Component will reset to 0 at the end of the Billing Period and a Quantity Based Component will not. This Billing Period is defined at the Product level. So for example, if you have a Product that bills every 3 months, any Component you attach to that Product will bill every 3 months as well.

Metered components are used to bill for any type of unit that resets to 0 at the end of the billing period (think daily Google Awords clicks or monthly cell phone minutes). This is most commonly associated with Usage Based Billing, billing for overages, and much more.

For Metered Components, you tell us every time one of your Customers uses some unit or units of your “widgets”. At the end of the billing period, Chargify will bill your customer for the total number of widgets used, and then we will reset the widget count to zero and the whole process starts over for the new billing period.

Note that this is different from Quantity-based components, which DO NOT reset to zero at the start of every billing period. If you want to bill for a quantity of something that does not change unless you change it, then you want Quantity Components, instead.

Some examples:

  • An email gateway provides 1000 credits per period, but allows you to send over your credit limit at a cost of $0.10 per email per period
  • A hosting company that charges for hours of compute time at a certain cost per hour
  • Bill for Daily Google Adwords Clicks
  • Bill in arrears for Monthly Cell Phone Minutes
  • Bill for any type of Usage
  • Bill for Overages

Quantity Based Components

Quantity-based components are used to bill for the number of some unit (think monthly Software User Licenses or the number of pairs of socks in a box-a-month club). This is most commonly associated with billing for user licenses, number of users, number of employees, etc.

Each “widget” that you’ve reported to us as being in use is assumed to remain in use by that Customer until some future change. In other words, the quantity allocated does NOT reset to 0 at the end of the billing period. In contrast, Metered-usage component usages DO reset to 0 at the end of the period.

Common Examples

  • Bill for the number of User Licenses
  • Bill for the number of (fill in the blank)
  • IP Addresses – say your basic service offers 1 custom IP address for free, and extras can be purchased for $1 each
  • Extra Projects – say your project management service allows users to purchase extra “projects” a la carte for $5/each/month.
  • Software seats that cost $100/each when you buy 1-5, $90/each when you buy 6-10, etc.
  • Charge flat fees based on a number of customers:
    • 0-50 customers = $0
    • 51-500 = $49
    • etc

On/Off Components

On/Off components are used for any flat fee, recurring add on (think $99/month for tech support or a flat add on shipping fee).

Common Examples

  • Adding $5/mo for Shipping
  • Adding $100/mo for Tech Support
  • A web app offers an SSL connection upgrade at $5/month

An On/Off Component consists of 6 pieces of information:

  • Name: The name of the Component. i.e. Text Messages
  • Description A description for the component that will be displayed to the user on the hosted signup page (if enabled below).
  • Price: The amount the customer will be charged per unit
  • User Access: Whether or not to allow a subscriber to update this component in the Billing Portal
  • Tax Settings Is the component subject to taxes?
  • Public Signup Settings Which Publice Signup Pages should this component be displayed on?

Once you have created an On/Off Component, it will appear under the Product Family on the Products tab. You can make changes to the component by clicking the ‘Edit’ link.

Pricing Schemes Explained

The following information will help you determine which Pricing Scheme is correct for your Component.

  • Per Unit: Charge the same amount per unit
  • Tiered: Charge a different per unit price
  • Volume: Charge a different per unit price, but the price per unit for all units is determined by the prevailing price based on the allocated quantity
  • Stairstep: Charge based on a range

We’ll use the same bracket information in the examples below to indicate how pricing can vary using different schemes.

In order to create a Tiered, Volume, or Stairstep pricing scheme, you must define brackets.

Price Bracket Rules

  • Brackets may not overlap in quantity
  • Gaps in quantity are not allowed; however the lowest bracket need not start at 1
  • Defining Infinity: One bracket with a blank “ending quantity” is allowed – a blank value here indicates an unbounded quantity (∞)
  • Per-Unit or Per-Bracket: Prices should be given as “per unit” for per-unit, tiered, and volume pricing schemes. Prices for the stairstep pricing scheme are given as a cost for the entire bracket.

Per Unit Pricing

Simple enough. Enter a cost per unit and you’re done.

In a per-unit pricing scheme, prices are defined as per-unit costs, and all units cost the same. Thus, only 1 price bracket may be defined. If you define a component for “IP Addresses” that cost $1/each/period and a customer buys 3, then a $3 charge would be added at the end of the period.

The cost per unit can go up to 4 decimal points.

Tiered Pricing

In the tiered pricing scheme, multiple price brackets define the prices at different quantity levels. Prices are given on a per-unit basis. Your customers will pay the defined price per unit for each allocated unit. An example can illustrate this the best. Say you allow your customers to purchase extra widgets to augment their monthly plan. The pricing structure is defined as follows:

Starting quantity Ending quantity Price Each
1 10 $2
11 20 $1

If a customer buys 10 units, they will pay $2 per unit, for a total of $20.

If a customer buys 20 units, they will pay $2 each for the first 10 units, plus $1 each for the next 10 units, for a total of $30 (10 x $2 + 10 x $1).

Volume Pricing

In the volume pricing scheme, multiple price brackets define the prices at different quantity levels, much like in the tiered scheme. However, unlike the tiered scheme, the price per unit for all units is determined by the prevailing price for the allocated quantity. So, taking the pricing setup from the earlier example:

Starting quantity Ending quantity Price Each
1 10 $2
11 20 $1

If a customer buys 10 units, they will pay $2 per unit, for a total of $20.

If a customer buys 20 units, they will pay $1 per unit for all units, for a total of $20.

Stairstep Pricing

In the stairstep pricing scheme, multiple price brackets are defined, but the pricing is given as a total cost for the whole bracket instead of per unit costs. This is how Chargify itself works.

Starting quantity Ending quantity Price Each
1 10 $10
11 20 $20

If 10 units are allocated (i.e. 10 paying customers), then the cost would be $10 total for this component.

If 20 units are allocated, then the cost would be $20 total for this component.

Appying Proration

Proration and it’s full affects on subscriptions is covered in full detail here.

You can prorate the cost of components that are added during a billing period, and Chargify will calculate the proration down to the second. For example, a SaaS company may sell user licenses at $10/each, and if a license is added exactly half way through the month, they can charge a prorated cost of $5.

  • Go to the Settings Tab
  • Click “Components”
  • Choose your default component proration. Reference the “At Time of Change” and “At End of Period” to determine what each type of proration means. These prorations apply to quantity and on/off components. (They do not apply to metered components).

Quantity Settings

Quantity & Metered component allocations are represented as whole numbers by default (i.e. 5 Licenses). Checking ‘Allow fractional quantities’ setting will allow you to allocate partial quantities (i.e. 4.5 Minutes). API representations of this component will return a decimal instead of an integer for the quantity values

Display on Public Signup Pages

To display a component on a particular Public Signup Page, you must configure this on the individual signup page itself. For more information please see our article here.

The function to display a component on a Public Signup Page has now moved to the individual Public Signup Page. It was formerly an option to display a component on a particular component, but has since been relocated.

Archiving a Component

You can archive a component if you no longer wish it to be applied to new Subscriptions. Customers who are currently subscribed to a component will not be affected.

Step 1. Locate the component you wish to archive.

Step 2. Select ‘Archive’.

Step 3. You’ll be presented with a simple warning to ensure you understand the implications of archival.

To unarchive a component, simply locate the component under “Archived Items” and select unarchive to make the component available for purchase again.