Service Providers
Service Providers represent the people or agents responsible for delivering services in Frappoint.
They define who performs a service, when they are available, and how their availability is exposed for booking.
Every bookable slot in Frappoint belongs to a Service Provider.
What is a Service Provider?
A Service Provider can represent:
- A staff member (doctor, barber, therapist)
- A consultant or specialist
- Any entity capable of delivering a service
Why Service Providers Exist
Service Providers allow Frappoint to:
- Assign services based on skill or role
- Manage individual availability and schedules
- Generate provider-specific booking slots
- Support shared resources across multiple providers
- Integrate with Frappe HR and user accounts
A service type can exist without a service provider, but a booking cannot.
Core Service Provider Information
| Field | Description | Notes / Examples |
|---|---|---|
| Provider Name | The display name shown across the system and frontend. | Can be auto-composed from first and last name fields. |
| Active | A toggle to enable or disable the provider for booking. | If inactive, no new slots are generated and they are hidden from the frontend. |
| Color Code | A visual identifier used in calendars and schedules. | Helps distinguish between providers in multi-view dashboards. |
| Default Slot Length | The base slot size (in minutes) specific to this provider. | Overrides global defaults. Example: 10 or 15 minutes. |
Slot length affects how availability is sliced during slot generation.
Service Assignment
Services Table
Providers explicitly declare which services they offer.
For each assigned service: - The service becomes bookable under this provider - One service can be offered by multiple providers - A provider can offer multiple services
This design enables: - Skill-based filtering - Service-specific provider availability - Clean separation between offerings and personnel
User & HR Integration (Optional)
Providers can be linked to ERPNext entities.
Employee
- Links the provider to an Employee record.
- Useful for HR, payroll, and reporting.
User
- Links the provider to a system user.
- Required for:
- Calendar syncing
- Provider dashboards
- Role-based access control
Designation & Grade
- Optional HR metadata.
- Useful for analytics or permission logic.
Contact & Calendar Integration
Email & Mobile Number
- Used for notifications and communication.
- Can differ from the linked user account.
Google Calendar
- Calendar where provider appointments are synced.
- Overrides the system default calendar if set.
Provider Availability Model
Providers do not define availability directly on the Provider document.
Instead, availability is derived from:
Shift Types
Define working hours and breaks.Shift Assignments
Attach shift types to providers over date ranges.Generated Slots
Time-sliced availability derived from shifts.
This separation ensures: - Predictable slot generation - Easy schedule changes without data corruption - Scalable multi-provider setups
How Providers Affect Booking
When a customer selects a service:
- Frappoint finds providers offering that service
- Provider schedules are evaluated
- Available slots are retrieved
- Resource constraints are applied
- A provider is assigned to the booking
Providers are the anchor for all availability calculations. Without providers, no slots or bookings can exist.