收入确认
2.2 收入确认(Revenue Recognition, IFRS 15/ASC 606)
本章回答什么
- 企业在什么时点才算真正赚到了收入?
- 履约义务和时间点判断会怎样影响收入确认?
- 为什么提前确认收入是最常见的报表失真来源之一?
学习目标
读完这一页后,你应该能够:
- 按 IFRS 15/ASC 606 的五步法拆解客户合同。
- 区分单项履约义务、交易价格、可变对价和收入确认时点。
- 为常见销售合同写出收入确认分录,并解释提前确认收入的风险。
业务场景
一家软件公司一次性收取客户 120,000 元,合同包含软件许可、安装服务和 12 个月维护。销售团队希望签约当月全部确认为收入,但会计必须判断每项承诺是否已履行。收入确认不是“收到钱就入收入”,而是把合同对价分配给已经转移给客户的商品或服务。
在主线中的位置
收入确认是会计核算中的一个核心环节,它决定了企业何时以及如何将经济利益流入确认为收入。国际财务报告准则(IFRS)中的IFRS 15《客户合同收入》和美国公认会计原则(US GAAP)中的ASC 606《客户合同收入》提供了统一的五步法模型。
2.2.1 收入确认五步法
该模型旨在确保企业在向客户转让承诺的商品或服务以换取企业预期有权获得的对价时确认收入。
- 识别与客户订立的合同(Identify the contract(s) with a customer)
- 解释:合同是企业与客户之间具有法律约束力的协议。识别合同是收入确认的第一步,需要满足特定条件,如合同各方已批准、各方权利可识别、付款条款可识别、合同具有商业实质、企业很可能收回因转让商品或服务而有权获得的对价。
- 例子:一家软件公司与客户签订了一份为期三年的软件许可和维护服务协议。这份协议就是一份合同。
- 识别合同中的单项履约义务(Identify the separate performance obligations in the contract)
- 解释:履约义务是企业向客户转让可明确区分的商品或服务的承诺。如果商品或服务是可明确区分的(即客户可以单独受益,且商品或服务在合同背景下可与合同中的其他承诺区分开),则应作为单项履约义务。
- 例子:上述软件协议中,软件许可和维护服务是两个可明确区分的履约义务,因为客户可以单独使用软件,也可以单独购买维护服务。
- 确定交易价格(Determine the transaction price)
- 解释:交易价格是企业预期因向客户转让承诺的商品或服务而有权获得的对价金额。交易价格可能包括固定金额、可变对价(如折扣、回扣、绩效奖金、退货权等)以及非现金对价。
- 例子:软件许可费是固定的10,000元,但如果客户在一年内续约,可获得500元的折扣。这500元折扣就是可变对价。
- 将交易价格分摊至各单项履约义务(Allocate the transaction price to the separate performance obligations)
- 解释:如果合同包含多项履约义务,企业需要根据各项履约义务的单独售价(Stand-alone Selling Price)比例,将交易价格分摊到每一项履约义务。如果无法直接观察到单独售价,则需要进行估计。
- 例子:软件许可的单独售价是8,000元,维护服务的单独售价是3,000元。总交易价格10,000元(假设无折扣)。则按比例分摊:软件许可分摊 (8000/(8000+3000)) * 10000 = 7272.73元;维护服务分摊 (3000/(8000+3000)) * 10000 = 2727.27元。
- 在企业履行履约义务时确认收入(Recognize revenue when (or as) the entity satisfies a performance obligation)
- 解释:企业在履行履约义务时(或随着履约义务的履行)确认收入。这可能是在某一时点(At a point in time)完成,例如商品销售;也可能是在一段时间内(Over time)完成,例如提供服务。
- 例子:软件许可通常在交付时(某一时点)确认收入;维护服务则在服务期内(一段时间内)按直线法或其他合理方法确认收入。
2.2.2 示例(带可变对价)
情境:一家公司与客户签订了一份合同,销售一套设备,合同价为10,000元。合同中包含一项条款:如果客户在未来六个月内购买了公司的其他产品,将获得500元的销量折扣。公司根据历史经验和市场情况,预计客户有80%的可能性会满足折扣条件。
分析:
- 识别合同:存在一份有效的销售合同。
- 识别履约义务:销售设备是唯一的履约义务。
- 确定交易价格:
- 合同价是10,000元。
- 存在可变对价:500元的销量折扣。
- 公司需要估计可变对价。根据80%的可能性获得折扣,公司预计将提供500元的折扣。
- 按概率加权法:预计交易价格 = (10,000 - 500) * 80% + 10,000 * 20% = 9,500 * 0.8 + 10,000 * 0.2 = 7,600 + 2,000 = 9,600元。
- 约束可变对价(Constraint):在确认可变对价时,企业需要评估是否存在重大逆转的可能性。如果未来折扣条件不满足,导致已确认收入被冲回的可能性很高,则应限制确认收入。在本例中,如果公司对80%的估计非常有信心,且认为未来不会发生重大逆转,则可以按9,600元确认收入。
- 分摊交易价格:由于只有一个履约义务(销售设备),交易价格9,600元全部归属于销售设备。
- 确认收入:设备交付给客户时(某一时点),确认9,600元的收入。
分录示例:
假设设备已交付,公司预计客户将获得折扣:
| 借方 | 金额 | 贷方 | 金额 |
|---|---|---|---|
| 应收账款 | 9,600 | 主营业务收入 | 9,600 |
如果期末重新评估,客户最终没有满足折扣条件,公司将调整收入:
| 借方 | 金额 | 贷方 | 金额 |
|---|---|---|---|
| 应收账款 | 400 | 主营业务收入 | 400 |
这个例子说明了在存在可变对价时,企业需要进行估计和判断,并持续更新这些估计,以确保收入的准确确认。
可运行例题:把捆绑合同分到三个履约义务
回到开头的软件合同。假设许可、安装和维护在本案例中都可明确区分,独立售价分别为 80,000、20,000 和 40,000 元,合同总价为 120,000 元。到第一个月末,许可已交付、安装已完成,维护完成了 1/12。
Python:IFRS 15 / ASC 606 相对独立售价分摊
这里的比例分摊是机械步骤;“承诺是否可明确区分”和“进度怎样衡量”仍是合同判断。若安装服务会重大修改软件,履约义务划分可能不同,不能直接照搬这组数字。
本节学习与应用(四个问题)
- 为什么要学/用这一节?
- 收入是利润表中最关键、最敏感的项目之一,也是舞弊和监管关注的高发领域。理解收入确认五步法,是现代会计准则的核心要求。
- 这一节的知识有什么用?
- 能够分析复杂合同(多元素捆绑销售、可变对价、退货权、主要-代理等),判断何时、按什么金额确认收入。
- 在考试中,经常会考案例题:给出合同条款,让你识别履约义务、分摊交易价格,并计算各期确认的收入。
- 在题目或工作中怎么用?
- 解题/实务的标准流程:
- 识别合同和履约义务(一步步对应IFRS 15五步法);
- 判断企业是主要责任人还是代理人;
- 识别固定对价与可变对价,估计并约束可变部分;
- 按独立售价分摊交易价格,确定每个履约义务的收入;
- 根据“在某一时点”还是“在一段时间内”确认收入。
- 解题/实务的标准流程:
- 用好了会得到什么结果?
- 面对长篇合同题能有条不紊地拆解,不会被细节吓倒。
- 阅读公司年报时,能看懂其收入确认政策,判断收入质量和潜在盈余管理空间。
常见错误
- 把收款日当作收入确认日,忽略企业是否已经履约。
- 把捆绑销售当作单一收入项目,漏分摊软件、服务、维护等履约义务。
- 对可变对价只算“期望值”,不考虑重大转回风险的约束。
- 忽略主要责任人/代理人判断,导致收入按总额或净额列报错误。
快速检查
- 五步法中,为什么要先识别单项履约义务?
- 客户预付现金但企业尚未提供服务时,应确认收入还是负债?
- 可变对价为什么需要“约束”?
参考答案
- 因为交易价格要分摊到不同履约义务,收入也要按各义务履行进度确认。
- 通常先确认合同负债/预收收入,等履约后再转为收入。
- 为避免后续不确定事项导致已确认收入发生重大冲回。
下一章
本章解决“何时确认收入”;下一章处理收入确认后与毛利直接相关的存货和销售成本。继续读存货。