Skip to main content
Restaurant POS & KOT for ERPNext — A full-screen dine-in, takeaway and delivery POS built as a proper Frappe app on top of ER — 1/1Illustrative preview

A full-screen dine-in, takeaway and delivery POS built as a proper Frappe app on top of ERPNext,

with a visual floor plan, per-station KOT printing and offline-first billing.

ECOSIRE scopes, builds, installs and supports it for your restaurant — it is not an off-the-shelf download.

What is Restaurant POS & KOT for ERPNext?

A full-screen dine-in, takeaway and delivery POS built as a proper Frappe app on top of ERPNext, with a visual floor plan, per-station KOT printing and offline-first billing. ECOSIRE scopes, builds, installs and supports it for your restaurant — it is not an off-the-shelf download. Built to order by ECOSIRE for ERPNext v15, v16 — indicative price from $999.00 USD; request a quote for a scoped proposal.

Key Features

Full-screen touch POS as a dedicated Frappe app with its own module and DocTypes, installed alongside ERPNext rather than patched into core
Visual floor plan with live table status (free / occupied / billed) backed by a Table DocType and real-time updates
Dine-in, takeaway and delivery order modes, each with its own workflow, pricing rules and receipt format
Running tables that stay open across multiple order rounds until settled, instead of ERPNext's one-shot retail cart
Kitchen Order Ticket (KOT) DocType with per-production-center routing — hot kitchen, cold station and bar each print only their own lines
Per-station Print Formats bound to network or Bluetooth printers, fired from server-side hooks.py document events
Split, merge and transfer bills across tables, each action recorded on the source documents for a clean audit trail
Offline-first billing with a local queue and idempotent sync keys so orders auto-post on reconnect with no double invoicing
Settlement posts a real POS Invoice / Sales Invoice against the correct POS Profile, warehouse, tax template and payment mode
Item modifiers, variants and course timing (starters / mains / desserts) sent as structured KOT lines the kitchen can read
Frappe role profiles for cashier, waiter, kitchen and manager, gating voids, discounts, comps and bill reprints
Whitelisted methods over the Frappe REST API so handheld order-takers and the floor terminal share one backend
Scheduler event for end-of-day reconciliation, closing stale open tables and flushing any unsynced offline orders
Client scripts for fast touch entry, quantity keypad, held orders and quick modifier selection tuned for service speed

Built to order, done for you

No DIY setup — a working app, built, installed and supported by ECOSIRE.

  1. 1

    You order

    Start with a one-time build price. We scope it with you at kickoff.

  2. 2

    We build & install

    ECOSIRE builds, configures and installs it on your ERPNext.

  3. 3

    Go live + support

    You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.

Technical Specifications

ERPNext Compatibility
—
License
Licence confirmation required
Python Requirement
Python 3.10+
Database
MariaDB 10.6+

About this Product

Independent restaurants, cafes and QSRs that run ERPNext for accounting and inventory usually hit a wall the moment they try to run the floor on it. ERPNext's native Point of Sale is designed for retail counter checkout: one cart, one customer, pay and print. It has no concept of a table that stays "open" across three rounds of orders, no floor plan, no kitchen ticket that fires to the grill station while the bar station gets only the drinks, and no graceful behaviour when the internet drops mid-service. Waitstaff end up scribbling on paper and re-keying at a terminal, kitchens miss modifiers, and the bill total never reconciles cleanly back to a Sales Invoice. That gap is exactly what this product fills.

We build a dedicated Frappe app (its own module, DocTypes and role profiles) that sits on your ERPNext instance rather than fighting it. The POS runs as a full-screen touch interface: the server picks a table from a visual floor plan whose status (free / occupied / billed) updates in real time, opens or resumes that table's running order, and adds items with modifiers and course timing. Sending an order writes a KOT DocType and routes print jobs per production center — hot kitchen, cold station, bar — using ERPNext Print Formats bound to the right network or Bluetooth printer, so each station only sees its own lines. Split, merge and transfer are first-class operations: split a table's items across several bills, merge two tables into one cheque, or move a running order to another table, each action recorded on the source documents for a clean audit trail. When the order is settled it posts a real ERPNext POS Invoice / Sales Invoice against the correct POS Profile, warehouse and payment mode, so inventory, tax and the general ledger stay correct with no manual re-entry.

