Descrição
Let customers choose a service and an available time, then book directly on your WordPress website. Use a general agenda without creating professionals, or assign a team when your business needs one. MF Appointment Booking brings your calendar, availability and booking form into a clean workspace with separate settings tabs.
Use it for consultations, coaching sessions and other appointment-based services. Free bookings work without a payment account. For paid appointments, connect your own Stripe or PayPal account and choose full payment or a deposit.
Booking and availability
- Add confirmed appointments to Google Calendar or Outlook, or download an .ics file for Apple Calendar.
- Configurable appointment address, directions link and {location} email placeholder.
- Built-in categorized documentation with copyable shortcodes.
- Complete Spanish (Spain) translation for the admin, public form and default emails.
- Optional professionals per service: use shared general-agenda capacity or each professional’s own schedule.
- Tabbed settings with contextual saving, retained input on errors and unsaved-change warnings.
- Appearance controls for heading, welcome message, colors, corner radius and form width, with a live preview and contrast validation.
- A visible month picker, keyboard navigation, booking summary and contact details preserved when going back.
- Automatically skip the professional choice when there is only one, or let the customer confirm it.
- Services, professionals and departments, duration, price, capacity and buffers.
- General and professional schedules, holidays, date exceptions and manual time blocks.
- Multi-step booking with editable custom fields, a shortcode and a Gutenberg block. Elementor supports the shortcode widget.
- Stripe Checkout and PayPal Orders, full payment or fixed/percentage deposits. Free appointments are supported.
- Confirmation, reminder and cancellation emails with editable plain-text templates and scheduled retries.
- Administrative list, filters, day/week/month calendar, drag-and-drop rescheduling and keyboard-accessible editing.
- CSV and iCalendar exports, read-only availability REST API and extension hooks.
- WordPress privacy export/erasure tools and WPML/Polylang integration.
Included without a plugin subscription
All features listed here are included. MF Appointment Booking does not require a MF Appointment Booking account or subscription. Stripe and PayPal have their own fees and account requirements.
Languages and page builders
English and Spanish (Spain) are included. The frontend follows the site language; the admin follows your profile language. WordPress.org language packs remain supported. Default email templates follow the booking language; custom business text is preserved. Use the native booking block, the [mfab] shortcode, or Elementor’s Shortcode widget. WPML and Polylang integration shares availability between translations of a service or professional.
Privacy and control
Booking records stay in your WordPress database. Customers access their booking with a private link, without creating an account. MF Appointment Booking integrates with WordPress personal data export and erasure tools. Active appointments and records requiring a refund are retained during erasure so the business can resolve them. Site owners remain responsible for their privacy policy and retention practices.
Documentation
The plugin includes a setup and operations guide in docs/USER-GUIDE.md, extension documentation in docs/HOOKS.md, and dependency information in docs/THIRD-PARTY.md. Readable JavaScript sources and the FullCalendar license are included in the package.
External services
Payments are optional and require your own provider account. No requests are sent to a payment provider until an enabled payment method is used or its payment is reconciled. Card details are entered on hosted checkout pages and never stored by MF Appointment Booking.
Stripe receives the booking reference, email, service name, amount and currency when checkout begins. API: https://api.stripe.com ; checkout: https://checkout.stripe.com . Terms: https://stripe.com/legal/ssa . Privacy: https://stripe.com/privacy . Configure the checkout.session.completed webhook shown in MF Appointment Booking settings.
PayPal receives the booking reference, amount, currency and return URL. API: https://api-m.paypal.com or https://api-m.sandbox.paypal.com . Terms: https://www.paypal.com/legalhub/paypal/useragreement-full . Privacy: https://www.paypal.com/legalhub/paypal/privacy-full . MF Appointment Booking captures approved orders on server verification and reconciles payments via cron.
Calendar scripts are bundled locally. Optional Google Calendar and Outlook links open only when a customer chooses them and include the service title, appointment times, business name and address. No email, custom fields or private management token is included. The directions link sends the address to Google Maps only when clicked. An .ics file is generated locally. These are calendar copies, not synchronized subscriptions: customers must update or remove them after changes or cancellations.
Google Calendar and Maps: https://calendar.google.com and https://www.google.com/maps . Terms: https://policies.google.com/terms . Privacy: https://policies.google.com/privacy . Outlook: https://outlook.live.com . Terms: https://www.microsoft.com/servicesagreement . Privacy: https://privacy.microsoft.com/privacystatement .
Ecrãs









