产品管理
管理组织中的产品和服务数据,支持采购产品和销售产品两种类型。系统通过三层结构来组织产品信息,帮助您统一管理产品名称、分类、价格,并在[账单](bill)和[收入](income)单据中复用。
产品管理
管理组织中的产品和服务数据,支持采购产品和销售产品两种类型。系统通过三层结构来组织产品信息,帮助您统一管理产品名称、分类、价格,并在账单和收入单据中复用。
快速上手
产品的三层结构
系统用三层结构来管理产品信息,从上到下分别是:
| 层级 | 通俗理解 | 说明 |
|---|---|---|
| 产品合并(顶层) | 「这是什么东西」 | 代表一种商品或服务的统一记录。比如「A4 打印纸」就是一条产品合并记录,不管从哪个供应商买的都归到这里 |
| 产品(中间层) | 「从哪家买的」 | 按供应商区分。同一种商品,从供应商 A 买的和从供应商 B 买的是两条产品记录,可以有不同的名称和编号 |
| 行项(底层) | 「具体这笔交易」 | 单据中的一行明细。比如账单 #001 中第 2 行「A4 打印纸,数量 10 箱,单价 50 元」就是一条行项 |
举例说明:
A4 打印纸(产品合并)
├── 供应商甲的 A4 纸(产品)
│ ├── 账单 #001 第 2 行:10 箱 x 50 元(行项)
│ └── 账单 #005 第 1 行:5 箱 x 48 元(行项)
└── 供应商乙的 A4 纸(产品)
└── 账单 #003 第 3 行:20 箱 x 45 元(行项)为什么要分三层? 因为同一种商品从不同供应商采购时,供应商给的名称、编号、价格可能都不一样。三层结构让您既能按供应商分别管理,又能在最顶层统一查看某种商品的总体情况(如总采购量、价格趋势)。
采购产品 vs 销售产品
| 类型 | 说明 | 适用单据 | 管理入口 |
|---|---|---|---|
| 采购产品 | 从供应商采购的商品或服务 | 账单、采购单 | Items(切换到 Purchase Items) |
| 销售产品 | 向客户销售的商品或服务 | 收入、报价单 | Items(切换到 Sales Items) |
产品如何被使用
日常使用中,产品信息会在以下场景自动发挥作用:
- AI 自动匹配:上传账单或收入单据时,AI 识别行项中的产品名称后,会自动与已有产品记录匹配,匹配成功后自动填充分类等信息
- 自动归组:新产品创建后,自动查找并归入已有的相似产品合并记录,减少手动合并和分类的工作量
- 手动选择:在单据的行项中手动选择已有产品,复用产品的分类、单价等信息
- 价格趋势:系统自动统计采购产品的价格变化,帮助您监控供应商报价
更多细节请看下方的功能详细说明。
功能详细说明
产品合并管理(顶层)
查看产品列表
入口:
- 统一入口:左侧菜单 → 主数据 → Items,通过顶部切换选择「Sales Items」(销售产品)或「Purchase Items」(采购产品)
产品列表展示所有产品合并记录。新添加的产品会有「新」标记,查看后标记消失。已开启库存追踪的产品显示绿色勾号图标。
筛选和排序:
| 筛选条件 | 说明 |
|---|---|
| 关键词搜索 | 搜索产品名称、供应商名称 |
| 分类 | 按产品所属分类筛选 |
| 供应商 | 按关联供应商筛选(仅采购产品) |
| 排序字段 | 说明 |
|---|---|
| 名称 | 按产品名称排序 |
| 创建时间 | 按创建时间排序 |
| 近 365 天金额 | 按近一年的交易金额排序 |
| 近 30 天金额 | 按近一个月的交易金额排序 |
| 近 365 天数量 | 按近一年的交易数量排序 |
| 近 30 天数量 | 按近一个月的交易数量排序 |
视图管理:您可以将常用的筛选+排序组合保存为一个「视图」,下次直接切换,不用重新设置。
创建产品合并
入口:产品列表页 → 新建按钮
需要填写的信息:
| 填写项 | 是否必填 | 详细说明 |
|---|---|---|
| 首选名称 | 必填 | 产品的显示名称,用于列表展示和搜索 |
| 类型 | 必填 | 采购或销售 |
| 分类 | 必填 | 产品所属的业务分类(科目),新建行项时会继承此分类 |
| 首选供应商 | 新建采购产品时必填 | 指定默认供应商 |
| 建议单价 | 否 | 产品的参考单价 |
| 单位 | 否 | 计量单位(如箱、个、件) |
| 自定义字段 | 视公司配置 | 公司自定义的额外填写项 |
编辑产品合并
入口:产品列表 → 点击产品进入详情页 → 编辑
修改产品信息。如果修改了分类,系统会询问您要如何应用这个变更:
| 选项 | 效果 |
|---|---|
| 仅应用到未来单据(默认) | 分类变更只影响之后新建的行项,历史行项保持原分类 |
| 应用到所有 | 分类变更同时更新所有关联的历史记录(仅影响关账期之后的记录) |
合并产品
入口:产品列表 → 勾选多条记录 → 合并
当列表中有重复或相似的产品时,可以将它们合并为一条。
操作步骤:
- 在列表中勾选要合并的产品(最少 2 条,最多 50 条)
- 选择一条作为目标(保留项),其余为源
- 确认后,源产品下的所有产品记录和行项都会自动迁移到目标产品下
- 源产品记录被移除
合并操作不可撤销。如果选中的产品中有超过 1 条开启了库存追踪,合并操作无法执行。
拆分产品
入口:产品详情页 → 拆分按钮
当一个产品合并记录下包含了不应该合在一起的产品时,可以拆分出去。
前提条件:
- 产品合并下至少有 2 个产品记录
- 未开启库存追踪
操作步骤:
- 在拆分弹窗中选择需要拆分出去的产品记录
- 确认后,系统为选中的产品记录创建新的独立产品合并记录
- 原产品合并记录保留未选中的部分
移动产品
入口:产品详情页 → 移动按钮
将某个供应商下的产品记录(中间层)从当前产品合并移动到另一个产品合并记录中。
移动操作不可撤销。
清除未使用产品
入口:产品列表页 → 清除未使用按钮
批量清理没有被任何单据行项引用过的产品合并记录,保持产品列表整洁。
库存追踪
产品合并(顶层)可以开启库存追踪功能。开启后,系统会自动根据交易记录维护库存数据。
开启库存追踪
入口:产品详情页 → 开启库存追踪
开启时需要填写以下信息:
| 填写项 | 是否必填 | 详细说明 |
|---|---|---|
| 库存资产分类 | 必填 | 库存资产所属的会计科目 |
| 初始数量 | 必填 | 期初库存数量 |
| 初始单价 | 必填 | 期初库存单价(公司基础货币) |
| 关联销售产品 | 必填 | 关联对应的销售产品,用于建立采购-销售关联 |
库存数据
开启后系统自动计算和更新以下数据:
| 数据 | 含义 |
|---|---|
| 在手数量 | 当前库存数量 |
| 平均成本 | 加权平均成本(公司基础货币) |
| 总价值 | 在手数量 x 平均成本 |
采购-销售产品关联
采购产品和销售产品之间可以建立关联关系,记录「生产或消耗一个销售产品需要多少采购产品」,用于成本核算。
价格趋势分析
系统自动分析采购产品的价格变化趋势。在产品列表中,每个产品旁会显示一个迷你折线图,直观展示价格走势。
| 指标 | 含义 |
|---|---|
| 波动率 | 价格变化的幅度百分比(正数表示涨价,负数表示降价) |
| 近期平均价 | 最近 10 次采购的不含税平均单价 |
价格趋势基于最近 10 条采购记录,数据量较少时仅供参考。
产品自动匹配(AI)
上传账单或收入单据时,AI 识别行项中的产品名称后,系统会自动尝试与已有产品进行匹配。
匹配流程:
- AI 从文件中提取每行产品的名称
- 系统将名称标准化(去除标点和空格、转为小写)后,与产品记录中的「匹配名称」进行精确比对
- 匹配成功:行项自动关联到对应的产品记录和产品合并记录,复用分类等信息
- 匹配失败:行项仅保留 AI 识别的名称,不关联产品
匹配名称和 AI 识别名称的区别:
| 名称 | 存储位置 | 用途 |
|---|---|---|
| 匹配名称 | 产品记录(中间层) | 实际参与匹配的字段。标准化后精确比对 |
| AI 识别名称 | 产品合并(顶层) | 仅用于展示,汇总该产品曾被 AI 识别过的所有名称变体,不参与匹配 |
新产品首次出现时无法自动匹配,需要您手动关联一次。之后系统会记住匹配名称,下次相同名称的产品会自动匹配。
匹配按产品类型区分:账单行项匹配采购产品,收入行项匹配销售产品。
产品自动归组
当新产品出现时(无论是 AI 识别创建还是手动创建),页面会自动查找已有的相似产品,并尝试将新产品归入同一个产品合并记录中。归组成功后,新产品会自动继承该产品合并记录的分类,无需您手动操作。
自动归组的过程:
- 在已有的产品合并记录中查找类似产品(同类型,采购产品还会匹配同一供应商)
- 根据价格相似度进一步筛选。自动匹配时,没有价格信息的产品不会出现在候选列表中,以提高匹配准确率
- 通过智能匹配判断新产品名称是否与已有产品一致(能识别缩写、大小写、拼写差异等常见变体)
- 匹配成功:新产品自动归入已有的产品合并记录,继承其分类
- 未找到匹配:新产品保持独立,不影响正常使用
行项管理(底层)
行项是单据(账单、收入等)中的具体明细行,每一行记录一种产品的交易信息。
行项字段说明
| 填写项 | 是否必填 | 详细说明 |
|---|---|---|
| 名称 | 否 | 商品或服务名称。匹配已有产品时自动关联 |
| 分类 | 必填 | 行项所属的业务分类(科目) |
| 单价 | 否 | 商品或服务的单价 |
| 数量 | 否 | 商品或服务的数量 |
| 折扣金额 | 否 | 折扣金额 |
| 折扣率 | 否 | 折扣的百分比 |
| 税率 | 否 | 适用的税率百分比 |
| 关联税码 | 否 | 关联的税码,用于税务报表分组 |
| 描述 | 否 | 补充描述 |
| 标签 | 否 | 行项标签 |
| 自定义字段 | 视公司配置 | 公司自定义的额外填写项 |
金额自动计算
行项中的金额会自动联动计算。修改任一金额字段时,其他相关字段自动更新:
| 修改的字段 | 自动计算 |
|---|---|
| 单价或数量 | 小计 = 单价 x 数量 → 折扣 = 小计 x 折扣率 → 总价 = 小计 - 折扣 → 税额 |
| 折扣率 | 折扣 = 小计 x 折扣率 → 总价 = 小计 - 折扣 → 税额 |
| 折扣金额 | 折扣率 = 折扣 / 小计 x 100 → 总价 = 小计 - 折扣 → 税额 |
| 总价 | 反算小计和单价 → 税额 |
| 税率 | 重新计算税额 |
税额计算方式取决于单据的含税/不含税设置:
| 模式 | 计算方式 |
|---|---|
| 含税 | 不含税价 = 总价 / (1 + 税率/100),税额 = 不含税价 x 税率/100 |
| 不含税 | 不含税价 = 总价,税额 = 总价 x 税率/100 |
| 免税 | 税额 = 0 |
行项操作
在单据详情页中,行项表格支持以下操作:
| 操作 | 说明 |
|---|---|
| 添加行项 | 点击表格底部的「+」按钮,插入一条空白行 |
| 删除行项 | 点击行末尾的删除图标 |
| 复制行项 | 点击行末尾的复制图标,在当前行下方插入一条相同的行项 |
| 拖拽排序 | 通过行首的拖拽手柄调整行项顺序 |
| 批量编辑 | 可批量修改多行的分类、税率和税码 |
| 列配置 | 显示或隐藏列,根据需要调整 |
| 税码匹配 | 打开匹配弹窗,选择与当前税率匹配的税码 |
拆分行项
当行项名称包含特定关键词时,会显示「拆分」按钮。点击后可以将当前行项的金额或数量按比例分配到其他行项。
递延摊销
行项可以配置递延摊销,将一笔预付/预收费用按期分摊到多个会计期间,并自动生成各期的会计分录。
启用条件:行项分类必须是「预付款(Prepayment,账单)」或「预收款(Received in Advance,收入)」,其他分类无摊销入口。
入口:行项分类列中的摊销按钮。如果单据是新建状态或存在未保存的修改,点击时会弹出确认提示,确认后系统会先自动保存单据(只保存,不关闭),保存成功才打开摊销弹窗;保存失败则提示且不打开弹窗。
配置项:
| 配置项 | 说明 |
|---|---|
| 摊销方式 | 「按月平均」「按月平均(月末入账)」或「按日比例」,默认按月平均 |
| 开始日期 | 摊销起始日期,必填 |
| 期数 | 摊销月份数,必填,可选 1-120 个月 |
| 摊销科目 | 各期分摊计入的会计科目,必填 |
| 总额 | 待摊销金额,只读,取行项不含税总额(组织币种)展示 |
三种摊销方式:前两种都叫"按月平均",最容易搞混,区别在于开始当月要不要单独出一期零头,以及后续每期的记账日是"次月同一天"还是"自然月末":
| 摊销方式 | 开始当月怎么处理 | 后续每期记账日 | 分录条数 |
|---|---|---|---|
| 按月平均 | 跳过开始当月,不出分录 | 从开始日期的次月起,每期在同一天记账,遇到短月顺延至月末 | 等于期数 |
| 按月平均(月末入账) | 不跳过,按开始当月剩余天数占比算出一笔零头作为首期 | 自然月末(每月最后一天) | 开始日期恰为当月 1 号时等于期数;其他日期会比期数多 1 条(零头单独占一条) |
| 按日比例 | 按自然月切段计算金额,没有单独的"零头首期"概念 | 每段对应自然月的月末,跨月时首尾不足整月的部分各自成为独立分录 | 通常为「期数 + 1」,开始日期恰为月初时等于期数 |
举例:总额 1200 元、期数 12、开始日期为 1 月 15 日。
- 按月平均:从 2 月 15 日起,每月 15 日记一期 100 元,一直到次年 1 月 15 日,共 12 条分录,1 月不出分录。
- 按月平均(月末入账):1 月 15 日到 31 日先按天数比例算出一笔零头(约 54.84 元),记在 1 月 31 日作为第 1 期;之后从 2 月起每月月末各记一期 100 元,一直到次年 1 月 31 日,一共 13 条分录。
- 按日比例:按自然月切段计算,1 月和次年 1 月各有一段不完整的零头,一共约 13 条分录。
尾差自动配平:无论哪种方式,最后一期金额 = 总额 − 前面各期金额之和,将所有四舍五入累计误差归集到最后一期,保证各期之和精确等于总额。若极端精度场景下最后一期配平后为负数,系统拒绝生成,不写入分录。
生成的会计分录:账单的预付款摊销按期借「摊销科目(费用)」、贷「预付款」;收入的预收款摊销按期借「预收款」、贷「收入科目」。重新生成时系统会先清除旧的摊销分录再写入新批次。
摊销配置仅 Web 端支持。
批量导入产品主数据
入口:左侧菜单 → 主数据 → Items → 顶部切换销售或采购品类 → 列表工具栏「导入」按钮
适用角色:仅组织拥有者可操作;仅 Web 端支持。
通过上传文件批量导入产品主数据,由 AI 自动识别文件中的产品记录,您确认后批量创建。无需手动映射列。
支持的文件格式:CSV、Excel(XLS/XLSX)、PDF、图片(JPG/PNG/HEIC 等)。单次仅支持上传一个文件。
操作流程:
- 上传文件:在导入弹窗中选择一个文件上传,系统启动 AI 识别
- AI 识别:AI 从文件中按行提取产品主数据,字段值原样照抄
- 确认与补齐:识别结果以表格展示,每行可勾选是否纳入导入。对每一行您需要补齐必填项:
- 会计分类必填,且必须是当前品类(销售或采购)下的合法分类
- 采购品类还需要为每行指定首选供应商
- 提交导入:批量写入产品记录。每行返回结果:已创建 / 已跳过 / 失败(含原因)。新建的产品记录初始金额为零、标记为未查看
去重规则:系统按标准化匹配名(去除所有空白/标点/符号 + 转小写)与现有产品比对,同名记录会被判为「失败(名称已存在)」并禁用该行勾选,直到您改名为止;同一批次内标准化等价的后续行同样会被识别。
并发限制:导入提交持有组织级锁,同一组织同一时间仅允许一个主数据导入任务进行(供应商/客户/产品共享该锁)。
导出数据
入口:产品列表页 → 导出按钮
支持导出产品数据,包括销售/采购金额,可按年/季度/月维度分时间段。导出仅包含审批状态为已通过的单据行项数据。
典型场景
日常使用
上传账单后,行项的分类怎么自动就有了? 因为 AI 识别了行项中的产品名称,并与已有产品记录匹配成功。匹配成功后,系统自动使用该产品设置的分类。如果匹配失败,AI 还会根据商品名称自动推荐分类,标记为「未确认」,您确认后该分类即生效。
新产品第一次出现,怎么让系统以后能自动识别? 第一次出现时 AI 无法自动匹配。您需要手动在行项中选择或创建产品,关联后系统会记录匹配名称。下次 AI 识别到相同名称时就会自动匹配。
新产品自动归到已有产品下了,是怎么回事? 这是自动归组功能。当新产品被创建时,页面会自动查找名称相似的已有产品合并记录,如果找到匹配项,就会将新产品归入其中并继承分类。这样可以减少您手动合并和分类的工作量。如果归组不准确,您可以通过拆分或移动功能调整。
同一种产品从不同供应商买,价格不一样怎么管理? 系统的三层产品结构正好解决这个问题。在顶层「产品合并」记录下,每个供应商对应一条中间层「产品」记录,可以有各自的匹配名称和编号。但在顶层可以统一查看该商品的汇总情况和价格趋势。
递延摊销里两种"按月平均"有什么区别? 区别在于开始当月要不要单独出一期。「按月平均」直接跳过开始当月,从下个月同一天开始记账,一共记「期数」条分录;「按月平均(月末入账)」不跳过开始当月,会先按当月剩余天数比例算出一笔零头作为第 1 期,之后每期改为在每月月末记账,所以除非开始日期正好是当月 1 号,否则会比设定的期数多出 1 条零头分录。选哪种主要看您公司的记账习惯:不想让开始当月出现摊销的选「按月平均」,希望开始当月也按天数摊一部分的选「按月平均(月末入账)」。
列表里产品太多太杂? 可以使用「清除未使用产品」功能,批量清理没有被任何单据引用过的产品记录。还可以通过「合并产品」把重复的合到一起。
产品合并操作
发现两个产品其实是同一个东西,怎么合并? 在产品列表中勾选这两条记录,点击「合并」,选择保留哪一条,确认后另一条的所有关联数据会自动迁移过来。合并后不可撤销,请确认后再操作。
一个产品下混进了不相关的供应商记录? 使用「拆分」功能。打开这个产品,选择需要拆分出去的供应商产品记录,系统会为它们创建新的独立产品合并记录。前提是产品下至少有 2 条记录,且未开启库存追踪。
想把一个供应商的产品记录移到另一个产品合并下? 使用「移动」功能。在产品详情页选择要移动的产品记录,指定目标产品合并,确认后完成迁移。
库存管理
怎么追踪某个产品的库存? 在产品详情页开启「库存追踪」,填写初始库存数量和单价。开启后,每次采购入库(账单通过审批)自动增加库存,每次销售出库(收入通过审批)自动减少库存。在产品详情页可以查看当前在手数量、平均成本和总价值。
库存数据不对怎么调整? 可以通过人工「调整」来增加或减少库存数量。
如有其他问题,请联系客服团队。