Skip to content

打印(POS 上)

概述

打印机把每笔销售变成纸张——一张顾客小票、一张给前线的厨打单、一张配送单,或一张商品标签。POS 平板驱动接在其 register 上的打印机,按打印机类型、纸宽以及当前任务选择正确的模板。

打印在两个地方设置。每台 register 的硬件——品牌、连接方式、页眉文本——在管理后台的 POS 设置中一次性定义。在平板上,Printer Settings 让员工添加打印机、将其指向厨房或柜台,以及重打任何内容。本页讲的是平板这一侧。

设置保存在 register 上

您在 Printer Settings 下添加的所有内容都保存到平板所登录的那台 register——而不是设备。在同一台 register 上更换平板,打印机会随之保留。未分配 register 的平板则会显示空 register 提示。

打开 Printer Settings

  1. 在 POS 平板上打开 Settings(标签栏底部)。
  2. Main 下,点击 Printer Settings
  3. 您会看到这台 register 上已有的打印机列表,以及用于新建的 Add printer

点击某台打印机会打开它的详情表单。打印机表单上的垃圾桶图标会将其从 register 删除。

添加打印机

每台打印机共用几个核心字段,然后根据其类型显示额外的连接字段。

字段作用
Printer type要使用的驱动——参见下表。选择类型会改变出现哪些连接字段。必填。
Printer name用于让员工区分打印机的标签(如 KitchenFront Counter)。
Copy Count这台打印机每个任务打印几份。
Paper width小票打印机为 58mm80mm;标签打印机为 405060mm。纸宽会自动选用匹配的模板。

打印机类型及其连接方式

打印机类型如何连接
Epson网络——自动discovery 局域网上的打印机,外加一个 IP 地址。
Star网络——IP 地址。
TSC网络——IP 地址。一台标签打印机(条码 / 厨房标签)。
iMin / iMin v2网络——IP 地址加纸宽。
Nyx网络——IP 地址加纸宽。
Rongta USBUSB——仅支持 Android POS。应用检测连接的 USB 设备并请求权限;不使用 IP 地址。
SunmiSunmi 硬件上的内置打印机——无连接详情。
Sunmi-cloud云端——App IdApp KeySerial 号,以及 Shop Id
BLE Bluetooth蓝牙——设备 address
AdyenAdyen 终端——API KeyPOIID(Terminal ID),以及 Live Endpoint URL Prefix
PAXPAX 硬件上的内置打印机——无连接详情。
ZPL一台标签打印机(Zebra 风格条码 / 厨房标签)。
Other一台通用网络打印机——IP 地址。

网络打印机需要固定地址

网络打印机(Epson、Star、TSC、iMin、Nyx、Other)通过 IP 地址访问,因此请在路由器上为每台分配一个静态 IP。如果地址变了,POS 就找不到它。Epson 还可以discover 网络上的打印机,替您把地址填好。

Rongta USB 的连接方式不同

Rongta USB 打印仅支持 Android POS 应用。如果 Rongta 通过 LAN 连接,请将其配置为 Other / ESC/POS LAN 并输入 IP 地址。

每台打印机的用途

打印机不只是硬件——您还要告诉它接哪些任务。这些选项位于同一张详情表单上。

设置作用
Support Printing Types这台打印机接受哪些任务:kitchen_chitdelivery_chit,和/或 receipt。没有匹配类型的打印机会在该任务中被跳过。
Auto Print在恰当的时刻自动打印——付款时打小票、确认时打厨打单——无需任何人点击打印。
Socket Print打印通过网络推送进来的订单(见下文),带一个 channel 选择器。
Print QR Code在打印件上加一个 QR 码(例如会员注册或反馈 QR)。
Tags将带有匹配商品标签或分类标签的商品路由到该打印机。保留一台无标签厨房打印机作为默认回退。
Copy Count份数(上文也有显示)。小票可使用一个 tip 选项。

TSC 打印机无法打印小票

TSC 标签打印机上不提供 receipt 类型——它们只打标签和单据。请为柜台选用一台支持小票的打印机(Epson、Sunmi、Star 等)。

Socket Print 渠道

