那内部系统都用正数吗?
内部系统退款金额通常用正数,但需确认业务规则。
常见情况:
| 系统类型 | 退款记录方式 | 示例 |
|---|---|---|
| 财务系统 | 正数(支出项) | 退款金额:50元 |
| 订单系统 | 负数(冲销原收入) | 净收入:-50元 |
| 结算系统 | 正数+退款标志 | 退款标志:是,金额:50元 |
统一处理建议:
- 先查看内部系统文档,确认退款字段的符号规则
- 写通用转换函数:
def normalize_refund(amount, has_flag=None): if has_flag == '退款': return abs(amount) # 统一转为正数 return amount
对账公式:
# 假设内部系统退款为正数
df_internal['归一化退款'] = df_internal['退款金额'].abs()
df_platform['归一化退款'] = df_platform['退款金额'].abs()
merged['退款差异'] = df_platform['归一化退款'] - df_internal['归一化退款']
注意:始终以绝对值作为对账基准,先统一符号再计算差异。