The waiter's tap, the food that left the shelf, the wage that was signed, the riyal that reached the bank — all of it is the same record, written once and read everywhere.
Every person in the restaurant has their own screen. Each one writes into the same record, so nobody re-types anything. Tap a person to see their part of the day.
ABToday's sales against the same minute last Saturday. Signs payroll and paid-outs with a PIN. A two-star review reaches him first.
See the Owner app
JJoseph taps Table 3's garlic bread and tiramisu. One tap sends QR 93.00 to the kitchen, each dish on its course.
See the till
RRahul reads the ticket on the chef display and records the bain-marie at 08:10 on MiM Hygiene. A bad reading becomes a work order.
See MiM Hygiene
NNoor confirms this morning's 12 lines from the Central Store, answers the guest who wrote "not quite", and closes the day.
See the departments
OOmar sees an expired health card before a QID that renews in 9 days. August's payroll goes to the bank as the real WPS file.
See staff phones
LLayla sees what the till and the book disagree on, signs the fridge compressor quotation, and knows the food cost tonight.
See food cost
GOpens the receipt from the QR, in Arabic or English. Earns points on the WITHSTAND card, and gets a win-back offer the owner approved.
See the receipt
QR 15,581.50today's sales · ▲ 25%Bill #1200029QR 132.00 · paid by cardTable 34 guests · QR 490.00 running
Real MiM screens, shown with sample data.
A product that moves every week says more than a promise. Each line below is dated, and each one passed 297 gates on its way out.
Opened from the QR on the paper bill: English or Arabic, the points it earned, a WhatsApp share, and a private door to the manager before Google.
Taking a dish off sale, a refund, a booking — typed on one sheet with the keypad inside it. No floating keyboard, one exit, a button that sleeps until the record is complete.
The whole order on one card, courses in the law's order. Start releases a course to its stations; Away is allowed only when the course before it is away.
A post joins to the dish it names and to that dish's plates from the permanent book — a lift with a named baseline, never a like count.
Each department has its own staff, its own sign-in, and screens built for that job — writing into the same record as everyone else. Pick one. Every screen is drawn from the real MiM software — the same layout, the same rules, demo data.
What is selling right now across the group — by the hour, by brand, by payment, every branch ranked — built from the same rows every department wrote. Nothing re-keyed, nothing summarised by hand.








Fifteen screens replace the pages that were hardest to read. Each one starts with a single sentence that answers it, fits a 13-inch laptop, and works in Arabic.

In one sentenceQR 1,928.50 behind last Saturday at 17:34, one branch not selling, 4 things waiting.
Screens shown with sample data.
Fast enough for a Thursday night, and every tap on it is already a row in the stock ledger, the P&L and the day close. Nothing gets re-typed anywhere, ever.
Cash, card or the brand’s app, a tip, split tenders with the change worked out, and the guest’s loyalty card on the same sheet: Maryam earns +13 points on this QR 132.00 bill.
It appears on the check and travels to the kitchen screen with the order. Undetermined never reads as "free".
Mark a dish off at one till and it reads “86 · Sold out” on every till, as the calamari does on the Restaurant POS screen above. Nobody rings up what the kitchen cannot cook.
Orders queue locally and settle when the link returns. An empty answer is never mistaken for a real zero.
At 20:49 the fries ran late and Noor put them on us: the line stays on the check at QR 0.00 with the QR 24.00 struck through, and the bill closes at QR 132.00. A comp is a line with a price and a name, not a missing plate.
Including the receipt. The layout flips; nothing ends up reading backwards.





A chef works a table, not a list of plates. The Pass shows every course in the order the law of service says they go out — and the rule is in the software, not on a sticky note.
The head chef records temperatures, prep labels, cooling, deliveries and fit-to-work on one phone. Every record goes to Quality & Training and lands in the 18 MoPH records an inspector reads.













The branch manager shows a code in Ordering. The phone is paired to that one branch, and the code lasts ten minutes.

