Free · no commission per order
A floating “Order online” button opens your menu with prices from Cenaly.com right over the page, and on product pages the widget can place its own “add to cart” buttons. The order arrives in the order monitor and on the kitchen screen, with no commission per order. Built for cafés, bakeries and shops with a website of their own.
No card · a minute to sign up, another for the tag · settings reach your site in 5 minutes
Or adds an item with a button the widget placed next to the price on your own page — it depends on the mode you chose.
The cart lives in their browser and the button shows a counter. Quantities can be changed and items removed without leaving the page.
Name, phone, pickup or delivery with an address, a note. Delivery zones, fees, minimum order and preparation times come from your own settings.
In the order monitor and on the Cenaly.com kitchen screen, tagged as coming from the website — exactly like an order from the QR menu. Statuses and printing work as usual.
A free Cenaly.com account and your site domain in the "My website" section.
One line before </body> — in your theme, in a Tilda or Wix HTML block, in Shopify's theme.liquid. It serves every widget.
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.com/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.
Four modes: your menu in a storefront overlay behind a floating button (works with no setup at all), our “add to cart” buttons next to your own products, replacement of the site’s own buy buttons and cart, or a full takeover. You can start with the button and go deeper later. Best for both a Tilda landing page and a WooCommerce shop.
Items, prices, photos and the stop-list come from the admin: edit a dish once and it changes in the QR menu, on the storefront and on your site. Best where the website menu lives its own life and lags behind reality.
The scanner in the admin crawls up to 6 pages, detects the platform (11 are recognised by fingerprint, 7 have ready-made selector presets) and finds products, prices and the cart, verifying every selector against real HTML. You see a sample recognised product before the map is applied. Best for shops with an existing layout.
In on-top modes the prices in your markup are rewritten by a rule: a percentage or an amount, clamps and rounding down to “nice” endings, plus up to 200 per-item overrides by URL, name or SKU. The base is always the site’s original price, and your staff see it on the order line. Best when the site and the catalogue live in different systems.
In takeover mode the site looks untouched: its own buy buttons, counters and cart page still work — they simply lead into our cart and our order. Best for shops with an established design.
Delivery zones, fees, minimum order, preparation time and pickup are the same as on your storefront, and the order joins the common flow tagged as coming from the website. Pre-orders for a chosen time, checkout upsell and an e-mail receipt are switched on there too. Best for anyone already delivering.
A floating button opens the storefront over the site — no second menu to move across and maintain.
The scanner maps products and prices, and the widget adds its own “add to cart” buttons next to the native ones.
Replacement mode hides the site’s own buy buttons and cart so the guest isn’t seeing double.
The same order placed on your own site gives no cut to a platform, and the customer’s contact stays with you.
A rewrite rule shows the price you want, and the original one can stay struck through beside it with a badge.
A `#cenaly=order:item` link opens that exact product on your site — it never touches the guest’s cart.
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
On your side: The cart lives in the guest’s browser, but in overlay modes the cross-sell popup sees it too — it adds the extra item to the SAME cart instead of opening a second one.
On desktop
On mobile
On your side: Your operator gets the items as lines with a link to the product page — so they see exactly what the guest was looking at on your site.
On desktop
On mobile
On your side: The order shows up in your order monitor — the same screen as orders from the storefront and the floor. There is no separate widget back office.
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 →Free
Widgets are the door into the Cenaly.com platform: requests, chats and orders from your site land in the same admin as everything else, and some owners later buy extensions. We earn from plans and from four paid add-ons rather than from the widgets — which is why we charge nothing per visitor, impression, request or domain.
| Without the widget | With the widget | |
|---|---|---|
| Cost per order | ✕ A platform takes a cut from every order placed through it | ✓ An order from your own site gives no cut to a platform: there is no commission per order |
| Menu accuracy | ✕ The menu on the website lives separately and lags behind the real one | ✓ Items and prices come from the admin, with the stop-list respected |
| Where orders arrive | ✕ Orders from the site are taken by phone and in messages, then retyped into the system | ✓ The order lands in the order monitor and on the kitchen screen, tagged as coming from the website |
| Customer contacts | ✕ The customer’s contact stays with the platform rather than with you | ✓ The name, the phone and the order stay in your account |
| Site appearance | ✕ Accepting orders means rebuilding the website | ✓ The widget layers over the site you already have, right up to a “site untouched” mode |
An ordering widget turns an ordinary website into a place where people can buy: the guest builds a cart and chooses delivery or pickup without going to a third-party platform. The menu stays single — the one you maintain in the admin.
It matters where the site already exists but the orders go through a marketplace or the phone. A platform takes a cut of every order and keeps the customer’s contact; the phone works only while someone answers. Ordering on your own site closes both gaps.
Here the widget is free and embeds at four depths: your menu in a storefront over the page (works straight away, with no setup), our “add to cart” buttons next to your products, replacement of the native buttons and cart, and a full takeover where the site looks untouched. The product and price map is built by a scanner, and the order arrives in the same order monitor and kitchen screen as a QR-menu order.
The ordering widget is pointless if there is nobody to take the order: it carries the guest to checkout, but the cooking, packing and delivery are still yours — without a shift watching the order monitor the button turns into missed requests. And it is neither booking nor appointments: here the guest pays for goods and waits for delivery or pickup, rather than occupying your time.
Yes: the widget and order taking are free, we take no cut and there is no limit on orders. The site scanner, the selector map and your own pricing are included too.
In the order monitor and on the Cenaly.com kitchen screen, like QR-menu orders, tagged as coming from the website. Your usual statuses, printing and automations then apply.
You pick one of four modes: your menu in a storefront overlay behind a floating button, our “add to cart” buttons next to your products, replacement of the site’s own buttons and cart, or a takeover where the site looks untouched and its buttons lead into our cart.
The scanner in the admin crawls up to 6 pages, detects the platform (11 by fingerprint, 7 with ready-made presets) and finds cards, prices and the cart. Selectors are verified against real HTML, and you see a sample recognised product before the map is applied.
Yes: a rule changes the prices in your markup by a percentage or an amount, applies clamps and rounding, and up to 200 per-item overrides by URL, name or SKU go on top. The base is always the site’s original price; it can stay struck through beside the new one with a badge.
In the cart on your own site, payment is on delivery. For card payment the order is placed on our storefront, which in storefront-overlay mode opens right over your page.
The shared “My website” tag plus the Ordering toggle — one tag powers all 12 widgets. WordPress — footer.php or a plugin, Tilda — HTML code in head, Shopify — theme.liquid, Webflow — Custom code. The storefront overlay works right away, with no selector map; changes arrive within 5 minutes.
The ordering bundle is about 41 KB gzipped and loads as a separate file with the async attribute after the page has rendered. It doesn't compute the menu on the guest's device and doesn't crawl your site for it — it reads a ready public file from our CDN that is rebuilt whenever you edit the menu in the admin. The storefront, the "add to cart" buttons and the cart itself render in a Shadow DOM, so your shop's layout stays yours.
The data stays yours and you export it without asking us: the order list with any filter goes to CSV straight from the Orders section, and the catalogue and menu analytics export to CSV too. The storefront can live on your own domain, and that domain stays yours. On your own website the widget is a single script line — removing it is as simple as adding it was, and your markup stays untouched. No per-order commission, no fixed-term contract, no export lock.
The widget is free: it is part of the platform, not a separate product. There is no commission per order and no order limit; you only pay your payment provider for card processing and for the add-ons you choose yourself.
One loader — about 26 KB gzipped, with the async attribute: it reads which widgets you switched on and pulls only those, as separate files. A widget you left off is never downloaded, and the weight of each one you did switch on is stated on its own page.
No. Widgets render inside a Shadow DOM: your site's CSS doesn't affect them and theirs doesn't leak out.
It reads your page's `<html lang>` or a `data-lang` attribute on the tag. Built-in labels are translated into 45 languages — the guest chat covers the same list; your own texts you write in the admin in the languages you need.
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 →
A “Book a table” button → one form → a request in your Tables section
$9/mo
Modals, slide-ins, bars, embedded forms, coupons and quizzes with display rules and A/B testing
$9/mo
Honest badges — “14 orders today”, “7 bookings this week” — from real data
Free
Free. One tag, the “Ordering” toggle — and a storefront with a cart works over your website with no setup at all, while orders reach the kitchen.
Start for freeNo card required · no commission per order · menu and prices from your admin