Handle volume prices and surcharge with Price Calculation and SAP Subscription Billing
Welcome to this new blog post about Price Calculation!
Today, we are going to walk you through a specific use case that outlines how to work with Price Calculation, in combination with SAP Subscription Billing. We will also detail the configuration to be made on both sides so that you leave this post better knowing how the two services work together. Let’s go!
THE USE CASE
We will be working today with Artemis, a fictive as-a-service company which sells organic fertilizers on a monthly subscription base. The company offers different subscription plans depending on the number of liters of fertilizer needed by their customers. For each plan, a flat fee is applied per month, but Artemis’ customers can also flexibly request a few liters more on the top of their plan. In this case, another fee per extra liter is applied on top.
This results in the following price model:
|Plan||Flat fee per month||Cost per requested extra liter|
|80 liters||USD 250||USD 5|
|160 liters||USD 350||USD 5|
|320 liters||USD 500||USD 5|
|1300 liters||USD 1300||USD 5|
Let’s see now how this pricing will be configured and executed in our two solutions:
IN PRICE CALCULATION
This price table can be nicely implemented in a lookup table. For this, we will be setting up two types of price elements: “PLANNED” which is representing the chosen plan in the subscription, and “UNITS” which represents the real number of consumed units in a month.
“PLANNED” will be a single fixed fee, while “UNITS” will be a volume-based pricing condition, as followed: if the customer picks up the plan “Max_80” which means that 80 liters (l) of fertilizer are included in the subscription, then the first 80 units will not be computed (this is an included quantity). Above the value of 80 consumed units, the price is defined as a volume pricing of USD 5 per liter.
You may have also noticed an extra field named “plan” in the lookup table: it will be the determinant which will enable to choose the relevant pricing line in this table, depending on the plan which will be chosen by the customer in their subscription. We will see how to feed this attribute in the subscription of SAP Subscription Billing later in this post.
For now, this field, as any other field, must be defined in the field catalog before creating the lookup table, as followed:
The source of this field is external, as it will be fed in the customer subscription.
At the end of this process, the lookup table should look like this in your system:
To finalize the pricing logic on Price Calculation side, we can now create a price element specification, which will allow to search in the table for the correct price when the subscription is created, as below:
And to finish, the pricing scheme will link your pricing logic in Price Calculation and the rate plan in SAP Subscription Billing:
In this case, the pricing scheme has only one line as the chosen implementation for this example is made within one lookup table and one price element specification. But be aware that there are other ways you can define this pricing, with several look up tables (one for the fix fee, one for the extra cost, for example), and that you could have several price element specifications if you want to divide the different steps of computation of your pricing, or even add additional steps like an extra discount for a preferred customer. Price Calculation offers a lot of flexibility in this regard.
IN SAP SUBSCRIPTION BILLING
Now, let’s see how to use this configuration in SAP Subscription Billing!
We will first create the necessary attributes which will map to the fields in Price Calculation. We have three fields to map in this example:
- Two of them are rate elements: “UNITS” and “PLANNED”, which are of type “charge” and need to reference to the subscription as data source.
- The third one will be a custom reference: “plan”, to precise which plan was chosen by the customer on the subscription. To make sure your custom reference will make the link between the pricing logic and the subscription, we will create a so called “pricing field mapping”.
When this is done, we can start to create our rate plan template, and our product, making sure each of our rate plan elements (“UNITS” and “PLANNED”) are correctly mapped in the system. For this, we will choose the option “With Pricing Scheme” while creating our rate plan template. The configuration will look as followed:
When those two last steps are completed, we can now create our subscription, feeding the information necessary to this use case:
- What plan did the customer choose (for 80 l, 160 l, 320 l, … of fertilizer)
- And how much did the customer commit to consume at the end.
At subscription creation, the customer chooses the two parameters. We will continue this scenario assuming that the customer chooses the plan for 80 l, but wants an extra margin until 85l. This means the customer will be charged with the basic fee for 80l, and an extra fee of USD 25, for the extra 5l, each liter costing USD 5.
The subscription looks consequently as followed, and you can already see that the prices are displayed accordingly as the subscription app looks up the prices in Price Calculation:
Same as with Price Calculation: there are definitely other ways to configure this scenario on SAP Subscription Billing side. We choose to do it with two recurring elements to keep this example simple, but usage-based pricing is also a perfectly valid way to implement it too!
And that’s it! Now you know how Price Calculation and SAP Subscription Billing work together to provide a flexible yet easy way to configure subscription pricing and subscription management process in the cloud ☁️
That’s all for today, thank you for reading our blog post! We hope you enjoyed this tutorial (don’t hesitate to leave a “like” if this is the case) and are here to answer remarks or questions in the comment section.
To make sure you don’t miss the next post, follow the tag Price Calculation. And in the meantime, you can find out more about our solution in the information section below.
In case of questions, feel free to ask them in our Q&A section using the tag Price Calculation.
PM @ Price Calculation