SpeechStack
Submit a template
← All templatestemplates / barbershop-appointment-scheduling-receptionist
Pipecatupdated May 10, 2025 · beauty-and-salon · scheduling

Barbershop Appointment Scheduling Receptionist

A voice AI receptionist for barbershops that handles appointment booking, cancellations, and inquiries over the phone. Customers call a real phone number and speak naturally to manage their appointments without needing an app or website. Uses OpenAI function calling for real-time availability checks and atomic multi-slot booking to prevent double-booking.

Try the demoView sourceFork template
The numbers
latency
cost / min
frameworkPipecat
The stack
telephonyTwilio Voice
speech-to-textDeepgram Nova-3
llmGPT-4o
text-to-speechCartesia Sonic-3
System prompt
No prompt published.
Config
config.json
{
  "tools": [
    {
      "name": "check_availability",
      "description": "Check available appointment slots for a specific barber and date"
    },
    {
      "name": "book_appointment",
      "description": "Book an appointment with atomic multi-slot reservation to prevent double-booking"
    },
    {
      "name": "cancel_appointment",
      "description": "Cancel an existing appointment by customer phone number"
    }
  ],
  "barbers": 3,
  "database": "AWS DynamoDB",
  "features": [
    "atomic_multi_slot_booking",
    "voice_activity_detection",
    "dual_mode_browser_and_phone"
  ],
  "services": [
    {
      "name": "Haircut",
      "price": 25,
      "duration_min": 30
    },
    {
      "name": "Beard Trim",
      "price": 15,
      "duration_min": 15
    },
    {
      "name": "Shave",
      "price": 20,
      "duration_min": 20
    },
    {
      "name": "Kids Cut",
      "price": 20,
      "duration_min": 20
    },
    {
      "name": "Hair Wash & Style",
      "price": 30,
      "duration_min": 30
    },
    {
      "name": "Full Service",
      "price": 35,
      "duration_min": 45
    }
  ],
  "slot_duration_min": 30
}
Tools
  • check_availabilityCheck available appointment slots for a specific barber and date
  • book_appointmentBook an appointment with atomic multi-slot reservation to prevent double-booking
  • cancel_appointmentCancel an existing appointment by customer phone number
Tags
barbershopappointment-bookingphone-receptionistdynamodbfunction-calling
Voice Notes

Voice AI recipes, picks, and analysis.

Get the useful new templates plus the occasional teardown of what’s working in production voice AI.

contributed by @BigSur23 · MIT · source: github discoverylanguages: en-US