Skip to content

费用模块的使用 ​

在企业日常运营中,“费用报销”通常会遇到这些问题:

1. 费用数据分散、不透明 ​

员工通过纸质单据或Excel报销:

  • 数据分散在各部门
  • 财务无法实时看到费用发生情况

2. 审批流程不规范 ​

  • 谁该审批不清晰
  • 审批记录不可追溯
  • 容易出现重复报销或超标准报销

3. 会计处理滞后 ​

  • 费用发生与入账不同步
  • 月末集中做账,工作量大
  • 费用归属不清(项目/部门/成本中心)

4. 无法与财务系统联动 ​

  • 报销 ≠ 会计凭证
  • 需要手工再录一遍会计分录

👉 费用模块主要解决 ​

  • 费用在线提交与审批
  • 自动流转审批流程(可配置)
  • 费用与会计自动集成
  • 实现“业务发生 → 会计入账”一体化

二、 两个核心模型的关系 ​

1. hr.expense(费用明细) ​

👉 表示“一条具体费用”

例如:

  • 打车 50元
  • 住宿 300元
  • 餐费 120元

它的特点:

  • 粒度最细

  • 每一条费用记录一项支出

  • 包含:

    • 金额
    • 费用类别
    • 日期
    • 付款方式(员工垫付 / 公司卡)

2. hr.expense.sheet(费用报销单) ​

👉 表示“费用的集合单据(报销单)”

它是:

  • 多个 hr.expense 的“打包单”
  • 审批和入账的主单据

🔗 二者关系(非常重要) ​

可以理解为:

hr.expense = 一条费用 hr.expense.sheet = 一张报销单(包含多条费用)

结构如下:

费用报销单(hr.expense.sheet)
│
├── 费用1(hr.expense)
├── 费用2(hr.expense)
├── 费用3(hr.expense)

👉 生命周期关系 ​

  1. 员工创建 hr.expense(费用明细)
  2. 多条 expense 组合成 sheet
  3. 提交 sheet 审批
  4. 财务确认
  5. 自动生成会计凭证

三、实际操作流程 ​

下面按真实业务步骤讲一遍。


🧾 场景:销售出差报销 ​

员工小王出差产生:

项目金额
机票1200
酒店800
打车150

Step 1:录入费用明细(hr.expense) ​

路径:

费用(Expenses) → 我的费用 → 新建

分别创建三条:

费用1 ​

  • 类别:机票
  • 金额:1200
  • 付款方式:员工垫付

费用2 ​

  • 类别:酒店
  • 金额:800
  • 付款方式:员工垫付

费用3 ​

  • 类别:交通
  • 金额:150
  • 付款方式:员工垫付

Step 2:生成费用报销单(hr.expense.sheet) ​

点击:

“创建报销单 / Create Report”

系统会自动:

  • 把3条 hr.expense 合并
  • 生成 1 张 hr.expense.sheet

Step 3:提交审批 ​

报销单状态流转:

草稿 → 提交 → 审批中 → 已批准

审批人通常是:

  • 主管
  • 财务

Step 4:财务确认(Post) ​

财务点击:

“Post Journal Entries(生成会计分录)”


四、在财务会计端会发生什么 ​

当 hr.expense.sheet 被确认后,系统会自动生成会计凭证。


📊 会计分录逻辑 ​

假设费用全部是员工垫付:

👉 会计分录如下: ​

科目借方贷方
管理费用 / 差旅费2150
应付职工薪酬-报销2150

👉 如果是公司预付现金/公司卡 ​

则可能变为:

科目借方贷方
管理费用2150
银行存款 / 信用卡2150

📌 核心逻辑总结 ​

RaySuz 自动完成三件事:

1. 费用归类 ​

  • hr.expense.category → 对应费用科目(如差旅费)

2. 成本归集 ​

  • 自动汇总所有 expense

3. 自动记账 ​

  • hr.expense.sheet → 会计凭证

五、整体流程总结 ​

可以这样理解整个链路:

员工消费
   ↓
hr.expense(费用明细)
   ↓
hr.expense.sheet(报销单)
   ↓ 审批
财务确认
   ↓
account.move(会计凭证)
   ↓
总账 / 费用科目

配置 ​


一、费用模块的核心配置逻辑 ​

在 RaySuz 里,费用入账不是随便写分录,而是靠这一条链:

