How to create a bookable product for appointments

Booking products turn your store into a scheduling system. Whether you are a consultant, a hair stylist, or a rental business, this feature lets customers reserve your time or equipment directly through your website without the need for back-and-forth emails or phone calls.

1. Create a new Bookable Product

Log in to your WooShop dashboard and go to Products > Add New. Give your appointment a clear title, such as "1-Hour Design Consultation" or "Haircut & Style."

In the Product Data dropdown menu, select Bookable product. You will see two checkboxes:

  • Virtual: Check this if the service is online (like a Zoom call).
  • Has Persons: Check this if you want customers to specify how many people are attending.

2. Set the Booking Duration

Under the General tab, decide how long the appointment lasts.

  • Fixed blocks: Use this for set durations, like a 60-minute massage.
  • Customer-defined blocks: Use this if the customer chooses the duration, like renting a studio space for a specific number of hours.

3. Define Availability

Go to the Availability tab. This is where you tell the system when you are open for business.

  • Max bookings per block: If you are a solo practitioner, set this to 1. If you have a class of 10, set it to 10.
  • Minimum/Maximum booking window: Decide how far in advance someone can book (e.g., at least 24 hours notice, but no more than 30 days out).
  • Buffer period: If you need 15 minutes to clean up between clients, enter that here. This prevents back-to-back bookings with no breathing room.
  • Set your hours: Use the "Range type" to specify days of the week or specific dates when you are available.

4. Set Your Pricing

Navigate to the Costs tab.

  • Base cost: This is a flat fee charged regardless of the duration.
  • Block cost: This is the price per unit of time (e.g., $50 per hour).
  • Display cost: This is what the customer sees on the shop page before they start selecting dates.

5. Publish and Test

Add a short description and a high-quality image to your product. Click Publish.

Always visit the live page as if you were a customer. Select a date and time to ensure the calendar functions as expected and the price calculates correctly.


Practical Examples

  • For a Consultant: Create a 1-hour "Fixed Block." Set the "Minimum booking window" to 24 hours so you aren’t surprised by same-day meetings.
  • For a Photography Studio: Use "Customer-defined blocks" of 1 hour. Set a "Base cost" for the setup fee and a "Block cost" for every hour they stay.
  • For a Workshop: Set the "Max bookings per block" to the number of seats available in your room.


Troubleshooting Common Issues

The calendar shows "No availability"
Check your Availability tab. If you have "All dates are… non-bookable" selected by default, you must specifically add rows for the times you are open. Also, ensure your "Maximum booking window" isn’t set too short.

Double bookings are happening
Confirm that "Max bookings per block" is set to 1. If you have multiple staff members, you may need to use Resources to assign specific people to specific slots.

I need to block out a holiday
You don’t need to change your general settings. Go to the Availability tab, add a new row for "Date range," select your holiday dates, and set "Bookable" to No.


Managing your schedule through your shop keeps your business organized and your customers happy. If you need to manage your existing appointments, you can find them all under Bookings > All Bookings in your sidebar.

Related guides:

  • How to set up Resources for staff members
  • Syncing your bookings with Google Calendar
  • Customizing your booking confirmation emails

Similar Posts