Skip to main content
Kiosk ordering speeds lines and raises ticket size in venue. Fire spark lets kiosks read the same operational menu as your app and aggregators — with a composed offer tuned for the screen if you want combos up front.

How we help

  • Menu sync — No separate kiosk-only master; POS changes apply everywhere.
  • Store-scoped — Each kiosk respects local availability and fulfillment (dine-in, pickup at counter).
  • Orders — Tickets flow to kitchen systems staff already monitor.
You are not buying a one-off kiosk vendor silo. You are adding a surface to the hub you already run. Each tablet derives a device code from its Android/iOS hardware ID (SHA-1 → first 8 hex digits → base36) so the same code survives reinstalls. The code is unique per merchant. The tablet polls Link kiosk device. The dashboard claims that code with Link device. On first contact the API binds the secret. After that the tablet receives store/channel scope, channel settings, payment catalog, and per-device overrides. Issue kiosk realtime token pushes kiosk.config.changed and commands (refresh_cache, reload, unlink). Heartbeats can include battery, storage, network, and whether the app is in the foreground or background. The tablet can PATCH the same path to update overrides. Google Play is optional. Connect it from the kiosk hub when you want MDM lock or private APKs. Follow Connect a Google Play account, then enroll the tablet in MDM. Tablets enroll with a one-time QR (afw#setup) and stay locked via Android Management API. APKs upload to Managed Play and roll out in phases: Publishing → Ready → Installing → Done.
  • Settings — idle timeout, health thresholds, package name, and lock mode.
  • Devices — link by code, payment overrides, remote commands, optional enrollment QR, app status (Current / Outdated / Updating / Failed).
  • Releases — emergency hotfix or normal rollout. Updating kiosks cannot take orders until the new build heartbeats in.
  • Health — battery, offline, and not-operational counters per store.
The kiosk app prefers the linked device config, then managed configuration, then env. It resets the session after idle timeout and sends a version heartbeat so a tablet can go back to Current without waiting for the next AMAPI report. Menu and availability still refresh on storefront push events, and each CMS block the tablet renders refreshes on its own cms.changed topic. Everything else stays cached until cold start, menu.changed / availability.changed, or a refresh_cache command.

Storefront API

Build kiosk experiences