hr.expense.category(费用类别)
        ↓ 决定
account.account(费用科目)
        ↓ 生成
account.move(会计凭证)

👉 所以核心配置其实只有一句话:

费用类别 = 费用科目映射规则


二、费用类别(Expense Category)在哪里配置? ​

路径:

费用(Expenses) → 配置(Configuration) → 费用类别(Expense Categories)

在 RaySuz 底层模型叫:hr.expense.category


三、费用类别的关键字段(必须掌握) ​

打开一个费用类别,你会看到这些核心配置:

1. 费用名称(Name) ​

例如:

  • 差旅费
  • 交通费
  • 招待费
  • 办公用品

2. 费用科目(Expense Account)⭐最重要 ​

👉 这就是“科目映射核心”

例如:

费用类别对应科目
差旅费660201 差旅费
交通费660202 交通费
招待费660203 招待费

📌 本质:

这一步决定“借方进哪个费用科目”


3. 默认税(Optional) ​

用于:

  • 费用是否含税
  • 是否自动带增值税

例如:

  • 6%进项税
  • 或不可抵扣费用

4. 公司(Company) ​

多公司环境下:

  • 每个公司可以有不同费用类别
  • 科目独立

5. 产品(Product)(可选) ​

有些企业会让费用类别关联产品:

例如:

  • 打车 = 产品:Taxi Expense
  • 酒店 = 产品:Hotel Expense

👉 用于自动化输入费用明细


四、科目映射(Account Mapping)本质逻辑 ​

RaySuz 的费用记账规则是:

👉 费用发生时自动生成: ​

方向科目
借方费用科目(由费用类别决定)
贷方员工 / 银行 / 信用卡

示例逻辑: ​

场景:交通费 100元 ​

费用类别配置:

交通费 → 660202 交通费

系统生成:

科目借贷
交通费(660202)借 100
应付职工薪酬 / 员工报销贷 100

五、标准企业费用类别配置示例(推荐) ​

下面是一套最常用配置模板:


1. 差旅费 ​

项目配置
类别差旅费
科目660201 差旅费
税视情况(通常不可抵扣)

2. 交通费 ​

项目配置
类别交通费
科目660202 交通费
税可选进项税

3. 招待费 ​

项目配置
类别招待费
科目660203 招待费
税通常不可抵扣或限额抵扣

4. 办公用品 ​

项目配置
类别办公用品
科目660101 办公费

5. 住宿费 ​

项目配置
类别住宿费
科目660201-01 差旅住宿

六、员工垫付 vs 公司付款(影响科目) ​

这是很多人容易忽略的点:


1. 员工垫付(最常见) ​

会计分录:

科目借贷
费用科目✔
应付职工薪酬-报销✔

2. 公司信用卡 / 银行支付 ​

科目借贷
费用科目✔
银行存款/信用卡✔

3. 现金支付 ​

科目借贷
费用科目✔
库存现金✔

七、费用类别 + 科目映射配置步骤(实操) ​

Step 1:打开费用类别 ​

路径:

Expenses → Configuration → Expense Categories


Step 2:设置费用科目 ​

选择:

Expense Account(费用科目)

例如:

  • 660201 差旅费

Step 3:设置默认税(可选) ​

例如:

  • 供应商税/进项税 6%

Step 4:保存 ​

完成映射


八、常见配置错误(重点避坑) ​

❌ 错误1:所有费用用一个科目 ​

后果:

  • 无法分析费用结构
  • 管理层看不到成本分布

❌ 错误2:费用类别 ≠ 会计科目 ​

必须一一映射,否则:

  • 自动凭证会错
  • 报表无法分类

❌ 错误3:忽略税配置 ​

会导致:

  • 进项税无法抵扣
  • VAT报表错误

❌ 错误4:多公司混用科目 ​

会导致:

  • 合并报表错误
  • 账套污染

费用 + 项目成本归集(Analytic Accounting)」完整实战说明,这是很多企业用 RaySuz 做项目核算的核心能力。 ​


一、这个功能到底解决什么问题? ​

传统费用管理只有“费用科目”,但有一个关键缺口:

❌ 知道花了多少钱 ❌ 不知道“为哪个项目花的”

例如:

  • 差旅费 5000 元
  • 招待费 3000 元

但问题是:

这些钱到底是 A 项目、B 项目,还是市场部?


