Changelog
This page tracks notable changes to the YumKiosk platform. Breaking changes are called out explicitly — if you're integrating via the API or webhooks, watch for them. Dates are in YYYY-MM-DD, UTC.
v0.1.0 — 2026-04-10
Initial platform launch.
This is the first public release of YumKiosk. Everything described in these docs is in v0.1.0 unless flagged otherwise. Highlights:
Kiosks
- Pairing flow with 6-digit codes, 15-minute expiry
- PWA install for Android + iPadOS
- Attract screen with branded customization
- Live video sessions powered by Agora
- Full order building with modifiers, notes, and promo codes
- Stripe Terminal support for in-person payments
- Stripe.js fallback for tablet-native payments
- Automatic catalog sync every 60 seconds
- Health heartbeats with 30-second interval
- Offline fallback messaging
Agent dashboard
- Email/password login with optional TOTP 2FA
- Real-time incoming session queue over WebSocket + polling fallback
- Three-pane active session layout (video, menu, cart)
- Instant cart sync to kiosk
- Session end with reason codes (completed, abandoned, technical, refused)
- Per-day and per-shift earnings reports
- Automatic shift time tracking
- Tip attribution directly to the serving agent
- Status toggle (Available / Busy / Break / Offline)
- Browser notifications and chime for incoming sessions
Owner panel
- Onboarding wizard covering business info, Stripe Connect, menu, and first kiosk
- Catalog editor with categories, items, modifiers, and photos
- CSV import/export for catalog
- Kiosk pairing with regenerable codes
- Location management
- Team management: invite agents, set hourly rates, change roles
- Live team roster with status indicators
- Live kiosk status with uptime graphs
- Sessions report with drill-down to individual sessions
- Revenue report with day/week/month breakdown
- Agent performance report with five key metrics
- Custom CSV exports with saved filter support
- Stripe Connect onboarding via embedded flow
- Monthly SaaS invoices with line-item detail
- Refund handling on paid orders
Platform APIs
- Public kiosk API at
api.yumkiosk.comfor tablets - Authenticated agent API at
agent.yumkiosk.com/api - Webhooks with 10 event types and HMAC-SHA256 signature verification
- Rate limiting with standardized headers
- Consistent error format across all endpoints
Architecture
- Laravel 12 monolith backend
- MySQL with single-database tenant isolation via
stancl/tenancy - Laravel Reverb WebSockets for real-time
- Agora for video
- Stripe Connect Express for customer payments
- Stripe Billing + Laravel Cashier for SaaS subscriptions
- Filament panels for owner and super-admin dashboards
- Spatie permissions for role management
- Spatie activity log for audit trail
SuperAdmin
- Impersonation for both owners and agents
- Cross-tenant platform health dashboard
- Tenant management (suspend, restore, delete)
Known limitations in v0.1.0
- Shared agent pool is implemented but not yet enabled for new signups
- API keys for third-party integrations are not yet available
- Session recording exists but requires manual enablement and a legal review
- No mobile native apps — everything is browser-based
- Scale-based billing (weight-priced items) is not supported
Future releases
Upcoming items we're actively working on:
- Q2 2026: API keys, third-party POS integrations, native iPad kiosk app
- Q3 2026: Shared agent pool general availability, multi-language support
- Q4 2026: Scale/weight-priced items, kitchen display integration, SMS ordering fallback
For the exact ship dates and detailed release notes, watch this page — we update it with every production deploy.