You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
14 — Editions: One Codebase, Four Configurable Plans
Hard rule: every cell below is a DB row (plan, plan_feature, price_book,
setting — 07-DB-AND-CONFIG §2), never code. Changing a limit, price, or privilege is
configuration; new editions are new rows. Upgrades apply in place — the paywall is a demo.
Identity & positioning
| Dimension |
Lite |
Standard |
Pro |
Enterprise |
| Target business |
Mini/small shop, kirana |
Medium store |
Supermarket, pharmacy |
Chains, multi-outlet |
| Positioning |
"Bill in 15 minutes" |
"Run the whole store" |
"Run it at scale" |
"Run every store" |
Price posture (₹ = D5, rows in price_book) |
Entry; monthly allowed |
Mid; annual preferred |
Premium; annual |
Custom quote |
| Billing basis |
Per store |
Per store + per counter |
Per store + per counter |
Per org, negotiated |
| Support privilege |
Dealer/WhatsApp |
Dealer priority |
Priority + remote fix |
Dedicated + SLA |
Capacity limits (rows in plan_feature, enforced at runtime)
| Limit |
Lite |
Standard |
Pro |
Enterprise |
| Counters |
1 |
3 |
8 |
Unlimited |
| Stores |
1 |
1 |
2 |
Unlimited |
| Users |
2 |
6 |
15 |
Unlimited |
| SKUs (validated target) |
5,000 |
15,000 |
100,000 |
100,000+ |
| Bills/day (validated target) |
200 |
600 |
2,500 |
2,500/store |
| Held bills per counter |
3 |
10 |
20 |
20 |
Feature privileges (rows in plan_feature; ✗ renders as upsell, never hidden)
| Feature |
Lite |
Standard |
Pro |
Enterprise |
| POS billing, suggestions, quick-add, khata, customer attach |
✓ |
✓ |
✓ |
✓ |
| GST invoices, HSN summary, core reports |
✓ |
✓ |
✓ |
✓ |
| Purchase entry + last-cost + drafts |
✓ |
✓ |
✓ |
✓ |
| Multi-counter + per-counter series |
✗ |
✓ |
✓ |
✓ |
| Schemes & offers, salesman tagging |
✗ |
✓ |
✓ |
✓ |
| Label printing |
✗ |
✓ |
✓ |
✓ |
| GSTR-1/3B exports, Tally export |
✗ |
✓ |
✓ |
✓ |
| Owner app |
✗ |
✓ |
✓ |
✓ |
| Weighing-scale barcodes & scale port |
✗ |
✗ |
✓ |
✓ |
| Batch/expiry tracking |
✗ |
✗ |
✓ |
✓ |
| Loyalty |
✗ |
✗ |
✓ |
✓ |
| Purchase Inbox (AI) |
✗ |
✗ |
✓ |
✓ |
| e-Invoice (IRN) + e-Way |
✗ |
✗ |
✓ |
✓ |
| Full accounting (P&L/BS) |
✗ |
✗ |
✓ |
✓ |
| B2B counter billing (GSTIN, IGST) |
✗ |
✓ |
✓ |
✓ |
| Multi-store HO console, transfers, central pricing |
✗ |
✗ |
✗ |
✓ |
| API access |
✗ |
✗ |
✗ |
✓ |
Advantages story (what the dealer sells)
| Edition |
The advantage in one line |
| Lite |
Cheapest way to bill legally, fast, with khata and WhatsApp — zero training |
| Standard |
Everything the counter and the owner need for one busy store |
| Pro |
Supermarket-grade: scale barcodes, batch/expiry, AI purchases, compliance automation |
| Enterprise |
One brain for every outlet: central pricing, consolidated GST, APIs |
Configurability rules
| Rule |
Meaning |
| Cells are rows |
Every value above lives in plan/plan_feature/price_book — no release to change |
| Per-tenant overrides |
A specific tenant can be granted any single privilege via a tenant-scope row |
| In-place upgrade |
Locked feature → upsell panel → plan change → unlock without reinstall |
| Grace, never strand |
Expiry enters grace (setting row); billing never stops mid-day |
| New editions |
A fifth edition = new rows; the UI renders it automatically |