👉 RaySuz 的解决方案:Analytic Account(分析会计 / 项目成本中心) ​

它实现:

费用 = 会计科目(财务维度) + 项目(管理维度)


二、核心结构(一定要理解) ​

RaySuz 成本归集本质是“双轨制”:

text
            会计维度(GL)
费用 ─────→ account.move(总账)
            ↓
        Analytic Account(项目维度)
            ↓
        项目成本报表

三、关键对象说明 ​

1. Analytic Account(分析账户 / 成本中心) ​

路径:

Accounting → Configuration → Analytic Accounts

作用:

  • 表示一个“项目 / 部门 / 客户成本中心”
  • 用来统计成本

例如:

名称类型
项目A项目
项目B项目
市场部部门

2. Analytic Distribution(分析分配) ​

用于:

一笔费用可以分摊到多个项目

例如:

  • 项目A 70%
  • 项目B 30%

3. hr.expense → analytic_account_id ​

费用单上会有字段:

  • Analytic Account(分析账户)

👉 这就是成本归集关键入口


四、费用 + 项目归集完整流程 ​


Step 1:创建项目(Analytic Account) ​

路径:

Accounting → Configuration → Analytic Accounts

创建:

  • 项目A(新产品开发)
  • 项目B(市场推广)

Step 2:配置费用类别(可选但推荐) ​

例如:

费用类别科目
差旅费660201
招待费660203

Step 3:员工录入费用时绑定项目 ​

路径:

Expenses → My Expenses → Create

填写:

  • 类别:差旅费
  • 金额:1000
  • Analytic Account:项目A ⭐

Step 4:提交报销单 ​

hr.expense.sheet 提交审批


Step 5:财务确认入账 ​

生成会计分录:

科目借贷
差旅费1000
应付职工薪酬1000

Step 6:同时生成 Analytic Entry(关键) ​

系统还会生成:

👉 成本分录(analytic lines)

项目金额
项目A1000

五、最终你会得到两套报表 ​


1. 财务报表(会计维度) ​

  • 利润表
  • 总账
  • 费用科目汇总

👉 回答:花了多少钱


2. 项目成本报表(管理会计) ​

路径:

Accounting → Reporting → Analytic Report

你会看到:

项目差旅费招待费总成本
项目A10005001500
项目B20008002800

👉 回答:钱花在哪个项目


六、进阶:费用分摊(非常重要) ​

场景: ​

一笔费用属于多个项目:

  • 项目A:60%
  • 项目B:40%

方法1:单费用多分析账户(推荐) ​

使用:

Analytic Distribution

设置:

项目比例
A60%
B40%

系统自动拆分:

项目金额
A600
B400

方法2:手动拆费用(不推荐) ​

创建多条 hr.expense


七、费用 + 项目成本的完整数据流 ​

text
员工消费
   ↓
hr.expense(费用明细)
   ↓ + 绑定 Analytic Account
hr.expense.sheet(报销单)
   ↓ 审批
account.move(会计凭证)
   ↓
analytic.line(项目成本记录)
   ↓
项目成本报表 / 盈亏分析

八、实际业务例子(完整闭环) ​

场景:项目A开发费用 ​

项目金额
差旅3000
招待2000

系统处理结果: ​

1️⃣ 会计分录 ​

科目借贷
差旅费3000
招待费2000
应付职工薪酬5000

2️⃣ 项目成本 ​

项目A
5000

九、常见错误(很重要) ​

❌ 1. 没填 Analytic Account ​

结果:

  • 成本无法归集
  • 项目报表为空

❌ 2. 一个费用多个项目没用分摊 ​

导致:

  • 成本不准确

❌ 3. Analytic 和部门混用 ​

👉 部门 ≠ 项目

  • 部门:组织结构
  • 项目:成本归集

项目成本管理完整进阶体系(费用 + 收入 + 预算控制),这基本就是企业做“项目核算/项目盈利分析”的核心能力。 ​

我按你要的三部分来讲,并且最后帮你拼成一条完整闭环。


一、项目利润分析(收入 + 成本 = 项目是否赚钱) ​

1. 核心目标 ​

RaySuz 的项目利润分析解决一个关键问题:

❓ 一个项目到底赚了还是亏了?

不是只看费用,而是:

text
项目利润 = 项目收入 - 项目成本

2. 数据来源拆分 ​

✔ 成本来源(你前面学的) ​

