CloudBilling is a generic Billing Engine that reliably provides you with accurate invoices calculated in record time, for the most complex billing problems, whatever your business or industry.
At CloudBilling's core is a powerful engine that takes the purchasing information for your Customers, and, using a unique and completely flexible Pricing Rules system, calculates and generates accurate invoices in whatever outputs your business needs. Additionally, unlike most other Billing systems that only calculate invoices at the end of predefined billing periods, CloudBilling will constantly provide you with up to date billing information throughout the lifecycle of each of your customers' invoices. This provides a deep well of insight that is customisable to your specific business needs.
Your customers purchase services and products from your business. As soon as CloudBilling receives the information of these purchases, calculations are able to be performed, which means that you are able to gain immediate insight into how the bills are progressing for the current period. As new information is received each day (such as new or updated purchases), so too are the relevant invoices updated. This means no more waiting until the end of the month to find out what your expected revenue will be!
How do these calculations work and how do you set it up to reflect your unique business's offerings? In order to understand a little more about several key concepts at play in each invoice calculation, the key components of the engine are introduced:
Clustering in CloudBilling is the process of grouping and categorising similar items. The result of this is that a cluster can be used in the system as a synonym for all items that are part of that collection. In CloudBilling, clustering is used to categorise Products, and Customers.
The outcome is a "tree" or "taxonomy" of Products or Customers, which is used extensively in conjunction with the Pricing Rules for flexible billing possibilities. Furthermore, it allows for more intuitive functionality that requires dealing with several related items at once (such as searching for data, applying Invoice Transformations or Messaging to specific groups of Customers, and so on).
Customers in CloudBilling are, quite simply, the customers of your business. For the most part, the information stored about a Customer is focused on what is actually needed for Invoicing. So, apart from billing "Settings" (such as how often you would like to invoice this customer), you are able to store information that needs to appear on the Invoice (such as the company name, billing address, company tax number, etc).
Purchases in CloudBilling reflect any kind of product or service that you need to charge your customers for. Depending on your business and industry, this could be anything from a contract fee, subscription, or recurring purchase, usage of one of your products or services, a once-off admin or setup fee, or even the purchase of a physical product. A Purchase needs to include a few key pieces of information, including:
In most cases, Purchases are fed to the CloudBilling Public API, directly from your systems.
To build up your business's pricing model, you will need to create various Pricing Rules. These rules are linked to both a Product Cluster and a Customer Cluster, which allows for simple rules based on combinations of products and customers, both individually and at a group level. Rules are completely modular in design and there is no limit to how many rules are created, against which cluster combinations, and in what order.
Pricing Rules primarily deal with calculating the price that will be charged to your end customer, on a particular invoice, but they are also used for Cost determination, and some basic Invoice formatting (such as whether they should appear on the invoice at all, and if so, the labels to use on the invoice, the order in which they appear, etc.).
Pricing Rules are extremely flexible - learn more about them here...
Invoices are the result of the combination of all the Pricing Rule calculations and are the primary output of CloudBilling. An Invoice is specific to a Customer and to a period (as defined by that customer's billing settings). There are several possible ways to represent and distribute these calculated Invoices, depending on your needs. Invoices can be "transformed" using our Invoice Transformations module, which you can use to create, for example, a PDF invoice completely customised according to your brand, and then send using the Email module. If you use accounting or ERP systems, you can also send individual invoices (or a combined "General Ledger" output, for example) to these other systems, according to your needs.