Set Up Pricing for Sessions¶
This article explains how to configure what customers pay for each session type, using either flat per-duration prices or time-of-day and seasonal pricing.
Before You Begin¶
- You need Organizational Admin access.
- Each session type must already exist with at least one duration configured. If you have not done that yet, complete Configure Session Lengths and Session Types first.
- To use Enhanced pricing (prices that vary by time of day or season), you must first define dayparts and optionally seasons in Organization Settings. See How Dayparts and Seasons Relate to Pricing below.
How Pricing Works in Ordinatus¶
Pricing lives directly on each session type. When a customer selects a time slot during booking, Ordinatus reads the session type's pricing configuration and calculates the price for that specific duration and slot time.
There are two pricing modes:
| Mode | When to use it |
|---|---|
| Simple | One flat price per duration. The customer pays the same amount regardless of when the session is booked. |
| Enhanced | Prices vary by time of day (daypart). You can also layer on seasonal adjustments for certain times of year. |
The calculated price is locked in at booking time. If you later change a session type's pricing, existing bookings are not affected — they retain the price that was in effect when the customer paid.
Note: If a duration or daypart combination has no price set, customers will not see available slots for that combination. Make sure every duration your session type supports has a price configured.
Open the Pricing Editor¶
- In the admin navigation, click Pricing.
- You will see the Pricing dashboard listing your session types and their current pricing mode.
- Click the name of the session type you want to configure, or click Manage to go to the full session types list and select one there.
- On the session type detail page, click Edit Pricing (or Set Up Pricing if no pricing has been configured yet).
Configure Simple Pricing¶
Simple pricing is the fastest setup. Each duration gets one price that applies at all times.
- On the pricing editor page, select Simple under Pricing Mode.
- For each duration shown in the table, enter the price customers will pay. For example, enter
75.00for a 30-minute session. - Leave a duration's price field blank only if you do not want that duration to be bookable. Slots for an unpriced duration will not appear to customers.
- Click Save Pricing.
Configure Enhanced Pricing¶
Enhanced pricing lets you charge different rates based on when the session takes place. You set a base price for each combination of duration and daypart, then optionally add or subtract a fixed amount or percentage during specific seasons.
Prerequisites for Enhanced pricing¶
Before switching to Enhanced mode, your organization must have dayparts defined. If you see a warning that no dayparts are configured, go to Settings and set up your dayparts first. See How Dayparts and Seasons Relate to Pricing.
Step 1: Switch to Enhanced mode¶
On the pricing editor page, select Enhanced under Pricing Mode.
Step 2: Set daypart base prices¶
A grid appears with your dayparts as rows and your session durations as columns.
- Enter a price in each cell for the combinations you want to offer. For example:
- Weekdays / 60 min:
100.00 - Weeknight / 60 min:
85.00 - Weekend / 60 min:
120.00 - Leave a cell blank to make that combination unavailable to customers.
Step 3: Add seasonal adjustments (optional)¶
If your organization has seasons configured, you will see a separate adjustment matrix for each season below the daypart base prices. Seasonal adjustments add a premium or discount on top of the base daypart price.
For each season, a grid shows your durations as rows and dayparts as columns:
- In any cell where you want a price change during that season, enter the adjustment amount.
- Click the $ / % toggle button next to each cell to choose whether the adjustment is a flat dollar amount or a percentage of the base price.
- $ — The value is added or subtracted directly. For example,
10on a$100base =$110. - % — The value is a percentage of the base. For example,
10on a$100base =$110(percentage adjustments are rounded to the nearest whole dollar before being added). - Use positive numbers for a premium and negative numbers for a discount. For example,
-15with%applies a 15% off-peak discount. - Leave a cell blank to apply no seasonal change for that combination. Blank cells inherit the base daypart price.
Note: Seasonal adjustments can never reduce a price below zero. If a discount would produce a negative amount, customers are charged $0.00 for that slot instead.
Step 4: Save¶
Click Save Pricing. You are returned to the session type detail page where the updated pricing mode is shown.
How Dayparts and Seasons Relate to Pricing¶
Dayparts and seasons are defined in Organization Settings, not in the pricing editor itself. The pricing editor reads whatever is configured there.
Dayparts define named time windows — for example, "Weekdays" (Monday–Friday, 9 am–5 pm) or "Weekend" (Saturday–Sunday, 9 am–5 pm). When a customer picks a slot, Ordinatus checks which daypart that slot falls into and looks up the corresponding price.
Seasons define date ranges that carry pricing adjustments — for example, a "Peak Season" from June 1 through August 31. When a booking is made, Ordinatus checks whether the session date falls within a season and applies any adjustment you configured for that season.
To add or modify dayparts and seasons, go to Settings in the admin navigation and look for the Dayparts and Seasons sections.
Tip: You can use Enhanced pricing mode and leave all seasonal adjustment cells blank. In that case, the base daypart prices apply year-round. This is useful if you want time-of-day pricing now and plan to add seasonal adjustments later.
Tips¶
- Start with Simple mode. You can always switch to Enhanced later. When you switch modes and save, the previous mode's prices are cleared from the stored configuration.
- Unpriced durations are hidden from customers. If you add a new duration to a session type, customers cannot book it until you return to the pricing editor and enter a price for it.
- Pricing is per session type, not per form. If multiple forms share the same session type, they all use the same pricing configuration.
- The calculated price is captured at booking time. Changing prices after a booking is created does not change what that customer was charged. Each booking stores a full pricing breakdown as a permanent record.
Troubleshooting¶
I switched to Enhanced mode but the daypart grid is empty or shows a warning. Your organization has no dayparts configured. Go to Settings, define at least one daypart, then return to the pricing editor.
Customers are not seeing certain time slots. Check that the duration and daypart combination for those slots has a price entered. Slots with no price are hidden from customers.
I saved my prices but a customer was charged a different amount. Ordinatus calculates the price at the moment the customer selects a slot, based on the pricing configuration at that time. If prices changed after the booking was created, the booking retains the original price. Check the booking's pricing breakdown for the full details of how that price was calculated.
I cannot delete a session type. A session type can only be deleted if no request forms are using it. Open the session type's detail page to see which forms are assigned to it, then remove the assignment from those forms before deleting.




