自助点餐机 App
概述
自助点餐机 App 是您的到店顾客用来浏览菜单、自行定制并下单、并直接在设备上付款的面向顾客屏幕——无需收银员参与。它是与您 POS 销售同一门店的自助式前门。
它是一款用 Flutter 构建的 Android App,通过 Shorebird 进行空中更新,因此新版本无需重新安装就会悄然到达。每台自助点餐机绑定到一个门店和一个收银机,它显示的一切——菜单、点餐模式、支付方式——都来自该门店的设置。当自助点餐机登录时,服务器会向其下发一个 merchantData 数据块,几乎驱动它在设备上的所有行为;设备本身几乎不配置任何内容。
这是设备侧
本页讲解如何操作自助点餐机平板。自助点餐机账户、其门店/收银机绑定,以及为其供给的菜单、支付与点餐设置,都在管理后台中创建——参见 自助点餐机 (CommerceOS)。
设置设备
配对自助点餐机
每台自助点餐机在 Merchant 屏幕上以用户名和密码登录——这组凭据就是配对本身。没有需要输入的二维码或配对码。
- 在 Merchant 屏幕上,输入自助点餐机账户的 Username 和 Password。
- 勾选 Remember Me 以便下次保留已填好的用户名。
- 点击 Log in。
登录成功后会存储 auth 令牌和完整的门店/收银机配置,应用您的品牌色,打开一条实时连接,并进入 Home 屏幕。错误的凭据会显示错误提示。屏幕底部显示 App 版本、build 和当前更新——例如 1.0.77+74 (patch 3 • Production)。
每台设备一个绑定
这一次登录正是把自助点餐机绑定到其门店和收银机的关键。(从隐藏的员工设置中)登出会清除全部内容并返回闲置屏幕。
仅限安装人员:环境与更新通道
安装人员设置——请勿改动
在 Merchant 屏幕上长按 logo 会打开一个隐藏的配置面板。这是给首次设置自助点餐机的人用的——您的员工和顾客绝不应该需要它。
这个隐藏面板用于选择自助点餐机与哪个 backend 通信,以及它遵循哪个更新通道:
| 控件 | 作用 |
|---|---|
| Domain | rewardly.app 是正式 production 环境;reeward.app 是测试环境。当前生效的那个也会在启动时根据设备域名自动检测。 |
| Shorebird Track | CodePush Production(稳定)或 CodePush Staging。选择某个通道会下载对应的 patch——您必须重新启动 App 才能应用它(会有提示告知)。 |
当前生效的域名和通道会被勾选。第二个域名切换器也位于 App 内的员工设置中,可从 Home 进入。
App 还会在启动时进行空中自我更新——它会悄悄向 Shorebird 检查其通道上是否有新 patch,并在后台拉取,不会出现"正在更新"屏幕。能看到当前 patch 的唯一位置是 Merchant 屏幕上的版本行。
退出自助点餐机模式与员工设置
Home 屏幕右上角的齿轮图标在普通点击下不做任何事。按住它 3 秒会打开员工设置对话框——这 3 秒长按是有意设计的"秘密"手势,让顾客无法打开它。
员工设置上没有 PIN
此对话框没有数字 PIN 门槛——隐藏的 3 秒长按就是访问控制。任何知道该手势的人都能进入,所以不要在顾客面前演示它。
该对话框提供:
| 设置 | 作用 |
|---|---|
| Domain name settings | 与安装人员面板相同的环境切换。 |
| Theme | System / Light / Dark,保存在设备上。 |
| Modifier options layout | 将附加项选择显示为一列或两列。 |
| Logout | 确认后将自助点餐机登出并返回闲置屏幕。 |
设备上的打印机设置
如果自助点餐机自行打印小票和厨房单据,员工需在设置中选择驱动——一个用于顾客小票打印机,一个用于厨房打印机。可选项为 Sunmi cloud、Sunmi kiosk(内置)、Epson 和 Star Micronics;选择 Epson 或 Star 会打开一个发现列表(网络或 Bluetooth)以选定具体打印机。
在管理后台完成 Sunmi cloud
选择 Sunmi cloud 会显示一条提示,告知员工在管理面板中完成配置。实际的小票与单据内容、纸宽和路由全部来自 backend 按订单生成的打印模板。
闲置屏幕
无人点餐时,自助点餐机会在您的品牌色上显示一个全屏的品牌吸引循环画面。它会播放您的促销视频——一个缓存的商家视频,回退到您的 YouTube 片段,最后回退到内置默认视频——静音并循环播放。底部有一个闪烁的 TAP TO START。
点击任意位置即可唤醒自助点餐机:如果它已配对,会刷新其数据并进入 Home / 点餐模式屏幕;如果尚未配对,则打开 Merchant 屏幕。
闲置超时会重置会话
当顾客正在点餐时,顶部栏会运行一个 Time out 倒计时(5 分钟)。到期时会出现一个对话框,附带 30 秒的二次倒计时和两个按钮——Start(放弃并重置为闲置)和 Continue(保留会话,重启 5 分钟计时)。如果这 30 秒也耗尽,自助点餐机会自动重置。任何真实交互——添加商品、选择点餐模式、付款——都会重启计时。
选择点餐模式
在 TAP TO START 之后,Home 最多显示三个大按钮,每个按钮仅在您的门店允许时才出现:
| 按钮 | 何时显示 | 作用 |
|---|---|---|
| DINE IN(QSR 为 EAT IN) | 允许堂食 | 将订单设为堂食;可能先路由到餐桌/取餐器选择。 |
| TAKE OUT | 允许外带 | 将订单设为外带。 |
| PAY BILL | 允许付账 | 扫描一个已有订单进行付款(参见 Pay Bill)。 |
当启用会员登录且尚无会员登录时,下方会出现一个 MEMBER LOGIN 药丸按钮。
零售自助点餐机看起来不同
在零售门店,该卡片会收起为单个 CHECKOUT 按钮,直接跳转到一个由扫描驱动的购物车——顾客扫描商品条码,自助点餐机在服务器上逐一查找。堂食 / 外带 / 付账的拆分仅适用于 F&B 门店。
在自助点餐机上的会员登录
启用会员登录后,顾客可以在点餐之前或过程中表明身份。登录屏幕会显示一个标签选择器,其标签来自您的 memberLoginType 设置:
| 标签 | 顾客如何登录 |
|---|---|
| Show QR | 自助点餐机显示其会员二维码供顾客用手机扫描。 |
| Scan QR | 顾客将其会员二维码对准扫描器——"Please display your member QR to the scanner." |
| Phone | 手机号 + 密码。 |
| SMS OTP | 手机号;GET 发送一个 6 位验证码(5 分钟倒计时)进行验证。 |
| PIN | 手机号 + 4 位 PIN。 |
| Guest | 仅手机号——"Let's go",无需密码。 |
会员登录后,其余额和忠诚度会加载,MEMBER LOGIN 药丸按钮会在各处消失。
如果不使用会员登录——或顾客点击 GUEST——自助点餐机可能会询问访客信息,具体取决于您门店的访客录入开关:Name、Phone Number 或 Email(邮箱字段会从您的 preferredEmailDomains 中建议完整地址)。当开启多于一项时,自助点餐机会按手机号 → 邮箱 → 姓名的顺序询问;采集到的联系方式之后可让顾客通过邮件或短信获取小票。
忠诚度会呈现什么
已登录的会员会在自助点餐机的三处看到其忠诚度:购物车上用于兑换其某张优惠券的 VOUCHER 按钮,以及——受您门店的兑换开关控制——可用于抵扣账单的 Store Credit 和 Loyalty Points。访客看不到这些。
浏览与定制
菜单
商品屏幕左侧有一个类目导轨(只有一个类目时隐藏)和一个商品网格。只有标记为在自助点餐机可见的类目和商品才会出现。每张卡片显示图片、名称、描述和价格,带有 + / − 数量控件和一个用于详情视图的 info 按钮。卡片可以带有徽标——+$0.10 BCRS 饮料押金、Healthier Choice 图标,或带糖分 % 药丸的 Nutri-Grade 标识。
每当商品不适合该订单时,它会被变暗并显示为不可用,并附上原因:
| 显示的原因 | 为什么 |
|---|---|
| "Not available for dine-in / takeout" | 该商品不允许用于当前点餐模式。 |
| "Out of stock" | 一个按数量跟踪的商品已售罄。 |
| "Unavailable" | 该商品已对点餐隐藏。 |
| "Unavailable until HH:MM" / "since HH:MM" | 处于商品起止时间窗之外。 |
| "Required options unavailable" | 某个必选附加项或套餐槽位没有可用选项。 |
可用性是实时的——售罄的商品无需重新加载即可翻转为不可用。
定制商品
点击一个可定制的商品会打开一个详情对话框,含数量步进器、相关控件、一行实时 nutrition chip、一个动态的 Total,以及一个 Add new 按钮。
- Variants — 每个属性一个选择器(Size、Colour)。Colour 属性显示图片色卡;其他显示药丸。不兼容的选项会以 "Unavailable" 禁用;售罄但兼容的选项显示 "See available options"。
- Modifiers — 每个组依据其 min/max 显示提示("Pick one"、"Pick up to 3"、"Pick at least 2")。必填组必须填写,自助点餐机会在添加前校验 min/max,并聚焦到第一个未通过的组。您的员工设置决定 1 列或 2 列布局。
- Bundles / combos — 每个槽位提供一份带自身 min/max 规则的选项列表,在套餐可被添加之前逐槽校验。
- BYOC 折扣 — 如果类目定义了带折扣的容器颜色,会出现一个 "Bring your own container discount" 面板,让顾客标记其容器颜色以将折扣应用到该行。
- Remarks — 仅当您的门店在其商品备注渠道中包含
kiosk时,才会出现一个 Additional request 字段(上限 50 个字符)。 - Bundle Options — 打开一个简单商品时,可能显示一个 BUNDLE OPTIONS 区块,建议包含它的组合("Burger + Fries"),促使顾客升级为套餐。
购物车与复核
Cart 屏幕列出每一行——图片、名称、所选选项、数量、价格——带有编辑控件,下方是 Bill 摘要。账单显示 Subtotal、各税行、Service Charge、BCRS Deposit、一个 Discounts 区块、任何已应用的 Store Credit / Loyalty Points(显示积分到货币的换算),以及最终的 Due Amount。顶部栏的 Clear cart 操作在确认后清空所有内容。
会员会得到一个 VOUCHER 按钮,它打开一个 "Redeem voucher" 选择器——"Choose the best offer for this order"——一次应用或移除一张优惠券。如果购物车中含有不能叠加的折扣,会弹出一个冲突对话框要求顾客在它们之间做选择,在解决之前结账会被阻止。
结账与支付
点击 Checkout 会运行折扣冲突防护,如果您的配置仍需要则可能打开餐桌/取餐器选择,并且——对于有商店积分或忠诚度余额的会员——在创建订单前提供兑换面板。然后自助点餐机创建订单并进入 Checkout 账单屏幕,其中 Payment 会打开方式选择器。
选择器仅列出本台自助点餐机上启用的支付方式,按其配置的显示名称列出。如果恰好启用了一个,则直接使用;如果一个都没有,自助点餐机会显示 "No payment methods are configured on this kiosk."
| 支付方式 | 工作原理 |
|---|---|
| T05 | 通过 WebSocket 连接到本地的 T05 刷卡终端;在终端批准之前显示 "Payment waiting…"。 |
| Adyen | 在已连接的 Adyen 终端上付款;当订单返回 PAID 时自助点餐机完成。 |
| PayNow | 显示一个 Scan to Pay 二维码;顾客在其银行 App 中付款,然后点击 CHECK PAYMENT(或通过实时推送)确认。 |
| TapToPay | 通过 Adyen,在设备自身的 NFC 读取器上进行非接触式刷卡。 |
已登录的会员还可以点击 PAY WITH MEMBER BALANCE 来使用商店积分和忠诚度积分;如果这能全额覆盖账单,则订单被标记为已付款,否则其余部分用上述某种支付方式支付。
不收现金,不转交柜台
自助点餐机仅支持电子支付——没有现金选项,也没有明确的"转交柜台"交接。每笔订单都在设备上付款。出现哪些支付方式完全由您的自助点餐机支付方式在管理后台驱动。
Pay Bill
PAY BILL 选项会打开一个 "Scan to pay your bill" 屏幕——"Hold the QR code or receipt barcode in front of the scanner." 它会读取一个已有订单:已付款的会警告 "Order already paid",无法识别的会显示 "Invalid order"。一个有效的未付款订单会经过身份关卡(附带账单摘要)进入结账与支付屏幕。
订单确认
付款后,一个全屏成功页面会显示您的 logo、一个对勾、Payment Success!,以及一个非常大的取餐号——对于带餐桌的堂食订单,标注为 Queue #(取餐器 / 每日订单号)或 Table。它无法被返回关闭;会在 60 秒倒计时后自动返回闲置,或通过大的 New Order 按钮立即返回。
顾客按您的 receiptOptions 领取小票:一个可扫描的 QR,以及/或者提示输入地址或号码的 Email / SMS 按钮。对于已登录的会员,自助点餐机会在 backend 通过邮件发送小票期间等待,然后以打码地址确认("Receipt sent to jo*n@domain")。
在后台,付款成功时自助点餐机会将顾客小票和任何厨房单据打印到配置好的打印机,订单则通过 backend 的订单服务路由到 KDS。自助点餐机会订阅菜单变更和订单状态的实时更新(例如自动完成付款的 PayNow 推送)。
须知 / 限制
上线前请了解这些
- 仅英文菜单。 没有面向顾客的语言选择器——商品名称和 UI 显示英文文本。区域差异来自您启用哪些支付方式(例如 SG 的 PayNow)和会员登录方式,而非一个 locale 开关。
- 没有专门的无障碍模式。 这里的"无障碍"指的是大点击目标和适合站立式自助点餐机的响应式布局——没有屏幕阅读器或语音模式,也没有字体缩放滑块。
- 没有真正的离线点餐。 自助点餐机的菜单、购物车、订单和支付都需要 backend。当连接中断时,它会报告错误而非将订单排队——在依赖它之前请先让它恢复在线。
管理后台设置如何驱动自助点餐机
自助点餐机所做的几乎一切都在它登录的账户中设定:
| 您在管理后台改什么 | 它在自助点餐机上控制什么 |
|---|---|
| 带 Visible On = kiosk 的商品与类目,以及库存、时间窗、变体、附加项、套餐、BCRS / Nutri-Grade 标记和容器颜色折扣 | 菜单中出现什么以及每个商品如何定制。 |
| 渠道为 kiosk + 收银机的支付方式 | 支付选择器中显示哪些支付方式。 |
门店的 Order 选项卡——堂食 / 外带 / 付账、operationType、会员登录方式、访客录入字段、备注渠道、兑换开关、取餐器和小票选项 | Home 按钮、身份流程、忠诚度呈现以及确认页。 |
账户创建参见 自助点餐机 (CommerceOS),菜单可见性参见 Products,自助点餐机支付方式参见 支付方式,Order 选项卡参见 门店设置。
相关内容
- 自助点餐机 (CommerceOS) — 创建本 App 登录所用的自助点餐机账户及其门店/收银机绑定。
- Products — 将商品和类目标记为在自助点餐机可见。
- 支付方式 — 启用自助点餐机提供的支付方式。
- 门店设置 — 驱动点餐模式、身份与小票的 Order 选项卡。
- 厨房显示屏 (KDS) — 自助点餐机订单在厨房落地的地方。
- 电子钱包 — PayNow 以及自助点餐机接受的钱包支付方式。