Resources & Booking Calendar¶
Businesses that manage not only tables but any bookable units — treatment stations, rooms, equipment, vehicles, employees — create resources for them. Each resource has its own booking calendar lane; whether it is called "seat", "room" or "equipment" is determined by the terms for bookings in the settings.
Resources do not compete with table reservation; they are a more general layer on top of it: a table can be booked both ways, and the new booking calendar shows table, item and person bookings side by side in the same view.
Terms: table, seat, appointment or equipment¶
Not every business books "tables". Under Admin → Settings → Operations → Business type (terms for bookings) you set what DiKAS calls the bookable units:
| Setting | They are then called |
|---|---|
| Restaurant & bar (default) | tables, reservations |
| Salon & studio | seats, appointments |
| Sport & leisure | courts, bookings |
| Rooms | rooms, bookings |
| Rental | equipment, loans |
The setting affects reservations, the booking calendar and the guest page. POS and kitchen deliberately keep the term "table" — there it is about the open bill, not the appointment.
Language of the terms
The alternative terms (every setting except restaurant & bar) exist in German and Spanish. With the English interface they appear in German (for example "Plätze" and "Termine" for salon & studio).
Not to be confused with the operating modes
That page describes the technical set-up (single tablet, cloud, local server). This is only about the words your guests and staff see for bookings.
Feature overview¶
| Function | Description |
|---|---|
| Create a resource | A freely created item (own name, own capacity) — or an existing employee/table by ticking a box |
| Resource groups | Bundle resources, with default values for buffer time and time grid |
| Blocked times | One-off (maintenance, cleaning) or recurring weekly |
| Booking calendar | Day view, one column per resource — at the POS you can additionally create/open a booking with a click; in both places you can move it or change its duration by dragging |
| Conflict display | Bookings whose resource no longer covers them (e.g. after a sick note) are marked |
Three kinds of resources¶
When creating a resource you choose a kind:
- Item — a freely invented resource with its own name and capacity, e.g. "Court 1", "Lift 2", "Conference room". You maintain name and capacity directly on the resource.
- Person — an existing employee is ticked as a resource. The name comes automatically from the staff records; the capacity is fixed at 1 and cannot be split. Important: their availability comes entirely from the shift plan — see below.
- Table — an existing table is ticked as a resource. Name and seats come from the table records; if you rename a table there, you see the change here too without maintaining anything.
For person and table, name and capacity are therefore not directly editable — only for a free item. A note on the resource explains where the value comes from.
Ticking persons and tables¶
Under Admin → Resources the overview lists all employees (Staff) and all tables (Tables) with a checkbox next to them:
- Tick an employee → they are created as a bookable person resource.
- Tick a table → it is created as a bookable table resource.
- Removing the tick deletes the resource (soft delete) — it does not deactivate it. Existing bookings on this resource lose their assignment as a result: the calendar marks each of them as a conflict (the resource is missing) until staff manually move them to another resource. Before unticking, check whether there are still bookings on it for that day/week.
For a new item, click + Item at the top of the list instead (the form is then headed "New item") and enter name and capacity yourself.
Resource groups¶
Groups bundle several resources and carry default values for buffer time and time grid. These are not values copied once on creation: a resource without its own value fetches its group's default afresh on every availability check. So if you change a group's default, it takes effect retroactively on all its resources without their own setting — including long-standing ones. A resource with its own value keeps following its own value, not the group. A group can be renamed and deactivated; deleting it is only possible as long as no resource points to it any more — the system counts the affected resources and otherwise refuses, instead of silently assigning them to another group.
Blocked times¶
A blocked time blocks a resource for a period in which it should not be bookable — maintenance, cleaning, a tournament. You create either a fixed date (one-off) or a weekday (recurring, every week).
For a person resource, a blocked time additionally serves to map when a break takes place: the shift plan only knows the duration of a break, not when it happens. Without a maintained blocked time the system assumes the break is at the end of the shift — the total duration of available time is then right, but not the exact position. To map the break exactly, create a blocked time for the person covering the break.
Using the calendar¶
The same calendar appears in two places — Admin → Resources, fourth tab "Calendar" (no menu item of its own), and at the POS under POS → Reservations, tab "Kalender" (calendar; this tab is labelled in German in the English interface). Both show one day with one column per resource, but offer different levels of operation:
- Dragging the booking bar moves the booking to another time or another resource column — possible in both places.
- Dragging the lower handle changes the duration — also in both places.
- Clicking a free area opens the booking form with time and resource pre-filled, clicking an existing booking opens it for editing — this only works at the POS. In the admin tab the calendar is a pure overview plus dragging; there you create a new booking via the usual reservation form, not by clicking into the calendar.
- Two bookings that overlap are clearly marked: a real overlap of appointments with a coloured inner frame, a reported conflict (see below) with a thicker outer frame — both can be visible on one booking at the same time. The system does not automatically prevent an overlap when two people grab the last free slot at the same moment — it makes it visible so that staff can react.
Why a person without a shift cannot be booked¶
For a person resource, the bookable time window comes exclusively from the shift plan: only a published shift makes the person bookable on that day at all. If no shift is entered for an employee on that day (or only a draft that has not been published), the calendar shows no free time for this person — a booking cannot be created.
This is deliberate: a person's bookability should never go beyond their actual presence. Approved absences (holiday, illness) and personal blocked windows are additionally deducted from the shift window. A mere preference in the shift plan ("rather mornings"), on the other hand, does not restrict bookability — it is planning information, not a prohibition.
In practice this means: before a person can be booked as a resource, there must be a published shift for them in the shift plan on the desired day.
Online appointments: releasing resources for guests¶
So far this has been about bookings created by staff. Resources can also be made bookable online — the guest chooses the seat, room or equipment on the reservation page and books themselves. This needs two settings in two places:
| What | Where |
|---|---|
| Which resources are offered online | Admin → Resources → on each resource the checkbox "Online buchbar" (bookable online; labelled in German) |
| How the guest gets them | Admin → Settings → Operations → Online appointments: |
The second setting sits directly below the "Reservierungen" (reservations) switch and has two values:
- assign automatically (tables first) (default) — the guest only chooses the number of people, day and time; DiKAS finds the matching resource itself. Tables take precedence: the smallest matching free table is booked; other resources only come into play if no table fits. Without this precedence a "reservation for 2 people" once ended up on a ball pit.
- guest chooses resource — the guest additionally sees the step "Choose a resource" with all released resources and decides themselves.
The first release switches the whole public route
As long as not a single resource is set to "Online buchbar", the reservation page offers all reservable tables as before. As soon as you release the first resource, the public route runs entirely via this release: only what is released is then offered and booked — with the opening hours, lead time, blocked times and occupancy of the respective resource.
This is intended and important: before, the page calculated over all tables, without release and without blocked times — guests could end up on blocked tables and in rooms that had not been released. Practical consequence: whoever releases resources must also release the tables that should remain bookable online. Otherwise they disappear from the reservation page.
Staff are not affected: at the POS and in the admin area every resource and every table remains bookable, regardless of the release.
What the guest sees¶
- Only times at which a released resource is really free for the chosen number of people.
- In guest chooses resource mode, additionally the choice of resources.
- If the group size does not fit into any released resource, it says: "For more than N people, please book by phone." — N is the largest resource released online. If this limit seems too low, it is usually the release of the large tables that is missing, not the capacity.
After setting up, check once as a guest¶
Open the reservation page in a private browser window and make a test booking:
- Do all units appear that should appear — and none that should remain internal?
- Is a blocked time really left out?
- Is the upper limit for the number of people right?
This takes two minutes and shows exactly the cases you do not see while setting up.
Conflict display¶
If the shift plan changes afterwards (sick note, shift swap) or a resource is deactivated or deleted, an existing booking can end up with nothing behind it. The calendar marks such bookings and also lists them in a summary display — nothing is automatically rebooked or cancelled; staff decide case by case.
Protection of existing set-ups for restaurants
Restaurants that already work with classic table reservation continue to see the familiar schedule (tables × time) at the POS — it is kept unchanged as long as there are reservable tables. The new booking calendar is added on top but does not replace it.