25 — Platform Coverage Map
Master index: subsystems, APIs, docs, and code — trace everything top to bottom
Companion: Master Map — stack layers (UI → edge → API → data → Bridge) before diving into rows below.
CEO Summary
This page is the single map from business capability to technical implementation. Use it to verify nothing is orphaned: every major product area should appear here with a documentation chapter and a route mount in backend/server.js. Business value: Onboarding, audits, compliance, and architecture reviews. Maintenance: When you add a new router or feature, update this table and Appendix: Route Table.
How to Read This Map
- Doc — Primary HTML chapter(s) for CEO + developer detail.
- API prefix — Typical mount path (see Route Table for exact order and middleware).
- Code — Entry router file(s) under
backend/routes/ or backend/payments/.
Foundation & Operations
| Subsystem | Doc | API / area | Code (entry) |
| Hosting, PM2, Nginx, SSL | 01 | — | infrastructure/ |
| Master DB, tenant DBs, provisioning | 02 | /api/master-admin/tenants, /api/tenant-database | tenant provisioning, tenantDatabase |
| Express app, middleware stack | 03 | /api/* | server.js |
| Health, metrics, rate limits | 03 | global | metricsMiddleware, rateLimiter |
Identity, Tenancy & Users
| Subsystem | Doc | API prefix | Code (entry) |
| Login, session, OAuth | 05 | /api/auth, /auth, /api/auth/oauth | auth.routes, oauth |
| Users | 05 | /api/users | users.routes |
| Tenant resolution, plans, features | 05 | /api/features, /api/plans, /api/tenants | features, plans, tenants |
| Staff PIN / register auth | 05 | /api/staff-auth, /api/tenant-staff-auth | staffAuth, tenantStaffAuth |
| Session & user management | 05 | /api/session-management, /api/user-management | sessionManagement, userManagement |
| Employee portal (HR) | 10 | /api/employee-portal | hr/employeePortal.routes |
| Public signup | 02, 05 | /api/public (signup) | public.signup.routes |
Money: Payments & Invoicing
| Subsystem | Doc | API prefix | Code (entry) |
| Payments engine, v1 API, ledger | 04 | /api/v1/* | payments/, v1 routers |
| Webhooks (Stripe, Coinbase, generic) | 04 | /api/webhooks/* | server.js mounts |
| Legacy payments | 04 | /api/payments | legacyPaymentsRouter |
| Core invoicing, invoices list | 06 | /api/core-invoicing, /api/invoices | coreInvoicing, invoices |
| Simple / unified transactions | 06 | /api/simple, /api/unified | simple*, unified* |
| Transaction list & audit trail | 06 | /api/transactions | transactions.routes |
| Payment providers, offline tx | 04 | /api/payment-providers, /api/offline-transactions | paymentProviders, offlineTransactions |
| Financial & tax settings | 21 | /api/financial/tax, /api/tax-settings (via financial / api) | financial.routes, taxSettings.routes |
| Idempotency | 15 | /api/idempotency | idempotency.routes |
Commerce: POS, Catalog, Customers
| Subsystem | Doc | API prefix | Code (entry) |
| POS carts, tender, finalize | 06 | /api/pos | pos.routes, pos-register.routes |
| POS device settings & vertical modules | 06, 13 | GET /api/pos/settings | posModules.js, fuelSite.js; Devices.metadata |
| POS analytics | 12 | /api/pos-analytics | pos-analytics.routes |
| Transaction tracking | 12 | /api/transaction-tracking | transactionTracking |
| Products, categories, modifiers, orders | 06, 14 | /api/products, /categories, /modifiers, /orders | products, categories, modifiers, orders |
| Menus & catalog (assignments) | 14 | /api/menus, /api/menu-assignments, /api/admin/catalog | catalogRouter |
| Menu items | 14 | /api/menu-items | menuItems.routes |
| Customers & profiles | 06 | /api/customers, /api/profiles | customers, profiles |
| Customer analytics | 12 | /api/customer-analytics | customerAnalytics |
| Storefront | 19 | /api/storefront | storefront.routes |
| Public customer area | 14 | /customer | publicCustomerRouter |
| Platform barcode catalog (tenant lookup) | Home, 06, 07 | /api/platform-catalog | platformCatalog.routes |
Inventory & Supply Chain
| Subsystem | Doc | API prefix | Code (entry) |
| Inventory (domains, ledger, rules) | 07 | /api/inventory/* | inventory*, inventoryManagement |
| Catalog permissions | 07 | /api/catalog/permissions | catalogPermissions |
Kitchen, Floor, Recipes
| Subsystem | Doc | API prefix | Code (entry) |
| KDS runtime | 09 | /api/kds | kds.routes.js |
| KDS admin / routing | 09 | /api/admin/kds/* | admin.kds.routes.js, kdsOps.service.js |
| Recipes | 09 | /api/recipes | recipes.routes |
| Kitchen domains | 09 | /api/kitchen-domains | kitchenDomains |
| Seating / floor layouts | 09, Home | /api/seating-layouts | seatingLayoutsRouter |
HR, Time & Payroll
| Subsystem | Doc | API prefix | Code (entry) |
| HR (employees, departments, benefits) | 10 | /api/hr/* | hr.routes, hr/* |
| Payroll | 10 | /api/payroll | payroll.routes |
| Staff, time APIs | 10 | /api/staff, /api/time | staff, time |
| Tenant timeclock & roster | 10, 16 | /api/tenant-time, /api/team-hours | tenant-time, teamHours |
| Staff personal stats | 10 | /api/staff-personal | staffPersonal |
Crypto & Bridge
| Subsystem | Doc | API prefix | Code (entry) |
| DOGE / LTC routes, rates | 08 | /api (doge, ltc), /api/rates | dogeRouter, ltcRouter, rates |
| Crypto wallet, config, prices | 08 | /api/crypto-wallet, /api/crypto-prices | cryptoWallet, cryptoPrices |
| Wallet webhooks | 08 | /api/webhooks/doge, /ltc | server.js |
| Bridge (devices, sync) | 13 | /api (bridge) | bridgeRouter |
| Digital signage | 26 | /api/signage, POST /api/bridge/notify-signage | signage.routes, bridge.routes, publicOrigin.js hints |
Tickets, Appointments, Service Desk
| Subsystem | Doc | API prefix | Code (entry) |
| Public tickets & appointments | 11 | /api/public | public tickets, appointments |
| Tickets, admin tickets, workflows | 11 | /api/tickets, /api/admin/tickets | tickets, adminTickets |
| Appointments (staff) | 11 | /api/appointments | appointments* |
| Ticket settings, email templates, assignees | 11 | /api/admin/ticket-*, /api/assignees | admin ticket routers |
Analytics, Reporting & Business Center
| Subsystem | Doc | API prefix | Code (entry) |
| Dashboard | 12 | /api/dashboard | dashboard.routes, reportsDashboard |
| Reports | 12 | /api/reports, /reports | reports.routes |
| BI / billing / financial (maintenance) | 12 | /api (bi, billing, financial) | biRouter, billingRouter, financialRouter |
| Business Hub | 16 | /api/business-hub | business-hub.routes |
Devices, Kiosk & Mobile
| Subsystem | Doc | API prefix | Code (entry) |
| Device catalog & codes | 13 | /api/device-catalog, /api/device-codes | deviceCatalog, deviceCodes |
| Admin devices | 13 | /api/admin (devices) | devicesRouter — DeviceManager.jsx, metadata.posModules + metadata.fuelSite |
| Kiosk & mobile APIs | 14 | /api/kiosk, /api/mobile | kioskApi, mobileApi |
Programs, Compliance & Comms
| Subsystem | Doc | API prefix | Code (entry) |
| Gift cards | 17 | /api/giftcards, /api/giftcard, /api/admin/programs | giftcards, giftCard, admin.programs |
| Loyalty | 18 | /api/loyalty | loyalty.routes |
| Receipts | 22 | /api/receipts | receipts.routes |
| Audit | 20 | /api/audit | audit.routes |
| Email (tenant) | 23 | /api/email | email.routes |
| Admin liability | 17 | /api/admin/liability | admin.liability |
Platform Administration
| Subsystem | Doc | API prefix | Code (entry) |
| Master admin | 24 | /api/master-admin | masterAdmin.routes |
| Tenant provisioning | 02, 24 | /api/master-admin/tenants | tenant-provisioning |
| Admin routes, orgs, payments | 24 | /api, /admin, /api/admin/* | adminRoutes, adminPayments, adminOrgs |
| Admin database | 24 | /api/admin/database | admin.database.routes |
| Developer API | 03 | /api/developer | developer.routes |
| System router | 01 | /api/admin/system | system routes |
Real-World Deployment: What “Complete” Means
Honest framing: This documentation describes the codebase as built. For live production use, each tenant still needs: correct hosting, SSL, backups, support processes, and validation of their workflows (refunds, payroll rules, tax jurisdictions, hardware). Enterprise buyers often compare:
- RBAC depth — Role hierarchy and permission models exist; not every POS action is enforced with a separate checkbox in the UI yet. Treat as evolving.
- Audit —
/api/audit + Admin → Audit Logs; coverage grows as more events call AuditService.
- Inventory variance — Ledger, waste/shrinkage hooks; dedicated “cycle count vs book” UIs may vary by deployment.
Use Home → Real-World Business Transaction Scope for the business-facing checklist of systems.
Platform Product / Barcode Catalog
Shipped: master DB table platform_product_catalog, tenant API /api/platform-catalog/lookup, master admin CRUD /api/master-admin/platform-catalog, UI on inventory and POS — see Home, 02, 24. Future: CSV import, partner feeds, external API.
Maintaining 100% Coverage
- When adding a router in
server.js, add a row to Appendix: Route Table and the relevant section above.
- When adding a user-facing feature, add or extend the numbered chapter (01–26) or appendix.
- Run a periodic diff:
grep app.use backend/server.js vs appendix table rows.