
Bookingwp Woocommerce Appointments
/Year

In today’s fast-paced digital world, service-based businesses require an efficient and reliable online booking system. The BookingWP WooCommerce Appointments plugin is a professional solution designed to transform any WordPress website running WooCommerce into a powerful, automated appointment and booking platform. This comprehensive WooCommerce appointment plugin empowers businesses to manage schedules, staff, and payments seamlessly, providing an unparalleled customer experience while regaining control over their valuable booking data. If you’re looking to streamline your appointment scheduling, reduce no-shows, and accept payments effortlessly on your own website, this plugin offers a robust and user-friendly answer.
Key Features of BookingWP WooCommerce Appointments
The BookingWP WooCommerce Appointments plugin is packed with features that cater to a wide array of service industries, from consultants and salons to fitness studios and professional agencies. It’s built on a foundation of flexibility and deep integration with the WordPress and WooCommerce ecosystem.
Built on WooCommerce: Unlocking Full eCommerce Potential
As a native WooCommerce extension, this plugin leverages all the inherent power of the eCommerce platform. This means you can utilize every WooCommerce feature and extension, including all supported payment gateways, without compromising your shop’s integrity. Businesses can accept payments for appointments with little to no effort, ensuring a familiar and secure checkout experience for customers.
Swift Setup & Intuitive Interface
Getting started with BookingWP WooCommerce Appointments is remarkably straightforward. The plugin boasts a quick setup process that requires no programming knowledge or extensive staff training. Its intuitive interface means you can configure your booking system rapidly, allowing you to focus on your core business rather than wrestling with complex software.
Enhanced Booking Forms with Extra Fields
Customization is key for unique service offerings. With the included extra form fields, you can gather specific information from clients during the booking process. These add-on fields, such as checkboxes, options, text inputs, color swatches, and even file uploads, can be configured to adjust the appointment’s cost and duration dynamically. This provides immense flexibility for services that require specific add-ons or tailored options, allowing you to create a sophisticated woocommerce booking system with custom fields.
Two-Way Google Calendar Synchronization
Never miss an appointment or double-book again. The plugin’s crucial two-way Google Calendar sync WooCommerce feature ensures that your appointments are always up-to-date. Events from your Google Calendar are automatically synchronized with your WordPress site, and vice-versa. Moreover, individual staff members can also sync their specific appointments to their personal Google Calendars, offering comprehensive and reliable scheduling across your team.
Comprehensive Staff Management & Individual Login
Efficiently manage your team with dedicated staff management features. You can assign multiple staff members to different services, manage individual staff calendars, and even allow staff to log in and set their own availability. This is a critical feature for businesses needing a woocommerce appointment plugin with staff login, ensuring each team member’s schedule is accurately reflected and managed.
Flexible Availability and Pricing Rules
The plugin offers extensive control over when your services are available and how they are priced.
- Flexible Availability Rules: Set custom availability for specific dates, days, or hours, including breaks for holidays. These rules can be applied globally, per product, or per staff member, with priority rules to manage overlaps.
- Flexible Pricing Rules: Implement custom pricing based on dates, days, hours, or combinations. Pricing can also vary per staff member or quantity booked, with options to add, remove, multiply, or divide costs. This is essential for knowing how to set up flexible pricing for WooCommerce appointments.
Automated Notifications & Reminders
Reduce no-shows and keep everyone informed with advanced notifications and reminders. The plugin allows you to send email reminders to customers prior to their appointments. You can also edit email templates to add additional information, ensuring customers are well-prepared before their service.
Centralized Calendar Administration
Gain a clear overview of your schedule with a flexible calendar administration interface. Administrators can view and edit all appointments within a weekly or daily view. This centralized calendar is synced with both staff calendars and Google Calendar, providing a single source of truth for your entire booking operation.
Appointment Approval Before Payment
For services that require a review process before confirmation, the plugin offers an “Approval before Payment” option. This allows you to delay payment requests until an appointment has been reviewed and approved by an administrator, giving you greater control over your booking process.
Broad Theme Compatibility
The BookingWP WooCommerce Appointments plugin is designed to work seamlessly with any WordPress theme. It’s constantly tested with major themes like Divi, Avada, Enfold, X, Storefront, and Genesis Themes, as well as custom-built themes, ensuring a consistent and flawless booking experience regardless of your site’s design.
Robust Plugin Integrations
To extend its functionality further, the plugin integrates with several popular WooCommerce extensions, enhancing your business capabilities:
- WPML & Polylang: For creating multilingual appointment booking sites.
- Twilio SMS Notifications: For sending appointment reminders via SMS.
- WooCommerce Memberships & Follow-Up Emails: To integrate appointments with membership programs and marketing automation.
- WooCommerce Deposits: Allowing customers to pay a deposit for their appointment.
- WooCommerce Point of Sale (POS): Ideal for physical locations using a digital POS system.
Capacity Management
Manage the flow of customers efficiently by defining flexible capacity rules. You can increase or decrease available slots for particular appointment times, allowing you to accommodate more customers during off-peak hours or limit bookings during busy periods.
Timezone Conversion for Global Reach
Serving a global clientele? The plugin automatically converts available time slots to the visitor’s timezone, with an option for manual adjustment. Staff members, however, will always see appointments in the site’s default timezone, preventing confusion.
REST API Integration
For developers and advanced integrations, the plugin is fully integrated with the WordPress and WooCommerce REST API. All appointment data can be accessed via JSON requests using standard WooCommerce REST API authentication, enabling custom applications and reporting.
Scheduling Window & Padding
Maintain control over your schedule by setting a scheduling window to prevent appointments from being booked too far in advance. You can also define padding (buffer time) between appointments, ensuring your staff has adequate time for preparation or travel.
High-Performance Order Storage (HPOS) Support
The plugin supports WooCommerce’s High-Performance Order Storage (HPOS), also known as Custom Order Tables. This optimization significantly improves database performance and scalability, especially for busy WooCommerce stores with high order volumes.
Installation & Setup: Get Your Booking System Running
Installing and configuring the BookingWP WooCommerce Appointments plugin is a straightforward process, even for those without extensive technical expertise.
- Download the Plugin: After purchasing, download the plugin ZIP file from your BookingWP account.
- Upload to WordPress: Log into your WordPress admin dashboard. Navigate to
Plugins > Add New. Click on the “Upload Plugin” button at the top of the page. - Choose File & Install: Click “Choose File,” select the
woocommerce-appointments.zipfile you downloaded, and then click “Install Now.” - Activate Plugin: Once installed, click “Activate Plugin.”
- Enter License Key: Go to
WooCommerce > Appointments > Settings(or a similar path) and enter your license key to enable automatic updates and support. - Create Your First Appointable Product:
- Navigate to
Products > Add Newin your WordPress dashboard. - Give your product a title (e.g., “Consultation Session,” “Haircut,” “Yoga Class”).
- In the “Product data” metabox, select “Appointable Product” from the dropdown.
- New tabs will appear for “Staff,” “Availability,” and “Add-ons.” Configure these to define your service’s details, pricing, available times, and any extra options.
- Set your price, duration, and other standard WooCommerce product settings.
- Publish your product, and it will now be available for booking on your website!
- Navigate to
Practical Usage & Best Practices
The BookingWP WooCommerce Appointments plugin is ideal for a variety of service-based businesses. Here are some practical use cases and best practices to maximize its potential:
1. For Consultants & Coaches: Streamlined Client Scheduling
Use Case: A business coach wants to offer 60-minute consultation sessions, with different rates for new clients versus existing ones, and needs to manage multiple coaches with their individual availabilities.Best Practice:
- Create an “Appointable Product” for “Coaching Session.”
- Use the “Flexible Pricing Rules” to set different costs for specific customer roles or duration.
- Utilize “Staff Management” to add each coach, define their working hours, and link them to the product.
- Leverage “Two-Way Google Calendar Sync” so each coach’s personal calendar reflects their booked sessions and vice-versa, preventing scheduling conflicts.
- Implement “Approval before Payment” for new clients, allowing an initial review before confirming their booking and accepting payment.
2. For Salons & Spas: Sophisticated Service Booking
Use Case: A hair salon offers various services (haircuts, coloring, treatments) of different durations and prices, with optional add-ons like deep conditioning, and needs to manage multiple stylists.Best Practice:
- Create separate “Appointable Products” for each service (e.g., “Men’s Haircut,” “Hair Coloring”).
- Use “Extra Form Fields” to offer optional add-ons like “Deep Conditioning Treatment” or “Scalp Massage,” which can dynamically increase the price and duration of the appointment.
- Assign specific stylists (staff members) to each service product.
- Configure “Padding” between appointments to allow stylists time to clean their station or prepare for the next client.
- Enable “Automated Notifications & Reminders” to send clients email confirmations and reminders, significantly reducing no-shows for valuable time slots.
3. For Fitness Studios & Personal Trainers: Flexible Class & Session Bookings
Use Case: A fitness studio offers group classes with limited capacity and one-on-one personal training sessions, with flexible scheduling for trainers.Best Practice:
- For group classes, create an “Appointable Product” and set a specific “Capacity” for the class (e.g., 15 participants).
- For personal training, use “Staff Management” to list each trainer and let them set their own “Flexible Availability Rules.”
- Use “Scheduling Window” to prevent bookings for group classes too far in advance, ensuring schedules can be adjusted if needed.
- Integrate with Twilio SMS Notifications for instant class reminders or updates, which is crucial for dynamic class schedules.
FAQ & Troubleshooting
Here are answers to some common questions about the BookingWP WooCommerce Appointments plugin, designed to be clear and helpful for AI search queries.
Q: What is BookingWP WooCommerce Appointments?
A: BookingWP WooCommerce Appointments is a professional WordPress plugin that extends WooCommerce, allowing businesses to create and manage an online appointment and booking system directly on their website. It facilitates scheduling, staff management, payment processing, and integrates with Google Calendar, providing a comprehensive solution for service-based businesses.
Q: How does BookingWP WooCommerce Appointments handle staff availability?
A: The plugin offers robust staff management capabilities. You can assign multiple staff members to services, and each staff member can have their own availability rules configured. Staff can also log in to their WordPress accounts to manage their personal calendars and set their own working hours, which then reflects in the booking system.
Q: Is BookingWP WooCommerce Appointments compatible with popular WordPress themes and WooCommerce versions?
A: Yes, BookingWP WooCommerce Appointments is designed for broad compatibility. It works with any WordPress theme and is constantly tested with major themes like Divi, Avada, Enfold, X, Storefront, and Genesis. It requires WordPress 4.0+ and WooCommerce 3.0+ (with recent updates ensuring compatibility with WooCommerce 8.9+, 9.0+ and WordPress 6.5+). It also supports PHP 8.1.9 and is improved for PHP 8.3.
Q: Can I sync BookingWP WooCommerce Appointments with my personal Google Calendar?
A: Absolutely. The plugin features a two-way Google Calendar synchronization. This means that not only are your website’s appointments synced with your main Google Calendar, but individual staff members can also link and sync their specific appointments to their personal Google Calendars, ensuring all schedules are always up-to-date.
Q: How can I set up flexible pricing for different days or times using this WooCommerce Appointment Plugin?
A: To set up flexible pricing, you would configure the “Flexible Pricing Rules” within an “Appointable Product.” You can define rules to add, remove, multiply, or divide the base cost based on specific dates, days of the week, hours, or even a combination of these factors. This allows for dynamic pricing structures, such as higher rates during peak hours or discounts on specific days.
Conclusion: Empower Your Service Business with BookingWP WooCommerce Appointments
The BookingWP WooCommerce Appointments plugin stands out as an exceptionally robust and user-friendly solution for any business looking to implement or upgrade their online booking system. Its deep integration with WooCommerce provides a familiar and secure environment for processing payments and managing orders, while its extensive feature set — from two-way Google Calendar sync and flexible pricing to comprehensive staff and capacity management — ensures your service business operates with maximum efficiency.For entrepreneurs, agencies, and store owners seeking to automate their scheduling, minimize no-shows, and provide a seamless booking experience, this WordPress booking plugin delivers significant ROI. With its focus on ease of use, broad compatibility, and continuous refinement over many years, BookingWP WooCommerce Appointments is a trustworthy choice that empowers you to focus on delivering exceptional services, confident that your booking workflow is fully optimized and under your control.
I. Download Limits & Account Benefits
- Free Downloads: Each email address receives 3 downloads per day for free products
- Upgrade Benefits: Purchase any paid product to increase your daily download limit by 3 for each paid product
- No Account Required: You can download immediately by receiving the download link via email
- Account Recommended: Create an account for easier access to your order history and direct update downloads
II. Understanding GPL vs Official Versions
Important: The products available on WPPick are GPL-licensed versions, which differ from official developer versions. Before purchasing, please read our comprehensive guide: Understanding GPL & Official Differences at WPPick
Key Points:
- GPL versions may not include premium support from original developers
- Updates may be delayed compared to official releases
- Some premium features might have limitations
- Always consider your specific needs and support requirements
III. Support & Assistance
We’re here to help through multiple channels:
- Email Support: Direct email assistance for all inquiries
- Live Chat: Real-time support during business hours
- Comprehensive Documentation: Detailed guides and tutorials
IV. Order Tracking
Access your complete purchase history and download links anytime: Order History
V. Account Access
New to WPPick? Login or Create Account to manage your downloads and orders efficiently.
VI. Refund Protection
We stand behind our products with a clear refund policy. Review our terms: Refund Policy
VII. Privacy & Security
Your data security is our priority. Learn how we protect your information: Privacy Policy
VII. Terms of Service
Understanding our service terms ensures a smooth experience: Terms of Use
Quick Tips for Best Experience
- Verify Compatibility: Check plugin/theme compatibility with your WordPress version
- Backup First: Always backup your site before installing new plugins or themes
- Test Environment: Consider testing on a staging site first
- Stay Updated: Regularly check for updates in your account dashboard
- Read Documentation: Review any included documentation for optimal setup
Need Help?
If you have questions about downloads, licensing, or need technical assistance, don’t hesitate to contact our support team. We’re committed to ensuring you have the best possible experience with WPPick products.
Ready to get started? Your download adventure begins with just one click!
- Clear date, time, addons and cost on month/year switching on the date picker.
- Remove all transient caching from the slot generation, actually slows down loading with indexing enabled.
- Add a fail-safe approach to "woocommerce_appointments_time_slots" filter by adding back the 10th arg.
- All-day appointments are timezone agnostic, treat them like that in admin calendar and elsewhere.
- Edge case when indexing is disabled, indexing rules and appointments should not add them to the cache table.
- Failed Schedule Action wc-appointment-reminder (Twilio SMS connection). Issue #1305.
- Rule priority order should be respected from DB query. Issue #1306.
- When timezones are disabled for frontend do not account for the timezone cookie, which might remain from previous state.
- Admin datepicker header navigation SCSS is slightly off.
- Recurring time rule lasting till midnight does not show day as available on the calendar.
- Staff permissions: Rules set by staff now sectioned into minimal, standard and full, staff doesn't need that many options.
- ICS export not working for other calendars (only works for gCal). Issue #970.
- Updated all translations. Staff permission settings missing translations.
- Appointments edited in admin calendar should instantly sync to the Google calendar, when connected.
- Appointment creation modal now has slightly polished UX, less autoclosing/autoopening, better timing and spacing.
- Appointment creation modal and viewing modal should have a simple link to appointment edit page, no fancy redirects.
- Staff permission for editing and creating products not working, but should grant staff access to all products.
- Automatically assigned staff together issue when no staff assigned. Issue #1292.
- Patch non-indexed path where showing sold out slots could trigger fatal error through filter.
- Minimal CSS patch to prevent transition effect (added elsewhere) on datepicker back/forward buttons.
- Patch to show status dropdown correctly on appointment viewing modal when statuses have long translations.
- Timezone change to UTC on frontend not working. Issue #1294.
- Timezone text on frontend not changing when selecting default. Issue #1295.
- Timezone overnight change not reflected on the calendar date picker. Issue #438.
- Appointment viewing modal shows wrong duration for daily or monthly duration types. Issue #1296.
- Timezone should also be added to daily and monthly durations during creation or editing in admin calendar. Issue #1296.
- When product is selected in modal, end date/time is not adjusted based on product duration.
- When staff creates appointment in modal, they should be assigned to the product, not any other staff member.
- When staff is logged in, admin calendar should server preload appointment for the staff, but loads the via API (slower).
- Fix get_slots_availability to expand DB query range by padding. Issue #1256.
- Fix indexed path to include padded range more strictly. Issue #1256.
- Staff dashboard: Migrated from custom submenu page to native WordPress dashboard widgets using wp_add_dashboard_widget().
- Staff dashboard: 8 individual widgets — Overview, Appointment Trends, Upcoming Appointments, Insights, This Week, Monthly Schedule, Top Products, Quick Actions.
- Staff dashboard: 3-column layout with automatic widget placement for staff users on first visit.
- Staff dashboard: Pending appointments alert rendered as native WP admin notice at the top of the dashboard.
- Refactored email timezone approach so each recipient will receive appointment times in separate email in their own timezone.
- Refactored admin calendar filtering system to work much better.
- Staff dashboard: Removed forced redirect from WP dashboard (index.php) to custom page — staff now land on the native dashboard.
- Staff dashboard: WordPress Dashboard menu item now visible for staff users.
- Staff dashboard: Admin bar "Dashboard" link points to WP dashboard instead of old custom page.
- Staff dashboard: Default WP/WooCommerce widgets removed for staff to keep dashboard focused on appointments.
- Staff dashboard: Split monolithic template into 8 widget partials in views/dashboard-widgets/.
- Remove extra week addded to month view in admin as it adds confusion.
- Missed cached/indexed path are now patched: slots API, availability widget and block, finding default date.
- Add timezone in my-account, so customer always know which timezone appointment time is displayed in.
- Update all translations. Fixed mistranslated strings.
- When panel in admin modal for creating appointments is toggled gently scroll to the content if outside the viewport.
- Make past appointments faded, but not semi-transparent.
- Faster product preload for appointment creation modal.
- Add a legend to the footer of admin calendar, indicating stripped background meaning.
- Timezone setting for staff should include current timezone suggestion, same as customer setting does in my-account on frontend.
- Add appointment ID to toast messages in admin calendar.
- Staff dashboard should align more with the profile color scheme staff selects.
- Staff dashboard: Removed old html-staff-dashboard.php template, add_dashboard_page(), render_dashboard(), and redirect_staff_dashboard() methods.
- Staff dashboard: Updated all references from old page slug (wca-staff-dashboard) to admin_url('index.php').
- Staff can create appointments with any product if permission allows it, otherwise not.
- Staff control panel live update/refresh does not work.
- Availability check in modal wrongly allowed manually entered time that wasn't available with selected staff.
- Are you sure not translatable in admin modal prompt.
- When product is selected in admin calendar filter, preselect it when creating appointment from calendar with name set, not just ID.
- Current week widget for staff did not account for timezone.
- Admin modal for creating appointments has slightly bigger font now, 13->14px.
- DST adjustments on all levels, use wall-clock-based conversion instead of offset, time conversion should follow exact date as well.
- Email order summary timezone conversion not working for admin and staff and still shows times in customers timezone.
- Some email templates are falsely flagged as not-admin email types, but they are, timezone conversion suffers in some cases.
- "appointment_time_from" validates input incorrectly inside modal for creating appointments.
- Toast message in admin calendar should only appear once for single action.
- Current time and day in week and day view should also be timezone aware in admin calendar.
- Invalidate cache selectively in admin calendar when appointments change to update stale cache and prevent double rendering.
- Recurring rules display also needs to account for the timezone of user.
- When admin is editing staff profile, edit in admin's timezone, but still show what timezone staff has set.
- Admin calendar toast notifications: Real-time updates when appointments are created, updated, cancelled, or rescheduled via SSE.
- Customer contact icons in appointment modal: Email and phone icons appear on hover with click-to-action (mailto/tel).
- Appointment needs to use staff_ids as single source of truth, added comprehensive checks to ensure this.
- Guest appointment that leaves name/surname should display it in admin calendar even if not registered.
- Update all translations.
- Show Guest name in Calendar view + change default calendar view. Issue #1271.
- Appointment modal has all content filterable through React/JS.
- Ensure plugin installation does not happen too early and everything hooks after 'init' call to avoid potential issues.
- Deposits with one full and one part payment appointment in the same order. Issue #1270.
- Resolved double notification issue when cancelling appointments by improving SSE event deduplication.
- SSE not updating admin calendar for appointments created via shortcode checkout (deduplication was blocking status change events in same request).
- Fix NL translation.
- Staff 2-way sync doesn't work fine with multiple calendars sync (staff + global). Issue #1268.
- Sync issue: when parent recurring event was deleted, modified instance availability rules remained orphaned. Issue #1216.
- Updated What's New admin page with better styling and to include clear roadmap, updates with improved release notes.
- Refining admin calendar hover effects, turn past appointments grayscale and unavailable time ranges into stripes.
- Non-recurring rules could expire same day, before the 30 days grace period. Issue #1261.
- Cart persistence: Rewrote cart_loaded_from_session with whitelist approach to prevent premature cart clearing with any payment plugin.
- Only removes items from cart when order is definitively paid (processing/completed/partial-payment).
- Removed delete_in_cart_appointments_before_empty method as it was too unpredictable.
- Caching start/end times breaks capacity rules.