Plugin / Appointment Booking Calendar




Appointment Booking Calendar is an appointment calendar plugin for accepting online bookings from a set of available time-slots in a calendar. The booking form is linked to a PayPal payment process.

You can use it to accept bookings for medical consultation, classrooms, events, transportation and other activities where a specific time from a defined set must be selected, allowing you to define the maximum number of bookings that can be accepted for each time-slot.


  • The customer can book an available time slot from a defined set.
  • The booking form is connected to a PayPal payment page
  • You can define the appointment booking capacity for each time-slot.
  • A notification email is sent to the specified email addresses (one or more) after completed the booking payment.
  • A confirmation email with the appointment data is sent to the user after completing the booking payment.
  • You can assign a user to the appointment booking calendar. Users with “Editor Access Level” will get access to the appointment calendar only if it has been assigned previously.
  • Exports the appointments to iCal format (Google Calendar, Outlook).
  • Includes captcha validation for preventing spam from the appointment calendar form.
  • The appointment calendar has a printable list of bookings.
  • You can edit the text of the notification/confirmation emails.
  • Allows defining the product name at PayPal, the currency, the PayPal language and amount to pay for an appointment booking (you can set zero to let the user pay/donate the desired amount).
  • Allows defining the working days, the exact time slots available and the appointment capacity of each time slot.
  • Multi-page calendar: You can setup it to show many months at once.
  • Multiple time-slot selection: The custom can book many time-slots at once if allowed in the settings.
  • Configurable date format: mm/dd/yyyy or dd/mm/yyyy
  • Supports both am/pm and military time.
  • Export appointment data to CSV / Excel files.
  • You can define the start day of the week on the appointment calendar.
  • You can define the minimum available date and the maximum available date for the bookings.
  • You can block specific dates.
  • New WP Gutenberg Editor Block
  • Elementor Editor Block
  • Pretty modern administration interface.

Please note that this is a plugin originally designed to accept appointment bookings linked to PayPal payments. The feature for accepting appointments without PayPal is implemented/available in the commercial versions:

Payments processed through the plugin are SCA ready (Strong Customer Authentication), compatible with the new Payment services (PSD 2) – Directive (EU) that comes into full effect on 14 September, 2019.

Available Languages and Adding New Languages / Translations

The current translations are already available in the appointment calendar plugin:

  • Afrikaans (af)
  • Albanian (sq)
  • Arabic (ar)
  • Armenian (hy_AM)
  • Azerbaijani (az)
  • Basque (eu)
  • Belarusian (be_BY)
  • Bulgarian (bg_BG)
  • Catalan (ca)
  • Central Kurdish (ckb)
  • Chinese (China zh_CN)
  • Chinese (Taiwan zh_TW)
  • Croatian (hr)
  • Czech (cs_CZ)
  • Danish (da_DK)
  • Dutch (nl_NL)
  • Esperanto (eo_EO)
  • Estonian (et)
  • Finnish (fi)
  • French (fr_FR)
  • Galician (gl_ES)
  • Georgian (ka_GE)
  • German (de_DE)
  • Greek (el)
  • Gujarati (gu_IN)
  • Hebrew (he_IL)
  • Hindi (hi_IN)
  • Hungarian (hu_HU)
  • Indian Bengali (bn_IN)
  • Indonesian (id_ID)
  • Irish (ga_IE)
  • Italian (it_IT)
  • Japanese (ja)
  • Korean (ko_KR)
  • Latvian (lv)
  • Lithuanian (lt_LT)
  • Macedonian (mk_MK)
  • Malay (ms_MY)
  • Malayalam (ml_IN)
  • Maltese (mt_MT)
  • Norwegian (nb_NO)
  • Persian (fa_IR)
  • Polish (pl_PL)
  • Portuguese Brazil(pt_BR)
  • Portuguese (pt_PT)
  • Punjabi (pa_IN)
  • Russian (ru_RU)
  • Romanian (ro_RO)
  • Serbian (sr_RS)
  • Slovak (sk_SK)
  • Slovene (sl_SI)
  • Spanish (es_ES)
  • Swedish (sv_SE)
  • Tagalog (tl)
  • Tamil (ta)
  • Thai (th)
  • Turkish (tr_TR)
  • Ukrainian (uk)
  • Vietnamese (vi)

If you want to add a new translation you can add a new PO/MO file into the “languages” folder. If you want to provide the translation for a new language you can send us the texts and we will create the PO/MO files for you. We will appreciate if you allow sharing your translation with other WordPress users.

The Troubleshoot Area

Use the troubleshot if you are having problems with special or non-latin characters. In most cases changing the charset to UTF-8 through the option available for that in the troubleshot area will solve the problem.

You can also use this area to change the script load method if the booking calendar isn’t appearing in the public website.

There are also two fields related to the iCal settings: the “iCal time zone difference vs. server time” and the “iCal timeslot size in minutes”. The “iCal time zone difference vs. server time” can be updated to match the desired time zone. The difference is calculated referred to the server time, you may have to test some values until finding the one that matches the desired time-zone. The “iCal timeslot size in minutes” can be modified to have a specific slot time in the exported iCal file.

The Restricted Dates Tab

