M cenaly.ru

Add-on · no fee per guest

Take bookings from your site while the phone is busy

A floating “Book a table” button, one form without registration — and the request appears in the Tables section of Cenaly.ru next to bookings taken by phone. For venues that would rather not pay for every guest they seat themselves.

  • One screen of form, no account needed for the guest
  • The request lands in your floor plan next to phone and QR bookings
  • A flat add-on price, never a fee per guest

No card. A minute to sign up, another for the tag.

Table booking
One tag for every widget7 of 12 are freeShadow DOM — layout-safeLabels in 45 languagesTwo clouds: AWS and Russia
commission per guest: the price doesn’t depend on how many book
0 %
screen of form: name, phone, date, time, party size, note
1
guests in a single booking — enough for a long table
up to 50
default booking length, after which your floor plan takes over
2 h

How it works for the visitor

  1. 1

    The guest taps “Book a table”

    The button sits in the corner of your site, and you can also open the same panel from your own link or a QR code on the table.

  2. 2

    They fill in one form

    Name, phone, date, time, party size and a note — all on one screen. Today’s date is prefilled and no account is required.

  3. 3

    They see an honest confirmation

    The widget doesn’t promise a confirmed table: it says the venue will confirm, and offers to book again.

  4. 4

    The booking reaches you

    In the Tables section it lands next to bookings from the phone and the QR menu. You confirm it or offer another time.

Set up in three steps

1

Sign up and add your site

A free Cenaly.ru account and your site domain in the "My website" section.

2

Paste one tag

One line before </body> — in your theme, in a Tilda or Wix HTML block, in Shopify's theme.liquid. It serves every widget.

3

Switch widgets on in the admin

Each widget is a toggle and a settings form. Changes reach your site without touching code; CDN cache is five minutes.

The tag

<script src="https://cdn.cenaly.ru/site/v1.js" data-domain="your-site.com" async></script>

One tag for all widgets. `data-domain` is your site; everything else lives in the admin.

What the booking widget does

Ask for exactly what you need

One screen, no steps and no registration: name, phone, date, time, party size, note. Today is prefilled and the default time is in the evening. Best for sites where guests abandon long forms.

Keep every booking in one place

A website request enters the Tables section the same way a phone or QR-menu booking does — no second list and no separate spreadsheet appear. Best for venues whose bookings are scattered across email and messengers.

Open the form from anywhere

The widget button, a link in your site menu, a `window.CenalyBooking.open()` call from your own button, or a QR action link — the entry point is up to you. Best if your site already has its own “Book” button.

Never lose a request to a bad connection

A failed submission is reported right under the form and the entered data stays in place, so the guest doesn’t retype everything. Best for mobile traffic and patchy signal.

Look like your own site

Button colour, corner, label and your venue name in the panel header, taken from your public profile. It renders inside a Shadow DOM and won’t break your layout. Best for carefully designed sites.

Never show a dead button

If bookings are switched off for a location, the widget quietly doesn’t start: a button leading nowhere is worse than no button. Best for chains where some venues don’t take bookings.

Where it pays off

A restaurant site on a builder

On Tilda or WordPress the button appears with the same tag as the other widgets — no template surgery.

Your own button in the header

A designed “Book” button in your menu opens our panel with a single line of JavaScript.

A QR code on the table or the bill

An action link opens the booking form immediately — guests book their next visit while still sitting with you.

A link from social media

Your bio or story leads to the site where booking is one tap away, instead of a thread in direct messages.

The evening rush

Guests book while the manager is working the room, and requests wait in the Tables section instead of the missed-calls list.

Several rooms or venues

Each location has its own settings and its own list of bookings, while the tag on the site stays the same.

How it looks on your site

Colour, position and labels adapt to your site. The widget lives in a Shadow DOM — your styles don't break it, and it doesn't break yours.

On desktop

On mobile

Where it goes

Exact menu names and plan requirements, taken from each platform’s own help center.

Sites built with our website builder ship with the widgets already wired — nothing to paste.

Step-by-step guides per platform — in the help center →

Pricing

Add-on, price in the catalogue

  • The “Booking widget” add-on is $9/month, or $90 a year
  • Paying yearly means 10 months instead of 12
  • There is no fee per seated guest: the number of bookings doesn’t change the price
  • Phone, QR-menu and Cenaly.ru storefront bookings stay free
