A Telegram bot for a food delivery service: menu, payment, couriers
A restaurant or a delivery kitchen lives on a thin margin, and every extra percent of commission eats the profit your cooks earned by hand. Aggregators take between 15 and 30 percent of every order, keep your customer base to themselves, and can put a cheaper competitor right next to you at any moment. Your own Telegram bot changes that arithmetic: the order comes straight to you, the commission is zero, and the customer’s contact stays with you. Meanwhile the customer has nothing to install — the menu, the cart, the payment and the courier status all live inside a messenger they already have open. Let’s break down what such a bot consists of, which mistakes happen most often, and how quickly it pays for itself.
How a Telegram bot for food delivery works
The menu in the bot is built exactly like the one in an app: categories (pizza, rolls, soups, drinks, desserts), and inside them dish cards with a real photo, ingredients, weight, calories and price. The photo here is not decoration but a direct sales tool: from what we see, items without a photo are ordered two to three times less often. Inside the dish card the customer immediately picks the size, spice level or add-ons (cheese, sauce, an extra portion of meat), and the price recalculates instantly. The «add to cart» button holds the state of the order, and the cart itself is reachable from any screen so the person can see at any moment what they have gathered and for how much. Before confirming, the bot shows the full receipt: every item with its quantity, the food subtotal, the delivery cost, any discount or promo code applied, and the final amount due. No surprises at the doorstep — everything is visible in advance.
Why Telegram and not a mobile app. An app has to be found in the store, installed, registered for and confirmed by phone number — you lose most people along that path, and on top of that you pay for development on two platforms plus annual store fees. A bot opens with one tap from a link in Instagram, from a sticker on the box or a QR code on the table, and the person lands straight in the menu. The Mini App format lets you build a full interface inside it, with beautiful cards and animations, visually on par with an app but requiring no installation. And most importantly: you gain a direct channel to the customer — the ability to send a promo message without any advertising budget.
Ordering food in Telegram: address, geolocation and delivery zones
The address is the most fragile part of the whole delivery, because that is exactly where couriers lose time and nerves. The right flow gives the customer two paths: send a geolocation with one tap, or type the address with map hints so the bot itself recognises the street and building. The bot then checks whether the point falls inside your delivery zone and immediately calculates the price: the city centre — free on orders over 400 hryvnias, the middle zone — 50 hryvnias, outlying districts — 90 hryvnias or a polite refusal with an explanation. The customer sees that number before paying, rather than hearing it from the courier at the door. Be sure to collect the details that genuinely save time: entrance, floor, intercom code, whether the lift works, and a comment such as «no need to ring, the baby is asleep». Five seconds for the customer means five minutes saved for the courier on every order.
The second advantage of a direct channel is the one-tap repeat order. The bot remembers the address, the payment method and previous carts, so a regular customer only has to tap «repeat last order» and confirm — from opening the bot to placing the order takes 20-30 seconds instead of three minutes. In food delivery, repeat orders bring in the bulk of the revenue, and this is exactly where speed decides everything: a person who is hungry and in a hurry will choose the service with fewer steps. Order history gives you a second thing too: you see who used to order weekly and then disappeared for a month, and you can win them back with a targeted offer instead of a mass blast to «everyone».
Payment and statuses: how a restaurant bot walks the customer to the door
Offer both payment methods, but understand the difference between them. Online payment via Telegram Payments, LiqPay or Monobank gives you the money immediately, all but eliminates refusals at the doorstep, and means the courier doesn’t have to carry a card terminal and change. Cash on delivery is still popular in Ukraine and cannot simply be dropped: some people just don’t trust a new service the first time round. The compromise we recommend at launch is this: both options are available, but online payment gets a small bonus — a free drink, say, or a five percent discount. Think through the failure cases separately: if a dish has run out, the bot must say so before payment, not after.
Order statuses are what removes 80 percent of the «where is my pizza» calls. The chain is simple and self-explanatory: order accepted, the kitchen started cooking, order packed, courier on the way, courier at your door. Each transition lands automatically in the same chat, and during the delivery stage the bot shows the courier’s name and phone number plus the estimated arrival time. A person who can see progress waits calmly; a person who sees nothing calls at minute three and eats up your operator’s time. Once it is over, the bot asks for a rating out of five — and that gives you honest feedback on a specific dish and a specific courier, rather than an abstract star on a third-party website.
Delivery automation: the kitchen, the POS and the courier queue
A bot with no kitchen integration is just a pretty shop window from which somebody still retypes the orders by hand. So the order must land straight where it is cooked: on the kitchen display or the receipt printer, and preferably both. Items are grouped by station (hot dishes separately, rolls separately, drinks separately), each ticket carries a number, an acceptance time and a cooking deadline, and the cook marks it ready with one tap, after which the status updates automatically on the customer’s side. If you already run Poster, SmartTouch, iiko or a similar POS system, the bot connects to it via API: dishes, prices, stop-lists and stock levels are all pulled from a single database. That is critical, because otherwise you update the menu in two places every morning and sooner or later sell something the kitchen ran out of.
Next come the couriers. Inside the bot a courier has their own cabinet: they see the queue of available orders, take one, get the address with a route button, the amount due and the payment method, and after handing the food over they tap «delivered». The dispatcher sees the whole picture on one screen: how many orders are in the kitchen, how many are on the road, which courier is free and which one has been circling a single district for two hours. The system can be taught to group orders into a single route when the addresses are close together, and not to hand a new order to someone who already has three in their bag. At the end of the shift the bot itself counts the number of deliveries and the cash the courier owes back — which closes the classic hole of unaccounted money.
Why a Telegram food delivery bot is cheaper than aggregators
Let’s count with concrete numbers. Suppose you take 40 orders a day with an average check of 500 hryvnias — that is 600,000 hryvnias of turnover a month. At a 20 percent commission, an aggregator takes 120,000 hryvnias of that every month, and it will keep doing so every month for as long as you work through it. Developing your own bot with a menu, payments, statuses, a courier cabinet and POS integration costs substantially less than one or two months of that commission, and after that you pay only for hosting and support — hundreds of hryvnias, not hundreds of thousands. Even if you keep getting some customers through the aggregator, every order moved into your own bot is pure profit that used to go to somebody else’s company.
On timelines: a working bot with a menu, a cart, delivery zones and statuses takes three to four weeks; a version with POS integration, a courier cabinet and analytics takes six to eight weeks. What to think through before you start. First: without good dish photography the bot will not work, so budget the money and a day for a photoshoot. Second: define your delivery zones and minimum order value clearly before development, because redrawing the map afterwards is expensive. Third: do not move a full two-hundred-item menu into the bot — people get lost; start with the thirty or forty best-sellers. Fourth: prepare the kitchen and the couriers in advance, because the first week with a new system is always slower. These are exactly the kinds of solutions we build at Devlly — around the specific processes of a kitchen, its real zones and its real courier team, rather than as a universal template a business has to be squeezed into.