Title: mee-table &#8211; Restaurant Reservations, Gift Cards &amp; Event Tickets
Author: Breed Art Studios
Published: <strong>August 31, 2026</strong>
Last modified: September 1, 2026

---

Search plugins

![](https://ps.w.org/mee-table/assets/banner-772x250.png?rev=3673723)

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

# mee-table – Restaurant Reservations, Gift Cards & Event Tickets

 By [Breed Art Studios](https://profiles.wordpress.org/breedartstudios/)

[Download](https://downloads.wordpress.org/plugin/mee-table.1.1.1.zip)

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

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

## Description

mee-table lets you accept table reservations from your own WordPress site, with 
a booking calendar, capacity per time slot and a confirmation email to the guest.

**Free, with no account and no key.** Reservations, the booking calendar, basic 
capacity, the confirmation email and events with ticket sales all run on your own
WordPress, in your own database, using your own site email address. Nothing to sign
up for, nothing to pay.

**This is the Lite version, and it is free forever.** With a mee-table account you
also get prepayments and no-show protection (card or digital wallet), gift cards,
the guest assistant, WhatsApp and SMS reminders, time-based discounts, staff accounts
with the Waiter Dashboard, reports, and colours that match your theme. These run
through the mee-table service at `api.mee-table.com`, so there is no server for 
you to maintain.

Every installation starts with a 14-day trial of the full version. When the trial
ends the plugin does not switch off: it carries on at the free level, and your venues
and bookings stay where they are.

Main features:

 * **Table reservations** with availability, opening hours, rules on the number 
   of guests, a weekly closing day and a quick-block calendar for one-off closures.
 * **Guests manage their booking on YOUR site.** The link in every email and message
   opens your own booking widget, on your own pages, in edit mode: the guest moves
   the date, the time or the number of guests, or cancels, inside the limits you
   set. A per-venue cap says how many people one booking may bring (the venue capacity
   is a separate number), and an optional notice window closes online changes some
   hours before the table, after which the guest is asked to call you.
 * **Move a booking instead of losing it.** The guest can change the day, the time
   or the number of people from the link in their confirmation email, without calling:
   the free tables are re-checked live, and you decide how many times they may do
   it before they are asked to phone you. Your own staff can move any booking from
   the Waiter Dashboard, with no limit, the phone rings there.
 * **Your own time zone**, so opening hours and reminders are right even when the
   venue and the server are in different countries.
 * **Prepayment by time band.** An “Aperitivo” rate from 19:00 to 20:00 and a different
   one for dinner, each with its own days of the week and minimum number of guests.
   The guest is only ever offered the rate that covers the time they picked, and
   when a rate covers it the prepayment replaces the no-show card guarantee: nobody
   is asked to pay twice for the same evening.
 * **Choose which emails reach you.** Everything that happens to a booking sends
   you an email by default, confirmed, declined, cancelled or moved, including what
   your own staff did from the dashboard. Untick the ones you do not want; your 
   guests keep receiving theirs either way.
 * **No-show guarantee**: the guest’s card is authorised, not charged. Nothing is
   taken unless they fail to turn up, and staff release or charge it from the Waiter
   Dashboard.

The full feature list continues in the “All the features” section below.

### External services

This plugin relies on external services. Below is what each one is, when it is contacted,
and what is sent to it.

**1. mee-table backend (`https://api.mee-table.com`): always required**

The plugin is a client for the mee-table SaaS. Every page of the admin and every
booking talks to it. Data sent: reservation details (guest name, email, phone, number
of guests, date, notes), location configuration, prepayment and gift-card records,
staff accounts, and any photo you upload for a cooking class. Without this service
the plugin cannot show availability, take payments or store bookings. Provided by
mee-table. Terms: https://mee-table.com/terms | Privacy: https://mee-table.com/privacy

Two calls to the same provider happen outside the admin pages, and are listed here
separately so it is clear when they occur:

 * Activating the plugin sends nothing anywhere. The first contact happens when 
   you enter your licence key and press Activate: at that moment, once, the plugin
   asks `https://mee-table.com/api/provisioning` whether this domain already has
   a mee-table account, so the site connects to its own restaurant without anyone
   typing a token. Data sent: the site URL (`get_site_url()`) and nothing else. 
   If it fails, the plugin simply carries on unconfigured. Until a licence key is
   entered, the plugin contacts no server at all.
 * Once a day, a scheduled task asks `https://api.mee-table.com/api/license/validate`
   whether the subscription is still active. Data sent: the site URL, the licence
   key the site owner entered, and the name of the product asking (`mee-table`),
   so a key bought for mee-class does not unlock bookings. How that data is handled:
   https://mee-table.com/privacy This call does not happen at all until a licence
   key has been entered: with no key the task returns immediately.

No guest data is involved in either of these two calls.

**2. Payment providers: only when you enable and connect them**

Mollie, Stripe or PayPal are contacted to create payments, authorise no-show guarantees
and issue refunds. Data sent: amount, currency, reservation reference, and the guest’s
payment details entered on the provider’s own hosted page. Card numbers never pass
through WordPress. Mollie: https://www.mollie.com/en/user-agreement | https://www.
mollie.com/en/privacy Stripe: https://stripe.com/legal | https://stripe.com/privacy
PayPal: https://www.paypal.com/legalhub/home

**3. SMS providers: only if you choose one, and only for the messages you send**

If you configure an SMS provider, your site sends the reminder text and the guest’s
phone number to it. Two paths exist: reminders are dispatched by the mee-table backend,
while the **“Send test SMS” button sends one message directly from your own WordPress
server** to the provider, using the credentials you typed in. Nothing is sent to
any of these companies unless you select them and save credentials. The panel also
accepts a custom HTTP gateway: in that case the same two pieces of data go to the
endpoint address you type in yourself, and to nobody else.

Twilio: https://www.twilio.com/en-us/legal Skebby (Commify Italia S.r.l.): terms
https://www.skebby.it/wp-content/uploads/Contratto-SKEBBY.pdf | privacy https://
www.skebby.it/wp-content/uploads/Informativa-Privacy-Estesa-SKEBBY.pdf Aruba SMS:
https://hosting.aruba.it/documents/term_conditions/condizioni_fornitura_servizisms_aruba-
it_v-1-2.aspx | https://www.aruba.it/documents/tc-files/it/11_it_privacy_policy_aruba_spa.
aspx Brevo: https://www.brevo.com/legal/ Vonage: https://www.vonage.com/legal/ (
its SMS endpoint is still the old brand name, `https://rest.nexmo.com`)

SMSGate (`https://api.sms-gate.app`): only if you choose the Android phone gateway

If you pick “Android phone” as the SMS route, your site does not talk to the phone
directly: it sends the reminder text and the guest’s phone number to the SMSGate
cloud at `https://api.sms-gate.app/3rdparty/v1`, which passes the message to the
free SMSGate app on your own phone, and the message then leaves from your own SIM.
This happens only for the messages you send, and only after you have installed the
app and saved its username and password in the panel. SMSGate is an open-source 
project (the app is at https://github.com/capcom6/android-sms-gateway) and the cloud
service is run by its authors.

SMSGate: https://sms-gate.app/terms-of-service/ | https://sms-gate.app/privacy/

A “generic HTTP” option exists for providers not in the list: there the endpoint
is the one you type in, and you are responsible for it.

**4. Meta / WhatsApp Business Cloud API (`https://graph.facebook.com`): only if 
you set up WhatsApp messages**

If you fill in the WhatsApp fields of a location (phone number ID, WhatsApp Business
Account ID and access token, all obtained from your own Meta Business account), 
your WordPress site talks to Meta directly in three cases, and never otherwise:

 * **“Create the message templates on Meta”**: reads the message templates that 
   already exist on your WhatsApp Business Account and submits the missing ones 
   for Meta’s approval. Data sent: the wording of the booking messages and your 
   access token. No guest data.
 * **“Send test WhatsApp”**: sends one real confirmation message, filled with sample
   values, to the number you type into that field, to check the setup works. Data
   sent: that phone number, the sample values and your access token. No guest data.
 * The reminder texts themselves are fetched from `https://mee-table.com/api/whatsapp/
   modelli`, a public page of the mee-table site that only returns the wording of
   those messages. Nothing is sent to it.

The WhatsApp Business Account is yours: you own the number and you pay Meta directly.
mee-table neither resells messages nor owns any number. Terms: https://www.whatsapp.
com/legal/business-terms | Privacy: https://www.whatsapp.com/legal/business-data-
processing-terms Meta Platform Terms: https://developers.facebook.com/terms | Privacy:
https://www.facebook.com/privacy/policy

**5. Mailchimp: only if you enter an API key**

Used to add newsletter subscribers to your audience. Data sent: the email address
and the consent flag of guests who opted in. https://mailchimp.com/legal/terms/ 
| https://mailchimp.com/legal/privacy/

**6. Groq: only if you enter a Groq API key for the guest assistant**

Used by the guest assistant on your booking page. When a visitor types a question,
that question is sent, together with your restaurant’s public information (name,
address, phone, opening times, which time slots are still free in the next 7 days,
discounts and events), to Groq, which produces the answer. The request is made server-
to-server through the mee-table backend using your own Groq account, so the key 
never appears in a public page.

Never sent: names, phone numbers or e-mail addresses of your guests, and no booking
of theirs. Free seats are counted; who booked them is not sent.

Nothing at all is sent to Groq unless you have entered a key in mee-table -> Guest
assistant. Leaving that field empty keeps the assistant off and the script is not
even loaded. Groq does not retain these questions for inference requests and is 
not permitted to use them to train its models.

Getting a key is free and takes about two minutes at https://console.groq.com/keys,
the plugin explains the steps on that settings page. The Groq account is yours: 
the agreement for it is between you and Groq. Terms: https://console.groq.com/docs/
legal/services-agreement Privacy: https://groq.com/privacy-policy Acceptable use:
https://console.groq.com/docs/legal/ai-policy

Answers are generated by an automated system and can be wrong, and the assistant
tells the visitor that it is automatic. Any answer containing a percentage is discarded
before the visitor sees it. An answer containing an amount is discarded too, unless
you have published prices on the pages you ticked and that exact figure appears 
there: the assistant repeats what you wrote, it never composes a price. On allergens
it answers only by repeating what your own pages say, and any request for a guarantee
about a guest’s own health is sent to your phone instead.

### Privacy

This plugin sends reservation data, prepayment details, gift-card information, and
location configuration to the mee-table backend at `https://api.mee-table.com`. 
If you enable the WhatsApp reminders, the guest’s phone number is also sent to Meta’s
WhatsApp Business Cloud API so the message can be delivered, using the WhatsApp 
Business Account that belongs to you. The data is used solely to provide the booking
service, payment processing, and no-show protection. No data is sold, shared with
third parties for marketing, or used for advertising. If you enable the guest assistant,
visitors’ questions and your restaurant’s public information are sent to Groq through
your own Groq account, as described under External services above; no guest personal
data is included. For full details, please read the [mee-table Privacy Policy](https://mee-table.com/privacy).

Retention: identifying data on a reservation (guest name, email, phone and notes)
is irreversibly erased 180 days after the reservation date, by a daily job on the
backend. The reservation row itself is kept – date, number of guests, amount, payment
gateway – because accounting needs it and none of those fields identifies anyone
on their own. That same 180-day window is the furthest back the repeat no-show policy
can look.

## Screenshots

[⌊Step 3 of the booking widget: off-peak discount badges fill your quiet hours automatically.⌉⌊
Step 3 of the booking widget: off-peak discount badges fill your quiet hours automatically
.⌉[

Step 3 of the booking widget: off-peak discount badges fill your quiet hours automatically.

[⌊The last step: the card guarantee explained in plain words, with privacy consent
and newsletter opt-in built in.⌉⌊The last step: the card guarantee explained in 
plain words, with privacy consent and newsletter opt-in built in.⌉[

The last step: the card guarantee explained in plain words, with privacy consent
and newsletter opt-in built in.

[⌊Cooking class public page: full-width photo, what is included, live seat availability
and per-date booking.⌉⌊Cooking class public page: full-width photo, what is included,
live seat availability and per-date booking.⌉[

Cooking class public page: full-width photo, what is included, live seat availability
and per-date booking.

[⌊Gift cards: guests buy a voucher for your restaurant and redeem it on site.⌉⌊Gift
cards: guests buy a voucher for your restaurant and redeem it on site.⌉[

Gift cards: guests buy a voucher for your restaurant and redeem it on site.

[⌊Printable flyer with a QR code, generated automatically from the next scheduled
event (A3, A4 and A5).⌉⌊Printable flyer with a QR code, generated automatically 
from the next scheduled event (A3, A4 and A5).⌉[

Printable flyer with a QR code, generated automatically from the next scheduled 
event (A3, A4 and A5).

[⌊The Waiter Dashboard: today's service at a glance, with filters, search and CSV
export.⌉⌊The Waiter Dashboard: today's service at a glance, with filters, search
and CSV export.⌉[

The Waiter Dashboard: today’s service at a glance, with filters, search and CSV 
export.

[⌊Hourly capacity: how many guests you accept in each time slot, with per-date overrides.⌉⌊
Hourly capacity: how many guests you accept in each time slot, with per-date overrides
.⌉[

Hourly capacity: how many guests you accept in each time slot, with per-date overrides.

[⌊Quick blocks: close a day, a range of days or single time slots for holidays and
private events.⌉⌊Quick blocks: close a day, a range of days or single time slots
for holidays and private events.⌉[

Quick blocks: close a day, a range of days or single time slots for holidays and
private events.

[⌊Discounts by time slot, per weekday: the quiet hours fill themselves.⌉⌊Discounts
by time slot, per weekday: the quiet hours fill themselves.⌉[

Discounts by time slot, per weekday: the quiet hours fill themselves.

[⌊Anonymized statistics: bookings, guests, no-shows and discount effectiveness, 
month by month.⌉⌊Anonymized statistics: bookings, guests, no-shows and discount 
effectiveness, month by month.⌉[

Anonymized statistics: bookings, guests, no-shows and discount effectiveness, month
by month.

[⌊The staff dashboard on a phone: today, the week or the month at a glance, and 
one tap to confirm, mark a no-show or cancel. Waiters work from their own phone,
no WordPress account needed.⌉⌊The staff dashboard on a phone: today, the week or
the month at a glance, and one tap to confirm, mark a no-show or cancel. Waiters
work from their own phone, no WordPress account needed.⌉[

The staff dashboard on a phone: today, the week or the month at a glance, and one
tap to confirm, mark a no-show or cancel. Waiters work from their own phone, no 
WordPress account needed.

[⌊Dating Aperitivo: the guest buys a ticket, adds a photo and a short bio, and picks
their match the day after the evening.⌉⌊Dating Aperitivo: the guest buys a ticket,
adds a photo and a short bio, and picks their match the day after the evening.⌉[

Dating Aperitivo: the guest buys a ticket, adds a photo and a short bio, and picks
their match the day after the evening.

## Installation

 1. Upload the plugin folder to `/wp-content/plugins/` or install via the WordPress
    plugin directory.
 2. Activate the plugin through the ‘Plugins’ menu. 3. Go to **mee-table -> Settings**,
    paste your licence key (from your mee-table.com dashboard), and click **Activate
    licence**.
 3. Set up your location(s), opening hours and payment methods on the **Locations**
    and **Settings** pages. 5. Optional: to switch the guest assistant on, open **mee-
    table -> Guest assistant** and paste a Groq key. Until you do, nothing is sent 
    anywhere and the chat does not appear.

## FAQ

### Where should my Google Business Profile booking link point?

To your dedicated booking page, not to your homepage, even if the widget is on the
homepage too. A link always opens at the top of a page: on a long homepage the guest
lands on the header and has to scroll to find the widget, on the booking page they
land right on it. The plugin creates that page for you (see mee-table -> Settings)
and the floating booking pill brings guests there from every other page of your 
site.

### Does mee-table store guest data on my WordPress server?

No: all reservation, prepayment, and gift-card data is stored on the mee-table SaaS
backend (`api.mee-table.com`). Local WordPress tables are kept for caching only.

### Does the AI guest assistant cost anything, and is it on by default?

It is off until you paste a Groq API key in **mee-table -> Guest assistant**, and
while that field is empty the plugin contacts no AI service at all and the chat 
is not even loaded on your pages. The key is free to create at https://console.groq.
com/keys and the account is yours, so the free allowance is yours alone and the 
plugin never resells anything.

### What does the assistant tell guests about allergens?

If you have ticked your menu page and the answer is written there, it repeats what
you wrote and says it read it from you. What it never does is promise a guest that
a dish is safe for their own allergy: a question like “I am allergic to hazelnuts,
can I eat this?” always goes to your phone, whatever your menu says. Cross-contamination
is decided in your kitchen, not on a menu, and only you know how you work.

### And about prices?

The same rule. If your menu with prices is on a page you ticked, it can repeat a
figure you wrote. If it is not published, it tells the guest to ask you. It never
invents a figure, and it never says a percentage: on time-slot discounts it tells
the guest which times are discounted and that they are marked on the list, so the
number is read from your own page and cannot be misquoted.

### The admin panel is in the wrong language. Where do I change it?

By default the panel follows **Settings -> General -> Site Language**. If you want
it pinned to one language regardless, set it in **mee-table -> Settings -> Panel
language**.

### Where can I manage my licence or upgrade?

Log into your dashboard at https://mee-table.com/dashboard. There you can manage
your location(s), billing, and staff accounts.

### Why does the plugin need to connect to api.mee-table.com?

The connection is required for the booking widget, payment processing, and no-show
protection to work. Without it, Mee-Table cannot retrieve availability, process 
payments, or update reservations.

### What is the difference between the no-show guarantee and the prepayment tiers?

They are two different things, each with its own refund setting. The **no-show guarantee**
only authorises the card: no money is taken, so there is nothing to refund. Its 
setting is a deadline, up to when the guest may cancel without a penalty. The **
prepayment tiers** take real money at booking time, for a fixed-price menu you have
already shopped for: that setting decides whether it is refundable at all, and defaults
to non-refundable. A venue can run a flexible guarantee alongside a non-refundable
tasting menu, which a single shared setting made impossible.

### I set up an SMS provider. How do I know the credentials are right?

Use the **“Send test SMS”** button under the credentials. It sends one real message,
using what is typed in the form even if you have not saved yet, and it costs one
credit of your plan. Missing fields are reported before anything is dispatched, 
and the button locks for ten seconds after each attempt so a double click cannot
burn credits. Note that the test leaves from your own site while real reminders 
leave from the mee-table servers: if your provider filters by IP address, the test
can succeed where real sending fails.

### What photo should I use for a cooking class?

A **horizontal** one, and as large as you can. The picture sits in a wide band on
the flyer and in the email, so a portrait shot only shows a central strip of itself.
When you pick the file the plugin crops it to 3:2, tells you which print sizes that
photo can actually carry (A3 needs about 2200 px of width, A4 about 1550) and compresses
it below 600 KB before it leaves your computer, so the 15 MB a modern phone produces
is never uploaded. No compression invents pixels that were never there: a small 
photo stays small.

### Which paper size should I print the flyer on?

A3 for a poster read from a distance, A4 for a window or a wall, A5 for a table 
stand, portrait or landscape. Each size is laid out separately rather than being
a scaled copy, because what makes text readable is the distance it is read from,
not the size of the sheet. The flyer always shows the **next scheduled** event: 
if nothing is scheduled it says so instead of printing a date that has passed.

### How do I enable the WhatsApp contact button?

Go to **mee-table  Location**, edit the location, and fill in the “WhatsApp (digits
only)” field with the number in international format, digits only (e.g. an Italian
number `+39 333 123 4567` becomes `393331234567`). Once saved, a WhatsApp chat button
appears automatically under the booking widget on your site, linking to a direct
chat with that number. This uses the free `wa.me` link: no paid service, no extra
setup, available on every plan tier.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“mee-table – Restaurant Reservations, Gift Cards & Event Tickets” is open source
software. The following people have contributed to this plugin.

Contributors

 *   [ Breed Art Studios ](https://profiles.wordpress.org/breedartstudios/)

“mee-table – Restaurant Reservations, Gift Cards & Event Tickets” has been translated
into 1 locale. Thank you to [the translators](https://translate.wordpress.org/projects/wp-plugins/mee-table/contributors)
for their contributions.

[Translate “mee-table – Restaurant Reservations, Gift Cards & Event Tickets” into your language.](https://translate.wordpress.org/projects/wp-plugins/mee-table)

### Interested in development?

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

## Changelog

#### 1.1.1

 * Fixed: the public Gift Card page stayed on “Loading…” on block themes (Twenty
   Twenty-Four, Twenty Twenty-Five). Scripts are now registered on init.
 * Fixed: the booking form loaded no scripts or styles when the shortcode came from
   a page builder such as Elementor or Divi.
 * Fixed: a double click on the confirm button could create two bookings when a 
   prepayment tier was selected.
 * Fixed: when a licence expired or was suspended, the booking form showed no time
   slots at all instead of falling back to the free mode.
 * Fixed: on the free plan the restaurant received no email when a guest booked 
   a table.
 * Fixed: with more than one venue, the second venue could not be reached by the
   panel.
 * Fixed: every page load could call the server again when the venue cache was empty,
   slowing the whole site down when the server was unreachable.
 * Fixed: payment confirmations arriving after a trial ended were refused, so a 
   guest could be charged without the booking being confirmed.
 * Fixed: schema updates never reached the venues table on sites installed before
   this release.
 * Fixed: on the free plan, editing a venue showed a success message without saving
   anything.
 * Fixed: the “Give a Gift Card” button appeared on the free plan and led to an 
   empty page.
 * Fixed: the Quick Blocks routes ran even on plans where the feature is not included.
 * Fixed: the Events page was empty for free sites that had opted in to selling 
   tickets.
 * Changed: gift card amounts no longer ask for a name. An amount of 25 is called
   25.
 * Added: a link from Settings to where the gift card amounts are set.
 * Fixed: the disabled-fields styling in the email settings screen is now delivered
   as a stylesheet instead of being written into the page.

#### 1.1

 * Free version: bookings, calendar and confirmation email, with no account.
 * 14-day trial on activation, then the plugin drops to the free level.
 * Events and ticket sales work on the free level too.
 * The free confirmation email uses the same wording as the paid one.
 * The floor log now lives on the mee-table service, not in the site database.
 * Events page: four PHP notices fixed.
 * The author name in the plugin list links to mee-table.com.

Le versioni precedenti stanno in changelog.txt, dentro la cartella del plugin. Older
releases are listed in changelog.txt, in the plugin folder.

## Meta

 *  Version **1.1.1**
 *  Last updated **17 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 5.0 or higher **
 *  Tested up to **7.1**
 *  PHP version ** 7.4 or higher **
 *  Languages
 * [English (UK)](https://en-gb.wordpress.org/plugins/mee-table/) and [English (US)](https://wordpress.org/plugins/mee-table/).
 *  [Translate into your language](https://translate.wordpress.org/projects/wp-plugins/mee-table)
 * Tags
 * [Reservation System](https://wordpress.org/plugins/tags/reservation-system/)[restaurant booking](https://wordpress.org/plugins/tags/restaurant-booking/)
   [restaurant reservation](https://wordpress.org/plugins/tags/restaurant-reservation/)
   [table booking](https://wordpress.org/plugins/tags/table-booking/)[table reservation](https://wordpress.org/plugins/tags/table-reservation/)
 *  [Advanced View](https://wordpress.org/plugins/mee-table/advanced/)

## Ratings

No reviews have been submitted yet.

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

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

## Contributors

 *   [ Breed Art Studios ](https://profiles.wordpress.org/breedartstudios/)

## Support

Got something to say? Need help?

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