Price Models

← Billing Automation

Depending on your business and the nature of your products, you can set up dedicated pricing strategies. JustOn provides a series of billing settings for items, which allow you to model virtually any charge type for your products.

This article illustrates a number of common pricing models and their implementation in JustOn:

Per-Unit Pricing

Per-unit pricing represents the basic way for billing products: The items have a price of the type Default, which becomes the unit price in the invoice line items. The line item subtotals are calculated based on their quantity multiplied by the per-unit price.

Per-unit pricing can be used with one-time, recurring or transactional (usage-based) items.

Flat-Fee Pricing

Flat-fee pricing is even simpler: The amount to charge is a single price of the type Flat. The item's quantity is always assumed as 1, and consequently, the line item's subtotal equals the configured flat price.

That is, the flat price is a fixed amount, which is typically applied to one-time or recurring items.

Volume Pricing

With volume pricing, the per-unit price depends on the quantity (or "purchased volume"). To support this scenario, you create price tiers for an item – that is, you define quantity ranges and a price for each. Like this:

Tier Quantity Price Type
A 10 2,50 Default
B 20 2,40 Default
C 30 2,30 Default
D 2,20 Default

Now assume a customer purchases 25 units of this item: The item would be invoiced with 2,30 per unit (according to the tier C with the quantity range 21-30), with a subtotal of

25 * 2,30 = 57,50

Volume pricing can be used with one-time, recurring or transactional (usage-based) items.

With usage-based items, you can even add another quantity layer to your volume-based billing scenario. In addition to the standard quantity, usage-based items can hold a price tier quantity, which determines the price tier allocation but is not used to calculate an item's subtotal. When setting up usage data billing, you can configure the usage data source object to determine the price tier quantity – for example, multiplying the standard quantity with a specific factor or accumulating additional consumptions. This would allow to have group orderers or some privileged customers benefit from lower prices.

Let us extend the example above: There is a group orderer who purchases 25 units of the item. This would allocate tier C with 2,30 per unit. The price tier quantity, however, is set up to accumulate the purchases of other group members, and now yields 45. That is, tier D applies, and the item is billed with 2,20 instead of 2,30 per unit:

25 * 2,20 = 55

Tiered Pricing

With tiered pricing, the per-unit price also depends on the quantity, which is defined in price tiers. As opposed to the volume model, tiered pricing accumulates the quantities from the successive tiers when calculating the charge. To this end, you set the option Split Quantity for each quantity/price range.

Tier Quantity Price Type Split Quantity
A 10 2,50 Default
B 20 2,40 Default
C 30 2,30 Default
D 2,20 Default

In this case, if a customer purchases 25 units of this item, the quantity also falls into tier C, but calculation would include the pricing of tier A + tier B + the remaining units in tier C, like

10 * 2,50 + 10 * 2,40 + 5 * 2,30 = 60,50

Tiered pricing can be used with one-time, recurring or transactional (usage-based) items.

Stair Step Pricing

For stair-step pricing, you also define price tiers – quantity ranges and a price for each. But instead of a per-unit price (of the type Default), you assign a flat price to each tier.

Tier Quantity Price Type
A 10 25 Flat
B 20 45 Flat
C 30 70 Flat
D 100 Flat

Now if a customer purchases 5 units of this item, tier A applies: a flat charge of 25,00. If a customer buys 25 units, the item is billed as per tier C with a flat 70,00.

Stair-step pricing can be used with one-time, recurring or transactional (usage-based) items.

Overage Pricing

Overage pricing is a typical model for transactional (usage-based) items. It is usually combined with a flat recurring amount. The fixed amount includes a certain quantity of units, and any quantity that exceeds the included is billed on top on a per-unit base.

To model this scenario, you create price tiers with the Split Quantity option set for the first quantity/price bracket:

Tier Quantity Price Type Split Quantity
A 100 49,95 Flat
B 0,50 Default

This would charge always the base price, irrespective of the actual usage. The base price includes up to 100 units, and any additionally consumed units are charged separately.

Minimum Fee Pricing

Certain business models require invoicing a minimum fee, usually on a monthly base, irrespective of the actually incurred costs.

With JustOn, you can put such scenarios into practice as follows: You create a subscription item with the billing type Minimum Fee. The price of this item represents your base charge. The subscription items that you intend to charge up against this minimum, like usage data items, for example, must be marked as included accordingly.

Now if the sum of the included items is lower than or equal to the minimum price, only the minimum fee item shows up on the invoice as a single invoice line item. If, however, the sum of these grouped items is larger than the minimum price, the individual items appear on the invoice as individual invoice line items. Any items not marked as included in the minimum are not subject to this calculation.

For transactional items, there are two modes for applying the minimum comparison:

  • Global minimum: Compares the sum of all included items to the minimum
  • Group minimum: Compares the sum of included items that are grouped by a transaction criterion to the minimum