Technically it is built the ERPNext-native way. Business rules live in server scripts and hooks.py document events (on_submit, validate, before_cancel) so KOT firing, stock deduction and invoice posting are enforced on the server, not just in the browser. The touch UI is driven by client scripts and a Frappe page/Portal view; the app exposes whitelisted methods and uses the Frappe REST API so handheld devices and the floor terminal talk to the same backend. Offline-first billing keeps a local queue when connectivity drops and auto-syncs on reconnect with idempotent keys so nothing double-posts, and a scheduler event reconciles any stragglers and closes stale open tables at end of day. Permissions are handled with Frappe role profiles (cashier, waiter, kitchen, manager) so voids, discounts and bill reprints are gated to the right people. The app targets Frappe/ERPNext v15 and v16.

Because this is build-to-order, you are not downloading a generic app and hoping it fits. After a short scoping call we confirm your exact floor layout, station-to-printer mapping, order modes, tax and rounding rules, and payment methods, then build against your requirements, run UAT on a staging copy of your site, and install on production with a rollback plan. Typical delivery is one working week from confirmed scope depending on how many stations, printers and edge cases are involved. You receive the full source code for your version and the git repository so you are never locked in.

What you get

  • Installable source code for your version of the app, packaged as a proper Frappe app (pip/bench installable)
  • Installation and configuration on your ERPNext instance — POS Profiles, warehouses, printers, station mapping and role profiles
  • Technical documentation: DocType reference, hooks.py doc events, whitelisted API methods and configuration notes
  • End-user guide plus a live training session for waitstaff, cashiers and floor managers
  • UAT on a staging copy of your site with an agreed test script, and a documented rollback plan before production install
  • A post-go-live support window for defect fixes and configuration adjustments
  • Handover of the full git repository so you own the code and can extend it with any Frappe developer

Who this is for

Independent restaurant owner on ERPNext

Runs a full-service restaurant and already uses ERPNext for accounting and inventory, but native POS can't handle tables, courses or kitchen tickets. Needs the floor and the ledger to be one system so sales reconcile automatically without paper re-keying.

Cafe or QSR operator

Runs a fast counter or small chain where speed and offline reliability matter most. Needs quick touch entry, takeaway and delivery modes, and billing that keeps working when the internet drops during a rush, then syncs cleanly to ERPNext.

Multi-station kitchen manager

Manages a kitchen with separate hot, cold and bar stations. Needs each station to receive only its relevant KOT lines on its own printer, with modifiers and course timing legible, so orders fire correctly and nothing is missed.

ERPNext consultant or in-house IT lead

Implements or maintains ERPNext for a hospitality client and wants a native, source-available Frappe app rather than an opaque add-on. Needs clean DocTypes, hooks and whitelisted APIs, plus the git repo, so the solution is maintainable and extensible.

How Restaurant POS & KOT for ERPNext Compares