Socket Print 开启时,这台打印机会监听经网络到达的订单,并打印来源被您勾选的那些:

  • customer —— 在会员应用中下的订单
  • kiosk —— 自助点餐机订单
  • pos —— 在 POS 上录入的订单
  • grab —— GrabFood
  • foodpanda —— foodpanda
  • keeta —— Keeta

这就是一笔进来的在线订单无需任何人触碰平板就落到厨房打印机上的方式。已付在线订单如何处理,请参见下文的 Socket 自动打印

每张打印件上有什么

小票

顾客小票从上到下打印:

  • 商家页眉(名称、门店)
  • 餐桌 / 订单 / 当日订单号
  • 一个文档标题——订单已付款时为 TAX RECEIPT,尚未付款时为 PRE-SETTLEMENT BILL
  • 顾客姓名,以及下单 / 小票 / 打印 / 付款时间
  • 带价格的行项目
  • Sub Total
  • Discounts,逐项列出
  • Service Charge
  • BCRS Deposit(SG 的 $0.10 容器回收押金,适用时)
  • GST / Tax
  • Grand Total
  • 收取的 Payments 及任何 Change Amount
  • 可选的总计宏,以及对预订单的取餐或配送时间

58mm80mm 版式根据打印机类型和纸宽自动选择。总计宏块是否打印按每台打印机设置(isPrintTotalMacros)。

Bean & Brew 示例: 一位顾客点了两杯 flat white。80mm 柜台打印机打印一张 TAX RECEIPT,含这两行、一行 9% GST、10% 的 Service ChargeGrand Total,以及作为付款方式的 PayNow——在 Auto Print 开启时一键完成。

厨打单

厨打单按批次打印——每次员工确认一笔订单,最后一批商品就发往厨房。一张单据列出商品、它们的 modifiers,以及任何 remarks(特殊要求、最佳食用期备注),以便前线制作该订单。后续的确认会打印为 Order 2Order 3 等等。

单据上的用餐模式

每张厨打单都会写明餐点的去向。用词取决于门店的运营类型

用餐模式QSRFSR
堂食EAT INDINE IN
外带TAKE AWAYTAKE OUT
配送DELIVERYDELIVERY

单据各处使用同一种写法——顶部横幅、商品层级单据的标题,以及模式与订单不同的商品旁的 标记。早期版本在商品层级把外带写成单个单词 TAKEOUT,现已完全取消,因此同一张单据不会 再出现同一模式的两种写法。

40 毫米标签是例外。其标题方括号固定为 21 个字符,所以无论运营类型如何,外带在标签上一律 打印较短的 TAKE OUT

包含多种用餐模式的订单

当所有商品同属一种模式时,单据只打印一个用餐模式横幅,位置由 Order Mode Position 决定。

当商品属于同一模式时——客人一部分堂食、其余外带——横幅会被取消,因为订单模式会与半数 商品相矛盾。单据改为按模式分段,堂食在前,离店的在后:

text
            Order: 27
Pickup Time:  07-Aug-2026 02:01 PM
Order No:     27
--------------------------------
                          EAT IN
1  Cream Pasta
1  Teriyaki Sauce
--------------------------------
                       TAKE AWAY
1  Cream Pasta
--------------------------------

分段标签遵循与单个横幅相同的 Order Mode Position 设置:

  • Top——标签位于本段商品上方,右对齐,如上所示。
  • Bottom——标签位于本段商品下方,并空一行:
text
--------------------------------
1  Cream Pasta
1  Teriyaki Sauce

EAT IN
--------------------------------
1  Cream Pasta

TAKE AWAY
--------------------------------

取餐器号码通常随横幅打印,因此在分段单据上会移到横幅原本所在位置的那个标签上——Top 时为第一段,Bottom 时为最后一段。它仍然只打印一次。

分段仅适用于合并单据。商品层级单据和按份单据只含一件商品,不可能混合模式,因此保留 各自的横幅。

与按分类排序的交互

商品先按用餐模式分组。开启 Sort Kitchen Chit by Category 时,分类顺序在每一段之内 保持不变——因此同时含有两种模式商品的分类会出现在两段中,而不是一段。

自助机订单始终为单一模式

自助机没有单件商品的用餐模式设置:所有商品都沿用订单模式。因此自助机订单永远不会产生分段 单据。混合模式订单来自 POS,店员可在那里单独设置某件商品的模式。

