最短的 ERPNext 工作流并不总是最好的。分销商可能需要独立的订单、交货、发票和付款控制。咨询公司可能只需要订单、发票和收据。零售商可能在柜台合并库存、开票和收款。
选择与您的业务必须批准、履行、审计和报告的里程碑相匹配的工作流。文档在软件中可以是可选的,但在您的流程中仍然是必需的。
选择您所需的里程碑
在选择工作流之前,请回答以下问题:
- 在开票之前,您是否需要记录客户或供应商的承诺?
- 是否有实物库存移动?
- 运营部门是否必须与财务部门分开确认交货或收货?
- 开票是基于数量、时间、里程碑、使用量还是定期计划?
- 付款是即时的、预付款的还是赊账的?
- 货物是经过您的仓库、直接在两方之间流转,还是不以库存形式存在?
以下单据类型代表不同的里程碑:
| 单据 |
里程碑 |
总账影响 |
| 报价单 |
商业报价 |
无 |
| 销售订单或采购订单 |
已确认承诺 |
无 |
| 交货单或采购收货单 |
实物履行 |
使用永续盘存制进行库存分录 |
| 销售发票或采购发票 |
开票和到期金额 |
是 |
| 付款分录 |
资金流动与分配 |
是 |
标准商品销售
flowchart LR
Q["Quotation, optional"] --> SO["Sales Order"]
SO --> DN["Delivery Note"]
DN --> SI["Sales Invoice"]
SI --> PE["Payment Entry"]
最佳适用场景:批发、分销、设备销售,以及销售、仓库、开票和收款发生在不同时间的业务。
优势:每个团队确认自己的里程碑;部分交货和部分开票易于跟踪;销售订单显示已交货和已开票百分比;库存和应收账款在正确阶段记录。
权衡:需要完成和对账更多的单据。用户必须从订单或交货单创建下游单据,以保持履行链条的关联。
配置:维护库存物料和仓库,如果库存移动需要过账到总账,则启用永续盘存制,设置物料的收入和费用默认值,并配置应收账款、税金和销货成本科目。
销售订单是一种承诺,通常不过账到分类账。交货单减少库存并确认成本。销售发票记录收入、税金和应收账款。付款结清未结金额。
使用单独的采购订单、采购收货单、采购发票和付款周期来补充库存。
带库存更新的直接发票
flowchart LR
SI["Sales Invoice with Update Stock"] --> PE["Payment Entry"]
最佳适用场景:小型商店、简单的柜台销售,以及同时交货和开票但不需要完整 POS 工作流的低复杂度业务。
优势:一份单据记录收入、应收账款、库存减少和销货成本。无需单独完成交货单。
权衡:仓库和财务没有独立的确认点。当拣货、发货、交货证明或部分履行需要独立控制时,此方法不太适用。
配置:维护库存物料和仓库,配置永续盘存制和物料科目,然后在销售发票上启用更新库存。如果付款是即时的,通过付款分录或所选开票流程支持的付款字段进行记录。
该发票同时影响总账和库存分类账。单独的销售订单仍然是可选的。如果您直接创建发票,则没有可以跟踪其交货或开票进度的订单。请参阅带更新库存的销售发票以了解组合路径。
零售和销售点销售
flowchart LR
POS["POS Invoice"] --> P["Immediate payment"]
POS --> SL["Stock and accounting ledgers"]
最佳适用场景:客户在同一交互中接收货物并付款的零售店和柜台。
优势:物料选择、定价、税金、库存更新、开票和收款都集成在面向结账的界面中。POS 结算整合并核对班次活动。
权衡:不适用于长履行周期、协商项目开票或复杂的信用控制。退货和班次结算需要一致的收银员流程。
配置:创建 POS 配置文件,选择公司、仓库、价格列表、付款方式、税金和适用用户。确认开闭店流程和现金差异责任。
基于服务或项目的销售
flowchart LR
Q["Quotation, optional"] --> SO["Sales Order, optional"]
SO --> SI["Sales Invoice by milestone, time, or quantity"]
SI --> PE["Payment Entry"]
最佳适用场景:咨询公司、代理机构、实施合作伙伴、维护提供商以及不交付库存商品的项目型企业。
优势: 避免生成不必要的库存单据。销售订单可以承载商业范围并跟踪开票进度。项目、任务和工时表可以收集交付工作量和成本。
权衡: 进度取决于对里程碑、时间或数量的严格更新。销售发票仅证明开票行为,而非工作验收,除非您的流程单独记录了审批环节。
配置: 创建非库存服务项目、收入与费用科目、付款条款,以及需要核算利润的项目。当发票基于已批准的工时生成时,使用基于工时表的开票方式。
对于里程碑开票,使用一个服务项目,其数量设置为 1.000。通过三张发票分别开具 0.250、0.500 和 0.250,代表项目进度的 25%、50% 和 25%。将费率设置为等于合同总价值。ERPNext 使用小数数量来跟踪销售订单中已开票的部分。
对于非库存服务,通常无需生成交货单。直接创建销售发票是有效的,但如果没有关联订单,则不会更新销售订单的开票进度。
周期性服务或订阅
flowchart LR
S["Subscription or recurring source"] --> SI["Recurring Sales Invoices"]
SI --> PE["Payment and reconciliation"]
SI --> DR["Deferred revenue recognition, when configured"]
最佳适用场景: 软件订阅、顾问服务、会员资格、支持计划、租赁及其他周期性服务。
优势: 自动生成定期发票,并能将开票与收入确认分离。付款条款、提醒和应收账款报告支持催款流程。
权衡: 计划日期、取消、升级、按比例分配、付款失败及税率变更需要明确的运营规则。自动创建发票并不能保证款项回收。
配置: 设置订阅、计划、客户默认值、税费、到期日及周期性处理。当收入需在服务期间内确认而非全部在发票日期确认时,配置递延收入。
直运销售
flowchart LR
SO["Sales Order with Supplier delivers to Customer"] --> PO["Purchase Order to Supplier"]
SO --> SI["Sales Invoice to Customer"]
PO --> PI["Purchase Invoice from Supplier"]
最佳适用场景: 供应商直接向客户发货的分销商和在线卖家。
优势: 避免货物经过您的仓库进行收货和发货。销售和采购单据保持关联,便于追踪利润和供应商履约情况。
权衡: 您对库存、包装、交货时间和交货证明的实际控制力较弱。供应商和客户的地址及沟通信息必须准确。由于公司未实际收货,常规的仓库库存台账无法反映这些货物。
配置: 将相关项目标记为供应商供货,在适用时设置默认供应商,在销售订单项目中选择供应商直接交付给客户,并从该销售订单创建采购订单。遵循直运工作流程,确保单据保持关联。
销售发票记录客户收入和应收账款。采购发票记录供应商成本和应付账款。销售订单和采购订单属于承诺,不产生会计分录。
按订单生产
flowchart LR
SO["Sales Order"] --> WO["Work Order"]
WO --> SE["Stock Entries for manufacture"]
SO --> DN["Delivery Note"]
DN --> SI["Sales Invoice"]
SI --> PE["Payment Entry"]
最佳适用场景: 根据确认的需求生产成品的制造商。
优势: 连接需求、物料计划、生产、成品库存、交货、开票和利润核算。生产库存分录将组件价值转入成品项目。
权衡: 必须准确维护物料清单、仓库、工单、估值、废料及在制品流程。回溯的库存分录可能触发估值重算。
配置: 设置库存项目、仓库、物料清单、工作中心、工序及生产默认值。根据需要,从销售订单或生产计划发起原材料需求申请。
销售订单产生需求,但不生成会计分录。生产库存分录影响库存价值。交货记录销售成本,发票记录收入和应收账款。
采购驱动的服务与费用流程
flowchart LR
PO["Purchase Order, optional"] --> PI["Purchase Invoice"]
PI --> PE["Payment Entry"]
最佳适用场景: 专业服务、租金、水电费、软件及其他无需实物入库的采购。
优势: 避免生成无操作价值的采购收货单。采购订单仍可在供应商发票到达前提供预算或审批控制。
权衡: 没有单独的货物接收确认环节。团队需要其他方式来验证服务在发票审批前已被接受。
配置: 使用非库存项目或相应的费用科目、供应商付款条款、税费、成本中心、项目及审批工作流。采购发票记录费用或资产价值以及供应商应付账款。
多公司及内部交易流程
flowchart LR
A["Company A sales document"] B["Company B purchase document"]
A --> LA["Company A ledger"]
B --> LB["Company B ledger"]
最佳适用场景: 拥有独立法人实体且相互交易的集团。
优势: 每个实体保持独立且平衡的审计轨迹,同时关联单据减少重复录入。合并报表可提供集团整体视图。
权衡: 公司、内部客户和供应商、价格、税费、币种以及应收或应付账户必须保持一致。合并不能替代贵公司会计政策要求的任何抵销或法定流程。
配置: 将相关方标记为内部方,将其映射到公司,配置内部往来账户,并使用内部公司发票或内部公司日记账分录。在生产环境中使用自动化之前,请先对双方进行测试。
决定哪些单据是可选的
不要只问 ERPNext 是否允许跳过某张单据。要问如果跳过它,会失去哪些控制。
| 如果跳过 |
你将不再拥有 |
| 报价单 |
客户承诺前的一份带版本记录的报价 |
| 销售订单 |
记录已承诺数量、交货和开票进度的核心记录 |
| 交货单 |
独立的仓库确认和库存交货证明 |
| 采购订单 |
采购前的承诺、授权以及已订与已开票的跟踪 |
| 采购收货单 |
独立的收货确认和已收未开票的应计项目 |
对于简短的工作流,直接创建下游单据可能是正确的。但这不会更新被省略或未关联的上游单据。如果存在订单,请从该订单创建其交货单、收货单或发票,以便 ERPNext 更新相关的百分比和状态。
实施建议
从每个业务线的一个主要工作流开始。记录其必填字段、审批、交接、退货和例外情况。然后测试:
- 完全履行和部分履行;
- 预付款、部分付款和合并付款;
- 退货和贷项通知单;
- 税费和币种差异;
- 取消和修改;
- 月末对账和报告。
只有在用户能够清楚识别何时适用时,才引入较短的备选工作流。在批准会计结果之前,请查看交易如何影响分类账。
- 会计入门
- 交易如何影响分类账
- 销售发票
- 采购发票
- 付款分录
- 直运销售