Skip to Content

操作手册Handbooks 11

销售点 POS Point of Sale

开班、收银、支付与关班对账。 Sessions, checkout, payments and closing.

This chapter body is Chinese. Switch to 中文 for the best reading experience, or use Enterprise docs.

Odoo 19 企业版 销售点(POS)操作手册

适用版本:Odoo 19 Enterprise 涉及模块:point_of_sale(POS基础)+ pos_restaurant(餐厅模式)+ pos_hr(员工登录)+ pos_loyalty(会员积分) 主角:收银员小红、门店主管陈经理、顾客张先生 贯穿场景:POS配置 → 开班 → 商品销售 → 多种支付 → 退货 → 关班对账


模块概述

POS 适用场景

Odoo POS 适用于:
├── 零售门店         ← 标准收银(本手册主要场景)
├── 餐饮/咖啡店      ← 需开启 module_pos_restaurant
├── 电商线下提货点   ← 与在线商城打通
└── 服务门店         ← 美容/修理等服务类结账

POS 会话状态流转

状态值说明
opening_control开班控制:清点启动现金
opened营业中:正在处理订单
closing_control关班控制:清点实收现金
closed已关闭并过账:会计分录已生成

POS 订单状态

状态值说明
draft新建(前端草稿)
paid已付款(顾客完成支付)
done已过账(关班时统一处理)
cancel已取消

第一章:POS 系统配置

1.1 创建 POS 门店

操作路径:销售点 → 配置 → 销售点 → 新建

门店名称:明星科技上海展厅收银台
销售日记账:POS日记账
公司:明星科技有限公司

1.2 配置支付方式

操作路径:销售点配置 → "支付"选项卡

可用支付方式(至少选一种):
  ☑ 现金
  ☑ 银行卡(刷卡机)
  ☑ 微信支付(需配置支付服务商)
  ☑ 支付宝(需配置支付服务商)

代码字段:payment_method_ids(Many2many)

快速支付设置(use_fast_payment = True): 选择"快速支付方式"(如:常用面值:¥10、¥20、¥50、¥100),在收银界面可一键选择金额完成收款。

1.3 商品与价格配置

价格表:
  ○ 关闭(固定售价)
  ● 开启价格表(use_pricelist=True)  ← 支持会员价/批量价
  
允许折扣:☑(manual_discount=True,收银员可对行打折)
限制价格修改:☑(restrict_price_control=True,仅主管可改价)

1.4 收据配置

页眉:
  明星科技展厅
  地址:上海市松江区XX路XX号
  电话:021-XXXXXXXX

页脚:
  感谢光临!如有质量问题请拨打服务热线 400-XXX-XXXX

自动打印收据:☑(iface_print_auto=True)

1.5 员工登录配置(需安装 pos_hr)

开启员工登录:☑(module_pos_hr=True)
登录方式:PIN码 / 工卡条码
好处:记录每笔订单的收银员,便于绩效统计

1.6 硬件设备配置

设备配置字段说明
钱箱iface_cashdrawer收款后自动弹开
打印机iface_print_via_proxy通过 IoT Box 连接热敏打印机
条码扫描枪iface_scan_via_proxy扫描商品条码
电子秤iface_electronic_scale按重量计价商品
大触摸屏iface_big_scrollbars工业触摸屏使用大滚动条

第二章:日常收银操作

2.1 开班(开始新会话)

操作路径:销售点 → 选择门店 → "打开"按钮

2.1.1 清点启动现金

系统显示:启动现金清点
理论余额(上次关班结余):¥500
实际清点:¥500(收银员小红清点后确认)
差异:¥0
→ 点击"开始营业"

系统进入 POS 收银界面(浏览器全屏模式)。

2.2 商品录入

POS 收银界面布局:

┌─────────────────────────────────────────────┐
│  [商品分类列表]          [收银员:小红]      │
├──────────────────────┬──────────────────────┤
│                      │  订单摘要             │
│   商品展示区          │  ─────────────────── │
│  (图片+价格+名称)   │  MS-2000-A  ¥6,500  │
│                      │  安装调试服务 ¥2,500  │
│                      │  ─────────────────── │
│                      │  小计:¥9,000        │
│                      │  折扣(10%):-¥900  │
│                      │  ─────────────────── │
│                      │  合计:¥8,100        │
│                      │  [收款]              │
└──────────────────────┴──────────────────────┘

录入方式:

方式操作
点击商品图标直接点击商品卡片
扫描条码扫描商品条码自动加入订单
手动输入搜索栏输入产品名称/编号
按重量录入连接电子秤,自动读取重量

2.3 收款流程

订单确认后,点击"收款"按钮:

应收金额:¥8,100

选择支付方式:
  现金:¥10,000(顾客给的)
  找零:¥1,900(系统自动计算)
  
点击"验证"完成收款

组合支付(拆分支付):

应收:¥8,100
  微信支付:¥5,000
  现金:¥3,100
  
两种方式分别录入,系统合计验证

2.4 开具发票

顾客需要发票时,在订单完成后(或收款前)点击"发票"按钮:

客户:苏州宏达自动化设备有限公司
发票类型:增值税普通发票 / 专用发票
自动创建 Odoo 会计发票(out_invoice),可从后台打印或发送邮件

