PUT
/
price-plans
/
{id}

Authorizations

Authorization
string
header
required

Value for the Authorization header parameter.

Path Parameters

id
string
required

PricePlan identifier

Body

currencyCode
object
required

The currency of the price

price
object
required

The price in the defined billing interval.

product
any
required

The product this price plan belongs to.

type
any
required

The type of the charge. This defines how the price is calculated.

Possible values:

  • flat_fee: A flat fee is charged, e.g. 10€ per month independent of the number of units.
  • volume: A volume based price is charged, e.g. 10€ for the first 10 units and 9€ for all units when the number of units is above 10. Useful for volume discounts.
  • percentage: A percentage of the total price is charged, e.g. 10% of the total price multiplied by the number of units. Useful for provisions.
  • per_unit: A price per unit is charged, e.g. 10€ per unit per billing interval. Useful for per seat based pricing.
  • tiered: A tiered price is charged. E.g. 10€ per unit for the first 10 units, 9€ per unit for the next 10 units and 8€ per unit for all units above 20.
  • stair_step: A stair step price is charged. E.g. 10€ per unit for the first 10 units, 9€ per unit for all units above 10.
applyTrial
boolean
default:
true

If this is set to true, the price plan can be applied on a trial. If the product is in trial, and this is false, the price will be charged on subscription start, otherwise after trial.

billingInterval
object | null

The billing interval of the price plan. If null, this is a one-time charge. Billing intervals of null cannot be prorated.

customer
string | null

This price is only available for a specific customer. If this is set, the price is only available for the customer with the given ID. All other price plans will be ignored.

freeUnits
object | null

The amount of free units. If null, no free units are available. Free units will be applied before passed to the price calculation and are available prorated. If the customer does not uses the free units during a billing period, they are not carried over to the next billing period. If the customer cancels the subscription before ending the billing period, the free units are only available prorated for the remaining billing period.

Example: You offer 2400 free units for 12 months and your price has a billing interval for 1 month. The customer cancels after 6 months. Only 1200 free units are available.

A price plan for a recurring product cannot have free units. Use a metered product instead.

A price plan related to a product of type charge cannot have free units.

internalName
string | null

The internal name of the price plan.

Required string length: 3 - 255
payInAdvance
boolean | null
default:
true

If this is set to true, the price will be charged in advance. If this is false, the price will be charged at the end of the billing interval.

proRata
boolean

If this is set to true, the price will be charged prorated when a partial billing interval is billed. This applies to measurements of type "recurring" or non-one-time billing intervals. For other measurements this parameter will be ignored.

showPricePerInterval
object | null

Display the billed price per interval in customerfront or invoices. If null, the price will be shown per billing interval. Currently only available for billing intervals of months, years. Currently only allowed to show price per month (1M)

Response

200 - application/json
currencyCode
object
required

The currency of the price

price
object
required

The price in the defined billing interval.

type
any
required

The type of the charge. This defines how the price is calculated.

Possible values:

  • flat_fee: A flat fee is charged, e.g. 10€ per month independent of the number of units.
  • volume: A volume based price is charged, e.g. 10€ for the first 10 units and 9€ for all units when the number of units is above 10. Useful for volume discounts.
  • percentage: A percentage of the total price is charged, e.g. 10% of the total price multiplied by the number of units. Useful for provisions.
  • per_unit: A price per unit is charged, e.g. 10€ per unit per billing interval. Useful for per seat based pricing.
  • tiered: A tiered price is charged. E.g. 10€ per unit for the first 10 units, 9€ per unit for the next 10 units and 8€ per unit for all units above 20.
  • stair_step: A stair step price is charged. E.g. 10€ per unit for the first 10 units, 9€ per unit for all units above 10.
applyTrial
boolean
default:
true

If this is set to true, the price plan can be applied on a trial. If the product is in trial, and this is false, the price will be charged on subscription start, otherwise after trial.

billingInterval
object | null

The billing interval of the price plan. If null, this is a one-time charge. Billing intervals of null cannot be prorated.

charge
string

The charge related to this price plan.

The checkout link IDs related to this price plan.

custom
boolean

If this price plan is a custom price plan. A price plan is custom if it is defined specific for a plan addon, plan charge, customer or sales channel.

customer
any

The customer this price plan belongs to.

freeUnits
object | null

The amount of free units. If null, no free units are available. Free units will be applied before passed to the price calculation and are available prorated. If the customer does not uses the free units during a billing period, they are not carried over to the next billing period. If the customer cancels the subscription before ending the billing period, the free units are only available prorated for the remaining billing period.

Example: You offer 2400 free units for 12 months and your price has a billing interval for 1 month. The customer cancels after 6 months. Only 1200 free units are available.

A price plan for a recurring product cannot have free units. Use a metered product instead.

A price plan related to a product of type charge cannot have free units.

id
string

The unique identifier of the price plan.

internalName
string | null

The internal name of the price plan.

Required string length: 3 - 255
inUse
boolean

If this price plan is in use.

payInAdvance
boolean | null
default:
true

If this is set to true, the price will be charged in advance. If this is false, the price will be charged at the end of the billing interval.

product
any

The product this price plan belongs to.

productSetOption
string

The product set option related to this price plan.

proRata
boolean

If this is set to true, the price will be charged prorated when a partial billing interval is billed. This applies to measurements of type "recurring" or non-one-time billing intervals. For other measurements this parameter will be ignored.

salesChannel
object | null

This price is only available for a specific sales channel. If this is set, the price is only available for the sales channel with the given ID. All other price plans will be ignored.

showPricePerInterval
object | null

Display the billed price per interval in customerfront or invoices. If null, the price will be shown per billing interval. Currently only available for billing intervals of months, years. Currently only allowed to show price per month (1M)

status
any

The status of the price plan.

Possible values:

  • active: The price is active and can be used.
  • archived: The price is archived and cannot be used anymore. It will be not shown in any lists until explicitly requested.