来自:

  • hr.expense(费用)
  • 工时(timesheet)
  • 材料成本(库存/采购)

全部进入:

Analytic Account(项目)


✔ 收入来源(关键新增) ​

收入通常来自:

  • 销售订单(sale.order)
  • 发票(account.move)

只要设置:

Revenue → Analytic Account


3. 收入如何进入项目? ​

方法1:销售订单绑定项目(最常见) ​

在 SO 行里:

  • Analytic Account = 项目A

👉 发票确认后自动进入项目收入


方法2:手工发票绑定 ​

发票行:

  • Analytic Distribution / Analytic Account

4. 最终项目利润报表 ​

路径:

Accounting → Reporting → Analytic Report

你会看到:

项目收入成本利润
项目A100,00070,00030,000
项目B80,00090,000-10,000

5. 本质理解 ​

RaySuz 项目利润 = “会计系统 + 项目系统”融合结果


二、自动费用分摊规则(按比例 / 按工时) ​

这是企业用 RaySuz 的高级能力:自动成本分摊


2.1 按比例分摊(Analytic Distribution) ​

场景 ​

一笔费用属于多个项目:

  • 项目A 70%
  • 项目B 30%

配置方式 ​

在费用或发票行中设置:

text
Analytic Distribution

例如:

项目比例
项目A70%
项目B30%

自动结果 ​

一笔 1000 元费用:

项目金额
A700
B300

适用场景 ​

  • 公共费用
  • 市场费用
  • 管理费用分摊

2.2 按工时分摊(Timesheet) ​

这是 RaySuz 非常强的一点。


场景 ​

员工同时做两个项目:

  • 项目A:10小时
  • 项目B:5小时

成本分摊逻辑 ​

text
成本 = 工时 × 成本单价

结果 ​

项目工时成本
A10h1000
B5h500

配置点 ​

在员工/岗位中设置:

  • Cost per hour(人力成本)

适用场景 ​

  • 软件开发
  • 咨询项目
  • 设计公司

三、项目预算 vs 实际成本控制(超支预警) ​

这是 RaySuz 项目管理的“管理层最爱功能”。


3.1 什么是项目预算? ​

就是:

在项目开始前设定“成本上限”

例如:

项目预算
项目A100,000

3.2 RaySuz 预算结构 ​

RaySuz 使用:

Analytic Budget / Budget Lines

路径:

Accounting → Budget → Analytic Budget


预算可以按维度拆: ​

  • 按项目
  • 按费用类别
  • 按时间(月份/季度)

3.3 预算 vs 实际对比逻辑 ​

系统实时计算:

text
Budget Variance = Actual - Budget

示例 ​

项目预算实际差异
A100,000120,000+20,000 ❌
B80,00060,000-20,000 ✅

3.4 超支控制机制(关键) ​

RaySuz 可以配置:

✔ 1. 警告 ​

超预算提醒


✔ 2. 阻止 ​

禁止继续录入费用 / PO


✔ 3. 审批升级 ​

超预算 → 额外审批人


四、三者如何组合成企业级项目控制系统 ​

这三块其实不是独立的,是一条完整链路:


🔥 企业项目控制闭环 ​

text
         收入
           ↓
销售订单 / 发票(带项目)
           ↓
────────────────────
           ↓
        项目(Analytic Account)
           ↓
────────────────────
成本来源:
   - 费用 hr.expense
   - 工时 timesheet
   - 采购/库存
           ↓
────────────────────
           ↓
     项目成本分析
           ↓
利润 = 收入 - 成本
           ↓
预算控制(Budget)
   ↑            ↓
预警 / 控制 / 审批

五、一句话理解整套体系 ​

RaySuz 项目系统本质是:

用 Analytic Account 把“收入 + 成本 + 预算”全部绑在一个项目维度上


六、企业最佳实践(非常重要) ​

✔ 建议结构 ​

维度用法
Analytic Account项目
Analytic Tag子模块 / 功能模块
Budget控成本
Timesheet人力成本

✔ 推荐模型 ​

软件公司 ​

  • 项目 = 客户项目
  • 成本 = 人工 + 外包 + 费用
  • 收入 = milestone billing

咨询公司 ​

  • 项目 = 合同
  • 成本 = 工时为主
  • 利润 = 核心KPI

制造/工程 ​

  • 项目 = 工程单
  • 成本 = 材料 + 人工 + 外协