4 Must Haves for an Extensible Platform
There was a time when vendors were limited on how they would price their product or service, and the customer would need to find a way to fit into that pricing “box.” Now customers demand a more personalized experience and expect their vendors to align billing models to meet those new and diverse requirements. Pricing, packaging, and structure (as-a-service, subscription, usage-based, etc.), and the ability to meet those varied expectations, are truly becoming competitive differentiators.
Innovative companies need a billing system that can evolve with expectations, the kind of solution only offered by a platform that can be customized to support all of their business processes and data requirements. For this reason, we’ve designed BillingPlatform as an extensible platform.
Just What Is an Extensible Platform?
Platform extensibility means that a user can extend a software platform without having to modify the original code base. So, users add to the base functionality, thereby offering new capabilities and outputs.
Traditional software architecture was developed for linear, single-use production. Much like an assembly line in a factory, capable of churning thousands of copies of the same product, such as an SUV. While effective, this method is not at all agile.
What if customer expectations change and drivers suddenly demand small, electric cars? The original factory behind SUV production must be scrapped for an entirely new one. Responding to shifting expectations is time-consuming, inefficient and expensive.
Software platforms are built for agile development. Rather than relying on a single system to produce everything, platforms are modular by nature—allowing the manufacturer to plug in other, more desired systems without reconfiguring the entire factory.
The base code for manufacturing stays, but the business extends manufacturing to adapt to new engine and body designs. If you can conceive it, a platform can help you create it and support automated business processes that reduce errors, save time, and increase customer satisfaction.
Extensibility in Action
As an example, compare the following solutions. Figure 1 shows the standard Manage Accounts configuration—Contract, Account Products, and Account Packages.
Now compare that to Figure 2, from one of our more advanced customer configurations. The solution in Figure 2 has additional objects created as part of the Accounts capabilities. These allow the customer to offer promotions and adjust rates within their accounts based on Events and Expenses.
A Recipe for Platform Extensibility
This kind of extensibility can only be achieved with some key platform capabilities:
- Extensible Data Model
- Equally Extensible User Interface
- Business Process Management (Workflows)
- Open Connectivity and Integration
Each of these elements, detailed below, allows the platform to be extended to support any need without modifying the original code.
Extensible Data Model
The customizable data model is the bedrock of our platform extensibility. The data model lies at the core of any business application. Think of the data model as the blueprint for a factory. The data model defines how data elements work together to achieve the processes that create the final product.
With extensible data models, the end-users can leverage a no-code environment to configure an unlimited number of objects, fields, and, relationships, defining business rules to support any monetization model. A billing solution with this type of architecture can be infinitely extended for easy and robust configuration of business rules, workflow, reports, dashboards, rating, invoicing, APIs, formulas, and even programming.
Returning to the customized menu above, now workflows and inventory items are objects managed within the Account menu. The solution was extended to maintain simple inventory elements that impact pricing and customer experience downstream. In this way, the company can adjust rates based on inventory.
Equally Extensible User Interface
An intuitive UI (user interface) is a critical part of extensibility. Too many solutions offer the promise of extensibility. But when it comes time to customize, you see behind the curtain and realize that only an experienced software developer is able to customize the billing system.
Without any coding knowledge, BillingPlatform allows average business users to define new objects and fields within our data model to be displayed in the UI. These customizations include new relationships, which can then be updated in near real-time from any external database.
Business Process Automation
A truly extensible platform should offer native workflow to support complete business process automation. In these platforms, changes to the data model are immediately accessible to workflow, formula-based rating, SOAP and REST API, reports, invoices,, validations, widgets, and bulk data load and extract tools.
Process automation unlocks a new level of business agility and efficiency without the headache of long development cycles or custom coding. With a true platform architecture, you can combine the benefits of our key platform features and optimize your business process management. This saves significant time and money while your competitors continue to do things the hard way.
With our rules-based workflow engine, you are able to tell BillingPlatform what to do and when to do it.
- Configure complex, automated workflows that involve multiple steps and multiple external data systems.
- Reduce manual reporting errors by extending your data model to dashboards and downstream finance applications.
- Create intuitive user interfaces that enhance your customers’ experiences, and proactively address issues that may arise in your billing cycle.
Returning to the customized solution shown above, the workflows offer the simple ability to notify a particular account if inventory items are getting low. Additionally, the billing solution can provide intelligence on customer response to dynamic price adjustments. Are they buying more when they’re notified the inventory is getting low? In addition, with artificial intelligence available as an external system, workflows can connect directly to deepen predictions.
Open Connectivity and Integration
The final, and equally important, capability of platform extensibility is openness. To smooth business processes, your billing solution must connect and integrate with multiple external systems. Leverage the API to connect key systems like SAP, Peoplesoft, NetSuite, and Salesforce.com. These connections should allow for input as well as output of data to create a seamless, efficient ecosystem that can flex for changes. Whether through custom built connectors or powerful APIs, you will streamline everything from sales to provisioning to accounting–dramatically reducing errors and revenue leaks along the way.
BillingPlatform has taken a unique approach to integration. The API leverages the application’s metadata, or data that defines data, to externalize the data model for database-style access using SOAP and REST protocols. This straightforward approach provides limitless integration capabilities to meet your business needs. Furthermore, any customizations made to the solution are immediately available in the API layer--meaning users can easily integrate custom objects to external systems for bi-directional configuration and data syncing.
Configuring the Billing Solution You Need
The core billing platform itself can be infinitely extended. This platform inter-operates with any data system you define, so it will never become outdated. It can always grow and be reconfigured within your specific organization without altering the platform’s core functionality.
The benefit is that you get a system that is always new and continually conforms to your way of doing business on a state-of-the-art infrastructure that can leverage today’s cloud ecosystem.
To discover more about extensibility from BillingPlatform read this case study to see how we enabled Markley to support a new line of business.