Let's say you already have a resource with a rule of work.
For example, a rental for $100 / hour for each item. And only 10 places are available.
To change the price of the third and subsequent hours, you can use one of three solutions.
You can add a discount for reservations that last 3 hours or more.
To do this, create a pricing component.
Click on + to the right of the pricing components.
Set the following parameters:
1. Enter the name of the component.
2. Add the parameter name for the number of places.
For example, PLACES.
3. Enter the formula.
The discount of $20 is multiplied by the number of hours over two.
And we multiply all this by the number of reserved places.
-20 * ([INTERVALS]-2) * [PLACES]
4. Open the constraints tab.
Add a limit of the number of periods — 3.
In this case, when booking one or two periods, the discount will not be applied.
Save it.
Now let's check the result.
We will book two seats for 5 hours.
-20 * (5-2) * 2 = $120.
You can go on the opposite way.
Add a surcharge of $20 per hour for bookings shorter than three hours.
To do this, first set the price of the hour — $80.
Then create a pricing component.
Set the following parameters:
1. Enter the name of the component.
2. Add a parameter name for the number of places.
For example, PLACES.
3. Enter the formula.
The charge of $20 is multiplied by the number of hours.
And all this is multiplied by the number of seats reserved.
20 * [INTERVALS] * [PLACES]
4. Open the constraints tab.
Add a limit on the number of periods — less than or equal to 2.
Then the discount will only be applied for bookings of one or two periods.
Save.
Check the results.
We'll book 3 seats for 2 hours.
20 * 2 * 3 = $120.
If you don't want to split the cost into parts, calculate it via the single pricing component.
To do this, set the price of the price option — $0.
Then create the pricing component.
Set the following parameters:
1. Enter the name of the component.
2. Add a parameter name for the number of places.
For example, PLACES.
3. Enter the formula.
The price of $100 is multiplied by the number of hours.
Subtract the discount of $20 multiplied by the number of hours over two.
And all this is multiplied by the number of reserved places.
(100 * [INTERVALS] - 20 * Max(0,[INTERVALS]-2)) * [PLACES]
In this formula, we used the Max function.
It returns the maximum of two numbers.
Thus, we do not allow the expression [INTERVALS]-2 to become less than zero.
4. Save the component.
Let's check the result.
We will reserve two seats for 4 hours.
(100 * 4 - 20 * (4-2)) * 2 = $720.
See this example in action: