Bookings allow libraries to book items in advance for book groups, events, and more!
Administrators will now have options to make itemtypes bookable within itemtype administration
- Add bookable option on itemtypes
- This allows to configure on item type level if an item is bookable or not. Note: The item type level setting can be overwritten on item level.
- In itemtype administration, staff will now see a checkbox for Bookable:
- If checked, all items of this type will be enabled for future bookings unless overridden at the item level.
Circulation
For items will still circulate as normal until the booked time frame. Staff will get a pop-up warning box to inform staff of the revised circulation date due to a booking. A checked-out item with a booking will be due 1 day before the date of the item booking.
Libraries can add warm-up and cool-down periods to bookings in the circulation rules. These periods prevent checkouts or additional bookings taking place too close to each so libraries can transfer or otherwise manage the requested items. This can be defined in the Default checkout, hold, and return policy of the circulation rules and the Default holds and bookings policies.


Permissions
Staff will need the permission called, "Manage item bookings (manage_bookings)" to manage bookings.
Booking Management
Staff can manage bookings for patrons from the patron account.
If a booking is canceled, staff can provide a reason for the cancellation.
Notifications
Libraries can send a notification when a booking has been canceled. This notice can be customized in Tools > Notices and slips.
Bookings to Collect
The circulation module will populate a report for staff to know what bookings to collect from the stacks. This is similar to the Holds Queue Report. Go to Circulation > Bookings to Collect. The report table can be exported or customized using the column configuration tools.
Report
Here is the report we shared during the tutorial video that libraries can use:
SELECT booking_id, start_date, end_date, branches.branchname as branchname, biblio.title as title, items.barcode as barcode,
items.itemcallnumber as callnumber, borrowers.surname as surname, borrowers.firstname as firstname
FROM bookings
JOIN borrowers ON patron_id=borrowernumber
JOIN biblio ON biblio_id=biblionumber
JOIN items ON item_id = itemnumber
JOIN branches ON pickup_library_id = branches.branchcode
WHERE start_date BETWEEN <<Bookings starting between|date>> AND <<And|date>>
Why can't I book an item for a specific date?
Koha checks a few things to determine availability of an item for a booking:
- Item Types - Item types can be made bookable by checking the bookable box in the item type configuration in administration. This will cause all items assigned to the item type category to be available for a booking.
- Item details, bookable option - Individual items can be made bookable by checking the bookable box on the item details page for specific barcodes.
- Circulation - this is key because a booking won't be possible until after an item is due to be returned.
- Processing days - pre- and post-processing days can be defined for a booking. An item will not be available if it is in processing.
If an item type category or an individual item has been made bookable, the booking will still depend on whether an item has been checked out. If the item has been checked out, the soonest available booking date will be 24 hours after the due date, or 24 hours after the pre- and post-processing days.