Add it for free

With and without

Without the widget With the widget
How guests book ✕ The guest calls, and at peak time nobody picks up straight away They book from the site themselves: one form, no call, no account
Price ✕ Booking platforms charge for every guest you seat A flat add-on price that doesn’t move with the number of bookings
Where bookings live ✕ Website bookings arrive by email and live in a separate spreadsheet The request lands in the Tables section next to phone bookings
After-hours requests ✕ At night there is nobody to take the request and the guest goes elsewhere The form accepts requests around the clock and you handle them in the morning
Confirmation ✕ The guest has no idea whether they are expected The venue confirms, and the guest gets an answer

Honest about the limits

  • The widget sends a request rather than confirming a table automatically: the decision stays with the venue.
  • Guests don’t pick a specific table — the room assigns it. A floor plan isn’t required: booking works as a list for a date too.
  • If bookings are switched off for the location, the button doesn’t appear at all — we don’t draw what won’t work.
  • Up to 50 guests per booking, with a default length of 2 hours; from there your floor plan rules apply.
  • Times are venue times: the guest books “on the spot”, with no conversion into their own time zone.
  • The panel’s built-in labels cover four languages (en, ru, ka, tr); the button text is set separately.

Who it's for

  • Restaurants, cafés and bars with seating and their own website
  • Venues currently paying platforms per seated guest
  • Chains with several rooms behind one website

What a booking widget is and when you need one

A table booking widget is a button and a short form on a venue’s website through which a guest requests a table: date, time and party size. The request lands where you already keep phone bookings, so no duplicate work appears.

It matters where the call is the bottleneck: the evening rush, one manager covering the room and the phone, and guests who would rather tap a button than talk. And where bookings currently go to platforms that charge for every guest you seat.

Here it is an add-on with a flat price and no per-guest fee: however many bookings arrive, the bill stays the same. Bookings from the phone, the QR menu and your Cenaly.ru storefront remain free — only the widget on your own website is paid.

Questions and answers

How much does it cost?

The “Booking widget” add-on is $9 a month or $90 a year — paying yearly means 10 months instead of 12. There is no per-guest commission: the number of bookings doesn’t affect the price.

Where do website bookings go?

Into the Tables section of your dashboard, next to bookings from the phone and the QR menu. No second list and no separate spreadsheet appear.

Do I need a floor plan?

No. Booking works without a table layout, as a list of requests for a date. A floor plan adds seating by specific table, but the widget doesn’t require it.

Does the guest get a confirmation?

Once the venue confirms the booking. The widget itself says “request sent, the venue will confirm” — it will not promise a table on your behalf.

Can I open the form from my own button?

Yes: `window.CenalyBooking.open()` opens the panel from any button or link of yours. There is also an action link for QR codes — on the table or printed on the bill.

What happens to requests at night?

The form takes them around the clock and you handle them in the morning — they wait in the list. If a voice conversation is needed, add the callback widget with its morning queue.

How do I install it?

The shared “My website” tag plus the Booking toggle. WordPress — footer.php or a plugin, Tilda — HTML code in head, Shopify — theme.liquid, Webflow — Custom code.

How is this different from appointments?

A table booking is a request for seating that the room distributes. An appointment picks a specific staff member and a free slot from a live schedule — that is the neighbouring free widget.

Will it slow my site down?

The loader is one small `async` script; widgets load as separate bundles and only the ones you switched on. Nothing blocks page rendering.

Will it break my layout?

No. Widgets render inside a Shadow DOM: your site's CSS doesn't affect them and theirs doesn't leak out.

Which language will the widget speak?

It reads your page's `<html lang>` or a `data-lang` attribute on the tag. Built-in labels are translated into 45 languages; your own texts you write in the admin in the languages you need.

Where is the data stored?

In the cloud your account lives in: cenaly.com — AWS, cenaly.ru — Yandex Cloud in Russia. Requests, conversations and bookings stay within the brand's contour.

More — installation per platform, settings and troubleshooting — in the help center. Installation guide →

Let guests book without getting through on the phone

Switch the add-on on — the tag is already there. One screen of form, and bookings appear in your floor plan.

Start for free

No fee per guest · yearly = 10 months instead of 12