外观
销售客户交付
与采购结构对称,但有两处业务差异必须区分。
与采购的两处不同
一、发货要扣库存,库存不足直接拒绝。
采购到货只是往库存里加,没有这个约束。发了没有的货,账实就永久对不上——所以发货确认时会按库存台账的同一口径校验,不足则拒绝并报出当前库存量。
二、多了回款跟踪。
发货不等于收到钱。经营分析里的"收入"是按收率结构估算的理论值,与实际回款是两码事,应收账款才是运营现金流的关键。
单据流
建订单(草稿)── 确认 ──> 已确认 ── 发货确认 ──> 部分发货 / 已发完
└── 回款登记 ──> 累计回款界面上的操作入口跟状态走:草稿只能确认、已确认才能发货、有未收款才显示登记回款。
客户与信用额度
下单时平台会算:该客户已有未收款 + 本单金额,超过信用额度即预警。
超额只预警,不拦截
是否放行是商务决策,系统给事实、不替销售拿主意。这一点与采购的黑名单不同——那是合规底线,必须硬拦。
发货
确认时在一个事务里:校验库存 → 生成出库流水(ref_type=sales)→ 回写累计发货量 → 推进订单状态。
回款与应收账龄
回款登记后自动算出未收款与回款率。多收会被标出来——通常是重复记账或预收款记错了单,平台如实呈现为负数而不截断成 0。
账龄按国内会计惯例五档:
| 档位 |
|---|
| 6 个月以内 |
| 6 个月到 1 年 |
| 1–2 年 |
| 2–3 年 |
| 3 年以上 |
这个分组与坏账准备的计提分组一致,财务可以直接拿去用。欧美常见的 30/60/90 天三档在国内对不上计提口径,平台不采用。
未发货的订单不计账龄
货都没出,谈不上账期。这类订单在应收列表里账龄显示为"未发货"。
账龄从最早一次未结清的发货日起算。