This plugin gives associations, groups and individuals the ability to share items (e.g. cargo bikes, tools) with users. It is based on the idea of the commons and sharing resources for the benefit of the community.

CommonsBooking was developed for the “Commons Cargobike” movement, but it can be used for any kind items.

Unique features:

  • Items can be assigned to different locations for the duration of a timeframe, each with their own contact information. You can display all locations via shortcode as an interactive map.
  • Simple booking process: bookable timeframes can be configured with hourly slots oder daily slots.
  • Auto-accept bookings: A registered user can book items without the need for administration.
  • Codes: The plugin automatically generates booking codes, which are used at the station to validate the booking.
  • Managers can set holidays or repair slots to prevent items from beeing booked.

Use cases:

  • Your association owns special tools that are not in use every day, and you want to make them available to a local group.
  • You own a cargo bike that you want to share with the community, and it will be placed at different locations throughout the year.

Plugin websites


  • Booking calendar
  • Items list
  • Booking confirmation
  • User bookings list


Using The WordPress Dashboard

  1. Navigate to the ‘Add New’ in the plugins dashboard
  2. Search for ‘commonsbooking’
  3. Click ‘Install Now’
  4. Activate the plugin on the Plugin dashboard

Uploading in WordPress Dashboard

  1. Navigate to the ‘Add New’ in the plugins dashboard
  2. Navigate to the ‘Upload’ area
  3. Select from your computer
  4. Click ‘Install Now’
  5. Activate the plugin in the Plugin dashboard

Using FTP

  1. Download
  2. Extract the commonsbooking directory to your computer
  3. Upload the commonsbooking directory to the /wp-content/plugins/ directory
  4. Activate the plugin in the Plugin dashboard


Where can i find help/report bugs?


12 November 2023
Toll gemacht, schnell aufgesetzt, hervoragender Support.Mir ist es mit wirklich wenig Zeit gelungen das System aufzusetzen, für unseren Bedarf (Lastenradverleih/18 Räder) geringfügig anzupassen. Es läuft seit über einem Jahr problemlos.Vielen Dank für die Tolle Arbeit. Ohne dieses Plugin wäre unser kostenloser Verleich nicht zu realisieren gewesen.
01 May 2023
We manage more than 20 items (mostly bikes) via our website. CommonsBooking does a great job in connecting all of the different user roles via website and email features and so effectivly covers the whole process. Also many optional features can be enabled via admin panel. From the various booking plugins that you can download for free (from the wordpress plugin repo) it is the only one that supports assigning locations your items and with that being able to render a map of all the items. I like that its actively developed and you can contribute easily to the code base.
17 January 2023
Powerful plugin that works well both from admin and end-user perspective. Lots of clever configuration options, constant improvements, awesome and fast support by the developers. Great job!
29 April 2022 1 reply
Wir haben CommonsBooking jetzt seit einer ganzen Weile für unser größeres Lastenradprojekt erfolgreich im Einsatz. Die Administration ist für unser Team problemlos und intuitiv möglich, erweiterte Funktionalität wie die anpassbaren E-Mail Vorlagen funktionieren auch hervorragend. Wir sind sehr überrascht, was wir damit alles machen können. Auch bei komplizierten Kombinationen aus halbtags und ganztags Buchungen verhält es sich wie erwartet.
22 December 2020 2 replies
The plugin provides the advised functionality. I couldn't find a way to deactivate the codes, though. It would be much more useful if peer to peer sharing would be integrated. Hope it's on the roadmap. Thanks for your work! Cheers.
Read all 6 reviews

Contributors & Developers

“CommonsBooking” is open source software. The following people have contributed to this plugin.


“CommonsBooking” has been translated into 1 locale. Thank you to the translators for their contributions.

Translate “CommonsBooking” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.


2.9 (23.02.2024)

