Service Appointment

Service Appointments represent a confirmed commitment between a customer and a service provider for a specific service and time.

A service appointment is the only entity in Frappoint that:

  • Consumes slots
  • Locks service units
  • Triggers notifications
  • Can be cancelled or rescheduled

Everything else exists to make service appointments safe and predictable.

What is a Service Appointment?

A Service Appointment is a transactional record that links:

  • A Customer
  • A Service Type
  • A Service Provider
  • One or more Service Provider Slots
  • Optional Service Unit

Once created, a service appointment becomes the source of truth for that appointment.

Why Service Appointments Are Central

They allow Frappoint to:

  • Prevent double booking
  • Enforce service duration and buffers
  • Track status changes
  • Integrate with ERPNext documents
  • Maintain a clean audit trail

Slots are availability.
Bookings are commitments.

Core Service Appointment Fields

Field Description Notes / Rules
Customer The person receiving the service. Can be a lead, customer, or standalone contact.
Service The specific service being booked. Determines required duration, buffer times, and service units.
Provider The professional performing the service. Must offer the service, have consecutive availability, and be on shift.
Start & End Time The appointment window. Derived from the first and last consumed slot; not directly editable.
Slots List of time slots consumed by the booking. Immutable after confirmation.

Service Appointment Status Lifecycle

Service Appointments move through a controlled set of statuses.

Status Description Notes & ERPNext Triggers
Open Slots are temporarily reserved and validation is in progress. Hidden from other customers during this phase.
Confirmed Slots are permanently consumed and service units are locked. Triggers: Sales Order; notifications may be sent.
Completed Service has been delivered to the customer. Triggers: Sales Invoice, stock consumption, and commissions.
Cancelled The booking is void and the time is freed up. Slots are released; specific cancellation rules apply.
No Show (Optional) The customer failed to arrive. Slots remain consumed; used for analytics and penalties.

Service Appointment Creation Flow

  1. Customer selects service
  2. Available slots are fetched
  3. Provider and time are selected
  4. Required slots are reserved
  5. Service units are validated
  6. Appointment is confirmed

If any step fails, all reservations are rolled back.

Validation Rules

A service appointment is only valid if:

  • Required consecutive slots exist
  • Provider is on shift
  • Service buffers fit within shift
  • Required service units are available
  • Appointment respects advance and lead-time rules

All validations occur server-side.

Cancellation & Rescheduling

Cancellation

  • Allowed based on system rules
  • Releases slots
  • Can trigger notifications

Rescheduling

  • Implemented as:
    • Cancel existing appointment
    • Create a new appointment
  • Ensures slot integrity

Service Appointment and ERPNext Integration

Depending on settings, a service appointment may:

  • Create or link a Sales Order
  • Generate a Sales Invoice
  • Consume stock items
  • Sync to calendars

Service Appointments are ERPNext-aware but not ERPNext-dependent.

Discard
Save
This page has been updated since your last edit. Your draft may contain outdated content. Load Latest Version

On this page

Review Changes ← Back to Content
Message Status Space Raised By Last update on