昨天一个在制造企业做了八年财务经理的学员给我打电话,说他们公司在做半年度外币评估时,审计师提出合同资产应该按非货币性项目处理,但他们公司一直按货币性项目处理,现在审计师要求调整,他很困惑。我问他,你知道合同资产和应收账款最大的区别是什么吗?他想了半天说,不就是账龄不同吗?我叹了口气,这话要是被你们审计师听到,估计又得给你们出个调整分录。我花了大半个小时给他讲清楚了这个事儿,他说感觉之前几年都白干了。今天我就把这个事儿掰开了揉碎了给你们讲讲,尤其是那些跟我一样天天跟外币打交道的财务人,千万别在这个问题上栽跟头。
首先咱们得搞清楚一个基础概念,什么叫外币性项目。很多人一听这个词就头大,觉得是特别高深的理论,其实说白了很简单。外币性项目就是指企业在涉外业务中,用外币计价或结算的那些项目。但是这里面有个最关键的分类,就是货币性项目和非货币性项目。货币性项目是指企业持有的货币资金和将以固定或可确定的金额收取的资产或者偿付的负债,比如现金、银行存款、应收账款、应付账款、长期借款这些。非货币性项目就是货币性项目以外的项目,比如存货、固定资产、无形资产、预付账款、合同资产等等。这个分类直接决定了你在资产负债表日要不要做汇兑损益调整,说白了就是直接影响你的利润数字,马虎不得。
那合同资产为什么属于非货币性项目呢?关键在于它的金额是不是固定或可确定的。合同资产是企业在已向客户转让商品或服务而有权收取对价的权利,但这个权利取决于时间流逝之外的其他因素,比如你还要继续履约、或者要等客户验收、或者要满足某个特定条件。也就是说,你能不能收到这个钱、能收到多少钱,不是光等时间到了就行的,还要看其他条件是否满足。这就决定了合同资产的金额不是固定或可确定的,所以它属于非货币性项目。我经常在课上跟学员打比方说,应收账款就像是已经做好的蛋糕放在柜台上了,顾客随时来拿,你只要等着收钱就行;而合同资产就像是蛋糕还在烤箱里,你得烤好了、晾凉了、裱花完了,顾客满意了才付钱,中间变数多着呢。
那么实务中具体怎么操作呢?合同资产作为非货币性项目,在初始确认时,你应该按照交易发生日的即期汇率折算。之后在资产负债表日,不需要像应收账款那样按当天的即期汇率重新折算,也不会产生汇兑差额。什么意思呢?就是你签合同那天汇率是多少,合同资产就按那个汇率记账,之后不管汇率怎么变,合同资产的账面金额都不动。除非合同资产发生了减值,或者转为应收账款了,才需要重新考虑汇率问题。我给大家一个标准的分录示例,假设你出口货物后确认了合同资产,合同金额是10万美元,签合同当天的汇率是6.9000,那分录就是借合同资产690000元,贷主营业务收入690000元。之后到了资产负债表日,汇率变成7.1000了,但合同资产的账面金额仍然是690000元,不需要调整。这一点跟应收账款的处理完全是两码事。
而应收账款就不一样了。应收账款是货币性项目,在资产负债表日必须按照当天的即期汇率重新折算,产生的汇兑差额要计入当期损益。这也就是为什么很多财务人员在期末做外币评估时,会对应收账款做汇兑损益调整,但对合同资产却不做调整。如果你把合同资产误当成货币性项目去调汇兑损益,那就做错了,而且错得离谱。我见过不少同行在这个问题上翻车,尤其是在年底做审计的时候,审计师一查就查出来了,到时候你不仅要冲回之前的调整分录,还得写一堆说明,那叫一个酸爽。
这里给大家一个避坑指南:合同资产是非货币性项目,在资产负债表日不需要做汇兑损益调整。应收账款是货币性项目,在资产负债表日需要做汇兑损益调整。千万别把这两者搞混了。
说到这个,我想起自己以前踩过的一个坑。那是我刚做会计讲师之前,在一家外贸公司做财务主管的时候。有一年年底做外币评估,我把合同资产和应收账款加在一起算了汇兑损益,心里还挺美,觉得做得又快又完整。结果我们财务总监复核的时候问我,你合同资产调什么汇兑损益?我当时还理直气壮地说,这不都是应收款吗?他当场给我翻出了会计准则,一条一条给我讲,还让我看了准则指南里的示例。我才知道合同资产是非货币性项目,不需要调汇兑损益。那天晚上我加班到十一点,把已经入账的汇兑损益全部冲回,重新调整了财务报表。从那以后,我每次讲到外币业务,都会特别提醒学员注意合同资产和应收账款的区别,因为我吃过这个亏,知道疼。
当然,实务中还有更复杂的情况,比如说合同资产发生了减值,怎么处理?如果合同资产发生减值,减值损失的金额是按照资产负债表日的即期汇率折算,还是按照历史汇率折算?根据会计准则的规定,资产减值损失应当按照资产负债表日的即期汇率折算。因为减值测试是在资产负债表日进行的,所以减值金额应该用当天的汇率。这一点很多财务人员也容易搞错,他们觉得合同资产本身不调汇兑损益,减值也不调,那就错了。举个例子,假设你的合同资产原值10万美元,历史汇率6.9000,账面金额690000元。资产负债表日汇率是7.1000,你经过测试发现发生了10%的减值,那减值损失就是10000美元乘以7.1000等于71000元。分录是借资产减值损失71000元,贷合同资产减值准备71000元。这里的汇率用的是资产负债表日的即期汇率,而不是交易发生日的汇率。
再比如,合同资产转为应收账款的时候怎么处理?当合同资产不再取决于时间流逝之外的因素,成为无条件收款权时,合同资产就转为应收账款了。比如说,你之前给客户做的项目,客户已经验收通过了,这时候合同资产就变成了应收账款。在转换时,应该按照转换日的即期汇率将合同资产的账面价值折算为应收账款,之后按照应收账款作为货币性项目进行后续处理。转换时产生的汇兑差额,计入当期损益。这个操作在实务中特别容易出错,因为很多财务人员觉得就是科目调整一下,不考虑汇率变化的影响。我给你们一个标准的分录示例:假设合同资产原值10万美元,历史汇率6.9000,账面金额690000元。转换日汇率是7.0500,那应收账款要按7.0500折算为705000元,差额15000元计入汇兑损益。分录是借应收账款705000元,贷合同资产690000元,贷汇兑损益15000元。如果你忽略了汇率差异,就直接按690000元转,那应收账款就少记了,后面再做汇兑损益调整的时候,数字对不上,审计师一眼就能看出来。
还有一个实务中经常遇到的情况,就是在用财务软件操作时,怎么设置合同资产的外币核算属性。如果你用的是目前主流的版本,比如用友U8+ V16.0或者金蝶云星空 V8.0,在科目设置里要把合同资产科目的外币核算属性设为期末不调汇,或者直接设为非货币性项目。具体操作路径我给你们说一下,在用友U8+里面,你进基础设置,点开会计科目,找到合同资产科目,双击打开,在核算页签的外币核算标签下,把期末调汇的勾选去掉。在金蝶云星空里面,你进财务会计,点开科目,找到合同资产科目,在科目属性里面把期末调汇设为否。如果你用的是其他软件,比如SAP或者Oracle,原理是一样的,就是在科目主数据里把汇兑损益相关的标识关掉。千万别设错了,设错了系统自动给你出错的汇兑损益,到时候你复核的时候没发现,审计师发现了又得调整,来回折腾的都是你自己。
我在培训中经常遇到学员问一个问题:老师,合同资产和应收账款在账面上看着差不多,为什么一个要调汇兑损益一个不调?这合理吗?其实这非常合理。因为应收账款的权利是确定的,只是时间问题,所以汇率的变动会影响实际收到的人民币金额。但合同资产的权利是不确定的,你还得做点什么才能拿到这个钱,所以汇率的变动对它来说不是最核心的风险,最核心的风险是你能不能满足合同条件、能不能顺利收款。所以会计准则对这两者做了不同的处理,体现的是实质重于形式的原则。你想想,如果你合同资产还没收回来,汇率变动了,但你能不能收到钱还不一定呢,这时候你调汇兑损益有什么意义呢?反而是把利润表搞得不三不四的。
那在实际工作中,怎么快速判断一个项目是货币性还是非货币性呢?我教你们一个简单的方法:你就问自己一个问题,这个项目的金额是不是固定或可确定的,而且收款或付款只取决于时间流逝?如果答案是肯定的,那就是货币性项目。如果答案是否定的,那就是非货币性项目。比如应收账款,金额是合同约定的,你只要等账期到了就能收钱,所以是货币性项目。合同资产,金额可能因为履约情况、变更、索赔等因素变动,而且你还要继续干活才能收钱,所以是非货币性项目。这个方法虽然简单,但真的管用,我在课上教了几千个学员,他们都说用这个方法判断从来没出过错。
判断口诀:金额固定且只等时间的就是货币性项目,否则就是非货币性项目。对合同资产来说,它既不是固定金额,也不能光等时间,所以铁定是非货币性项目。
当然,这个事儿各地税务局和审计机构的执行口径可能不太一样。我说的是基于会计准则的一般处理原则,但具体到你所在的企业,或者你面对的审计师,可能会有不同的看法。尤其是涉及到涉外业务比较多的企业,或者是在某些特定行业,比如工程承包、大型设备制造、船舶制造这些,合同资产的金额往往很大,外币折算的处理对财务报表的影响也很显著。有些审计师可能对合同资产的外币处理有不同的理解,或者在某些特定情况下倾向于更保守的处理方式。所以我建议你在做这类处理时,最好跟你的审计师提前沟通确认,或者打12366咨询一下当地的执行口径,做到心中有数。我说的是一般情况,但你面对的可能是特殊情况,所以确认一下总没错。
可能有人会说,这个问题听起来很理论,实际工作中影响大吗?我告诉你,影响非常大。尤其是对于那些有大量涉外业务的企业,合同资产的金额动辄几千万元,汇率稍微波动一点,汇兑损益就是几十万甚至上百万的差异。如果你把合同资产错误地按货币性项目处理,会导致当期利润虚增或虚减,甚至可能影响到企业的税务申报和汇算清缴。我给你们讲一个真实的案例,我有一个学员在一家做海外工程承包的企业做财务经理,他们公司有大量的合同资产,都是用外币计价的。之前他们一直把合同资产当货币性项目处理,每年做汇兑损益调整。后来换了新的审计师,发现这个问题,要求他们调整。结果一调整,之前几年的汇兑损益都要冲回,累计影响金额好几百万元。他们公司财务总监被董事长叫去问话,说你怎么搞的,以前不是都这么做的吗?场面非常尴尬。所以我说,这个问题的实际影响,比你想象的要大得多,绝不是纸上谈兵。
所以正确的做法是什么呢?我给你们梳理一下,方便你们记。第一,初始确认时,合同资产按交易发生日的即期汇率折算。第二,资产负债表日,合同资产不需要按即期汇率调整,不产生汇兑损益。第三,如果合同资产发生减值,减值损失按资产负债表日的即期汇率折算。第四,合同资产转为应收账款时,按转换日的即期汇率折算,差额计入当期损益。这四点记住了,合同资产的外币处理就不会出大错。我建议你们把这四点贴在工位旁边,每个月做账的时候看一眼,避免手滑做错。
还有一个细节,就是合同资产在资产负债表上的列示。合同资产在资产负债表中是单独列示的,或者根据金额大小和性质,有些企业把它放在应收票据及应收账款中列示。但不管怎么列示,它的外币处理原则都是一样的,就是按非货币性项目处理。有些财务人员在做报表合并时,会把合同资产和应收账款加在一起做外币评估,这也是不对的,要分开处理。我见过一些合并报表的底稿,里面把合同资产和应收账款混在一起调汇兑损益,结果合并层面的汇兑损益数字就是错的,审计算出来差异,又要花时间找原因,纯属给自己挖坑。
其实,这个问题的本质是会计准则对货币性项目和非货币性项目的区分,以及这种区分在实际业务中的应用。理解了这一点,你不仅能搞懂合同资产,还能搞懂其他类似项目,比如合同负债。合同负债也是非货币性项目,因为它也取决于时间流逝之外的因素,你收了这个钱还得干活才能算收入。很多学员把合同负债和应付账款搞混,其实它们的区别跟
