# 为什么我的 POS 要求在结账一次性商品之前必须先创建产品？

> Published: 2026-08-04
> Updated: 2026-08-04
> Author: Mathias Nielsen
> Category: POS
> Canonical: https://finalpos.com/zh-Hans/blog/pos-one-off-sale-open-item-zh-Hans

有些 POS 系统如果商品不在目录中就无法进行结账，导致收银员不得不创建临时抛弃型产品或选择错误的 SKU 结算。本文将探讨这种情况发生的原因、会导致哪些数据偏差，以及结账时的无目录商品（Open Item）功能应该是怎样的。

这是因为您的 POS 将产品目录视为唯一的权威数据源，而一次性销售在这种模式下根本没有容身之地。小票上的每一行都必须映射到一个产品记录，而许多系统在出厂时并没有提供无目录商品（Open Item）功能：即没有一种可以让收银员输入名称和价格后直接继续的行类型。当顾客递给您一件从未录入为产品的商品时，收银机上根本没有对应的按钮。

因此收银员只能即兴应对，通常有两种做法：要么在排队队伍越来越长时，在销售过程中临时创建一个抛弃型产品；要么按最接近的真实产品结算，并祈祷没人会去核对。这两种做法都会向您的账簿中写入错误的数据。

## 为什么每笔销售都必须映射到目录记录？

因为在以“目录优先”设计的 POS 中，产品记录承担了所有工作。它包含价格、计税规则、库存关联以及报表分类，因此结账只是一次查询而非数据录入。这种设计非常适合绝大多数零售交易，这也是为什么扫描条形码感觉是瞬间完成的原因。

但在边缘场景下问题就显现出来了：维修费、特殊订单、送货费、或者供应商今天早晨刚送来的零星寄售商品。旧式电子收银机是通过“开放部门键（open department key）”（一种允许输入价格并归入某一分类的按钮）来处理这些情况的。大量现代云端 POS 系统在转为“目录优先”设计时悄悄丢弃了这一功能，并且再也没有重新构建它。

## 当没有无目录商品按钮时，员工实际上是怎么做的？

他们会寻找替代方案，而这些替代方案所付出的代价比功能缺失本身还要高。

- 销售过程中创建抛弃型产品。收银员暂停交易，打开目录编辑器，创建一个附带今日价格的“杂项商品”。坚持这样做一个月，您的产品目录就会充斥着垃圾记录，污染搜索、导出和报表。
- 虚拟产品网格。某些系统促使商家创建名为“自定义销售 1”和“自定义销售 2”的产品，每个产品针对不同的价格点设置变体（例如 1.00 美元、2.00 美元等），以便收银员选择最接近实际金额的变体。这本质上是用产品目录假装键盘，还会将您的收入四舍五入到现有变体对应的金额。
- 按最接近的真实产品结算。在柜台前最快，但在账簿里最差。被替代的 SKU（库存单位，即产品记录）扣减了从未售出的库存，补货建议根据虚假需求触发，而您的销售报表则将业绩记在了错误的产品名下。
- 数量技巧。将一个 1 美元的产品按 37 的数量结算，会生成一条 37 美元的行项和毫无意义的售出件数。