2.5 退货处理

操作路径:POS 后台 → 订单 → 找到原始订单 → "退款"

原始订单:POS/2025/00234
退货产品:MS-2000-A 传感器  1件
退款原因:产品颜色与需求不符
退款方式:原路退回(微信支付原路退)

→ 系统创建退款订单(负数),库存自动回补

第三章:POS 高级功能

3.1 会员积分与折扣卡(pos_loyalty)

前提:配置忠诚度计划 操作路径:销售点 → 产品 → 折扣与忠诚度

忠诚度计划:明星科技会员积分
奖励规则:
  每消费 ¥100 积 10 积分
  
兑换规则:
  100 积分 = ¥10 优惠券

收银操作:
  输入顾客手机号 → 系统显示可用积分
  顾客选择是否兑换 → 自动抵扣金额

3.2 餐厅模式(pos_restaurant)

适用场景:咖啡厅、餐厅、展示区茶水服务

开启方式:配置 → module_pos_restaurant = True

餐厅模式新增功能:

  • 桌位管理:楼层图,显示各桌状态(空闲/就坐/待结账)
  • 分单:同一桌不同顾客分开结账
  • 厨房打印:下单后自动向厨房打印出单(KDS)
  • 小费:支持小费输入
操作流程:
  选择桌号(如A区05桌)→ 点单(扫码/手动)
  → 发送厨房 → 上菜 → 结账

3.3 稍后发货(ship_later)

展厅下单但产品需要从仓库发货:

顾客在展厅选购传感器,现场无货
→ 开启"稍后发货"选项
→ 填写收货地址
→ POS订单付款后,自动创建销售订单和发货任务
→ 仓库从库存发货

3.4 按重量销售

配置:POS → 商品 → 某产品 → 勾选"按重量销售"

操作:

收银员将商品放上电子秤 → 系统自动读取重量
→ 单价 × 重量 = 应收金额
→ 完成收款

第四章:关班与对账

4.1 关班流程

操作路径:POS 界面右上角 → 关闭会话

第一步:清点实收现金

系统显示理论现金余额:
  启动现金:        ¥   500
  本日现金收款:    ¥12,340
  现金退款:        -¥   800
  理论余额:        ¥12,040

收银员小红实际清点:¥12,020
差异:             -¥20(找零失误或假币等)

备注:找零计算差错20元,已记录

第二步:确认关班

点击"关闭"→ 系统执行:

  1. 所有订单状态从 paid → done
  2. 自动生成财务日记账分录:
   借:现金(或银行)   ¥12,020
   借:现金差异         ¥20
   贷:POS销售收入      ¥12,040
   
  1. 生成关班报告

4.2 关班报告

自动生成的关班报告内容:

2025年3月20日  上海展厅  收银员:小红  会话:#00234

─────────────────────────────────
订单汇总
  总订单数:          47笔
  总销售额:      ¥52,840
  退款:           -¥3,200
  净销售额:       ¥49,640

支付方式明细
  现金:           ¥12,020(理论¥12,040,差异-¥20)
  微信支付:       ¥24,800
  支付宝:         ¥8,120
  银行卡:         ¥4,700
  
热销产品 TOP5
  1. MS-2000-A传感器  12件  ¥78,000
  2. 安装调试服务      8次  ¥20,000
  ...
─────────────────────────────────

4.3 查看 POS 历史订单

操作路径:销售点 → 订单 → 订单

按日期、收银员、产品筛选查询历史订单,可重新打印收据。


第五章:POS 报告

5.1 销售报告

操作路径:销售点 → 报告 → 销售

分析维度:
  按产品:查看各产品销量和收入
  按收银员:员工绩效统计
  按支付方式:现金/移动支付占比
  按时段:分析高峰/低谷时段
  按日期:日/周/月销售趋势

5.2 库存影响

POS 销售直接扣减库存:

  • 每笔 POS 订单完成,对应库存出库(来源库位=POS所在仓库的货架,目标=顾客库位)
  • 关班时批量处理所有库存移动
  • 退货时库存自动回补

附录:常见问题

Q1:POS 网络断线怎么办?

Odoo POS 支持离线模式:

  • 断网后继续使用缓存数据(最近加载的产品和价格)
  • 本地保存订单
  • 网络恢复后自动同步到服务器

Q2:找不到产品?

  • 检查产品是否设置为"在POS中销售"(产品表单 → 销售 → POS选项卡 → ☑在销售点中销售)
  • 检查产品所属分类是否在POS可用分类中

Q3:如何让不同员工有不同权限?

  • POS 管理员:可修改价格、开折扣、访问报表
  • 收银员:只能按定价收款
  • 通过"限制价格修改"和 pos_hr 员工角色控制

附录:关键字段速查

字段模型说明
statepos.sessionopening_control/opened/closing_control/closed
statepos.orderdraft/paid/done/cancel
payment_method_idspos.config可用支付方式
cash_controlpos.config是否开启现金控制
opening_notespos.session开班备注
closing_notespos.session关班备注
amount_totalpos.order订单总金额
employee_idpos.order收银员(需pos_hr)

文档版本:Odoo 19 Enterprise | 更新日期:2026-03-04