Skip to main content

Manage prices for group services

The Bookla platform offers a straightforward yet flexible system for defining price rules for group services. This documentation outlines the key concepts and best practices for implementing effective pricing strategies for services that accommodate multiple participants.

Core Concepts

Per-Spot Pricing

In group services, the base price is set per spot. The total price for a booking is calculated by multiplying the per-spot price by the number of spots booked.

Price Rules

Price rules for group services include:

  • A price per spot
  • Priority level
  • Optional limitations (days, hours, resources)
  • Active period (start and end dates)

Currency

Before creating any price rules, you must select the currency for your company. This setting applies to all price rules.

Rule Priority and Selection

When a booking is made, the system selects the price from the rule with the highest priority that matches the booking conditions. If multiple rules with the same priority match, the most recently created rule is selected.

Implementing Price Rules

Basic Structure

price
{
"id": "077890d3-5acc-48a5-bc62-efd529fb68d7",
"createdAt": "2024-01-01T00:00:00Z",
"limitation": {},
"price": {
"comparedPrice": 200,
"price": 100
},
"priority": 1,
"serviceID": "a118dfd3-95b0-4635-895c-4e06d22f5dbc",
"type": "group"
}

Pricing API Documentation

Pricing Calculation

The total price is calculated by multiplying the per-spot price by the number of spots booked.

Example:

  1. Basic rule: $25 per spot
  2. Client books 3 spots

Resulting price: $75 ($25 * 3)

Limitations

You can narrow the applicability of a price rule using the following optional limitations:

  1. Days: Specify days of the week when the rule applies using a 7-bit bitmask. Each bit represents a day of the week, starting from Monday. For example:
    • 1111111 (127 in decimal) represents all days
    • 1111100 (124 in decimal) represents Monday through Friday
    • 0000011 (3 in decimal) represents Saturday and Sunday
  2. Hours: Define time ranges for rule application (e.g., 10:00-12:00, 17:00-20:00).
  3. Resources: Apply the rule to specific resources, enabling different pricing per resource.
  4. Activity Period: Set a start and end date for the rule's validity.
limitation
{
"limitation": {
"dates": [
{
"start": "2021-01-01T00:00:00Z",
"end": "2021-02-01T00:00:00Z"
}
],
"daysOfWeek": 127,
"resourceIDs": [
"6c5cba5e-52da-4ca3-8f86-25b3d09e0fb5"
],
"times": [
{
"start": "09:00",
"end": "18:00"
}
]
}
}

Best Practices and Considerations

  1. Cover All Scenarios: Ensure your price rules cover all possible booking scenarios to avoid pricing gaps.
  2. Rule Hierarchy: Organize rules from most specific (highest priority) to most general (lowest priority).
  3. Seasonal Pricing: Use activeFrom and activeTill dates to implement seasonal pricing strategies.
  4. Resource-Specific Pricing: Utilize the resource limitation to set different prices for different resources (e.g., different instructors or venues).
  5. Testing: Thoroughly test your pricing rules with various booking scenarios, including different numbers of spots, to ensure correct calculations.
  6. Documentation: Maintain internal documentation of your pricing strategy for easier management and troubleshooting.

API Reference

For detailed information on implementing and managing price rules through our API, please refer to the Pricing API Documentation.

By leveraging these pricing capabilities, you can create sophisticated pricing strategies that adapt to your business needs while ensuring a smooth booking experience for your clients.