-
Notifications
You must be signed in to change notification settings - Fork 0
07 settlement and ledger
技术老胡 edited this page Jul 29, 2026
·
4 revisions
V1 需要处理两条独立结算链:
商户:普通商品货款、云仓首次供货货款
用户:云仓代销本金返还、销售收益、到期回购款
用户租地/认养按订单、实际产出和邮寄履约管理,不生成用户收益账本。
| 层级 | 作用 |
|---|---|
| 业务事实 | 订单、付款、退款、库存流水、批次进度、供货验收、履约 |
| 业务账本 | 按规则计算应付商户或用户的可审计明细 |
| 结算单 | 把同一主体的多笔可结算账本汇总审核 |
| 资金入账 | 商户余额/提现体系或用户余额实际增加 |
| 对账 | 业务账本、结算单、资金流水之间核对 |
业务账本不是支付流水,也不能只依赖 CRMEB 余额变动反推业务原因。
- 每笔账本都有明确来源主体、业务类型、订单明细和规则快照。
- 商户货款与用户云仓本金/收益分开计算、分开结算。
- 云仓首次购买与二次零售分开记录。
- 配置变化不影响历史订单。
- 账本只追加,不物理删除。
- 退款和售后通过冻结、冲正、解冻或作废处理。
- 每个计算任务都有唯一幂等键。
- 用户本金、收益和回购款分开展示。
- V1 优先做到可核算、可复核、可导出,不强求支付机构自动分账。
| 来源码建议 | 说明 |
|---|---|
platform_self_goods |
平台自营普通商品收入 |
merchant_goods |
商户普通商品货款 |
merchant_cloud_primary_supply |
商户云仓首次供货货款 |
user_cloud_principal |
用户云仓已售本金返还 |
user_cloud_profit |
用户云仓代销收益 |
user_cloud_buyback |
用户到期未售回购款 |
user_cloud_reversal |
云仓冲正 |
user_land_order |
租地订单收入与退款,不生成用户收益 |
user_adoption_order |
认养订单收入与退款,不生成用户收益 |
商户结算基数
= 商品成交金额
- 商户承担优惠
- 商品退款扣减
商户应结算货款
= 商户结算基数
- 平台佣金
- 约定手续费
- 商户承担运费
平台券和平台补贴由平台承担,不减少商户结算基数。
V1 采用供货价模式:
商户有效首次购买数量
= 用户已付款数量
- 首次交易退款数量
- 入库/供货验收不合格数量
商户云仓供货货款
= 商户供货价 × 商户有效首次购买数量
- 首次退款扣减
- 商户承担的约定履约扣减
结算条件:
首次购买完成
+ 入库/供货验收完成
+ 首次售后观察期结束
+ 无退款/质量争议/冻结
→ 进入待结算
首次购买完成时间按去向认定:邮寄为确认/自动收货,自提为核销,代销为持仓进入正式批次。不同去向可能影响可结算时间,但不改变商户有效首次购买数量;平台二次零售是否售完也不影响商户供货货款。
本金是用户首次购买进入代销的商品价款,不包含邮寄补运费。
按活动 SKU 的结算模式,本金可能在进度节点分期返还,也可能在批次结束统一返还。
批次累计可分配销售利润
= max(0, 批次累计确认销售收入 - 批次累计已售本金)
用户累计应得收益
= 批次累计可分配销售利润
× 用户持仓占比
× 用户收益分成率快照
平台日常仓储、推广、包装、平台券和支付手续费从平台分成中承担,不临时减少用户收益基数。
用户回购款
= 用户最终未售数量
× 用户云仓抢购单价
× 回购比例快照
回购款不是代销收益。回购完成后,对应商品所有权转为平台。
每次节点结算都使用累计差额:
本次应生成账本
= 当前累计应结算
- 历史已结算
- 已生成未完成结算
这样即使一次销售跨越多个进度节点,也不会重复发放。
| 模式 | 25%/50%/75%/100% 节点 | 批次结束 |
|---|---|---|
| 批次结束统一结算 | 不入账 | 已售本金、全部收益、未售回购款 |
| 分期收益,结束返本金 | 只入账新增收益 | 已售本金、收益尾差、未售回购款 |
| 分期本金和收益 | 入账新增本金和收益 | 本金/收益尾差、未售回购款 |
批次可能因全部商品提前有效售完而提前结束,也可能到期后通过回购结束。到期未售不伪造 100% 销售进度。
| 状态 | 说明 |
|---|---|
| 待条件 | 尚未满足观察期、验收或节点条件 |
| 待审核 | 计算完成,等待自动或人工校验 |
| 待结算 | 可进入结算单 |
| 结算中 | 已加入未完成结算单 |
| 已结算 | 已完成商户或用户资金入账 |
| 已冻结 | 存在退款、争议、库存或质量异常 |
| 已冲正 | 有对应反向账本抵消原事实 |
| 已作废 | 来源订单无效且未发生资金入账 |
状态变化记录操作者、时间、原因和原状态。
订单完成
→ 售后观察期结束
→ 无退款/争议
→ 待结算
→ 结算单
→ 商户余额或打款
用户首次购买有效
→ 入库/供货验收
→ 首次售后观察期结束
→ 待结算
→ 商户结算单
二次零售订单完成并过售后观察期
→ 更新批次有效销售进度
→ 达到节点或批次结束
→ 生成累计差额账本
→ 审核/冻结检查
→ 用户结算单
→ 用户余额入账
批次到期
→ 停止新二次分配
→ 等待已锁定订单完成/释放
→ 确认最终未售数量
→ 生成回购单和回购账本
→ 商品转平台库存
→ 最终结算并关闭批次
- 直接冻结或重新计算待结算账本。
- 二次零售退款不再计入有效销售进度。
- 商户首次交易退款冲减有效首次购买数量。
- 暂停相关结算单。
- 复核影响范围后修改未完成结算明细。
- 原账本保留。
- 新增反向冲正账本。
- 优先从同一主体未结算或冻结金额抵扣。
- 用户账本不足时进入平台风险金额与人工审核,不直接产生用户负余额。
商户和用户使用不同结算单类型,不能混在一张单内。
| 字段 | 说明 |
|---|---|
| 结算单号 | 唯一编号 |
| 结算单类型 | 商户普通、商户云仓、用户云仓 |
| 结算主体类型/ID | 商户或用户 |
| 账本数量 | 包含明细数量 |
| 本金合计 | 用户云仓结算使用 |
| 收益合计 | 用户云仓结算使用 |
| 回购合计 | 用户云仓结算使用 |
| 商户货款合计 | 商户结算使用 |
| 扣减/冲正合计 | 退款和调整 |
| 应付合计 | 最终金额 |
| 状态 | 待审核、待入账、处理中、已完成、已驳回、已取消 |
| 审核人/时间 | 财务操作 |
| 资金流水 ID | 实际入账关联 |
| 备注 | 说明 |
活动付款数量
→ 首次退款数量
→ 有效首次购买数量
→ 入库/验收数量
→ 供货价货款
→ 待结算/已结算
用户代销数量
→ 批次有效销售数量与占比
→ 应返本金
→ 应得收益
→ 到期回购
→ 冻结/冲正
→ 待结算/已结算
业务账本应付合计
= 结算单应付合计
= 成功资金入账 + 仍在处理金额
财务导出至少包含:
- 业务和账本编号。
- 主体名称和 ID。
- 首次订单、二次订单、退款和批次关联。
- 商品、SKU、数量和单价。
- 供货价、用户本金、确认销售收入。
- 分成率、进度节点、回购比例。
- 本金、收益、回购、扣减和应付金额。
- 观察期、入库验收和可结算时间。
- 状态、结算单和资金流水。
- 创建、审核和结算时间。
- 首页
- 项目总览
- 项目立项
- 端与角色
- 供应链经营闭环
- 模块地图
- V1 范围 PRD
- 任务拆解
- 结算与账本
- V1 结算口径
- 云仓秒杀
- CRMEB 底座能力映射
- 当前菜单页面审计
- V1 决策与术语
- 云仓流程与状态机
- 租地认养与溯源 PRD
- V1 数据模型草案
- 开发前设计计划
- V1 信息架构
- 页面与原型规格
- V1 API 契约草案
- 事件任务权限通知
- 五项目代码改造蓝图
- 测试验收发布与手册计划
- CRMEB 视觉基线审计
- G3/G4 决策登记表
- 用户端 uni-app 复用审计
- 开发前主清单
- 自主设计工作指引
- V1 需求追踪矩阵
- G3 技术专项验证报告
- V1 P0 页面矩阵
- 写操作契约注册表
- 事件任务操作注册表
- 状态异常事务矩阵
- 数据库字段字典
- 页面 API 文件追踪
- V1 ER 图
- API 字段契约注册表
- 平台管理员手册
- 商户手册
- 用户帮助
- 服务与现场手册
- 开发任务包
- 测试目录与 Fixtures
- 发布与运维手册
- 设计交付与研发交接