Configuration ************* What is configuration ===================== Configuration is the standard set of rules that are used in a business model. The default pricing, packaging and terms for a product are defined and codified within the configuration workflow. Configuration is commonly described as "pricing and packaging", but this nomenclature does not fully describe the workflow. All upfront rules that are "configured" should be included in this process. Accounting, billing and other administrative tasks require additional information to accomplish their respective objectives. These types of inputs are added during the configuration workflow and ultimately make it much simpler for administrative functions to operate. Why is configuration important? =============================== Standardization is useful for automation. Configuration provides these standards to enable business model automation. It's possible to build a business model without configuration, but this is only practical at a smaller scale. Without configuration each contract would have a bespoke representation in the model and changes would be updated by hand. Many small businesses will operate this way, since keeping track of 5-10 customers is simple. At some point (> 50 customers) this operation will require constant oversight to prevent administrative mistakes from occurring. This is also when configuration becomes important. By creating a source of truth for rules around products, pricing, invoicing, etc., a company can begin to automate all the processes associated with the business model. Onboarding a new customer? Use the standard product packaging. Need to make a change to pricing? Update the pricing definition once and have it flow to all customers. Preparing an investor presentation? Pull revenue by standardized products and packaging. With solid and robust configuration in place, automation becomes straightforward to apply and maintain. |image0| How is configuration modeled? ============================= Products, prices and pricebooks are the foundational data models that make up configuration. A product is the representation of what a business is selling. A price is the representation of the value of a product. A pricebook is the representation of a package of products at a specific price point. |image1| In the example above, there are two products being sold. One pricebook sells both and the other sells just one. Products can have many prices associated with them, but a price is only associated with a single product. Each pricebook has its own separate context, which allows for different pricing schemes. This often happens when companies package multiple products together, like a 'buy one, get one half off' type deal. So a pricebook can have multiple prices, each associated with a product, but a price can only have one pricebook. |image2| Using the Wikipedia example, we can show how a small amount of configuration can model thousands of customers. In the demonstration below we only show configuration associated with the "Standard" pricebook. This pricebook is connected to the 30,000+ customers and can be thought of as the pricing and packaging source of truth for this audience. .. csv-table:: "Standard" Products :file: /_static/ex_tables/ex_1_1.csv :class: bmodel-table :header-rows: 1 .. csv-table:: "Standard" Pricebook, Prices :file: /_static/ex_tables/ex_1_2.csv :class: bmodel-table :header-rows: 1 .. |image0| image:: /_static/images/configuration/source_of_truth_scaling.png .. |image1| image:: /_static/images/configuration/primative_models.png :width: 500px .. |image2| image:: /_static/images/configuration/primative_models_connected.png :width: 500px .. toctree:: :hidden: packaging/index pricing/index