The corresponding calculations are performed on net prices.

Minimum fee pricing is typically used with transactional (usage-based) items.

Commission Pricing

Certain business use cases require commissions to be charged as a (variable) remuneration for rendered services or sold products. For determining the payment, you can define a fixed commission for the corresponding item. This is a percentage rate for calculating the line item total based on its unit price and the defined percentage. The quantity is always assumed as 1.


There may be some logic involved to define the unit price as the base for calculating the commission. You can, for example, aggregate order values or "feed" a fixed value taken from some other object.

With respect to commissions, JustOn helps to model more complex scenarios.

You can set up commission tiers, a means to calculate different commissions for an item based on the sales volume. Basically, they work the same way as price tiers do: You define price ranges and a commission for each. Depending on the actual unit price (which represents your sales volume), JustOn determines the commission percentage to be applied.

Tier Price Commission Description
A 100,00 10% If the price (sales volume) less than 100,00, the commission is set to 10%.
B 1000,00 8% If the price (sales volume) is 100,00 or more but lees than 1000,00, the commission is set to 8%.
C 6% If the price (sales volume) is 1000,00 or more, the commission is set to 6%.

With a determined sales volume of 500,00, the commission tier B applies, and consequently, the commission is set to 8%:

500,00 * 8% = 40,00

With usage-based items, you can configure additional commission tier prices to determine the commission tier allocation. Consider the example calculation again: The actual sales volume is still 500,00. Now assume that you have set a commission tier price of 1000,00 for the item. In this case, the commission tier price overrules the originally determined price, which allocates tier C with the 6% commission:

500,00 * 6% = 30,00
Commission based on average sales volume

Assume you want to calculate the commission based on the average sales volume, for example, the basket amount of an order. You create a commission tier table, for example:

Tier Price Commission
A 50,00 10%
B 100,00 9%
C 150,00 8%

The usage data object Order requires a custom field to hold the sales volume for a single order. To calculate the average amount over a certain period, you set up JustOn to aggregate the individual values of this field (see Aggregating Additional Fields), and to use this as the basis for allocating the intended commission (see Price and Quantity Fields).

Modeling this use case so involves:

  • Creating the field ON_BasketAmount__c on the Order object to hold the sales volume
  • Creating the target field BasketAmount__c on the Transaction object
  • Specifying the field BasketAmount__c as the price source field in the item field Transaction Price Field like transaction.BasketAmount__c
  • Specifying the average calculation in the Item field Transaction Aggregation Fields like {"BasketAmount__c":"AVG"}
  • Specifying the commission tier price to be used in the Item field Transaction Commission Tier Price Field like transaction.BasketAmount__c
  • Selecting the Item checkbox Aggregate Indiv. Priced Transactions to combine transactions with individual prices

Consequently, JustOn calculates the average basket amount of all orders throughout the invoice run period, and allocates the commission tier as determined based on that average.

Surcharge Pricing

Surcharge pricing adds a fee or extra charge to the original price of a product or service. To this end, you also define a commission and, in addition, select a charge model. This creates an additional line item to represent the surcharge or commission. The charge model (Mark Up or Mark Down) defines the commission calculation type.

With the Mark Up charge model, the item price is the unit price of the first invoice line item, and the second invoice line item is the calculated commission. The two item totals are added up. For example, an item price of 100,00, a commission of 5% and the charge model Mark Up would produce these invoice line items:

Qty Unit Price Commission Pos Total
1 100 EUR 100,00
1 100 EUR 5% 5,00

With the Mark Down charge model, the prices for the two items are re-calculated such that the sum of the item totals equals the original total. The first line item is calculated like price - (price * commission), and the second line item is calculated like price * commission. An item price of 100,00, a commission of 5% and the charge model Mark Down would, consequently, produce these invoice line items:

Qty Unit Price Commission Pos Total
1 95 EUR 95,00
1 100 EUR 5% 5,00

Discount Pricing

Many see discount price models as another charge model. JustOn supports three types of discounts:

The item-based discount reduces the price of an individual item. This discount type is applied to an invoice line item before the invoice subtotal is calculated.

The order discount reduces to the subtotal net value of an invoice (which represents an order). This percentage-based discount is applied to the sum of the invoice line item prices and, consequently, "distributed" proportionally to the relevant invoice line items. Using this discount type also reduces the tax amount subsequently.

Invoice line items with the checkbox Exclude From Order Discount selected are exempt from the order discount calculation.

The invoice discount (temporarily) reduces the grand total of the invoice. It is applicable to the total gross value for a defined time frame – usually in order to motivate the buyer to make the payment within this specific time.

For details, see Discounts.

Discount pricing can be used with one-time, recurring or transactional (usage-based) items.