In this section we drill down deeper into some of the key systems that make up the quote-to-cash framework and specifically how m3ter fits within that context.
On the left side of the diagram we start with the CRM/ CPQ system where deals typically originate. Most medium to large B2B SaaS companies implement order management (over simple opportunity management - see Appendix A) as this facilitates a thorough understanding of what services the customer should be receiving and how much they have agreed to pay. It also better supports internal functions such as a deal desk as order management typically supports workflows, e.g deal review, and approval steps natively. In order to do this, the front office system needs to have enough visibility of the product catalog and pricing to support the quoting and ordering process and for many customers this is where they will manage the master data set. More detail on Salesforce and how it should be set up can be found in Appendix A.
In order for the metering & rating system to work, both account data and order data need to flow into it so that it can do the complex calculations based on what has been agreed with the customer. In rare cases, a customer may opt not to use their front office system for master product & pricing management and in these cases m3ter can be used as an alternative or it can ingest the pricing from an alternative service. The rating process can be run on a continuous basis which is important for both internal and customer reporting so that a customer, for example, can tell at any point in time what their current bill is running at or a finance team can see how their revenue is building over a period.
To the right of the horizontal axis is the back office system or ERP. This is the software typically used by a finance team to handle invoicing, revenue recognition, taxation and the reconciliation of accounts. ERP systems usually struggle with complex bill calculations and large data sets and this is what creates the initial need for a metering and rating system. The metering and rating platform handles all of the complex transactions and writes line items to invoices in the ERP allowing it to execute the billing function and issue invoices with the correct amounts.
Our recommendation is that invoicing should be done in the finance system (and not the metering and rating system). There are several reasons for this:
The one exception to this is Salesforce Revenue Cloud which aims to replicate the above characteristics in the Salesforce platform (why not? NetSuite has a full CRM and order management capability).
Medium to large B2B SaaS companies usually have more than one product which generates different usage data formats that convert in a highly variable way to product SKUs which need to be billed. Neither Sales CRM/CPQ platforms nor ERP or Finance platforms handle usage well or at scale - they are simply not intended for it. Usage data should be routed to a specialist metering and rating service for the purposes of attaching value and billing. Often the same data pipelines that are used to generate data for observability purposes can be re-used for this purpose also.
The metering and rating system is at the center of both the horizontal and vertical axes. To date, companies that bill their customers using anything but simple subscriptions have either used spreadsheets (which don’t scale well) or have had to build the metering and rating capability themselves. Many metering & rating specialists have emerged over recent years to meet this need. The key aspects of a good solution are:
Because various important data sets are spread across multiple systems, in order to develop a single end-to-end view of a business, it is recommended that a separate reporting stack is created. These stacks usually consist of data engineering solutions that facilitate capturing and transformation of the source data, storage in the form of a data warehouse and a front end reporting and dashboarding tool so that different teams can build the reporting they need to operate their business units. There are several motivations for creating a separate reporting stack: