Kamboj Restaurant POS & Table Billing

Description

Kamboj Restaurant POS & Table Billing is a WordPress restaurant POS plugin built for dine-in service. Restaurants and cafés can manage tables, take orders, print kitchen tickets (KOT), collect payments, and review sales from a modern counter interface — without a separate POS subscription.

Orders, menu, tables, and payments stay in your WordPress database. Staff log in and use the POS page like a billing counter.

Developed by Mohit Kamboj. This plugin is not affiliated with any third-party restaurant brand or trademark.

Why restaurant owners choose this plugin

Unlike heavy POS systems, this plugin focuses on table billing essentials for single-location dine-in restaurants.

✔ Floor plan with live table status
✔ Touch-friendly menu and cart
✔ Auto-save orders to tables
✔ KOT and bill printing
✔ Cash, UPI, and card payments
✔ GST / tax settings
✔ Active orders and bill history (managers)
✔ Sales analytics and reports (managers)
✔ Cashier and manager roles

Key Features

Floor Plan & Tables

Create dining areas and tables from WordPress admin. The POS floor view shows which tables are available, occupied, or in billing. Tables become occupied only after items are saved on the order, so empty opened tables stay free.

Touch-Friendly POS Counter

Staff tap menu items to add them to the cart. Items auto-save to the table order — no separate Save button required. Quantity changes sync instantly. Navigate back to the floor plan and the table stays occupied with the correct bill amount.

KOT & Bill Printing

Send kitchen order tickets (KOT) and print bills from the browser. Restaurant name, address, and phone from settings appear on printed invoices.

Payments & GST

Settle orders with cash, UPI, or card. Enable GST from admin, set the tax rate and label, and apply tax on bills automatically.

Active Orders & History

View all running table orders in one list synced with occupied tables. Managers can browse bill history by date range and reprint old invoices.

Analytics & Reports

Dashboard stats on the POS and detailed reports in WordPress admin — daily sales, top items, payment split, and month-wise revenue charts. Full analytics and bill history require the manager role.

Staff Roles

Kamboj Cashier can take orders and settle bills. Kamboj Manager can free occupied tables, void orders, and access reports. Administrators have full access.

Perfect for

  • Restaurants and cafés with dine-in service
  • Single-location food counters on WordPress
  • Teams that need table-wise billing instead of WooCommerce checkout
  • Small restaurants replacing paper KOT with a simple digital POS

Easy to set up

  1. Activate the plugin — a POS page is created automatically.
  2. Add areas, tables, and menu items in Restaurant POS admin.
  3. Set restaurant name and GST in Restaurant POS Settings.
  4. Assign cashier or manager roles to staff.
  5. Open the POS page and start billing.

Built for WordPress.org standards

This plugin stores data in custom database tables on your site, uses the WordPress REST API for the POS interface, and does not send order data to external servers. Designed to stay fast, secure, and maintainable.

Limitations

  • Built for dine-in / table service — not online delivery or WooCommerce checkout
  • Printing uses the browser print dialog
  • Pretty permalinks recommended for POS routes

Source Code

The React POS front-end is compiled into assets/pos/. Human-readable source is included in the plugin at:

source/pos-ui/

To rebuild the POS assets:

  1. cd source/pos-ui
  2. npm install
  3. npm run build

Output is written to assets/pos/.

Third-party libraries bundled in this plugin:

  • Chart.js 4.5.1 — assets/js/chart.umd.min.js — https://github.com/chartjs/Chart.js — MIT license
  • React (compiled into POS bundle) — source in source/pos-ui/ — MIT license

Privacy Policy

This plugin stores restaurant operational data locally in your WordPress database, including orders, order items, tables, menu items, payment records, and staff user IDs on orders. This data is not transmitted to external servers.

The plugin registers WordPress personal data export and erasure tools for orders linked to staff accounts. Use Tools Export Personal Data or Erase Personal Data in WordPress admin.

Credits

  • Developed by Mohit Kamboj (mohitkamboj55)
  • POS front-end built with React — source in source/pos-ui/
  • Admin charts use Chart.js 4.5.1 (bundled locally, MIT license)

Installation

  1. Upload the kamboj-restaurant-pos-table-billing folder to /wp-content/plugins/ or install the ZIP from Plugins Add New Upload Plugin.
  2. Activate Kamboj Restaurant POS & Table Billing through the Plugins screen.
  3. Go to Settings Permalinks and click Save Changes.
  4. Open Restaurant POS Settings and confirm your POS Page URL.
  5. Set restaurant name, address, phone, and GST options.
  6. Add dining areas and tables under Restaurant POS Restaurant & Tables.
  7. Add menu categories and items under Restaurant POS Menu.
  8. Assign staff roles under Restaurant POS Staff.
  9. Open the POS page while logged in as staff and start billing.

FAQ

Do I need WooCommerce?

No. This is a standalone restaurant POS and does not require WooCommerce.

Does it support online delivery?

Not in this version. The plugin focuses on dine-in table billing.

When does a table become occupied?

After items are saved on the table order. Empty opened tables stay available.

How do I free a table without payment?

Managers and administrators can use Free Table. Cashiers should use Pay Now or ask a manager.

A table is stuck on occupied. What should I do?

Use Force Free in Restaurant POS Restaurant & Tables.

Where is data stored?

In custom WordPress database tables on your site (wp_mizaaj_*).

Does the plugin send data externally?

No. Core POS operation does not require external APIs.

Which roles can access the POS?

Kamboj Cashier, Kamboj Manager, and administrators.

What is the POS URL?

Use the URL in Restaurant POS Settings, for example: https://yoursite.com/pos/#/tables

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Kamboj Restaurant POS & Table Billing” is open source software. The following people have contributed to this plugin.

Contributors

Changelog

1.6.1

  • Plugin Check: backup import nonce verification and table name PHPCS annotations

1.6.0

  • Backup & Desktop admin page: export/import JSON backups
  • REST API: GET /backup/export and POST /backup/import (admin or desktop token)
  • Desktop app source in repository desktop-app/ (Windows .exe and Mac .dmg)

1.5.3

  • REST API menu endpoint: filter menu items by requested outlet (same scope as categories)

1.5.2

  • REST API: enforce assigned-outlet and per-order/table authorization on all POS endpoints
  • Update Chart.js to 4.5.1

1.5.1

  • Text domain updated to kamboj-restaurant-pos-table-billing to match plugin slug

1.5.0

  • Rename plugin to Kamboj Restaurant POS & Table Billing (trademark-safe branding)
  • REST API: route-specific permission callbacks (reports, settle, order write)
  • Include React POS source in source/pos-ui/ with build instructions
  • Update Chart.js to 4.4.9
  • Cashiers no longer access analytics or bill history endpoints

1.4.3

  • Admin POS theme colors: primary, button hover, button text, accent, sidebar, and page background — live preview in Settings, applied on POS frontend

1.4.2

  • Restaurant logo upload in Settings with adjustable size for POS top bar and sidebar

1.4.1

  • Fix admin hero card heading contrast and WordPress button styling
  • POS billing: gradient categories, improved cart header

1.4.0

  • Modern UI refresh for WordPress admin and POS counter (cards, typography, gradients)
  • Inter font, improved sidebar, stat cards, filters, and modals

1.3.3

  • Fix analytics/dashboard date mismatch (site timezone + local JS dates)
  • Fix “This Month” card using wrong monthlySales sum
  • Show walk-in count when active order has no table

1.3.2

  • Plugin Check: suppress SchemaChange warning scope on uninstall DROP TABLE

1.3.1

  • Plugin Check: translators comments, prepared SQL with %i, remove discouraged load_plugin_textdomain()

1.3.0

  • Complete uninstall cleanup: drops all mizaaj tables, options, roles, and capabilities
  • Currency symbol and position configurable from Settings
  • GDPR personal data export and erasure hooks for staff-linked orders
  • Translation-ready: mizaaj.pot template and POS UI strings via wp_localize_script