Vendion
    Point of Sale

    Online Ordering via QR Code (Chat Guest)

    4 min read#33

    Guests can order via their phone by scanning a QR code at the table. Everything happens in a mobile-friendly AI chat, and in March 2026 the online flow gained support for gift cards, loyalty points and stamp card rewards.

    The basic flow:

    1. The guest scans the QR code on the table
    2. A chat view opens in the mobile browser
    3. The AI assistant welcomes and asks what the guest would like to order
    4. The guest types (e.g. "A burger and a coke")
    5. The AI matches against the menu and adds to the cart
    6. The AI suggests sides and drinks (upsell)
    7. The guest confirms → the order is created
    8. The kitchen sees the order on KDS in real-time
    9. The guest pays by card – optionally redeeming gift card/points/stamps

    AI assistant behaviors:

    • Fuzzy matching: "a cava please" → finds the right product in the menu even with typos
    • Allergen handling: Asks early about allergies and filters the menu
    • Upselling: Suggests drinks with food, dessert after main course
    • Required modifiers: Asks about sauce/size before adding
    • Confirmation optimization: "Yes", "Yes please", "Go for it" → AI adds immediately
    • Multi-language: Swedish, English, more coming

    What the guest can do in the chat:

    • View the menu with interactive menu cards
    • Filter by allergens (14 EU allergens)
    • Get recommendations
    • See popular dishes right now
    • Add special requests ("No onion, extra spicy")
    • Call a waiter
    • View their current order

    Loyalty redemption online (new – March 2026): When the guest has verified their phone number via an SMS code (OTP) and is a member of the loyalty program, an expandable card labeled "Gift card, points or stamp card?" appears above the payment button with three sections:

    1. Loyalty points:

    • Card shows the guest's current balance, tier and SEK value
    • Input field for the number of points to redeem
    • Real-time preview of the discount
    • Validation against minimum redemption and max discount per order
    • Example: 500 pts × 10 öre = 50 SEK discount
    • On approval the order total is reduced and the points balance updates instantly

    2. Gift card redemption:

    • Input fields: card code (e.g. "XXXX-XXXX") and amount
    • Validation: code exists, active, not expired, sufficient balance
    • Supports chain scope (if the restaurant is part of a chain with shared gift cards)
    • Partial payment: 300 SEK gift card + the rest by card
    • Errors: clear messages ("This card has expired", "Insufficient balance", "Card code not found")
    • Remaining balance shown: "Remaining on card: 245.50 SEK"

    3. Stamp card rewards:

    • List of the guest's available rewards
    • Example: "☕ Free coffee (3 stamps redeemed)", "🍰 Free dessert (5 stamps redeemed)", "🥂 Champagne (8 stamps redeemed)"
    • Each shows progress (current stamps / required stamps)
    • Click "Redeem" → reward applied (discount or free item)
    • Multiple rewards can be redeemed on the same order

    Split payment online: The guest can combine methods in one order:

    • 200 SEK gift card
    • 100 SEK via 1000 points
    • The rest by card

    Each partial payment is recorded separately.

    What happens after payment?

    1. The order is marked as paid (however without CCA signing in the online flow – see known limitations)
    2. The receipt appears on its own receipt page with 90-day validity
    3. Option for SMS receipt
    4. The kitchen already received the ticket when the order was sent
    5. The guest gets confirmation in the chat

    CRM effects:

    • Customer is created/linked automatically via the OTP-verified phone number
    • Loyalty points credited overnight
    • Auto-tagging ("New customer", "Online booker", "Regular")
    • The order is visible immediately in Marketing → Guest Profile

    Known limitations:

    • 🔴 CCA/control box: Online orders lack a control code in the current implementation (documented Swedish fiscal-law risk, fix on the roadmap)
    • 🟠 Card payment is mock-only (no live payments yet)
    • 🟡 SMS receipts for online are planned but not yet launched
    • 🟡 Redemption cannot be undone mid-order – the guest must restart

    Tips:

    • Place the QR code visibly on the table (laminated foil lasts longer)
    • The onboarding video via the help button in the chat explains loyalty to new guests
    • If the guest has been there before they are recognized by phone ("Hej Anders! Welcome back 👋")
    • Test restaurants: use demo restaurants to test the flow before go-live

    This feature is part of Vendion POS.

    Curious how it looks in practice? Read more about the product or book a short demo.

    Was this article helpful?