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