The “Restricted Dates” tab into the calendar settings lets you to completely disable selected dates from the appointment calendar. This is useful for excluding public holidays or other specific dates where no appointments will be offered.

To restrict a date just click it into the date picker calendar that appears in this tab. To remove an already restricted date, just click it again.

The Special Dates Tab

The “Restricted Dates” tab into the calendar settings lets you use a different time-slots schedule for specific dates. For example you can have the same time-slots available for all Tuesdays in the appointment booking calendar, but if you want to offer different time-slots on a specific Tuesday then you can use the “Special Dates” tab to overwrite the time-slots for that date.

To use this section click a date into the date picker that appears on the “Restricted Dates” tab and a floating panel will appear for editing the available time-slots for the selected date.

The Notification Emails

The notification emails with the appointment data entered in the booking form can sent in “Plain Text” format (default) or in “HTML” format. If you select “HTML” format, be sure to use the BR or P tags for the line breaks into the text and to use the proper formatting.

Displaying a List of Appointments

A list with the appointments set on the calendar can be displayed by using this shortcode in the page where you want to display the list:


… can be also customized with some parameters if needed, example:

[CPABC_APPOINTMENT_LIST from="today" to="today +30 days" fields="DATE,TIME,NAME" calendar="1"]

… the “from” and “to” are used to display only the appointments / bookings on the specified period. That can be either indicated as relative days to “today” or as fixed dates.

There is also a “group” attribute to join the names of the appointments made on the same time-slot (for time-slots with multiple capacity):


The “fields” can be used to modify the columns to display, that field accepts the following items (uppercase):


… however, in most cases, probably you don’t want to display the phone or comments.

The styles for the list are located at the end of the file “all-css.css”:

.cpabc_field_0, .cpabc_field_1, .cpabc_field_2, ...

Clear the browser cache if the list isn’t displayed in a correct way (to be sure it loads the updated styles).

Opening the Calendar in a Different Month

There is a field in the settings area named “Open calendar in this initial month/year”. This can be used to display the calendar initially in a specified month. This is useful, for example, for bookings of an event that will happen in a future month, so you can display the calendar exactly on that month.

Allowing Booking Multiple Appointment Slots

These settings fields are available for each appointment calendar:

  • Minimum slots to be selected: This is the minimum number of slots that the customer must select in the booking form.

  • Maximum slots to be selected: This is the maximum number of slots that the customer can select in the booking form.

  • Close floating panel after selecting a time-slot?: Default: “Yes”. Set to “No” in the case the user has to select various slots in the same date. The price should be set for each total number of slots below (request cost setting).

Note that the request cost field will be automatically updated for allowing entering the price for each number of time-slots, giving total freedom at this price setting.

Exporting Appointments to CSV / Excel Files

The appointment data can be exported to a CSV file (Excel compatible) to manage the data from other applications. That option is available from the “bookings list”, the appointments can be filtered by date and by the text into them, so you can export just the needed appointments to the CSV file.

Appointment Calendar Theme Selection

The current Appointment Booking Calendar version has three pre-built CSS themes:

  • Default – Classic
  • Light
  • Blue

The theme can be selected into the administration area, below the calendar on the settings field labeled “Calendar visual theme”. Once selected a new theme, the CSS file “all-css.css” will be loaded from a different subfolder, be sure to edit the related CSS file if you need further modifications to the appointment booking calendar theme styles.

Other Versions and Features

The free version published in this WordPress directory is a fully-functional version for accepting appointments through PayPal as indicated in the plugin description. There is also a pro (commercial) version that includes the following additional features (not present in the free version):

  • Ability to process forms/appointments without PayPal
  • Form builder for a visual customization of the booking form
  • Email reminders for the appointments
  • Coupons / discount codes
  • Additional drop-down fields for multiple prices/services
  • Display calculated appointments price below the calendar
  • … and a lot more of rich features

Please note that the pro features aren’t advised as part of the free plugin in the description shown in this WordPress directory. If you are interested in more information about the pro features go to the plugin’s page:


77 reviews

Rating breakdown

Details Information



First Released

21 Nov, 2012

Total Downloads


Wordpress Version

3.0.5 or higher

Tested up to:


Require PHP Version:





The plugin hasn't been transalated in any language other than English.


The information provided in this THEME/PLUGIN DIRECTORY is made available for information purposes only, and intended to serve as a resource to enable visitors to select a relevant theme or plugin. wpSocket gives no warranty of any kind, express or implied with regard to the information, including without limitation any warranty that the particular theme or plugin that you select is qualified on your situation.

The information in the individual theme or plugin displayed in the Directory is provided by the owners and contributors themselves. wpSocket gives no warranty as to the accuracy of the information and will not be liable to you for any loss or damage suffered by you as a consequence of your reliance on the information.

Links to respective sites are offered to assist in accessing additional information. The links may be outdated or broken. Connect to outside sites at your own risk. The Theme/Plugin Directory does not endorse the content or accuracy of any listing or external website.

While information is made available, no guarantee is given that the details provided are correct, complete or up-to-date.

wpSocket is not related to the theme or plugin, and also not responsible and expressly disclaims all liability for, damages of any kind, arising out of the use, reference to, or reliance on, any information or business listed throughout our site.

Keep Leading Your Followers!
Share it for them.