Skip to main content

Capacity mode: Tables vs Covers

RestaPro has two modes for handling availability. You pick one at onboarding and you can change later, with care.

Tables mode

The system maintains an inventory of tables with individual capacities and assigns each reservation to specific tables.

  • Each reservation has one or several assigned tables.
  • The availability engine combines tables when a large reservation requires it (via merge_group).
  • Allows granular control: VIP at the window table, terrace for smokers, etc.

Ideal for: restaurants with a defined floor plan, fine dining, any business where assignment matters.

Covers mode

The system only counts covers. No table assignment.

  • You define a total capacity (e.g. 60).
  • Each reservation subtracts covers for its duration.
  • On the floor, customers sit wherever there's room.

Ideal for: tapas bars, casual venues, places with communal tables, no zone differentiation.

How to switch modes

Under Settings → Capacity:

  • Pick Tables or Covers.
  • If Covers, enter total capacity (>0).
  • Save.

Notice when switching from Tables to Covers

RestaPro automatically counts future reservations with an assigned table (in pending/confirmed/arrived) and shows a dialog:

You have N future reservations with an assigned table. Switching to Covers will lose those assignments - the reservations stay, but they won't have a specific table.

If you confirm, the change applies. Reservations are not lost, only unlinked from their table.

If there are no affected reservations, the notice is gentler:

You're switching to capacity by covers. Your tables will no longer be used for automatic assignment. You can return to Tables mode whenever you want.

From Covers to Tables

When you go back to Tables mode:

  • You need active tables with capacity >0.
  • Existing reservations work in the new mode from that moment (with no table assigned initially, you assign them).

How availability is calculated

Tables mode

  1. For each time slot, look for tables free in that range.
  2. find_available_table_combo: finds a combination of tables with capacity >= party_size, considering merge_group.
  3. If found → slot available.

Covers mode

  1. For each slot, sum overlapping reserved covers.
  2. cover_capacity − occupancy >= party_size → slot available.

Covers mode example

Total capacity 60. At 20:00 a 6-person reservation comes in (90 min, until 21:30).

  • Available 20:00-21:30: 60 - 6 = 54.
  • Another 5-person reservation at 20:30 → occupancy 11; 49 left.
  • 50-person reservation at 20:30 → rejected (needs 50, 49 available).

Pinche and modes

Pinche understands both modes. If in Covers mode you ask "assign this reservation to table 4", it'll tell you that's not possible because you work by total capacity.

Recommendation

  • Default to Tables if you have more than one zone or different capacities.
  • Covers if your dining room is undifferentiated and you don't want complications.
  • Switch with care: once you have many reservations, the change breaks assignments.
ESENCA