套餐商品与标签厨房打印机

开启将套餐明细发送到匹配的打印机并关闭同时将套餐作为单个商品打印后, 每个套餐明细按以下顺序独立路由:

  1. 与任一已配置标签打印机匹配的商品直接标签优先。
  2. 仅当直接标签没有匹配任何已配置打印机时,才使用分类标签。
  3. 两者都不匹配时,商品发送到无标签的默认厨房打印机。

关闭同时将套餐作为单个商品打印后,每个明细单独路由。开启 Print Combo Product Name 时,同一套餐行的明细在同一个套餐名称下打印;同一套餐的两个独立行 各自保留自己的名称行,因此单据不会看起来像一个套餐装了双倍商品。

同时将套餐作为单个商品打印只会增加一张单据。每个明细仍会在制作它的工位拿到 自己的单据;套餐本身另外打印一张,标题为 --- SUMMARY --- 并列出各个明细,方便 装盘的人看到整道菜的全貌。

因此同一个明细会在纸上出现两次,但两者作用不同:单据是"请制作"的指令,摘要是对成品 的说明。只有单据才是指令。

摘要跟随套餐自身的标签——套餐有标签就送到该工位,没有标签则送到无标签的兜底打印机。

自助点餐机尚无标题行

自助点餐机会打印相同的摘要和相同的明细,但没有 --- SUMMARY --- 这一行。这是共享 打印包待做的改动,而不是某个设置。

请保留一台无标签的厨房打印机

第 3 步需要一台不带标签的厨房打印机。若所有厨房打印机都带标签,未匹配任何标签的 商品将不会送到任何打印机——它会静默地不打印,订单上也不会留下任何记录。POS 与 自助点餐机的行为相同。即使很少使用,也请保留一台无标签的厨房打印机作为兜底。

商品层级打印拆分

Product LevelProduct Bundle Level输出
关闭关闭一张合并单据,包含分配给该打印机的所有商品。
开启关闭每个顶层商品及数量分别打印;套餐仍作为一个商品。
关闭开启每个套餐明细分别打印;普通商品保持合并。
开启开启每个普通商品和每个套餐明细都分别打印。

只有在关闭「将套餐明细发送到匹配的打印机」时,Product Bundle Level 才会拆分套餐。 路由开启时,明细已经按工位分开,单据上剩下的套餐就是摘要——再拆分它会重复打印正在 别处制作的菜品,因此它保持完整。

配送单

配送订单在厨打单之外还会打印一张配送单,载有给司机的配送详情。

标签(TSC / ZPL)

标签打印机打印商品条码厨房标签,而非完整小票。TSC 使用 TSC 模板,ZPL 使用 Zebra 模板;两者都由标签纸宽(40 / 50 / 60mm)驱动。

Adyen 终端小票

当您在 Adyen 终端上收款时,小票和厨房文本是从终端自身的输出构建的,而不是用标准模板,因此卡片详情会完全按终端所报告的那样打印。

重打

您很少需要手动重打,但可以这么做。

  • 从购物篮 —— 页眉图标可为当前商品打印一张报价单/发票、一张外带账单,或 Print All(为每个有商品的购物篮打印一张外带账单)。
  • 从订单 —— 在 Orders 标签中打开订单,然后用它的 print popover 再次打印 receiptkitchen chitdelivery chitPayment successful! 界面也会在销售完成后立即提供 PRINT/REPRINT RECEIPTPRINT/REPRINT KITCHEN CHIT

如果没有配置合适的打印机,您会看到 "No printer found to print {type}"

Socket 自动打印

POS 与订单服务器保持一条实时连接。当一笔已付在线订单到达时——匹配 register 的默认已付状态,或一笔在付款前已履约的货到付款订单——并且它未分配给本平板上的员工,POS 会自动打印它的厨打单和小票(配送订单还加一张配送单),并播放提示音。

重打是安全的

自动打印是idempotent(幂等)——即使 socket 重连或订单再次更新,同一笔订单也不会打印两次。因此您可以放心地让厨房打印机一直开着 Socket Print,而不必担心重复单据。

这与上文的 Socket Print 配合:勾选您希望打印机监听的渠道(customer、kiosk、grab、foodpanda、keeta),进来的订单便会自行打印。

相关内容