Hakan Sevimoğlu Hakan SevimoğluFreelance Developer · 18 yrs
Restaurant · SaaS · POS

Kassa Restaurant: One Order Flow for Five Ordering Channels

Restaurants receive orders from delivery platforms, phone, QR menus, tables and the counter, each on its own screen. Kassa Restaurant was built as a browser-based multi-tenant SaaS that connects all of them to one order model.

Short answerKassa Restaurant is a multi-tenant restaurant POS and order management SaaS built by Hakan Sevimoğlu with PHP/PDO and MySQL. Orders from Yemeksepeti, Getir Yemek and Trendyol Yemek, the QR menu, phone, tables and counter land in one order flow; the same record changes state across kitchen display, thermal receipts, courier and till. Restaurants sign up themselves at resto.kassa.com.tr.

Written by Hakan Sevimoğlu · Last updated:

Project context

Small and mid-sized restaurants used one tablet per delivery platform, a notebook for phone orders and a separate till for the dining room. Missed orders, mixed-up tickets and end-of-day cash mismatches followed.

The goal: reduce all channels to one data model, track every order on one board, run in the browser without installation and keep many restaurants safely separated on the same infrastructure.

Architecture and data flow

  1. Channel adapters: platform, QR, phone, table and counter orders are written to a shared order table with the same fields; the channel is stored separately.
  2. Order hub: orders move through awaiting approval, preparing, on the way and completed on a board or list; new orders trigger a sound, delays are flagged automatically.
  3. Kitchen: item-level preparation screen and automatic 80 mm thermal receipts.
  4. Courier and payment: courier assignment, cash on delivery and end-of-day reconciliation.
  5. Feedback: state changes on platform orders are sent back to the platform.

Each restaurant is isolated by its tenant ID; every query runs with a tenant filter.

Engineering challenges and solutions

Different channels, one order model

Platform orders, QR orders and table tickets carry different fields. All were normalized into a common order and line structure, with channel, external reference and payment type in extra fields, so kitchen, courier and reporting modules work regardless of channel.

State synchronization

An order prepared in the kitchen must show the right state on the courier screen, the till and the platform at the same time. State transitions go through one service and each transition is timestamped; delay calculations come from that history.

Multi-tenant security

Many restaurants share one database. The tenant ID comes from the session, never from client input, and menu, stock, order and report queries are all scoped to it.

No installation

The system runs in the browser and installs as a PWA; the same interface works on desktop, tablet and phone, and menu changes reach the QR menu and till instantly.

The resulting system

Restaurants see orders from every channel on one panel, with live cards for daily sales, unpaid orders, delays and channel mix. They can explore a demo account and sign up to open their own restaurant. The retail side of the same product family is the iPhone POS app CepKasa on the App Store.

A sixth channel: Kassa Yemek

Because the order model is channel-independent, a customer-facing food ordering marketplace was built on the same infrastructure: Kassa Yemek. Customers pick their address, see restaurants that deliver there and order at menu prices with no platform fee. Orders are written into the restaurant's existing order hub; delivery zones, minimum basket and campaigns are read from the restaurant's own panel. Restaurants apply for free.

Kassa Yemek customer site: orders land in the Kassa Restaurant order hub

Technology stack

PHPPDOMySQLJavaScriptPWATermal yazıcıYemek platformu APIÇoklu kiracı (SaaS)

Related product and service

Go to the product page: Kassa Restaurant

Frequently asked questions

Is installation required?

No. Kassa Restaurant runs in the browser with the same interface on desktop, tablet and phone.

How do delivery platform orders arrive?

Orders from Yemeksepeti, Getir Yemek and Trendyol Yemek land in the order hub automatically, and state changes are sent back to the platform.

Can several branches or businesses use the same system?

Yes. It is multi-tenant; each business's data is separated by its tenant ID.

More case studies

WhatsAppFree Quote