NEW: You can now schedule automated emails with booking codes to be sent to stations in custom intervals. (Thanks @printpagestopdf)
NEW: You can now apply custom rules to restrict bookings to a certain limit (e.g. max. 3 bookings per user per month).
NEW: An experimental new frontend shortcode as a drop-in replacement for the [cb_map] shortcode called [cb_search]. Read the documentation for more information. (Thanks @kmohrf)
NEW: You can now create holiday timeframes with manually defined dates and import holidays for German states.
NEW: You can now make items bookable for pre-defined dates (e.g. events) without just one timeframe.
ENHANCED: Added button to clear cache from the advanced options tab.
FIXED: Sender and subject of emails can now contain special characters. (Thanks @nelarsen)
FIXED: Fixed issues with booking code generation (Thanks @nelarsen)
FIXED: Commons API crashing when WP_DEBUG is enabled.
FIXED: Deprecation warnings for PHP 8.X
FIXED: Updated some packages

2.8.6 (02.12.2023)

FIXED: Holidays sometimes bookable when they should not be bookable

2.8.5 (03.11.2023)

ADDED: Support for WordPress Personal Data Exporter & Personal Data Eraser
ENHANCED: The amount of days that will be counted when creating a booking over closed days / holidays is now configurable.
FIXED: Sorting the table of bookings / locations / timeframes in backend
FIXED: Wrong error messages when creating a new timeframe
FIXED: Availabilities of items in GBFS API
FIXED: Rendering error in item table
FIXED: Holidays not working when they are more than 30 days in the future
FIXED: Map sometimes not loading

2.8.4 (20.09.2023)

FIXED: Incorrect time in booking confirmation
FIXED: Can now trash bookings again (thanks @danielappelt)
FIXED: URL prefix for GBFS root (thanks @futuretap)
FIXED: Shortcode Parameter causing fatal error
ENHANCED: Made items, locations & taxonomies searchable (thanks @flegfleg)

2.8.3 (25.08.2023)

ENHANCED: Booking codes are now available for timeframes without a configured end-date
ENHANCED: Added option to change directory of filesystem cache
ENHANCED: Fixed permission system to allow for creation of custom roles ( see )
ENHANCED: Added filter to allow selecting other roles to be assigned to items / locations
FIXED: Location map view not working since 2.8.1
FIXED: Booking offset should work again

2.8.2 (09.08.2023)

FIXED: fatal error om admin backend after upgrading to wordpress 6.3
FIXED: Wrong field value for iCal events (the field value is reset, you have to re-set your values after updating)
FIXED: Bug sending cancellation mail to admin on admin cancellation
FIXED: Availability text for items in item shortcode (Merged display of overlapping timeframes)
FIXED: Location without addresses not displayed correctly
FIXED: Incorrect error messages displayed to user during booking process
FIXED: Not all routes of GBFS API were initialized (thanks @futuretap)
FIXED: User data loading in backend caused timeout on large instances
ENHANCED: Improved booking validation
ENHANCED: Default value for days that are bookable in advance set to 31

2.8 (27.04.2023)

NEW: Added option to set a minimum offset for bookings. This allows to set a minimum time between booking and pickup.
NEW: Added ability to create bookings from the backend.
NEW: Can now add a signature that will be added to each email sent from the instance.
NEW: Additional user fields can be shown on booking details page.
NEW: iCalendar files can be attached to booking confirmation emails.
NEW: Experimental support of iCalendar feed to subscribe to all bookings that can be seen by the user.
ENHANCED: Added ability for item admins to also receive copy of restriction emails.
ENHANCED: Added ability to use REDIS as cache backend.
ENHANCED: Export of booking data now conforms to ISO 8601 standard. Thanks to @splines
ENHANCED: Can now filter items / locations by category in admin.
ENHANCED: ORDER and ORDER BY can be used in shortcodes to define the order of items / locations.
ENHANCED: Added filter hooks for timeframe defaults. Advanced users can now define their own default settings for timeframes through a filter hook.
ENHANCED: Added filter hooks for mail attachment. Advanced users can now define their own mail attachments through a filter hook. ( Frontend settings are not yet available )
ENHANCED: Added a key for the item availability table.
FIXED: Cronjobs were not re-scheduled when the execution time was changed. All cronjobs are re-scheduled on plugin update.
FIXED: Removed deprecated cronjobs.
FIXED: Dark and light text color options now work properly.
FIXED: No clustering with max_cluster_radius set to 0. You should now be able to disable map clustering.
FIXED: Missing translations.
FIXED: Vulnerability in dependency.
FIXED: Wrong month shown in calendar due to timezone issues.

2.7.3 (20.10.2022)

