Guide to installing, setting up and using Bookwise Appointments 1.0.1 for WordPress.
Requirements: WordPress 6.3 or newer and PHP 7.4 or newer.
bookwise-appointments-1.0.1.zip and click Install Now.The plugin has its own short checklist under Bookwise → Help. In short:
A service has a name, description, duration, buffers before and after, an optional price (display only), a colour for the calendar, a sort order and an active flag. Inactive services cannot be booked.
A staff member has a name, email, the services they offer, weekly hours (several ranges per day, for example to leave a lunch break), days off and an optional time zone of their own. You can link a WordPress user to a staff member to give them access to their own bookings (see Roles).
Days when nobody takes bookings are set at the bottom of Bookwise → Settings.
Weekly hours, minus days off and business holidays, minus existing bookings (including buffers), limited by the minimum notice, the booking window and the slot interval. With “any available person” the plugin picks a free person according to the strategy you choose in Settings.
Under Bookwise → Settings:
| Setting | What it does |
|---|---|
| Business time zone | Used for staff without their own zone, business holidays and the bookings list. Visitors always see times in their own zone. |
| Minimum notice, Booking window, Time slot interval | How soon before, how far ahead and in what steps visitors can book. |
| New bookings are | Whether new bookings start as pending or confirmed. |
| Any available person | How a person is chosen when the visitor has no preference. |
| From name, From email, Location | Used in emails and merge tags. |
| Customer self-service | Allow customers to cancel and/or reschedule from the link in their email; cancellation and rescheduling windows in hours (default 24); the page that shows the link target. |
| Pending bookings expire after, Completed bookings | Expire unconfirmed bookings after a number of hours; mark confirmed bookings completed after they have ended. |
| Currency symbol, Accent colour, Consent checkbox text | Display options and an optional consent checkbox on the form. |
| On uninstall | Opt-in: delete all data when the plugin is deleted (off by default). |
Add the form to any page or post:
[bookwise_booking] [bookwise_booking service="3"] [bookwise_booking service="3" staff="2"]
The first shows the full flow (service, person, date and time, your details). service and staff take the numeric IDs shown in the admin lists and skip the matching step. In the block editor, use the Bookwise Booking Form block. Scripts and styles load only on pages that show the form.
The form detects the visitor's time zone and offers a selector. Spam protection uses a nonce, a honeypot field, a time trap and rate limiting.
Emails are sent with the WordPress mail function (wp_mail()); the plugin uses no mail service of its own. Under Bookwise → Emails you can switch each email on or off, edit subjects and messages with merge tags, preview them and send a test.
24, 1). They run on WP-Cron, are sent once, and a missed run is caught up safely.Emails contain secure, expiring links to view, cancel or reschedule a booking on the page with the [bookwise_my_booking] shortcode. That page is created for you on activation; you can choose another page under Settings. Cancelling and rescheduling are allowed until the number of hours you set before the appointment, and rescheduling only offers times that are really free.
Bookwise stores the name, email address, optional phone number and notes a visitor enters, their time zone and the booking, in your WordPress database. The visitor's IP address is not stored; a hash is used only as a temporary key for rate limiting. An email log records the recipient address, type, time and result of each email sent.
The booking form uses labelled fields, real buttons, a calendar operable with the keyboard (Tab and arrow keys), screen reader announcements when times load, visible focus and a layout that reflows down to 320 px. The form and the main admin screens were checked with the axe-core accessibility engine and by keyboard. This is not a formal accessibility audit; please report problems in the support forum.
A public REST API under /wp-json/bkwz/v1/ offers services, staff, availability (availability/dates, availability/slots) and creating a booking (bookings). Developers can also use the plugin's actions and filters, which are prefixed bkwz_.
Deactivating or deleting the plugin keeps your data. To remove everything when the plugin is deleted, tick Delete all services, staff, bookings and settings when the plugin is deleted under Bookwise → Settings first.
Reminders use WP-Cron, which runs when the site receives visits. On a quiet site, set up a real server cron job that calls wp-cron.php.
The form limits how many bookings one visitor can make in a short time. Wait a few minutes and try again.
Bookwise Appointments does not contact any external service and does not track visitors. Services, staff, customers and bookings are stored in your own WordPress database. The visitor's time zone is read in the browser and is only sent to your own site. Emails are handed to the WordPress mail function, which uses your site's own mail setup; the plugin adds no mail service and makes no remote requests.
The plugin list and one dismissible notice on the Bookwise screens contain a link to https://007aj.com/bookwise-appointments-suite. It is a plain link: no data is sent unless you click it.
Once the plugin is listed on WordPress.org, use its support forum at wordpress.org/support/plugin/bookwise-appointments. In the meantime, or for anything else, email admin@007aj.com.