Differential pricing helps implement a pricing strategy for addons and charges based on the plans they're purchased with. A differential price a specific price for an addon- or charge-item price when purchased along with a particular plan.
Consider an addon called 24x7 Customer Support provided with a cloud storage service. You can configure differential prices for each of the addon-item prices based on the plan they are purchased with, as follows:
| Addon item price | Price when applied to Standard Plan | Price when applied to Enterprise Plan | |
| 1 | 24x7 Customer Support, USD, Monthly, Flat fee, $100 | $90 | $150 |
| 2 | 24x7 Customer Support, USD, Yearly, Flat fee, $1000 | $900 | $1500 |
Consider a charge, called Setup fee, for installing and configuring a cloud-based project management platform. There are two modes in which you can set up differential pricing for a charge:
This mode is used to specify one differential price for the charge-item price per plan-item it is applied to.
| Charge-item price | Price when applied to Standard plan | Price when applied to Enterprise plan |
| Setup fee, USD, Flat fee $500 | $400 | $700 |
This mode is used to specify multiple differential prices for the charge per plan-item, based on the plan period.
| Charge-item price | Price when applied to Standard plan, 6 months | Price when applied to Standard plan, yearly |
| Setup fee, USD, Flat fee $500 | $400 | $300 |
In the above example, even if the "6 month" or "yearly" plan-item prices do not exist, the differential prices for the charge can still be created. They take effect whenever the plan-item prices are eventually created and used in subscriptions.
{
"created_at": 1594110587,
"currency_code": "USD",
"id": "1b53489f-d5b7-45e3-a010-b11ca19cbc27",
"item_price_id": "day-pass-USD",
"object": "differential_price",
"parent_item_id": "basic",
"price": 100,
"resource_version": 1594110587730,
"status": "active",
"updated_at": 1594110587
}flat_fee. When the pricing model is per_unit, it is the price per unit quantity of the item. Not applicable for the other pricing models. The value is in decimal and in major units of the currency. Also, this is only applicable when multi-decimal pricing is enabled. tiered, volume, and stairstep pricing_model s. The tiers are exactly the same as those set for the item price. Only the price attribute for the various tiers can be overridden for the differential price.item_price_id is a charge-item, you can specify the plan period for which the price applies. Although an array, currently you can specify only one period. In other words, only index 0 is allowed. Create another differential price to specify another period. Is permitted only when item_price_id is a charge-item.Create a differential price for addon item price, addon item price with tiered pricing, or charge item price.
flat_fee. When the pricing model is per_unit, it is the price per unit quantity of the item. Not applicable for the other pricing models. The value is in decimal and in major units of the currency. Also, this is only applicable when multi-decimal pricing is enabled. The unique ID of the business entity for this differential_price. This is applicable only when multiple business entities have been created for the site. When provided, the operation will read or write data associated with the specified business entity. If not provided, the resource will be created at the site level, and the business_entity_id will not be included in the API response.
Note: An alternative way of passing this parameter is by using a custom HTTP header or query string parameter.
.Retrieve a differential price using a differential_price_id
and item_price_id
.
Update a differential price using a differential_price_id
and item_price_id
.
flat_fee. When the pricing model is per_unit, it is the price per unit quantity of the item. Not applicable for the other pricing models. The value is in decimal and in major units of the currency. Also, this is only applicable when multi-decimal pricing is enabled. Delete a differential price using a differential_price_id
and item_price_id
.
Returns a list of differential prices satisfying all the conditions specified in the filter parameters below. The list is sorted by the date of creation in descending order (latest first).