Rentals & Bookings � Solo & Marketplace
Rentals & Bookings � Solo & Marketplace
Description
WooCommerce rental bookings plugin for Solo stores and multi-vendor Marketplaces. Works standalone with WooCommerce (Solo Mode) or with Dokan for a full rental marketplace (Marketplace Mode). Availability calendars, flexible pricing rules, deposits, and security deposits.
For full documentation, visit https://wahra.tn/plugins/?wahra-docs.
Support & Community
Have questions? Found a bug? Want to suggest a feature?
- Support Forums: wordpress.org/support/plugin/wahra-rentals-bookings
- GitHub Issues: wahra-tn/wahra-rentals-bookings/issues
- Documentation: Documentation
Our team responds to all support questions within 24-48 hours.
Installation
Automatic Installation
- Go to Plugins > Add New in your WordPress admin panel
- Search for WooCommerce Rentals Bookings
- Click Install Now and then Activate
- Navigate to Rentals > Settings (Solo Mode � WooCommerce only) or WooCommerce > Rentals Settings (Marketplace Mode � with Dokan) to configure
Manual Installation
- Download the plugin ZIP file from WordPress.org
- Go to Plugins > Add New > Upload Plugin
- Select the ZIP file and click Install Now
- Activate the plugin
- The plugin auto-detects your setup: without Dokan it runs in Solo Mode (WooCommerce only); with Dokan active it runs in Marketplace Mode (multi-vendor)
After Activation
- Go to Rentals > Settings (Solo Mode) or WooCommerce > Rentals Settings (Marketplace Mode with Dokan) to configure platform categories, pricing rules, and payment settings
- Create or edit a WooCommerce product and enable it as a rental via the Rental product data tab (solo) or the Booking Wizard in the Dokan vendor dashboard (Marketplace Mode)
- Set availability, pricing, and payment options
- Publish the product – customers can now book it from your shop
Screenshots

Booking wizard – Welcome step with draft resume and progress tracking.

Booking wizard – Category selection (Accommodation, Vehicle, Equipment, Space, Service, Product).

Booking wizard – Availability setup including schedule, buffer times, and slot durations.

Booking wizard – Dynamic pricing engine showing weekend, long-stay, and seasonal rule configuration.

Booking wizard – Payment settings for deposits, security deposits, and balance collection methods.

Vendor dashboard – Bookings management interface with status-based filtering and lifecycle actions.

Vendor dashboard – Interactive FullCalendar view with color-coded booking statuses and event previews.

Vendor dashboard – Comprehensive analytics showing KPI cards, revenue charts, and category performance.

Admin settings – Platform category management and global booking configuration.

Admin settings – Payment and security deposit policy configuration per category.

Admin settings – Granular vendor permissions matrix to control dashboard capabilities.

Frontend product page – The customer-facing booking interface with date picker and price calculation.
Faq
Yes. In Solo Mode the plugin works with WooCommerce alone � no Dokan required. You get a full Rentals menu in wp-admin with bookings management, calendar, analytics, and settings. Install Dokan to unlock Marketplace Mode and let multiple vendors manage their own rentals independently.
WooCommerce 8.0 or higher. The plugin is tested up to WooCommerce 10.4.3 and declares HPOS (High-Performance Order Storage) compatibility.
Yes. The plugin declares HPOS compatibility and uses custom database tables for booking data, so it works with both the legacy post-based storage and the new HPOS tables.
Yes. The equipment, space, and service categories support time slot booking modes in addition to daily rentals. You can configure slot durations (e.g., 1 hour, 2 hours, half day) per category.
When a customer books a rental, they can be charged a deposit (percentage or fixed amount) at checkout. The remaining balance is collected later – online, by bank transfer, cash on delivery, or another method. Deposit settings are configured per platform category by the admin.
A security deposit is a hold or charge to cover potential damage to the rental item. When the item is returned in good condition, the security deposit is released. If there is damage, the vendor can forfeit all or part of the security deposit.
This is controlled by the platform admin through vendor permissions. Per category, the admin can allow or disallow vendors from setting their own base prices, deposit amounts, security deposits, and scheduling preferences.
Bookings follow the flow: pending > confirmed > checked_in > checked_out > completed. Automated cron jobs handle routine transitions (auto-start on the rental start date, auto-return on the end date). Vendors can also trigger transitions manually from their dashboard.
The booking moves to checked_out status. The vendor then reviews the item condition, records any damage, and updates payment statuses. Clicking “Validate and Complete” moves the booking to completed status. This is the restitution validation workflow.
Yes. The plugin ships with translation files for 12 languages: Arabic, Chinese, French, German, Italian, Japanese, Dutch, Polish, Portuguese (Brazil), Russian, Spanish, and Turkish. You can add more translations using tools like Loco Translate or Poedit.
Yes. The booking wizard is a React single-page application designed mobile-first. It is fully responsive and works on phones, tablets, and desktops. The wizard auto-saves drafts so vendors can start on one device and finish on another.
Yes. The plugin includes colour customisation settings that let you change the primary colour used in the booking interface, calendar, and vendor dashboard elements.
The calendar uses FullCalendar to display all bookings in day, week, or month views. Each booking is colour-coded by status. Vendors can use the calendar to spot scheduling conflicts, upcoming bookings, and available time slots at a glance.
Five types of dynamic pricing rules: weekend pricing, long-stay discounts, early-bird discounts, last-minute discounts, and seasonal pricing. Each rule type is available to specific platform categories (e.g., seasonal pricing is only for accommodation and spaces). Rules are configured globally by the admin and optionally overridden by vendors.
Yes. Bookings are created as part of the standard WooCommerce checkout flow. The deposit amount is charged at checkout and added as a line item to the WooCommerce order.
The plugin uses its own custom database tables and does not modify WooCommerce core tables. It is designed to coexist with other plugins. If you experience a conflict, please report it in the support forum and we will investigate.
Vendors can cancel bookings from the dashboard when the booking is in pending, confirmed, or checked_in status. The system also automatically cancels pending bookings whose start date has passed without confirmation.
Yes. Vendors can create manual bookings through the booking management interface without requiring a customer checkout. This is useful for phone orders, walk-ins, or recording existing reservations.
The plugin sends automated emails for booking confirmations, status changes, balance payment reminders, and cancellations. Email templates are configurable through the notification settings.
The booking interface works independently of page builders since it uses WooCommerce product pages and the vendor dashboard. The plugin does not add custom blocks or shortcodes that would conflict with page builders.
The plugin creates 15 custom database tables for bookings, availability indexes, daily availability, pricing rules, wizard drafts, holds, blackout dates, and logs. This approach is faster than storing data in post meta and keeps the wp_posts table clean.
The uninstall process checks a “preserve data” option first. If data preservation is off, it removes all 15 custom tables, plugin options, post and user meta, capabilities, cron hooks, and transients. If preservation is on, data is kept for later reinstallation.
Yes. The full React source code for the booking wizard is included in the /app/src/ directory alongside the compiled JavaScript. This satisfies WordPress.org’s requirement for readable/auditable source code.
The plugin is designed for single-site installations. Multisite support has not been tested and is not officially supported at this time.
Post your question in the WordPress.org support forum and we will respond within 24-48 hours. You can also visit documentation for more details.
Please use the WordPress.org support forum or open an issue on GitHub.