“Is every kitchen keeping food safe?” One sentence names the branches that need you now, worst first, with one button that asks them to fix it.
Head Chef, Sous Chef, Chef or Branch Manager. Any other PIN is refused, and so is a chef whose health card has expired.
English, العربية, हिन्दी, नेपाली and Tagalog. Each cook reads the app in their own.
The bain-marie read 61.5 °C at 08:10. The fix is written down, and Maintenance gets work order #M-214 from the same tap.
Screens shown with example figures.
A restaurant group does not run on one system. It runs on a till, a spreadsheet, a WhatsApp group, an accountant's file, and four delivery tablets. Each holds a different version of the truth.
Every seam between two systems is a place where money goes missing.
MiM is not a POS with reports bolted on. It is one database that every department writes into and reads from — so there is one version of every number, and it is today's.
A count means somebody has to act. These two screens read the same evening at JUNO West Walk: the owner’s phone at 21:14, and the chef display at 20:45 with table T2’s bill #1200029 on the fire.
Demo data. On a live install these screens read from your own branches. Every department’s own screen, HR, Finance, the Central Store and Head Office among them, is in the departments explorer above.
If one person is still re-typing yesterday's numbers into a file every morning, you are the operator this was built for.
Every row says what it does and which way the data goes. “Running” means it is live on MiM’s server today; “Coming” means it is not connected yet, and the row says what it waits for.
6 running · official channels only
8 running · MiM’s own screens, each paired by QR
Not connected yet · each row says what it waits for
Three screens. Not a report you request — the day as it happens, and what is waiting for you.
Before closing, comparing today's takings to a whole day tells you nothing. You will always look down, and you will learn to ignore the number.
So the app compares today to the same minute of the day you are measuring against. At 21:14 on Tuesday 8 September, JUNO West Walk reads last Tuesday's takings up to 21:14 — and says so on the chip, so you know what you are being told.










Every marketing tool can say a post got 286 likes. Only the till holds the bill. MiM joins each post to the dish it names and to that dish's plates from the permanent book — and it refuses the marketing the kitchen cannot honour. Four screens, one law: a like belongs to Meta, a plate belongs to you.
The marketing department sees demand in portions — never a riyal, never a price, never a cost. A gate refuses any marketing screen that reaches for money.
Nothing can be drafted for a dish that is off sale where the post would be seen. The refusal is the same fact the End-of-day screen already holds.
A campaign is planned, budgeted and asked for; Finance approves the spend. Its uplift is measured in portions of the named dishes, during against before — calculated, so it cannot be flattered.
From the guest's receipt: loved it → the branch's own Google review link; not quite → a private note to the manager and the Owner's phone, never the internet.
Theoretical against actual, per ingredient, per room. The gap in kilos and in riyals — and an honest blank where the answer isn't known.
Every row is judged or says why not — here 12 of 12. A shelf with no price on file shows its shortage as real and its money as unknown, never rounded to zero to make the report look complete.
Recipe coverage sits beside the gap — here 100%, no sold line without a recipe. A dish sold without one is quarantined, not counted as a saving — a dish nobody costed is a hole in the map, not good news.
“20g of saffron” against a kilo shelf used to read as 20kg — a 1000× lie in the food cost and a shelf that empties on paper. Conversions are same-dimension only, or they refuse.
No dish is given a made-up cost at 30% of its price to fill the table. Uncosted means uncosted, and it says so on the screen until someone enters the recipe.
A thousand staff cannot share a four-digit PIN pad. Each person scans one personal code and their own phone becomes their self-service — and nothing else.











The balance lives on the engine, not on the card — so it cannot be edited at the till.
Shown here as the JUNO card of the demo group — Maryam’s 286 points include the 13 she earned on bill #1200029. Each group’s card carries its own brand and colours, never ours. Tiers, thresholds and rewards are yours to set; every balance is simply points × QR 0.50, the same rate at every branch.
Twelve audit holes were found and closed before this shipped.
One card, every brand. Rules propose an offer; nothing reaches a customer without the Owner's tap. An approved offer appears on their lock screen, in its own words.
Came every ~1 day · loves Stuffed Burrata · usually lunch
Last seen 39 days ago: at riskWe miss you, Omar — your Stuffed Burrata is on us this week 💙
Comes every ~1 day · loves Stuffed Burrata · usually lunch
On her card now: 20% off the next visitNo rhythm yet · loves Stuffed Burrata · usually lunch
Not in a Wallet yet: the card was opened but never addedOne redemption uses a single-use offer up, and the card says thank you. A standing offer works on every visit until you clear it.
Identify the member at payment, ring the item, and the redeem button comps it. Refused twice, refused at the wrong branch, audited every time.
Every number comes from paid bills, with refunds and voids left out. Members are matched by phone.
Names and phone numbers on this page are samples.
Every printed receipt carries a QR. Behind it is the guest's own copy of that bill — a link that lives exactly as long as the permanent record does, which is for ever. No login, no personal data in the address, and an unknown link answers one constant "not found".