FIXED: Fatal error when trying to export timeframes with deleted items
FIXED: Fatal error when trying to access invalid data
FIXED: Restriction e-mails now contain correct booking links again
FIXED: Issue with map category presets

2.7.2 (30.06.2022)

FIXED: Plugin incompatibility with WPBakery
FIXED: Plugin incompatibility with Events Manager
FIXED: Plugin incompatibility with All-in One Events Calendar
FIXED: Shortcodes sometimes not showing all items
FIXED: Overbooking was possible when combining hourly and daily slots
ENHANCED: Optimized caching to avoid caching conflicts on multiple instances on same server
FIXED: Location map sometimes not properly rendered on location edit screen

2.7.1 (05.05.2022)

FIXED: Fixed Fatal error when PHP Version is < 7.4 / we recommend updating you PHP version to 7.4. because 7.3 is no longer maintained. Please ask you hosting provider for support.
FIXED: Migration did not work properly
ADDED: You can now add html text-snippets before and after an email template tag. This allows to add e.g. a label that is only shown when the template variable has content. Syntax: Add optional text in square brackets [xxx] directly before and after the template tag. Example: {{[optional text before ]item:post_title[optional text after]}}
ENHANCED: Unified filter hooks. New hook prefix is commonsbooking_xxx . Please check your custom filters.

2.7 (26.04.2022)

NEW: You can now choose your individual colors to customize Commonsbooking to your liking. Try it via Options -> CommonsBooking -> Templates (scroll down to color section)
NEW: Added action hooks to templates
ENHANCED: Optimized the commonsbooking internal caching so booking lists and maps are rendered faster.
ENHANCED: Modified CSS styles for calendar.
ENHANCED: Item lists and availability tables will now output a warning when no items have been found.
ENHANCED: Added links to location pages in maps, booking lists, availability tables and item overview page.
ENHANCED: Items, which are restricted to a certain user group are now hidden for non-eligible users.
ENHANCED: Map: Pre-Filtering of items by item-categorys and location categorys is now possible
FIXED: Set default advance booking days for existing timeframes to 365 days.
FIXED: Some rendering issues with the calendar have been fixed.
FIXED: Issues with already past bookings where cancellation was still possible
FIXED: Wrong time displayed in cancellation messages

2.6.12 (27.02.2022)

FIXED: Fixes issue that prevents user meta data (.e.g phone number etc.) to be shown in booking emails

2.6.11 (23.02.2022)

FIXED: Some users reported that bookings were no longer possible. After clicking on “continue to booking check” the expected booking page was not loaded. Since this only occurred on some systems and sporadically, it was not possible to determine the cause in the individual cases. However, our analysis showed that it was likely related to a WordPress function for validating user input. We have adjusted this in the current version.

2.6.10 (20.02.2022)

FIXED: With certain time frame settings it could happen that the calendar was only displayed starting with the next month. This is now fixed.
FIXED: The map on the location page always showed a default location. It now shows the correct location.
FIXED: In some systems, bookings could not be executed because the booking confirmation page did not load.

2.6.9 (18.02.2022)

FIXED: When an a href link was included in the site pickup instructions, it caused the booking calendar to not load correctly.

2.6.8 (14.02.2022)

FIXED: fixed sanitzing issues
FIXED: reminder mails have been sent to users even if not activated in options
FIXED: error on location detail pages in some cases

2.6.7 (13.02.2022)

FIXED: fixed minor technical issue that leads to hidden gps refresh button in some environments

2.6.5 (13.02.2022)

FIXED: fixed issue of missing user data in booking and restriction related emails
MODIFIED: Internal refactoring of codebase

2.6.4 (10.02.2022)

FIXED: fixed issue that produces an error when sending restriction mails in some environments and cases

2.6.3 (10.02.2022)

FIXED: fixed issue with classic editor and gps button on location editor

2.6.2 (10.02.2022)

FIXED: fixed minor technical issue

2.6.1 (10.02.2022)

FIXED: Map geo-coordinates are not updated after saving location without page reload with gutenberg editor. Added button to manually update / set geo coordinates and added some minor map improvements.

2.6 (03.02.2022)

Notice: Version 2.5 was only a release candidate is skipped as a stable release to to technial reasons


  • Bookings as a separate menu item, better overview in the backend. The bookings are no longer listed under menu item “time frame” They moved to a new menu item …