Running a restaurant or takeaway¶
Badger can take food orders for collection and for delivery by your own drivers, on your own site. Customers browse your menu, choose their extras and add a note, pick a time, and pay. The order rings on the Badger app (or shows on the Kitchen board in the admin). You accept it with a preparation time, or turn it down. The customer is only charged once you accept, and they can follow their order to their door. How it works underneath is in Restaurant ordering.
In development
Restaurant ordering is off by default. Some pieces (the Bistro menu theme, the order tracking page and the app's kitchen screens) are arriving in stages.
1. Turn it on¶
The quickest way is Settings › Platform upgrades › Restaurant ordering (takeaway and delivery). It switches restaurant ordering on and starts your main location taking food orders with sensible settings, and tells you what is left to do. You can also switch Take restaurant orders on yourself in Settings › Restaurant ordering.
Once it's on, the sidebar shows Orders › Kitchen and Catalogue › Menu choices.
2. Your menu¶
Each dish or drink is a product. Open it and add the Menu item product type: a Menu item card appears on the product page.
- Suitable for: vegetarian, vegan, gluten free and so on, and at most one heat level (mild, medium or hot). They show as icons and filters on your menu.
- Contains (allergens): tick every one of the 14 allergens the dish contains. UK law requires customers to be able to see them before they order; they also go on the order and the kitchen ticket. Your allergen notice (Settings › Restaurant ordering) is shown on the menu too, so customers know to ask you.
- Sizes (regular and large, 10" and 12") are variants, as for any product.
- Menu sections (Starters, Pizzas, Drinks) are collections.
3. Extras and choices¶
Catalogue › Menu choices holds the questions customers answer when they add a dish: "Choose your base", "Extra toppings", "Rice". One group is shared by every dish that uses it, so you set "Extra toppings" up once and changing a price there changes it everywhere.
For each group you choose how customers answer it:
| You want | At least | At most | Each option up to |
|---|---|---|---|
| Pick one, must answer (a sauce) | 1 | 1 | 1 |
| Optional, any number (extras) | 0 | 0 (any) | 1 |
| Double cheese allowed | 0 | 0 | 2 |
Each option has a price added to the dish (leave it empty for no charge), and its own allergens: a cheese topping contains milk even if the base pizza doesn't.
Then attach groups to a dish under Choices offered on its Menu item card, in the order customers should answer them.
Run out of something? On the Menu choices list, press Mark sold out beside the option. Customers see it greyed out until you press Back on. The Badger app will offer the same switch.
4. When you take orders¶
Open your location (Settings › Selling › Locations) and tick Takes food orders under What happens here. That switches the kitchen on and shows the Restaurant ordering card.
- Food orders taken, in the Hours card: During opening hours, or At different times to fill in the days you take orders, with a second period for split lunch and dinner service. A closing time after midnight (18:00 to 02:00) works.
- Last orders: how long before closing you stop taking orders.
- Order ahead: 0 means today only. With 1 or more days, customers can also order while you're closed, for a time when you're open.
- Usual preparation time is the estimate customers see when you're quiet. Busy after and Then add raise it automatically while lots of orders are cooking. It's the only preparation time food orders use: the Collection card's time is for click and collect orders of products.
- Accept within: an order nobody accepts in time is turned down automatically and the customer isn't charged. A reminder rings at half that time.
Too busy?¶
Press Pause new orders on the Kitchen board or the location's card, for 15 minutes, 30 minutes, an hour, or until you resume. Customers see you're not taking orders; orders already placed carry on.
5. Delivery¶
Collection is always offered for food orders. For delivery by your own drivers:
- On the location's Local delivery area card (beside Restaurant ordering), set the area: the postcodes you deliver to (LS6, LS7, LS8 1), any you don't (LS6 4), and optionally a distance. Postcodes match on whole parts: LS1 covers LS1 6HD but not LS10. With no rules at all, it delivers anywhere, so set at least one before you offer delivery.
- In Catalogue › Delivery options, add an option and choose the method Local delivery by your own drivers. Pick the location it goes out from, the delivery charge, a minimum order if you want one, and the time on the road (added to the preparation time for the "about 35-45 min" estimate).
Checkout tells customers outside your area that you don't deliver to them yet, and those below the minimum how much more to add.
6. Taking orders¶
When an order comes in:
- It rings on the Badger app on every phone set up for the kitchen. Without the app, keep Orders › Kitchen open, ideally on a tablet on the pass: it refreshes itself every 15 seconds, chimes for a new order (turn the sound on or off at the top; a tablet needs one tap on the page before it may play sound) and shows the count in the browser tab. Orders move left to right through four lanes: New, Preparing, Ready and Out for delivery. A new order shows how long it has waited and a countdown to being turned down automatically; a cooking order shows its promised time and turns red when it's late. Finished orders fold away under Completed today. When it's busy (eight or more orders on the go) the board switches to Compact: each order is a small tile with its number, delivery or collection, when it's wanted, how long it has waited or how late it is, a count of dishes and flags for a note or allergens. Tap a tile to open the whole order on the right; you accept or turn down from there, so the notes and allergens are in front of you. Ready, Out for delivery and Delivered stay on the tile. Switch between compact tiles and full tickets with the Compact button (the choice is remembered on that device). All day above the lanes adds up every dish still to make, for batching. Recall brings back the last order you moved on if you tapped by mistake. On a keyboard: V switches the view, R recalls, J and K move between orders, Enter opens one.
- Accept it by tapping how long it will take (your usual time is highlighted). The customer's card is charged and they're told when it will be ready (or with them). Or Turn down with a reason the customer sees; they aren't charged.
- Press Ready when it's cooked. For delivery, Out for delivery when the driver leaves and Delivered when it arrives; for collection, Collected when it's handed over.
Each order on the board shows what to make: the dishes, every choice and note, and the allergens. The order page in the admin shows the same, with a Kitchen card of times (placed, accepted, promised, ready, delivered).
Tables on the same board¶
With table service on, the dining room's courses come to the same board (a dining room that doesn't do takeaway gets a board too). A course being made sits in Preparing, marked with its table ("Table 12"), covers and course; Away in orange means the server has just called that course and the table is waiting for it. Each dish shows its seat (S1, S2; "Share" for something for the table). The table's next courses wait greyed under Held at the foot of Preparing, in menu order, so you can plan them; they turn into tickets when the server calls them away.
- Stations. If the dining room lists stations (kitchen, bar, pass), pick one above the lanes. Each station sees only its own dishes from each table; the bar sees no takeaway orders; the pass sees everything. Bookmark the station's link on the tablet that lives there.
- Bump one dish at a time. The tick beside a dish marks it ready, so the bar can bump the drinks while the mains are still cooking. Tap it again to bring it back. Ready on the ticket bumps every dish your station makes on it. The course moves to Ready (and the table's server is told on the Badger app) once every dish on it is ready.
- Served at the pass sends the course out and takes it off the board; Bring it back in the message that follows, or Recall on a ready course, puts it back.
- All day counts the tables' dishes being made as well as takeaway orders.
Customers can follow the order on a tracking page linked from their confirmation, which shows each step, the promised time and, while it's on the way, roughly how far away the driver is.
What's not in this version¶
- Kitchen printers and kitchen display screens.
- Courier services (Stuart, Uber Direct), assigning drivers and planning routes, and a live map.
- QR ordering at the table.
- Separate breakfast and lunch menus by time of day.
- Stock of individual ingredients: use Mark sold out on a choice instead.
Through the AI assistant (MCP)¶
Everything above can also be done through the Badger MCP tools: modifierGroups and
manageModifierGroups (including the sold-out switch), the menu object on manageProducts,
ordering, deliveryArea, pause and resume on manageLocations, localDelivery on
manageDeliveryOptions, and orders kitchen to see the kitchen's orders. See
MCP & OAuth2.