CriterionECOSIRECustom BuildCompetitorERPNext Native
Table & floor managementVisual floor plan with live table status, running tables across roundsWhatever you spec and pay to build from scratchBasic table list, often no live floor viewNone — retail cart only, no table concept
KOT per stationPer-production-center routing to separate printers via Print FormatsPossible but you design the routing yourselfSingle kitchen printer, limited station splittingNo kitchen ticket concept at all
Split / merge / transfer billsFirst-class operations recorded on source documentsBuildable, adds significant scope and costPartial — split common, merge/transfer often missingNot supported
Offline billingOffline-first queue with idempotent auto-sync on reconnectYou must design and test the sync logicVaries; many are online-onlyLimited offline cache, no restaurant workflow
ERPNext integrationNative app — posts POS/Sales Invoices, stock and GL server-sideDepends entirely on your developer's disciplineUsually native but generic to your workflowFully native but retail-only behaviour
Fit to your restaurantScoped and built to your layout, stations and rulesFully bespoke but you carry all risk and QAGeneric; you adapt to the app, not vice versaGeneric retail POS, no hospitality fit
Source & ownershipFull source and git repo handed over, no lock-inYou own it, but also own all the bugsOften closed or licensed, limited accessOpen source but not restaurant-specific
Delivery & supportone working week from scope, UAT, rollback plan, support windowTimeline and reliability depend on your teamInstant install but you're on your own to fit itAlready installed, but the gap stays unsolved

Frequently Asked Questions about Restaurant POS & KOT

How long does delivery take?

This is a build-to-order product, not an instant download. After a short scoping call to confirm your floor plan, stations, printers, order modes and payment rules, typical delivery is one working week from confirmed scope. Simple single-station setups land at the shorter end; multi-station kitchens, several printers and unusual tax or delivery rules take longer. We give you a firm timeline once scope is agreed.

Is this an existing app on the Frappe Cloud Marketplace that I can just install?

No. ECOSIRE builds it for you as a dedicated Frappe app tailored to your restaurant, then installs and configures it on your ERPNext instance. There is no self-serve download. You receive the source code and git repository for your version at handover.

How do updates and support work after go-live?

Every build includes a post-go-live support window for defect fixes and configuration adjustments. Because you receive the full source and git repo, your own Frappe developer can extend it at any time, and ECOSIRE can provide ongoing support or feature work under a separate agreement. We build against Frappe/ERPNext v15 and v16 and can advise on version upgrades.

Which ERPNext versions are supported?

The app targets Frappe/ERPNext v15 and v16. During scoping we confirm your exact version and bench setup and build against it. If you are on an older version we will discuss an upgrade path or a compatible build before starting.

Does it post real invoices and deduct stock in ERPNext?

Yes. Settling a table creates a genuine ERPNext POS Invoice / Sales Invoice against the correct POS Profile, warehouse, tax template and payment mode, enforced server-side via hooks.py document events. Inventory, tax and the general ledger stay correct automatically — no manual re-entry, no parallel spreadsheet.

What happens if the internet goes down during service?

Billing is offline-first. When connectivity drops, orders and payments are held in a local queue and the floor keeps running. On reconnect they auto-sync to ERPNext using idempotent keys so nothing double-posts, and a scheduler event reconciles any stragglers at end of day.

Can it print separate kitchen tickets for different stations?

Yes. Each order writes a KOT DocType and routes print jobs per production center, so the hot kitchen, cold station and bar each receive only their own lines on their own network or Bluetooth printer via dedicated ERPNext Print Formats. Modifiers and course timing are included so the kitchen reads exactly what to make.

Request a quote

Restaurant POS & KOT

A full-screen dine-in, takeaway and delivery POS built as a proper Frappe app on top of ERPNext, with a visual floor plan, per-station KOT printing and offline-first billing. ECOSIRE scopes, builds, installs and supports it for your restaurant — it is not an off-the-shelf download.

  • Full-screen touch POS as a dedicated Frappe app with its own module and DocTypes, installed alongside ERPNext rather than patched into core
  • Visual floor plan with live table status (free / occupied / billed) backed by a Table DocType and real-time updates
  • Dine-in, takeaway and delivery order modes, each with its own workflow, pricing rules and receipt format
  • Running tables that stay open across multiple order rounds until settled, instead of ERPNext's one-shot retail cart

Request a Quotation

Tell us about your Restaurant POS & KOT requirements and we'll send pricing, licensing options and a tailored proposal — usually within one business day.

No payment now. This sends a quote request to our team — we'll follow up by email with pricing and next steps.