Skip to content
GPLWP Guides

How to accept bookings on a WordPress site

Booking & Events Time About 30–60 minutes 6 steps Updated 11 Sep 2026

BOOKING & EVENTS
The short answer

To accept service bookings in WordPress, use a booking plugin that manages services, staff, availability, forms and notifications. A normal contact form works for manual booking requests, but it cannot reliably prevent double bookings or show live time slots.

The route
  1. 01Define your booking rules
  2. 02Choose manual requests or live slots
  3. 03Install and configure booking software
  4. 04Publish the booking form
  5. 05Set notifications and payments
  6. 06Test the live booking flow

What you need

  • A WordPress site with administrator access
  • A list of services, prices and durations
  • Your working hours, holidays and booking rules
  • A payment account if you will take deposits or full payment online

Define your booking rules

List each service customers can book, including its duration, price, location and any information you need before confirming the appointment. Decide whether customers choose a staff member, whether more than one person can book a slot, and whether you need travel or preparation time between appointments.

Also decide whether bookings are confirmed immediately or held for manual approval. Writing these rules down first prevents the common mistake of publishing a form before the calendar reflects your real availability.

Choose manual requests or live slots

For a low booking volume, you can add a contact form with fields for the customer name, email address, service, preferred date, preferred time and notes. Review each request yourself, check your calendar, then reply with a confirmation or another time.

This manual route is fine for enquiries and irregular work, but it does not provide real-time availability, automatic conflict checking, reminders or reliable payment handling. If customers must select genuinely available appointments, use a booking plugin instead. Booking systems commonly combine services, staff schedules, breaks, holidays and buffer time when calculating slots.

Install and configure booking software

In WordPress, go to Plugins and install an appointment or service-booking plugin, then activate it. Add each service with its duration and price. Add the staff member or team responsible for delivering it, then assign the relevant services to them.

Set working hours, breaks, holidays, days off, minimum notice and buffer time. Check the site time zone before publishing. If you skip staff schedules or breaks, the form may offer times when nobody is available. Many booking systems also support manual approval, capacity limits and cancellation settings.

Publish the booking form

Create a page such as Book an appointment and insert the booking plugin's block, widget or shortcode. Add a short explanation of your services, prices, service area, cancellation policy and expected response time.

Link to the booking page from your navigation, contact page and each service page. A service-first flow is usually clearer for customers: they choose the service, select an available staff member or location, choose a time, and enter their details.

Set notifications and payments

Configure confirmation emails for customers and new-booking alerts for the person managing appointments. Include the service, date, time, location, customer details and cancellation instructions in the messages.

If you take money online, connect a supported payment gateway and choose whether to collect the full amount, a deposit or nothing until the appointment is approved. Send a test email and payment through the complete booking flow. WordPress email delivery can fail when hosting mail is misconfigured, so use a properly configured mail service or SMTP solution before relying on notifications.

Test the live booking flow

Open the booking page in a private browser window and make a test booking as a customer. Check that unavailable hours, holidays, breaks and already-booked slots cannot be selected. Confirm that the time zone, price, confirmation status and emails are correct on both desktop and mobile.

Try two bookings for the same slot and test cancellation or approval if you use those features. Once everything works, add the booking link to your service pages. For a faster contractor-focused setup, Fixera combines service pages with integrated appointment booking and can give you a starting layout to customise rather than building those pages from scratch.

The fast route

Let Fixera do it

Handyman-focused theme with service pages and integrated appointment booking for contractors building a site quickly.

Get Fixera

Sources

  1. wordpress.org /plugins/tiger-booking/?utm_source=openai
  2. wordpress.org /plugins/booktics/?utm_source=openai

Questions

Can WordPress accept bookings without a plugin?
WordPress can accept manual booking requests through a form, but it cannot provide a complete live appointment system by itself. You would need to check your calendar, prevent conflicts, confirm each request and send reminders manually. Use this approach only when bookings are infrequent or every request needs personal approval.
What should a WordPress booking form collect?
A booking form should collect the customer's name, email address, chosen service, preferred date and time, and any information needed to deliver the work. Depending on the business, add a phone number, address, access details, staff preference, consent checkbox and notes. Avoid collecting sensitive information you do not need.
How do I stop double bookings?
Use a booking system that checks availability again when the booking is saved, not just when the calendar is displayed. Configure staff working hours, breaks, holidays, service duration and buffer time, then test two simultaneous booking attempts. A simple contact form cannot reliably reserve a slot or stop two people requesting it.
Should bookings be confirmed automatically or manually?
Automatic confirmation suits fixed services with clear availability and predictable pricing. Manual approval is safer when travel time, job details, staff assignment or site access must be checked first. If you use approval, make the form and email wording clear that a request is not confirmed until you approve it.
Can customers pay when they book in WordPress?
Yes, if your booking system supports a payment gateway that suits your business. You can usually collect the full price, a deposit or payment after approval. Test failed payments, refunds, cancelled appointments and confirmation emails before going live, and state your cancellation and refund rules on the booking page.