Repolode
Raktim94

Raktim94/nodedr-restaurant-pos

Self-hosted restaurant POS covering billing with UPI QR payments, tables, kitchen display, reservations, inventory and staff payroll, running on a local server.

Open-source alternative to:Toast POSSquare for Restaurants

Stars
288
Forks
181
Open issues
12
Last commit
4 hours ago

What is it?

OrderRestro is an open-source restaurant management system for dine-in, takeaway, delivery and kitchen operations. The whole stack (PostgreSQL, a NestJS API and a Next.js web app) runs with Docker Compose on a single server in the restaurant's local network, so order-taking, billing, kitchen display and printing keep working without an internet connection.

Beyond point of sale, it includes a visual floor plan with reservations and waitlist, a live kitchen display with ticket routing to stations, menu management with modifiers and combos, and inventory with recipe costing and purchase orders. It also covers staff attendance, shift scheduling and payroll from clocked hours, accounting reports, CRM with loyalty points, and multi-branch control. Tax handling covers India GST, US Sales Tax, EU VAT and Spanish IVA.

The project is AGPL-3.0 licensed and aimed at independent restaurants, cafés and chains that want to self-host instead of paying per-terminal subscriptions. It can also be deployed on a VPS or installed as an app on CasaOS and ZimaOS, and a Windows client wraps the web UI for till machines.

Key features

  • 01Billing with UPI QR codes for the exact bill amount, plus tips, gift cards, loyalty points and refunds.
  • 02Live kitchen display with ticket routing to multiple stations.
  • 03Visual floor plan with table reservations, waitlist and QR table ordering.
  • 04Recipe costing, ingredient stock with batch and expiry tracking, and purchase orders.
  • 05Staff clock in/out, shift scheduling, leave and payroll from worked hours.
  • 06Runs on a local server via Docker Compose and works without internet.

Use cases

  • An independent café or restaurant that wants a self-hosted POS without per-terminal subscription fees.
  • A business in India needing GST billing with UPI payments at the till.
  • A multi-branch restaurant group managing stock transfers and reports across locations.
  • A kitchen that needs reliable order display and printing during internet outages.

Quick start

  1. 1

    Start the stack with Docker Compose from the project folder

    docker compose up
  2. 2

    Open the app in a browser at port 1995 (for example http://localhost:1995)

Things to know

  • Still in active development, and split billing and split tender payments are not yet built.
  • Licensed under AGPL-3.0, so modified versions run as a network service must also be shared as source.
  • Self-hosting requires Docker and a machine to run the server on.

In collections

Topics

#point-of-sale#restaurant-management#self-hosted#kitchen-display-system#inventory-management#nestjs#nextjs#postgresql#casaos#docker

FAQ

What is nodedr-restaurant-pos?
Self-hosted restaurant POS covering billing with UPI QR payments, tables, kitchen display, reservations, inventory and staff payroll, running on a local server. OrderRestro is an open-source restaurant management system for dine-in, takeaway, delivery and kitchen operations. The whole stack (PostgreSQL, a NestJS API and a Next.js web app) runs with Docker Compose on a single server in the restaurant's local network, so order-taking, billing, kitchen display and printing keep working without an internet connection.
Is nodedr-restaurant-pos free to use? What license does it have?
nodedr-restaurant-pos is open source under the AGPL-3.0 license. Check the license terms before using it in commercial products.
Is nodedr-restaurant-pos still maintained?
Actively maintained. The last commit to nodedr-restaurant-pos was on Nov 6, 2026.
What can I use nodedr-restaurant-pos for?
An independent café or restaurant that wants a self-hosted POS without per-terminal subscription fees. A business in India needing GST billing with UPI payments at the till. A multi-branch restaurant group managing stock transfers and reports across locations. A kitchen that needs reliable order display and printing during internet outages.
How do I install nodedr-restaurant-pos?
Start the stack with Docker Compose from the project folder: docker compose up Open the app in a browser at port 1995 (for example http://localhost:1995)
Where can I get nodedr-restaurant-pos?
The source code and installation instructions are on GitHub: https://github.com/Raktim94/nodedr-restaurant-pos

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects