核销流水跑出一个数,财务月底确认出另一个数,两边各自都能对回原始记录,就是互相不通。这个差额多数时候不是错,是两套时点在各自说话:核销记的是履约动作发生的那一刻,收入确认要看履约完成没有、金额归属哪一期。中间隔着四类东西,把这四类找出来,当天的差当天就能解释。
第一类是已售未核销。预售、指定日票、区间票都会留下一批钱收了但履约没发生的订单,它们在已售里是满的,在核销里是零。这一类不该被当成差异去调,只需要按状态分组:未核销、部分核销、全部核销、已退、作废,五组分别统计。确认口径只取全部核销那一组,加上部分核销组里已经完成履约的子项。分组动作在报表里是一次查询,缺了它,两边就永远在调总数。

第二类是跨期归属。门票在上一期售出、在本期入园核销,归售出期还是核销期,两种答案各自都自洽,但不能混用。混用最容易出现在月末最后三天和月初前三天——这两段里,核销数与确认数的偏差方向正好相反。系统里要能同时查两个日期:出票时间和入园核销时间,经营口径按后者聚合。退款跨期时冲的是原确认期而不是操作当期,这一点要在订单上留一个"原确认期"的标记,否则调整记录找不到归属,只能重新挂回当期。
第三类是组合票的部分核销。一单里含门票加交通,游客只刷了门票,整笔不能全额确认。这要求订单下的每个子项各有自己的核销状态,而不是整单共用一个"已核销"。整单一个状态的后果是核销数偏少、确认数偏多,两边怎么调都调不齐。子项状态各自推进,没履约的那部分单独列示为待履约,这是能对齐的最小结构。
第四类造成的方向是反的:核销数比票数多。免票儿童、随行老人、导游和司机、年卡次卡持有者的每一次进入都产生一条核销记录,却不产生任何收入。这一类必须在核销流水上有一个独立的凭证类型字段:客流口径算全部人头,收入口径剔除零元类型。缺这个字段,财务只看到核销条数和订单数不一致,接下来怀疑的就是有人放水,而不是配置少了一栏。

最后是两个纯技术的时间差:日切时点与离线回传。核销数在闭园之后一段时间里还会变,因为补传会迟到。确认动作要么等回传窗口关闭再做,要么次日重跑一次并留下调整痕迹。直接取闭园那一刻的快照去做确认,第二天一定会看到数字变小,看起来像有人回头改了账。把四类差异和这两个时间差都定下来,剩下的差额就只剩流程没按定义走完这一种解释。
扫一扫官方微信号