如何搭建餐厅在线点餐网站:菜单、购物车、取餐时段与厨房看板
在线点餐网站让顾客从你的菜单中选择菜品、定制选项、选择取餐或配送时间、付款并收到确认,而厨房则在屏幕上看到每个订单出现并标记为已完成。搭建这样的网站需要一份带选项的菜单(分量、加料、“不要洋葱”等)、能正确计算总价的购物车、设有上限的时段(避免厨房被订单淹没)、银行卡支付,以及供员工使用的简单订单看板。AI应用构建工具可以根据清晰的描述生成这些功能。难点在于细节:营业时间、售罄菜品、订单上限,以及支付成功但订单没有保存成功时该怎么办。
网站需要什么
页面
- 顾客端: 按分类展示的菜单、带选项的菜品详情、购物车、结账页(姓名、电话、取餐或配送方式、时间)、支付,以及显示订单号和状态的确认页。
- 厨房端: 实时列表,显示新订单、制作中和已完成的订单,每个订单包含菜品、选项、备注和取餐时间。
- 店主端: 菜单编辑(菜品、价格、图片、选项、售罄)、营业时间、时段上限,以及销售汇总。
数据
| 数据表 | 关键字段 |
|---|---|
| 分类 | 名称、排序 |
| 菜品 | 所属分类、名称、描述、价格、图片、过敏原、是否可售 |
| 选项组 | 所属菜品、名称(如“规格”“加料”)、是否必选、最少和最多可选数量 |
| 选项 | 所属选项组、名称、价格变动 |
| 订单 | 订单号、顾客姓名、电话、邮箱、类型(取餐或配送)、地址、时段、小计、费用、总价、支付状态、订单状态 |
| 订单明细 | 所属订单、菜品、数量、所选选项、明细价格、备注 |
| 设置 | 营业时间、时段长度、每时段最多订单数、配送区域和费用 |
下单时请在每条订单明细上保存菜品名称和价格。如果之后修改了菜单,旧订单仍应显示顾客实际支付的内容。
权限
顾客只能通过确认链接查看自己的订单。厨房员工可以查看和更新订单,但不能修改价格。店主负责编辑菜单和设置。平板上使用共用的厨房账号很常见,但店主应使用单独的账号。
决策与取舍
仅取餐、仅配送还是两者都做
只做到店自取要简单得多,也是大多数小店应该起步的方式。加入配送意味着要处理配送区域、费用、起送金额、地址校验、配送员分配,以及更多可能出问题的环节。
即时出餐还是预约时段
“尽快出餐”容易提供,但在繁忙的夜晚很难兑现。设有上限的预约时段(例如每个15分钟窗口最多8单)能保护厨房,也能让顾客有合理预期。你仍然可以显示“最早可取餐时间:18:45”。
先付款还是取餐时付款
在线付款可以减少爽约,也能加快取餐速度。取餐时付款的开发更简单,但容易产生虚假订单。大多数店铺会通过Stripe Checkout等托管收银页在下单时付款;我们的支付指南介绍了具体设置。小费、税费和收据规则因国家而异,请查阅当地规定。
订单如何送到厨房
可选方案包括:平板上自动刷新的浏览器页面(最简单)、每单发送一封邮件或消息作为备份,或将订单发送到小票打印机(需要额外硬件和设置)。新订单到达时的提示音,比你想象的更重要。
一个有效的首次提示词
为德克萨斯州奥斯汀的一家墨西哥卷饼店Casa Verde搭建一个在线点餐网站,仅支持到店取餐。菜品分类:卷饼、碗饭、配菜、饮品。菜品带选项:卷饼可选择蛋白质(鸡肉、慢烤猪肉、蘑菇,蘑菇+1美元)、饼皮(玉米饼或面粉饼)和可选加料(牛油果酱+1.50美元、奶酪+0.75美元);碗饭可选择底料和蛋白质。顾客把菜品加入购物车,在营业时间内(周二至周日11:00–21:00,中部时区)选择15分钟的取餐时段,输入姓名和电话,并看到含8.25%销售税的总价。每个时段上限8单,已满的时段隐藏。订单保存到数据库,状态为新订单、制作中、已完成、已取餐。厨房页面(需要登录)按取餐时间显示当天订单,新订单播放提示音,员工可以推进订单状态。店主页面用于编辑菜单、标记售罄菜品和暂停接单。暂不接入卡支付,目前订单为“取餐时付款”。设计醒目、色彩鲜明、移动端优先,按钮要足够大便于点击。
先采用取餐时付款,可以在引入支付之前,和员工一起测试完整的下单流程。
搭建步骤
- 菜单和选项。 把菜单、选项组和价格计算做对,并测试一个菜品的所有选项组合。
- 购物车和结账。 数量、备注、总价、税费,以及遵守营业时间的时段选择器。
- 保存订单和确认。 在服务器端计算总价,绝不信任浏览器提交的价格;确认页显示订单号。
- 厨房看板。 实时列表、新订单提示音、状态按钮,文字要大到一米外也能看清。
- 店主控制。 售罄、暂停接单、时段上限、营业时间。
- 测试模式下接入支付。 只有在支付服务商确认后才将订单标记为已付款,并处理支付成功但订单未保存的情况。
- 通知。 通过你自己的服务商发送邮件或短信确认,以及“可以取餐了”的提醒。参见添加通知。
- 小范围试运行。 与员工和朋友一起运行几天,既要关注顾客端,也要关注厨房端。
常见错误
- 只在浏览器中计算价格。 任何人都可以修改。请在服务器端重新计算。
- 没有售罄开关。 你会把最后一份卖出五次。
- 没有时段上限。 繁忙的周五会变成19:00需要处理40单。
- 过敏原信息缺失或过期。 请为每个菜品标注过敏原并保持准确,许多国家对此有严格规定。
- 时区混乱。 以UTC存储时间,按餐厅当地时间显示,并在午夜和夏令时切换前后测试。
- 厨房平板进入休眠。 保持屏幕常亮,并测试新订单无需刷新即可出现。
何时选择现成产品更合适
如果你希望吸引附近的新顾客,外卖平台可以带来你难以自己获取的流量,代价是佣金。如果你已经在使用收银系统,请先确认它是否包含在线点餐功能;直接进入收银机和厨房打印机的订单,很难被超越。
当你希望回头客直接下单、不产生佣金,或者需要符合你经营方式的点餐流程(例如面包店的预订、外卖餐盘、每周配餐菜单),或者需要把点餐与会员积分或你自己的网站相连时,建议自己搭建。餐厅网站指南涵盖了围绕点餐功能的其余网站内容。
用Mythex搭建
在Mythex中,你只需在聊天中描述点餐流程,并能在手机尺寸的框架中实时预览检查。当你要求保存数据时,代理会添加Postgres数据库来存放订单和菜单。银行卡支付使用你自己的Stripe账户,密钥以项目机密形式保存,参见Stripe配方中的提示词。短信或邮件通过你自己的服务商发送,因为Mythex没有内置的支付、邮件或短信产品。支付回调需要应用发布到公共网址后才能工作。上线前,可以使用/test让代理在预览中完成点餐操作,并报告哪里出现问题。
如需起始提示词,可以试试面包店订餐页面或咖啡订餐页面模板,或餐厅在线商店构建器。
常见问题
在线点餐网站需要哪些功能?
带价格、选项和售罄状态的菜单;购物车;带时间的取餐或配送信息;支付;订单确认;以及厨房看板,让员工看到新订单并标记为已完成。
如何避免接单量超过厨房的处理能力?
限制每个时段的订单量。把一天划分为15分钟的取餐时段,设定每个时段可接受的订单数或菜品数上限,并允许厨房在忙不过来时用一个按钮暂停接单。
我可以自己负责配送吗?
可以,前提是你有配送员。按邮编或距离划定配送区域,为每个区域设置起送金额和配送费,并为配送员提供带地址的简单订单列表。许多餐厅一开始只做到店自取。
自己的点餐网站比外卖平台更好吗?
自有网站不会对直接订单收取佣金,并能保持与顾客的直接联系,但你需要自己引流并负责配送。大多数餐厅两者兼用:平台用来获取新客,自有网站服务回头客。