Blocos
Este plugin inclui 1 bloco.
- MF Appointment Booking booking
Instalação
- Copy the mf-appointment-booking directory into wp-content/plugins.
- Activate MF Appointment Booking in Plugins.
- Create and publish a page containing [mfab] or the MF Appointment Booking booking block. Select it in MF Appointment Booking > Settings.
- Publish a service. Choose General agenda to accept bookings without professionals, or Assigned professionals for a team service.
- Configure opening hours and general capacity, then customize Appearance, Form fields, Payments and Emails in Settings. Use [mfab service=”123″] to show only one service on a page.
- For paid services, add Stripe or PayPal credentials. Test your own provider configuration in sandbox before accepting real payments.
- Configure WordPress mail delivery and a system cron invoking wp-cron.php (recommended every five minutes).
Composer and vendor are not required to run the plugin.
Perguntas frequentes
-
Do I need to create professionals?
-
No. Choose General agenda in the service editor. These services share the capacity set in Booking settings and use your general opening hours. Team services retain their own professional schedules and capacity. General-agenda appointments and team appointments use separate capacity pools.
-
Can I customize the design without code?
-
Yes. Settings > Appearance provides colors, heading, welcome text, rounded corners and maximum width with a live preview. Text/background contrast is validated and button text adapts to the accent. The form adapts to smaller screens.
-
What changes when upgrading from 1.0.2?
-
Existing bookings, private links, payments, templates and professional assignments are retained. Existing assigned services remain team services; unassigned services become bookable using the general agenda when their duration and price are configured. Review those services before upgrading. Changing a service between agendas is blocked while it has upcoming active bookings. See docs/MIGRATION.md.
-
Are refunds automatic?
-
No. Issue refunds in your payment provider dashboard. Cancelled paid bookings and late payments are marked as requiring a refund. The remaining balance on deposit bookings is collected separately by the business.
-
Which timezone is used?
-
Opening hours, public times and list/editor timestamps use the WordPress site timezone; bookings are stored in UTC. The admin calendar displays the browser timezone, explicitly labelled above it. Repeated daylight-saving times have distinct UTC offsets.
-
What happens on uninstall?
-
Data is retained to prevent accidental loss. Use the native privacy tools for individual requests and the documented cleanup procedure for complete removal. Activate individually on multisite; network activation is not supported.
-
Which currencies are supported?
-
EUR, USD, GBP, CAD, AUD, CHF, SGD and NZD (two decimal places). Provider minimum amounts and account/country restrictions still apply.
-
Is there a customer account or Google Calendar sync?
-
Customers manage a booking through an unguessable private link. Google Calendar and Outlook links and .ics downloads are included for confirmed bookings. They create calendar copies, not automatic synchronization. Customer accounts are not included.
Avaliações
Este plugin não tem avaliações.
Contribuidores e programadores
“MF Appointment Booking” é software de código aberto. As seguintes pessoas contribuíram para este plugin:
ContribuidoresTraduza o “MF Appointment Booking” para o seu idioma.
Interessado no desenvolvimento?
Consulte o código, consulte o repositório SVN, ou subscreva o registo de alterações por RSS.
Registo de alterações
2.1.1
- Clarified language settings and community translation support in the built-in guide.
- Refreshed all nine directory screenshots in English at a consistent desktop resolution.
2.1.0
- Add customer calendar links and ICS downloads for confirmed bookings.
- Add appointment address, directions and the {location} email placeholder.
- Add a categorized Documentation tab with copyable shortcodes.
- Include complete es_ES PHP/JavaScript translations and localized default emails, with mandatory translation checks in CI.
- Use the page language for dates and the profile language in the administrative calendar.
2.0.0
- Book services without professionals using a shared general agenda with race-safe capacity, buffers, cancellations and manual blocks.
- Replace the long settings page with six accessible tabs, cards, contextual saves and retained input on validation errors.
- Add configurable appearance with live preview and accessible color validation.
- Add a visual month picker, booking summaries, automatic single-professional selection and preserved contact details.
- Support service-specific shortcode forms and retain existing bookings, team assignments and private links on upgrade.
1.0.2
- Rename the plugin and all runtime identifiers to MF Appointment Booking.
- Use WordPress.org language packs instead of bundled translations or manual textdomain loading.
- Audit request authorization and document the migration from the private prerelease.
1.0.1
- Fix: restore the Calendar submenu and open the appointment calendar when clicking MF Appointment Booking.
- Add a regression check for navigation through the WordPress admin menu and clarify the calendar access in the user guide.
1.0.0
- Complete booking, scheduling, payments, email, calendar, form builder and export workflows.
- Race-safe capacity checks, payment verification/idempotency, DST handling and privacy tools.
0.1.0
- Initial private catalog with validated metadata and administrator permissions.
