How to Connect POS to KDS via Polling
Kitchen tickets lag when displays rely on fragile realtime links
Restaurants adding kitchen video boards often assume WebSocket realtime, but unstable Wi-Fi drops SignalR sessions and cooks miss new POS tickets during rush.
Without per-recipe station routing, every item lands on All-Kitchen and grill and fry stations cannot prioritize their lines.
When every course prints at once, desserts age on the board during starters — hold/fire and ETag polling keep boards calm without SignalR.
Modifier-heavy orders from Phase 13 split across lines; stations that ignore modifier summaries on tickets produce wrong builds unless cooks read the full line detail on each card.
Why this happens
- Enable KDS is off or recipes lack Default KDS Station.
- Station boards are not opened on dedicated browsers polling the API.
- Warn and urgent seconds are unset on custom KDS stations.
- FOH never fires held Course 2+ from the POS table chip.
Biznsbook addresses this through KDS 10-second ETag polling, station routing, course hold and fire when Restaurant and POS modules are licensed — tickets, recipes, and stock share one tenant.
Finance teams lose days each month reconciling versions that should never have diverged. Naming Biznsbook screens as the system of record — and closing periods when agreed — prevents silent edits that auditors flag immediately.
Step-by-step: Connect POS to KDS via Polling
Built for restaurant operators connecting POS sales to kitchen display boards and migrating from standalone till systems.
- Enable KDS in settings. Restaurant → Settings → Kitchen Display: tick Enable KDS, optionally Per-line tracking, and set ticket font size; save.
- Configure KDS stations. Open Manage KDS Stations to set name, type, display color, warn and urgent thresholds in seconds, and sort order.
- Assign recipe stations. On each active recipe, set Default KDS Station — Grill, Fryer, Cold, Bar, Expeditor, or All-Kitchen — so POS lines route correctly.
- Complete POS sales with courses. Committed POS sales create kitchen tickets per station; Course 1 fires immediately; Course 2+ stay held until Fire. Ticket creation is non-fatal.
- Open station board. From KDS Dashboard, pick a station board that polls GET /api/restaurant/kds/tickets every 10 seconds with If-None-Match for cheap 304 responses.
- Fire held courses from POS. When expo is ready, tap Fire on the table chip so held lines appear on the next changed poll under Course headers.
- Review KDS Analytics. Use KDS Analytics for average ticket time per station and volume by hour to tune thresholds and staffing.
- Open Expeditor view during rush. Use the Expeditor all-stations board when one person coordinates pass timing so grill and fry tickets bump in sync with runner pickup.
- Match online orders to KDS. Online ordering routes to the same KDS tickets as POS; confirm public menu items use recipes with station assignments before go-live on QR ordering.
Review results after the first full daily cycle. Adjust roles, mappings, or approvals where the same exception repeats.
Screen-level flows live in the Help Center. This guide focuses on the business process; help articles cover click-by-click navigation.
Common mistakes to avoid
- Mistake 1: Enable KDS is off or recipes lack Default KDS Station. Repeating this each month usually shows up first in KDS ticket age or POS-to-inventory sync gaps.
- Mistake 2: Station boards are not opened on dedicated browsers polling the API. Repeating this each month usually shows up first in KDS ticket age or POS-to-inventory sync gaps.
- Mistake 3: Warn and urgent seconds are unset on custom KDS stations. Repeating this each month usually shows up first in KDS ticket age or POS-to-inventory sync gaps.
- Mistake 4: FOH never fires held Course 2+ from the POS table chip. Repeating this each month usually shows up first in KDS ticket age or POS-to-inventory sync gaps.
Track recurring exceptions in month-end notes; each should map to a control above.
Best practices that hold up as you scale
- Enable KDS in settings — Restaurant → Settings → Kitchen Display: tick Enable KDS, optionally Per-line tracking, and set ticket font size; save.
- Configure KDS stations — Open Manage KDS Stations to set name, type, display color, warn and urgent thresholds in seconds, and sort order.
- Assign recipe stations — On each active recipe, set Default KDS Station — Grill, Fryer, Cold, Bar, Expeditor, or All-Kitchen — so POS lines route correctly.
- Complete POS sales with courses — Committed POS sales create kitchen tickets per station; Course 1 fires immediately; Course 2+ stay held until Fire.
- Open station board — From KDS Dashboard, pick a station board that polls GET /api/restaurant/kds/tickets every 10 seconds with If-None-Match for cheap 304 responses.
Kitchens that use HTTP polling KDS on a dedicated browser avoid SignalR drops on unstable Wi-Fi while keeping ticket age escalation visible.
How Biznsbook supports this workflow
KDS 10-second ETag polling is documented in Biznsbook Restaurant & POS capabilities. Use it as part of a controlled finance process — posting, review, and period close — not as an isolated export. When Sales, Purchase, Inventory, Taxation, Expense, or Finance Management modules are enabled, related documents can post through the central accounting posting service with double-entry validation.
station routing is documented in Biznsbook Restaurant & POS capabilities. Use it as part of a controlled finance process — posting, review, and period close — not as an isolated export. When Sales, Purchase, Inventory, Taxation, Expense, or Finance Management modules are enabled, related documents can post through the central accounting posting service with double-entry validation.
course hold and fire is documented in Biznsbook Restaurant & POS capabilities. Use it as part of a controlled finance process — posting, review, and period close — not as an isolated export. When Sales, Purchase, Inventory, Taxation, Expense, or Finance Management modules are enabled, related documents can post through the central accounting posting service with double-entry validation.
KDS view, POS terminal, and recipe permissions are separable so line cooks see tickets without pricing access.
Suggested implementation timeline
- Week 1: Document current process gaps and configure KDS 10-second ETag polling with finance owner sign-off.
- Weeks 2–3: Pilot on one month or one entity; post all test transactions through Biznsbook; freeze parallel spreadsheet journals.
- Week 4: Run first trial balance or report tie-out; fix mapping and permission issues.
- Month 2–3: Roll out to full team; add approvals and period close cadence from this guide.
- Ongoing: Monthly review using kds polling setup and leadership dashboard.
Hardware and network practicalities
Mount kitchen tablets on wired power where possible; browsers that sleep stop polling. Keep the KDS tab in the foreground and disable aggressive battery saver modes on Android kitchen devices.
Separate guest Wi-Fi from kitchen polling devices when possible — POS and KDS on the same stable VLAN reduces dropped polls compared to congested guest networks.
Rush-hour operations
During rush, assign one expeditor when using split stations — polling boards only help if someone bumps tickets when lines complete, not when tickets merely age.
Review KDS Analytics hourly volume chart after busy Friday to see if warn thresholds should drop for fry station while grill stays unchanged.
Hardware layout and station recovery
Mount polling displays at eye level with glare-free orientation — kitchen staff miss bump actions on washed-out screens during lunch rush. Use wired network for KDS devices when possible; Wi-Fi dropouts manifest as stale tickets that look like kitchen backlog.
Document a station failover procedure: when grill KDS is offline, route grill items to All-Kitchen temporarily and post a physical sign so expeditors know routing changed. Revert routing when hardware is restored to avoid duplicate fulfillment paths.
Latency expectations for polling mode
Polling mode trades sub-second websocket latency for simpler deployment — set kitchen expectations that tickets may appear within one refresh cycle, not instantly. Adjust polling interval only after network assessment; aggressive intervals load POS servers during peak without meaningful kitchen benefit.
Metrics to track monthly
- Average ticket time per KDS station
- POS sales with recipe depletion completed
- Failed depletion count on dashboard
- Online orders converted to sale bills
- Tables with floor-plan session linked to POS
Start with three metrics; trend direction matters more than a single point-in-time snapshot.
Spreadsheet / manual books vs integrated ERP
Compare typical manual finance work with Biznsbook KDS 10-second ETag polling and related capabilities.
| Capability | Manual / Spreadsheet | Biznsbook |
|---|---|---|
| Transport | ❌ SignalR websocket | ✅ HTTP polling + ETag |
| Ticket source | ❌ Manual kitchen chits | ✅ POS sale auto-create |
| Routing | ❌ All items one board | ✅ Per-recipe station |
| Course pacing | ❌ All courses at once | ✅ Hold Course 2+ until Fire |
| Age visibility | ❌ Guesswork | ✅ Warn / urgent thresholds |
| Failure mode | ❌ Sale blocked | ✅ Non-fatal ticket create |
KDS polling setup
Use a wired or stable Wi-Fi tablet per station, keep the board tab foregrounded, and set urgent threshold no higher than your target ticket time plus two minutes. After Fire, the next changed poll paints held lines — empty boards may mean remaining courses are still held. After menu changes, verify every new POS item links to an active recipe with station assignment before the first dinner service — new items without recipes flood All-Kitchen and hide routing value. Log device browser versions on KDS tablets; outdated WebKit builds are a common root cause of display glitches mistaken for routing bugs.
Document this in your finance SOP and revisit each quarter as transaction volume or entity structure changes.
Frequently asked questions
Does KDS use SignalR?
No. KDS uses HTTP polling only — station boards refresh tickets about every 10 seconds with ETag / If-None-Match support.
Why are tickets all on All-Kitchen?
Sold items need active recipes with Default KDS Station set; items without recipes default to All-Kitchen.
Why is Course 2 invisible?
Held courses are filtered from active boards until FOH fires that course number from the POS table chip.
Who can view KDS boards?
Restaurant.ViewKDS opens boards; Manage Settings configures stations and enables KDS; Fire accepts View or ViewKDS.
How is polling different from floor plan live view?
Floor plan Live View polls about every 30 seconds for table color; KDS station boards poll about every 10 seconds because kitchen ticket timing is more sensitive.
Does ticket creation block checkout?
No. Ticket creation is non-fatal — POS sales complete even if KDS is temporarily unavailable; tickets appear on the next successful poll when service recovers.
How this differs by industry
Retail
Fast-casual counters run KDS on dedicated tablets polling tickets while front POS stays on cashier terminals.
Wholesale & distribution
Commissary kitchens route production tickets to Cold and Grill stations with urgency colors during catering rush.
Manufacturing
Franchise groups standardize station thresholds and recipe station assignments so every location polls identically.