Title: AndreaDesign Table Booking
Author: saland
Published: <strong>November 5, 2026</strong>
Last modified: November 5, 2026

---

Search plugins

![](https://ps.w.org/andreadesign-table-booking/assets/icon-256x256.png?rev=3786651)

# AndreaDesign Table Booking

 By [saland](https://profiles.wordpress.org/saland/)

[Download](https://downloads.wordpress.org/plugin/andreadesign-table-booking.1.2.5.zip)

 * [Details](https://wordpress.org/plugins/andreadesign-table-booking/#description)
 * [Reviews](https://wordpress.org/plugins/andreadesign-table-booking/#reviews)
 *  [Installation](https://wordpress.org/plugins/andreadesign-table-booking/#installation)
 * [Development](https://wordpress.org/plugins/andreadesign-table-booking/#developers)

 [Support](https://wordpress.org/support/plugin/andreadesign-table-booking/)

## Description

**AndreaDesign Table Booking** lets a restaurant take table reservation requests
directly from its own WordPress site, without a monthly fee, third-party booking
service or locked features. Guests fill in a responsive form; the staff manages 
everything from a focused dashboard inside the WordPress admin.

Plugin page and more plugins by the author: [andreadesign.it/servizi/plugin-wordpress](https://andreadesign.it/servizi/plugin-wordpress).
Author website: [andreadesign.it](https://andreadesign.it/).

#### What guests see

 * A booking form added to any page with the `[andreadesign_table_booking]` shortcode:
   date, number of guests, time, name, email, phone, optional notes and an explicit
   consent checkbox.
 * Only times that are really available are offered, based on confirmed reservations,
   active tables, the opening schedule and the site’s timezone.
 * Optional emails that describe the request or its confirmation.

#### What the staff can do

 * Review **Reservations** with their status: pending, confirmed, cancelled or completed.
 * See the day at a glance in the **Dashboard**, the **Calendar** and the table 
   layout.
 * Add manual reservations, for example phone bookings.
 * Define **Tables** with their seats and shape (round, square, rectangular or oval)
   and disable a table that is out of service.
 * Set weekly opening hours in **Schedule**, with one or more ranges per day.
 * Export reservations to CSV.
 * Choose whether bookings are confirmed automatically when a table is free, or 
   stay pending until the staff confirms them.
 * Optionally send SMS reminders to guests who agreed to them, through your own 
   Twilio account.

#### How availability works

Confirmed reservations hold one table for the configured occupancy duration (90 
minutes by default). Pending requests do not hold a table. When staff confirms a
request, availability is checked again. To preserve existing table assignments, 
the occupancy duration cannot be changed while there are future pending or confirmed
reservations, and a table with future confirmed reservations cannot be disabled.
Schedule and interval changes are rejected when they would place existing confirmed
reservations outside the booking times. A confirmed reservation can be marked complete
after its occupancy period ends. An administrator can permanently delete a single
reservation after cancelling it.

#### Privacy and data

No tracking, no advertisements, no external assets and no telemetry. Data stays 
in your own database. The plugin integrates with the WordPress personal data exporter
and eraser. See the Privacy section below.

#### Not included

Online changes or cancellations by guests, deposits and payments, combined tables,
more than one restaurant, and drag-and-drop floor-plan editing.

#### More information

 * Plugin page: https://andreadesign.it/servizi/plugin-wordpress
 * Author website: https://andreadesign.it/

### Privacy

The guest form collects name, email, telephone, date, time, party size, optional
notes and explicit consent. Data is stored in the site’s database and may be emailed
to the restaurant and guest using WordPress `wp_mail()`. With optional SMS enabled
and separate guest consent, the phone number and reminder text are sent to Twilio.
Twilio credentials are stored in WordPress options. A hashed request identifier 
is kept transiently for one hour for rate limiting. There is no plugin-author telemetry
or external asset request. WordPress Privacy Tools can export or anonymize bookings
by email; anonymization preserves table occupancy data. The site owner is responsible
for the privacy notice and retention policy. Set a privacy policy URL in plugin 
settings.

## Screenshots

[⌊The booking form that guests see on the page where you place the shortcode.⌉⌊The
booking form that guests see on the page where you place the shortcode.⌉[

The booking form that guests see on the page where you place the shortcode.

[⌊Tables: the table layout and the form to add a table.⌉⌊Tables: the table layout
and the form to add a table.⌉[

Tables: the table layout and the form to add a table.

[⌊Schedule: weekly opening hours.⌉⌊Schedule: weekly opening hours.⌉[

Schedule: weekly opening hours.

[⌊Notifications: restaurant email and optional Twilio SMS reminders.⌉⌊Notifications:
restaurant email and optional Twilio SMS reminders.⌉[

Notifications: restaurant email and optional Twilio SMS reminders.

[⌊Settings: booking interval, table occupancy, party size, privacy policy and data
options.⌉⌊Settings: booking interval, table occupancy, party size, privacy policy
and data options.⌉[

Settings: booking interval, table occupancy, party size, privacy policy and data
options.

## Installation

#### Install

 1. In WordPress go to **Plugins > Add New**, search for “AndreaDesign Table Booking”,
    click **Install Now** and then **Activate**. Alternatively upload the plugin ZIP
    through **Plugins > Add New > Upload Plugin**.
 2. A new **Restaurant Booking** menu appears in the admin sidebar, with the sections
    Dashboard, Reservations, Tables, Schedule, Notifications, Settings, Add-ons and
    Calendar.

#### Configure, step by step

 1. **Check the site timezone.** Go to **Settings > General** in WordPress and make
    sure Timezone is your city. Available times are calculated from it.
 2. **Add your tables.** Open **Restaurant Booking > Tables**. In “Add a table” enter
    a name (for example T1), the number of seats and the shape, then click **Add table**.
    Repeat for every table. You can change the shape later or disable a table.
 3. **Set your opening hours.** Open **Restaurant Booking > Schedule**. For each day
    write the time ranges in 24-hour notation, for example `12:00-15:00,18:00-23:00`.
    Leave a day blank to close it. Click **Save schedule**.
 4. **Choose the booking rules.** Open **Restaurant Booking > Settings**:
 5.  * Booking interval: the step between available times (30 minutes by default).
     * Table occupancy: how many minutes a confirmed reservation keeps a table (90 
       by default).
     * Maximum party size (10 by default) and days bookable ahead (60 by default).
     * Restaurant notification email: the address that receives new requests.
     * Privacy policy URL: shown to guests next to the consent checkbox. Add yours.
     * Automatic confirmation: leave it off if you want to approve each request, or
       turn it on to confirm when a table is free.
     * Email guests about requests and confirmations: on by default.
     * Permanently delete all plugin data on uninstall: off by default, so data is 
       kept if you remove the plugin. Click **Save settings**.
 6. **Publish the form.** Create or edit a page, add a Shortcode block (or a text block)
    containing `[andreadesign_table_booking]` and publish it. Link the page from your
    menu.
 7. **Make a test reservation** from the public page, then open **Reservations** and
    confirm it. Check that the notification email arrives; delivery depends on your
    WordPress email setup, so an SMTP plugin is recommended on many hosts.
 8. **Optional, SMS reminders.** Open **Restaurant Booking > Notifications**. Enter
    your Twilio Account SID, API key SID, API key secret and sender number (E.164 format,
    for example +12345678901), choose how many minutes before the reservation the SMS
    is sent, and turn on SMS Reminders. SMS stays disabled until you enable it and 
    provide valid credentials. Guests receive SMS only if they select the SMS consent
    option, and their phone number must include the country code.

#### Day-to-day use

Open **Reservations** to confirm or cancel requests, use **Dashboard** and **Calendar**
to see the day, and use the CSV export when you need a list outside WordPress.

## FAQ

### Are reservations automatically confirmed?

By default they remain pending. You can enable automatic confirmation in Settings.
Pending requests do not reserve a table.

### Does the plugin support more than one restaurant or combining tables?

This version is for one restaurant and assigns each confirmed party to one table.

### What happens to data when I uninstall?

Reservation data and settings are retained by default. The owner can choose permanent
deletion on uninstall in the plugin settings before uninstalling.

### Are email messages guaranteed to arrive?

Delivery depends on the site’s WordPress email configuration. Test email delivery
on your site.

### How do SMS reminders work?

SMS is optional and uses [Twilio Programmable Messaging](https://www.twilio.com/docs/messaging/api/message-resource).
You need your own Twilio account, sender number, Account SID and API key credentials.
Twilio’s [Terms of Service](https://www.twilio.com/en-us/legal/tos) and [Privacy Notice](https://www.twilio.com/en-us/legal/privacy)
apply. The plugin sends a phone number and reminder text to Twilio only when the
restaurant enables the feature and the guest opts in; manual reservations require
staff to record that consent. Twilio may charge for messages. The reminder is scheduled
using WP-Cron, which runs on site visits and can be delayed on low-traffic sites.
A real server cron is recommended for precise timing. Phone numbers must be entered
in E.164 format.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“AndreaDesign Table Booking” is open source software. The following people have 
contributed to this plugin.

Contributors

 *   [ saland ](https://profiles.wordpress.org/saland/)

[Translate “AndreaDesign Table Booking” into your language.](https://translate.wordpress.org/projects/wp-plugins/andreadesign-table-booking)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/andreadesign-table-booking/),
check out the [SVN repository](https://plugins.svn.wordpress.org/andreadesign-table-booking/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/andreadesign-table-booking/)
by [RSS](https://plugins.trac.wordpress.org/log/andreadesign-table-booking/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.2.5

 * Add the plugin icon and screenshots to the plugin page.
 * Expand the readme with a full installation and configuration guide.
 * Add the Plugin URI header linking to andreadesign.it.
 * Add the andreadesign.it name to the plugin’s own admin header as plain text. 
   It is not shown on the public site.

#### 1.2.4

 * Return HTTP 403 when a user without permission uses a staff action.
 * Load the public stylesheet and script only on pages that contain the booking 
   form.
 * Add the adtb_client_ip filter so sites behind a proxy or CDN can rate limit by
   the real visitor address.
 * Remove the promotional block from the admin header.

#### 1.2.3

 * Document each necessary custom-table database call for Plugin Check, with scoped
   coding-standard exceptions for real-time reads, writes and uninstall.
 * Keep reservation availability and staff actions based on current database state.

#### 1.2.2

 * Prepare identifiers in custom-table queries for WordPress 6.4 and newer, including
   privacy tools and uninstall.
 * Validate schedule input more defensively and preserve safe CSV streaming.
 * Remove the unused translation directory header.

#### 1.2.1

 * Set the CSV escape argument explicitly for PHP 8.4 compatibility and standards-
   compliant CSV output.
 * Reject malformed table-shape input without triggering a PHP type error.
 * Document the WordPress version used for compatibility checks.

#### 1.2.0

 * Let administrators choose round, square, rectangular or oval shapes for new and
   existing tables, with a matching layout preview.
 * Migrate existing table drawings to stored shapes without changing their reservations.

#### 1.1.1

 * Add a nonce-protected, individually targeted deletion action for cancelled reservations.

#### 1.1.0

 * Add dashboard layout and navigation matching the restaurant reference, calendar,
   quick settings and optional opt-in SMS reminders.
 * Add database upgrade for SMS consent, notification settings and privacy export.
 * Protect future reservations when editing hours and intervals, refresh cached 
   form dates and prevent duplicate scheduled reminders.

#### 1.0.1

 * Load booking assets when a page builder renders the form, support multiple forms
   and refresh nonces on cached pages.
 * Show valid time slots in the manual booking form and prevent early table release.
 * Separate schedule and settings saves, validate opening ranges and improve table
   and booking error handling.

#### 1.0.0

 * Initial release: reservations, capacity checks, table and schedule management,
   privacy tools.

## Meta

 *  Version **1.2.5**
 *  Last updated **1 day ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.4 or higher **
 *  Tested up to **7.1.4**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [booking form](https://wordpress.org/plugins/tags/booking-form/)[reservations](https://wordpress.org/plugins/tags/reservations/)
   [restaurant](https://wordpress.org/plugins/tags/restaurant/)[restaurant booking](https://wordpress.org/plugins/tags/restaurant-booking/)
   [table booking](https://wordpress.org/plugins/tags/table-booking/)
 *  [Advanced View](https://wordpress.org/plugins/andreadesign-table-booking/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/andreadesign-table-booking/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/andreadesign-table-booking/reviews/)

## Contributors

 *   [ saland ](https://profiles.wordpress.org/saland/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/andreadesign-table-booking/)