---
title: "Service Units"
space: "Frappoint"
url: "https://docs.navari.co.ke/frappoint/service-units"
updated: "2026-08-04"
---

Service Units represent the **resources** required to deliver a service.

They ensure that appointments respect real-world constraints such as space, equipment, and capacity.

<div align="center">
    <img src="/files/service_unit.png" alt="Service Unit"  />
</div>

## What is a Service Unit?

A **Service Unit** is a physical or logical resource used during service delivery.

Examples include:

- Barber chairs
- Treatment rooms
- Dental chairs
- Therapy rooms
- Diagnostic machines
- Shared virtual resources

A service may require one or more service units to be available before it can be booked.



## Why Service Units Matter

Without service units:
- Providers could be double-booked on the same chair
- Rooms could be over-allocated
- Capacity limits would be ignored

Service units allow Frappoint to model **scarcity** correctly.



## Service Unit Types

Before creating service units, you must define [**Service Unit Types**](/frappoint/service-unit-types).


## Service Units

A **Service Unit** is an instance of a service unit type.

Example:

- Chair 1 (Barber Chair)
- Chair 2 (Barber Chair)
- Room A (Massage Room)



### Key Fields in Service Unit

| Field | Purpose |
|-----|--------|
| Unit Name | Human-readable name |
| Unit Type | Classification |
| Company | Organizational ownership |
| Location | Physical placement |
| Capacity | Maximum concurrent usage |
| Allow Appointments | Enable scheduling |
| Allow Overlap | Override overlap rules |
| Active | Availability toggle |


## Capacity vs Overlap

### Capacity
Defines how many bookings can use the unit at the same time.

Example:

- Waiting area capacity = 5
- Group training room capacity = 10



### Overlap
Controls whether bookings can overlap in time.

- **Overlap disabled:** strict single booking
- **Overlap enabled:** multiple bookings allowed until capacity is reached



## Grouped Service Units

Service Units support hierarchical grouping.

Example:

```
Main Salon
├── Barber Chairs
│ ├── Chair 1
│ └── Chair 2
└── Massage Rooms
├── Room A
└── Room B
```

This allows:

- Reporting by group
- Flexible allocation



## How Service Units Affect Availability

A booking is only allowed if:

1. The provider is available
2. The service supports the unit type
3. At least one compatible service unit is free
4. Capacity and overlap rules are satisfied

If any of these fail, slots are unavailable.



## Auto-Assignment of Units

Services can:

- Require specific unit types
- Auto-assign units at booking time
- Allow manual selection by staff

This behavior is defined in **Service Type Unit Type** configuration.



## Best Practices

- Model real-world constraints honestly
- Avoid overly generic unit types
- Disable overlap unless explicitly required
- Use capacity for group services
- Keep unit names human-friendly
