Description
Baza Booking Calendar turns a page of your site into a booking calendar. Clients pick a free date and hour, fill in a short form and pay online; you see the booking at once in a table, a timeline and a dashboard, and change its status in a click.
What you get
- A booking calendar for your site with free and busy hours, prices on the slots and a short booking form.
- The calendar as a shortcode, a Gutenberg block and an Elementor widget: choose the service, the design, hours or month view right in the editor.
- Hourly, split-hour and whole-day services, as many as you need.
- Online payment with PayPal and Monobank, or pay in the shop with any WooCommerce payment method.
- WooCommerce integration: sell a service as a product of the type “Baza booking”, let clients choose the date and time on the product page, and import products and bookings from WooCommerce Bookings.
- A bookings table with filters and bulk actions, a day timeline and a dashboard; open any booking in a side panel to edit dates, price, client and status.
- A client list with each client’s bookings, notes and blocking.
- E-mail notifications to clients and to you, with a log of every message the site sent.
- Working hours for every day of the week and the days a service is closed.
- A form builder for the booking form’s standard fields, with your own texts.
- A discount you can give by hand when you enter a booking.
- Printable booking documents, import and export of bookings and clients, and an editor for every text the calendar shows.
- Translated into English, Ukrainian, Russian, German, Polish, Portuguese and Slovak.
- Light and dark admin themes, and a calendar that follows your site’s colours.
Made for developers too
Hooks and filters throughout, templates a theme can override for the WooCommerce booking picker, and a documented data model.
Paid plans
The plugin you get here is complete on its own: nothing in it is locked or time-limited. For larger businesses there are paid plans (Starter, Pro and Elite) that add more. What they bring on top of this plugin:
- More ways to get paid: Stripe, Square, Revolut, SumUp, Paddle, Mollie and LiqPay, prepayments, and a balance for each client.
- Sell more: a cart with several services in one booking, additional services and surcharges, special offers, packages, promo codes, a loyalty program, automatic and personal discounts, and taxes.
- Capacity and rules: several bookings for one time slot, days off by date, real-time calendar updates, registering clients while they book, and AJAX loading of the calendar.
- Messages: Telegram, WhatsApp, Viber and SMS notifications, reminders before the event, and an editor for the e-mail templates.
- Connect your tools: Google Calendar sync, Google Meet and Zoom, Zapier, sign-in with Google, a REST API and a mobile app.
- Run the business: accounting, an activity log, booking statistics, a customer account panel, a tracker of additional services, an embeddable widget and extra calendar themes.
- Support: e-mail support, and priority support on the higher plans.
All the plans and what each includes: https://bazadevelopers.com/baza-booking-calendar-pricing-plans/
Source code and build
Every minified script (*.min.js) and compiled stylesheet (*.css) ships with its human-readable source in the plugin: assets/js/ (scripts; assets/js/v2/ for the booking form, assets/js/core/, ui/, features/ and entries/ for the bundled modules), assets/css/ (SCSS) and modules/*/assets/. The build tools are included too – package.json and gulpfile.js. To rebuild everything from the sources:
- Install Node.js 18 or newer.
- In the plugin folder run
npm install. - Run
npx gulp build(scripts:npx gulp js, styles:npx gulp css).
Third-party libraries
Included unmodified, each under its own license, with the license text next to the library:
- ApexCharts 3.54.0 – https://github.com/apexcharts/apexcharts.js – MIT –
assets/vendor/apexcharts/(charts of the statistics and reservations screens) - Coloris (Melloware) – https://github.com/melloware/coloris – MIT –
assets/vendor/coloris/(the colour picker in the design settings) - Vanilla Calendar Pro 3.4.0 – https://github.com/uvarov-frontend/vanilla-calendar-pro – MIT –
assets/vendor/vanilla-calendar/(the date picker)
The plugin also uses jQuery, jQuery UI and the Backbone/Media scripts that ship with WordPress, loaded from WordPress itself and not copied into the plugin.
External services
The plugin talks to an outside service only when you turn the matching feature on, and only as described here. Nothing is sent when the plugin is activated, and no data is sent to the plugin’s authors.
PayPal – https://www.paypal.com – online payments (only when PayPal is chosen as the payment method under Baza Booking > General Settings > Payments).
* What it is for: taking the client’s payment for a booking, checking its status and, when you refund a booking, returning the money.
* What is sent, and when: when a client presses “Book and pay”, and again when PayPal sends the client back or when a booking’s payment is re-checked or refunded, the plugin sends the order amount, the currency, the booking reference and your PayPal API credentials to api-m.paypal.com (api-m.sandbox.paypal.com in test mode). The client then enters their card or PayPal details on PayPal’s own page; the plugin never sees them.
* Terms of service: https://www.paypal.com/legalhub/paypal/useragreement-full
* Privacy policy: https://www.paypal.com/webapps/mpp/ua/privacy-full
Monobank acquiring – https://api.monobank.ua – online payments (only when Monobank is chosen as the payment method).
* What it is for: creating an invoice that the client pays on Monobank’s page, checking whether it was paid, and removing an invoice that is no longer needed.
* What is sent, and when: when a client presses “Book and pay” the plugin creates an invoice (api.monobank.ua/api/merchant/invoice/create) with the amount, the currency, the order number, the names of the booked services (as the invoice’s description and basket line) and the return and notification addresses on your site; after that it asks for the invoice’s status (invoice/status) when the client comes back and from a short background re-check; when an unpaid booking expires or is cancelled it removes the invoice (invoice/remove). Your Monobank merchant token travels in the request header. The client enters their card on Monobank’s page.
* Terms of service and privacy policy: https://monobank.ua/e-comm
Gravatar – https://gravatar.com – client pictures in the admin screens and the client’s account.
* What it is for: showing a client’s picture when they have one.
* What is sent, and when: when a picture is shown, a hash of the client’s e-mail address is used in the address of the image requested from gravatar.com. The e-mail address itself is not sent. Pictures a client uploads on your site are used first, and then no request is made.
* Terms of service: https://automattic.com/terms-of-service/
* Privacy policy: https://automattic.com/privacy/
Support
Questions and bug reports: the plugin’s support forum on WordPress.org. You can also write to support@bazadevelopers.com.
Installation
- Upload the plugin to
/wp-content/plugins/or install it from the Plugins screen, then activate it. - Follow the short setup wizard (language, currency, working hours, your first service).
- Put the shortcode
[baza_booking_calendar]on a page. - Under Baza Booking > General Settings > Payments choose how clients pay.
For WooCommerce: install WooCommerce, choose WooCommerce as the payment gateway, and add a product of the type “Baza booking”.
FAQ
-
Can clients pay online?
-
Yes: PayPal and Monobank directly, or any payment method of your WooCommerce shop.
-
How many services can I have?
-
As many as you need.
-
Does it work with WooCommerce?
-
Yes. Bookings can be paid as WooCommerce orders, a service can be sold as a product, and bookings from WooCommerce Bookings can be imported.
-
Where do I put the calendar?
-
Anywhere the shortcode
[baza_booking_calendar]works: pages, posts and page builders. -
Is there a paid version?
-
Yes, with extra features for larger businesses: more payment gateways, a cart, additional services, promo codes, a loyalty program, Google Calendar sync, Zapier, accounting and more. The plugin here stays fully usable without it. See the plans: https://bazadevelopers.com/baza-booking-calendar-pricing-plans/
-
Is my clients’ data sent anywhere?
-
Only to the payment service a client chooses to pay with, as described under “External services” below.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Baza Booking Calendar” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “Baza Booking Calendar” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
3.2.1
- Calendar widget for the block editor and Elementor.
- Time of an hourly add-on: choose one or several stretches of the day on a slider; works with 12-hour AM/PM times.
- PayPal now lists a prepayment’s whole order line by line.
- Clearer payment errors: the real reason is shown when a gateway cannot be reached.
- Smaller fixes and updated translations (Ukrainian, Russian, German, Polish, Portuguese, Slovak).
3.2.0
- WooCommerce integration: product type “Baza booking”, date picker on the product page, cart and checkout, bookings made from orders, import from WooCommerce Bookings.
- A price history for every booking: what changed the price, when and who did it.
- Scheduled tasks screen with the next run of each background task.
- Cleaner admin tables on small screens.
3.0.0
- Major release.
