Skip to main content

Pricing policies

Summary

A pricing policy is a set of rules applicable to different entities such as resources or event-types that allow the automatic calculation of a reservation's price. Pricing policies are designed to offer flexibility and cover various use cases.

A pricing policy is made of the following attributes:

Pricing policy spec

NameTypeDescription
idStringAn unique string identifying the policy.
OwnerOwnerThe owner of the pricing policy.
nameStringAn user friendly string to identify the policy
currencyStringAn ISO 4217 currency code for the pricing.
priceSpecificationPriceThe default price that will be applied in this policy.
overridesArray<Override> An array of overrides that will replace the default price according to a set of rules.
tagsobjectArbitrary key/value collection for storing metadata.
Example pricing policy
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"name": "string",
"owner": {
"type": "string",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
},
"currency": "EUR",
"priceSpecification": {
"type": "string",
"amount": "12.45"
},
"overrides": [
{
"rules": {
"schedule": "string"
},
"priceSpecification": {
"type": "string",
"amount": "12.45"
}
}
],
"tags": {
"property1": "string",
"property2": "string"
}
}

Owner

The entity which owns the pricing policy.

NameTypeDescription
idStringAn unique string identifying the owner.
typeABThe type of owner
info

If a pricing policy is created and the owner is not specified, the authenticated user is assumed.

Override

Spec

NameTypeDescription
nameStringAn user friendly string to identify the policy
pricePriceThe default price that will be applied in this policy.
rulesOverrideRulesAn object with a set of rules that determine when the price applies For now only schedule is supported.
tagsobjectArbitrary key/value collection for storing metadata.

OverrideRules

NameTypeDescription
scheduleScheduleA set of time periods during which the price is overridden

Price

The price indicates how much the event will cost once booked. Prices can be fixed, or tiered:

Fixed

A fixed pricing policy charges a set amount for each reservation, regardless of the duration or other factors. This is straightforward and suitable for services where the cost is consistent.

For example, a fixed price of 30€ per reservation:

{
type: 'FIXED',
amount: "30.00",
}

Tiered

A tiered pricing policy charges different rates based on predefined time intervals. This approach is suitable for services where the cost varies with the duration, encouraging longer usage periods with different rates.

{
type: 'TIERED',
tiers: [
{
duration: 'PT1H'
amount: "30.00",
},
{
duration: 'PT1H30M'
amount: "40.00",
},
{
duration: 'PT2H'
amount: "45.00",
},
]
}