Appearance
费用模块的使用
在企业日常运营中,“费用报销”通常会遇到这些问题:
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)👉 生命周期关系
- 员工创建 hr.expense(费用明细)
- 多条 expense 组合成 sheet
- 提交 sheet 审批
- 财务确认
- 自动生成会计凭证
三、实际操作流程
下面按真实业务步骤讲一遍。
🧾 场景:销售出差报销
员工小王出差产生:
| 项目 | 金额 |
|---|---|
| 机票 | 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)
| 项目 | 金额 |
|---|---|
| 项目A | 1000 |
五、最终你会得到两套报表
1. 财务报表(会计维度)
- 利润表
- 总账
- 费用科目汇总
👉 回答:花了多少钱
2. 项目成本报表(管理会计)
路径:
Accounting → Reporting → Analytic Report
你会看到:
| 项目 | 差旅费 | 招待费 | 总成本 |
|---|---|---|---|
| 项目A | 1000 | 500 | 1500 |
| 项目B | 2000 | 800 | 2800 |
👉 回答:钱花在哪个项目
六、进阶:费用分摊(非常重要)
场景:
一笔费用属于多个项目:
- 项目A:60%
- 项目B:40%
方法1:单费用多分析账户(推荐)
使用:
Analytic Distribution
设置:
| 项目 | 比例 |
|---|---|
| A | 60% |
| B | 40% |
系统自动拆分:
| 项目 | 金额 |
|---|---|
| A | 600 |
| B | 400 |
方法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
你会看到:
| 项目 | 收入 | 成本 | 利润 |
|---|---|---|---|
| 项目A | 100,000 | 70,000 | 30,000 |
| 项目B | 80,000 | 90,000 | -10,000 |
5. 本质理解
RaySuz 项目利润 = “会计系统 + 项目系统”融合结果
二、自动费用分摊规则(按比例 / 按工时)
这是企业用 RaySuz 的高级能力:自动成本分摊
2.1 按比例分摊(Analytic Distribution)
场景
一笔费用属于多个项目:
- 项目A 70%
- 项目B 30%
配置方式
在费用或发票行中设置:
text
Analytic Distribution例如:
| 项目 | 比例 |
|---|---|
| 项目A | 70% |
| 项目B | 30% |
自动结果
一笔 1000 元费用:
| 项目 | 金额 |
|---|---|
| A | 700 |
| B | 300 |
适用场景
- 公共费用
- 市场费用
- 管理费用分摊
2.2 按工时分摊(Timesheet)
这是 RaySuz 非常强的一点。
场景
员工同时做两个项目:
- 项目A:10小时
- 项目B:5小时
成本分摊逻辑
text
成本 = 工时 × 成本单价结果
| 项目 | 工时 | 成本 |
|---|---|---|
| A | 10h | 1000 |
| B | 5h | 500 |
配置点
在员工/岗位中设置:
- Cost per hour(人力成本)
适用场景
- 软件开发
- 咨询项目
- 设计公司
三、项目预算 vs 实际成本控制(超支预警)
这是 RaySuz 项目管理的“管理层最爱功能”。
3.1 什么是项目预算?
就是:
在项目开始前设定“成本上限”
例如:
| 项目 | 预算 |
|---|---|
| 项目A | 100,000 |
3.2 RaySuz 预算结构
RaySuz 使用:
Analytic Budget / Budget Lines
路径:
Accounting → Budget → Analytic Budget
预算可以按维度拆:
- 按项目
- 按费用类别
- 按时间(月份/季度)
3.3 预算 vs 实际对比逻辑
系统实时计算:
text
Budget Variance = Actual - Budget示例
| 项目 | 预算 | 实际 | 差异 |
|---|---|---|---|
| A | 100,000 | 120,000 | +20,000 ❌ |
| B | 80,000 | 60,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
制造/工程
- 项目 = 工程单
- 成本 = 材料 + 人工 + 外协