White ground, soft grey cards, one violet, a sentence under every number. The fourth frame is the fiscal strip: what the same bill will carry once Qatar publishes the e-invoice format. Figures are samples.
The local rules are not a checkbox we added. They are the way the system counts.
The real SIF format, accepted by the bank
EOSB, rest-day pay, wage floors, Art. 70
Ramadan and Eid computed, not typed
Every screen, including the receipt
Thursday night belongs to Thursday
14 categories · undetermined is never "free"
Prime cost is food plus labour. Move the sliders to your group and see the size of the prize — before anybody promises you anything.
Prime cost benchmark: under 55% is healthy for most full-service operations, 55–65% is worth watching, above 65% usually means the menu or the roster is carrying a problem. Nothing here is sent anywhere — the arithmetic runs in your browser.
MiM was not built for a market. It was built because we needed it, and we are the first ones it has to be right for.
We did not set out to sell software. We set out to stop losing money in the gaps between five systems — and then we could not go back to the old way.
You are handing over payroll, bank matching and every sale you make. Here is exactly what happens to it — and why the number on the screen can be trusted.
Every one runs the real code, none just reads it — and every fix is proven by putting the bug back until the test catches it.
PostgreSQL on a paid tier with daily automatic backups, and restores that are tested — a backup nobody restored is not a backup.
There is no open API reading your tables. Every request goes through the engine, with a key, and the key is per install.
Sales, voids, refunds and wage changes are appended to a permanent journal. A correction is a new line, so the original stays readable for ever.
Salaries, ID numbers and documents sit behind a separate HR key. A waiter's screen cannot reach them, and neither can a manager's without it.
The till keeps selling offline and queues every sale. When the link returns it settles up — and an empty answer is never mistaken for a real zero.
The Owner’s cockpit and the P&L are computed by the same code, so they cannot disagree.
Every table exports to a spreadsheet. If you ever stop paying us, you keep your history — that is the point of a permanent journal.
The switch is the part people fear more than the price. Here is the whole of it.
The same screens we run our own restaurants on, with demo data. Bring your menu; we type three dishes in front of you.
The till app on your machine from a USB, the engine key on a wallet card, printers found on the network. Your Mac, POSBANK or Windows till — nothing new to buy unless you want to.
Menu, staff, suppliers and stock arrive through four templates. Every row gets a verdict; a blank is never turned into a zero.
Waiters, the chef, the hostess desk and each staff phone scan one code each. One device, one identity — a lost tablet is revoked in a tap.
Every department is included in every plan — you are never sold "the HR module" a year later. Prices are quoted per group, because a two-branch café and a seventeen-branch operation are not the same job.
One restaurant, one kitchen, however many tills you need on the floor.
Several branches, one or more brands, a head office that wants one screen for all of it.
Many brands, franchise partners, or a group that needs its own install and its own keys.
Branches and tills. Not modules, not seats, not how many people log in. Add a department and nothing changes on your invoice.
Only onboarding — bringing in your menu, ingredients, suppliers and staff records, and the first branch install. Quoted once, never recurring.
Tell us your branch count and what you run today. You get a written quote, not a call from a salesperson.
Send one line about your group — how many branches, and which system hurts most. We will show you the same screens we run our own restaurants on.
Each network in its own colours
Every brand's posts, likes and comments, inside Head Office. Read-only: MiM never posts, replies or deletes.
After its Monday post, Mini Truffle Arancini went from 6.2 to 10.0 plates a day (+61%).
Each post is joined to the dish it names, and to that dish's plates in the permanent book.
Blackout's last 10 posts took 1,284 likes; Burnt Cheesecake alone took 312.
Comments arrive in the guest's own language, next to the post they were left on.
Juno's 10 newest videos took 24,386 likes; one carried 6,912 on its own.
Each brand connects its own TikTok Business account; the token never reaches a till.
What it cannot do. A post cannot be traced to a bill: nobody scans a story at the till. Every lift is a dish measured against its own four-week average, a comparison with a named baseline, never proof.