![平板电脑 POS 周围摆放着贴纸和手写价格笔记本，这是缺少无目录商品按钮时的替代方案](https://hy9joxwes0n0bta4.public.blob.vercel-storage.com/media/43399b6a-0d29-48b6-84dd-88ef01fcb193/generated/e340aafa3e594d70-open-item-pos-workaround-notes.png)

这些做法在当时看起来毫无察觉，但在生成报表时却代价高昂。这与[胶带搭成的 POS](/blog/pos-workarounds-duct-tape-system) 属于同一种失败模式：替代方案变成了正式系统，而报表不再能反映门店的真实状况。

## 在彻底解决之前，哪些替代方案可以支撑一阵？

如果您的现用 POS 无法实现此功能，且您本周内暂不更换系统，请尽量控制损失：

1. 集中为每种计税方式创建一个杂项产品，并在收银台启用价格覆盖功能。清晰命名，例如“杂项-应税”和“杂项-免税”，至少保证该行项的税费计算无误。
2. 在收银机端锁定目录编辑权限。替代方案所需的产品应由经理统一创建一次，切勿由值班人员在销售过程中临时创建。
3. 每周核查杂项行项。如果杂项销售额在总收入中占了不小的比例，说明您对实际售出的商品一无所知，这与[夜间 CSV 导出](/blog/nightly-csv-exports-not-a-reporting-strategy)隐藏数据偏差直到月底才暴露如出一辙。

这只是临时权宜之计。它能保持总额和税费一致，但每笔一次性销售仍然落在同一个没有区分的分类中，且无法挽回替代 SKU 造成的库存偏差。

![店主在按错误产品结算一次性销售后，发现实际库存数量与表格不符](https://hy9joxwes0n0bta4.public.blob.vercel-storage.com/media/43399b6a-0d29-48b6-84dd-88ef01fcb193/generated/fcddad30d2b37084-open-item-pos-inventory-mismatch.png)

## 一次性销售在结账时应该是什么样的？

应该是一种一等的行项类型，而不是对目录的临时凑合。收银员输入名称、输入价格、选择是否适用税费以及使用哪个税组，然后将该行项加入购物车。它在付款时的行为与其他任何商品无异，在小票上打印自己的名称，在报表中显示为独立的行项，且绝不触及库存。几十年前的老式收银机就能做到这一点；现代 POS 在技术上没有任何理由做不到。

Final 将此功能作为“自定义销售”提供：销售界面中目录旁边的标签页，您可以在键盘上输入名称和金额，选择性地挑选税组，并像其他行项一样[将其加入购物车](https://finalpos.com/help/ring-up-a-sale)。该功能现已上线，帮助中心提供了完整步骤：[如何进行自定义销售](https://finalpos.com/help/make-a-custom-sale)。同样的原则也适用于灵活系统应当吸纳的其他结账边缘场景，从[免税销售](/blog/pos-tax-exempt-sale-remove-tax)到[组合支付](/blog/pos-cant-do-split-payments)：行项级别和支付级别的决策应当在柜台前完成，而不是对产品目录进行修改。

一个防护栏：无目录商品仅适用于真正的一次性销售。如果您每周都在结算同一个“一次性商品”，那么它就值得在目录中占有一席之地。区别在于，将其添加到目录变成了一项深思熟虑的决策，而不是在顾客排队注视下的临阵应急。

![在 POS 键盘上为一次性销售输入价格，而不是先创建产品](https://hy9joxwes0n0bta4.public.blob.vercel-storage.com/media/43399b6a-0d29-48b6-84dd-88ef01fcb193/generated/7a1e19ccbf1a4ea6-open-item-pos-typed-price.png)

## 那么为什么您的 POS 强迫您先创建产品？

因为它的设计前提是产品目录是完整无缺的，而柜台则是这一假设每周都会破灭几次的地方。解决方案不是加强员工纪律或整理更整洁的虚拟产品网格；而是一种支持手动输入名称、价格和选择税费的无目录商品行项类型。经验法则：如果处理一项一次性收费的时间长于输入价格的时间，说明您的 POS 缺少的是一种行项类型，而不是缺少替代方案。统计一下上个月报表中出现了多少“杂项”行项，如果这个数字让您大吃一惊，不妨顺便[审计一下您其他的替代方案](/blog/pos-workarounds-duct-tape-system)。

## FAQ

**Q: 什么是 POS 上的无目录商品（Open Item）？**
A: 一种通过手动输入名称和价格而非从产品目录中选择来进行结账的行项。老式收银机称之为开放部门键；Final 则称之为自定义销售。

**Q: 将一次性商品按相似产品结算可以吗？**
A: 不可以。这会减少该产品的库存数量并将其计入该产品的销售历史中，导致每次替代结算都会使库存数量和销售报表产生更大的偏差。

**Q: 一次性销售的税费应该如何处理？**
A: 收银员应该在行项级别选择是否适用税费以及使用哪个税组。在 Final 的自定义销售中，这表现为一个“应用税费”开关以及一个税组下拉菜单。

**Q: 自定义销售会影响库存吗？**
A: 不会。自定义销售不与任何产品记录关联，因此绝不会改变库存数量。这正是它优于按真实产品结算的原因。

**Q: 为什么现代 POS 系统缺乏无目录商品按钮？**
A: 以“目录优先”的设计将价格、税费和报表附加到产品记录上，许多供应商从未重新开发传统收银机所提供的自定义价格行功能。