Skip to content

08 v1 settlement policy

技术老胡 edited this page Jul 30, 2026 · 3 revisions

V1 结算口径规则

本文档明确平台自营商品、商户普通商品、商户云仓供货、用户云仓本金与收益、租地/认养履约的 V1 结算口径。完整云仓状态机和公式见 13-cloud-warehouse-process-and-state-machines.md

一、结算总原则

1. 按订单明细和业务批次核算

  • 普通商品和商户货款按 CRMEB 订单明细核算。
  • 云仓首次购买按订单明细记录商品、价格、去向和活动规则。
  • 云仓二次零售按二次订单明细关联云仓批次。
  • 用户本金和收益按“云仓批次 + 用户持仓 + 结算节点”核算。
  • 一个云仓首次订单明细的全部数量只能选择邮寄、自提或代销中的一种。
  • 整单状态与金额只用于汇总,不替代明细账。

2. 下单时记录规则快照

以下配置必须在用户首次付款时写入历史快照:

  • 商品来源、商户、商品和 SKU。
  • 云仓活动、活动商品和批次。
  • 抢购单价、购买数量、商品实付金额。
  • 支持的去向、选择截止时间和超时默认去向。
  • 预计销售周期。
  • 结算模式、固定进度节点。
  • 用户与平台收益分成率。
  • 到期回购比例。
  • 首次交易和二次零售的售后观察期。
  • 运费和优惠承担规则。
  • 商户供货价及商户结算方式。

历史订单不跟随活动商品、商品、运费模板或分成配置的后续变化。

3. 账本只追加事实

  • 已生成账本不物理删除。
  • 退款、售后和错误修复通过冻结、冲正、解冻或作废记录处理。
  • 实际支付或余额入账前必须有业务账本和结算单依据。
  • 支付回调、结算节点和回购均需幂等。

二、商品归属与结算主体

业务 主要结算主体 账本
平台自营普通商品 平台 平台收入统计
商户普通商品 商户 商户货款账本
平台自营云仓首次购买 平台 平台首次销售统计
商户供货云仓首次购买 商户 商户供货货款账本
用户云仓二次代销 用户 本金返还、收益、回购和冲正账本
用户租地 平台履约 订单收入、履约、退款,不生成用户收益
用户认养 平台履约 订单收入、履约、退款,不生成用户收益

三、普通商户商品

商户结算基数
= 商品成交金额
- 商户承担优惠
- 商品退款扣减

商户应结算货款
= 商户结算基数
- 平台佣金
- 约定手续费
- 商户承担运费

平台券和平台补贴不减少商户结算基数;商户店铺券、商户商品优惠由商户承担并减少结算基数。

四、商户云仓供货

1. V1 默认供货价模式

商户有效首次购买数量
= 用户已付款数量
- 首次交易已退款数量
- 入库/供货验收不合格数量

商户应结算货款
= 商户供货价 × 商户有效首次购买数量
- 首次退款扣减
- 已确认由商户承担的履约扣减

进入待结算必须同时满足:

  • 用户首次购买已经生效。
  • 商品已完成云仓入库或约定供货验收。
  • 首次交易售后观察期已经结束。
  • 不存在退款、质量争议或财务冻结。

用户选择邮寄、自提或代销不改变供货价结算基础;二次零售是否售完不作为商户货款结算条件。

满足条件的供货账本按商户、自然日生成不可变日结单,默认次日 02:00 归集并在自动校验或人工复核通过后直接进入商户可用余额。该货款不再套用普通订单的全局冻结天数;结单、可用余额和 CRMEB 商户财务流水必须在同一入账事务中完成。

2. 成交价扣佣模式

V1 不作为默认流程。确有特殊合作时可在后续版本增加:

商户云仓结算基数
= 用户首次购买商品金额
- 商户承担优惠
- 首次退款扣减

商户云仓货款
= 商户云仓结算基数
- 平台佣金
- 约定手续费
- 商户承担运费/履约费

在正式支持该模式前,活动发布页不得出现该选项,避免只有配置没有完整账本和测试。

五、优惠承担

优惠承担解决的是“用户少付的金额由谁补足”,不是只记录一张券的名称。

优惠类型 V1 承担方 对商户货款 对用户云仓批次结算
平台通用券 平台 不减少 不减少批次确认销售收入
平台新人券 平台 不减少 不减少批次确认销售收入
平台活动补贴 平台 不减少 不减少批次确认销售收入
商户店铺券 商户 减少普通商户结算基数 云仓二次零售 V1 不使用
商户商品优惠 商户 减少普通商户结算基数 云仓二次零售 V1 不使用
运费券 发券方 只影响运费 不计入商品销售收入

二次零售确认销售收入时:

确认销售收入
= 用户有效商品实付金额
+ 平台承担优惠补贴
- 有效退款商品金额

因此用户使用平台券不会压低云仓批次对用户计算收益的销售收入。

六、运费承担

运费计算复用 CRMEB 运费模板、包邮规则和配送设置。

普通商品

方式 处理
用户承担 下单时支付运费
商户包邮 商户承担并按结算规则扣减
平台包邮 平台承担,不减少商户货款

云仓首次购买

  • 抢购付款阶段只支付商品价款,不要求地址和运费。
  • 用户选择邮寄后填写地址并重新计算运费。
  • 需要用户承担时生成独立补运费支付单,不修改已支付商品订单金额。
  • 需要补运费时,补运费成功前邮寄仅为临时选择;运费支付截止固定为 min(运费单创建时间 + 活动支付超时, 去向选择截止时间),截止时先关闭未成功运费单,仍在选择期则返回待选择,否则自动代销。
  • 补运费使用平台收款渠道,回调按独立业务类型处理;订单号、金额、交易号和选择版本校验通过后邮寄才生效。
  • 支付超时后出现迟到成功时不改变当前去向,按原渠道整单全额退款。
  • 首次商品在发货前完成整条退款、平台在发货前取消履约或发生重复/错误扣款时,补运费单独全额退款并独立对账。
  • V1 不处理部分运费退款;已正常发货后不因用户改选退运费,平台责任异常由客服审批。
  • 活动商品包邮时不生成用户应付运费。
  • 用户选择自提或代销不产生首次邮寄运费。
  • 后补运费不计入用户云仓本金和代销利润。

二次零售

  • 二次消费用户支付的运费不计入云仓商品确认销售收入。
  • 平台日常包装、仓储和配送运营成本从平台分成承担,V1 不临时从用户收益扣减。

七、售后观察期

V1 使用“平台默认固定选项 + 商品/活动商品选择覆盖”,不允许运营输入任意天数。

选项 建议场景
T+0 无实物售后场景,V1 农产品不建议
T+3 短保生鲜
T+7 V1 默认,普通商品、云仓首次交易和二次零售
T+15 礼盒、预售或较长履约
T+30 特殊高风险合作
手动 大额争议或特殊合同,需人工审核

1. 普通商户商品

订单完成/自动确认收货
→ 售后观察期
→ 无退款、争议或冻结
→ 商户货款进入待结算

2. 云仓首次交易

商户货款进入待结算需同时满足首次购买有效、供货验收和首次售后观察期三个条件。

首次购买完成时间按去向认定:

  • 邮寄:用户确认收货或系统自动确认收货。
  • 自提:自提核销完成。
  • 代销:用户持仓进入正式云仓批次。

待选择和代销批次冻结前可按整个订单明细申请首次退款;代销批次开始后不再转回普通首次退款。

3. 云仓二次零售

二次订单支付
→ 发货/核销
→ 订单完成
→ 二次售后观察期
→ 转为有效代销售出
→ 更新批次进度和节点结算

订单刚支付、运输中和观察期内的数量不计入有效销售进度。

八、云仓本金、收益与回购

1. 共同公式

批次销售进度
= 累计有效代销售出数量 ÷ 批次冻结代销数量

批次累计已售本金
= 用户云仓抢购单价 × 累计有效代销售出数量

批次累计可分配销售利润
= max(0, 批次累计确认销售收入 - 批次累计已售本金)

用户批次占比
= 用户有效代销数量 ÷ 批次冻结代销数量

用户累计应得收益
= 批次累计可分配销售利润
× 用户批次占比
× 用户收益分成率快照

所有实际结算使用累计差额,避免重复:

本次应结算
= 当前累计应结算
- 历史已正式入账
- 已生成但尚未完成入账的业务账本

2. 结算模式

模式 节点处理 批次结束处理
批次结束统一结算 代销期间不入账 已售本金 + 全部收益 + 未售回购款
分期收益,结束返本金 25/50/75/100% 只结新增收益 全部已售本金 + 收益尾差 + 未售回购款
分期本金和收益 25/50/75/100% 结新增本金和收益 本金/收益尾差 + 未售回购款

V1 默认“分期本金和收益”。

节点按“跨越触发、实际累计值计算”处理:

  • 每笔有效销售或退款先形成新的批次累计进度快照。
  • 只有累计进度首次越过 25/50/75/100% 中尚未处理的节点时才触发结算。
  • 一次从 20% 跳到 80% 时,只生成一次以 75% 为最高触发节点的结算;金额按本次真实 80% 累计销售结果计算,同时把 25/50/75% 标记为已跨越。
  • 后续从 80% 增长到 99% 不再触发节点结算;达到 100% 或批次到期时再按最新累计值结算差额。
  • 节点值是触发和幂等边界,不是把真实销售进度截断为节点百分比;页面同时显示真实进度和最近已结节点。

3. 回购

批次到期仍未有效售出的数量由平台回购:

用户回购款
= 用户最终未售数量
× 用户云仓抢购单价
× 回购比例快照

回购比例支持 100%、90%、80% 和自定义,默认 100%。回购只返还约定回购款,不产生代销收益。回购完成后商品转为平台库存。

V1 回购采用“自动计算、人工审核、事务执行”:到期后先把未售量冻结到不可售待回购池并生成预案,平台审核通过后才在同一数据库事务完成用户正式入账、平台库存转入和回购状态;自动入账金额阈值不能替代回购审核。

九、经营亏损处理

可能发生亏损的来源包括二次售价低于抢购成本、平台优惠、仓储推广费用、退货赔付、损耗和折扣回购。

V1 固定处理原则:

  • 二次售价不得让用户承担低于抢购成本的价差,确需低价时由平台补足。
  • 平台券、平台补贴不降低批次确认销售收入。
  • 常规仓储、推广、包装和支付手续费从平台分成中承担。
  • 仓储损坏、盘亏和非用户原因质量问题不向用户账本扣成负数。
  • 用户正常可能承担的本金差额仅来自付款前明确展示的折扣回购比例。
  • 二次售后先冲减未结算/冻结金额;不足时进入人工审核和平台风险金额,不直接形成用户欠款。

已入账后的技术冲正边界

  • 正常经营亏损、滞销、平台优惠、仓储损耗和平台原因售后不得向用户或商户账户发起借方冲正。
  • recovery_pending 只用于已审核确认的重复入账、错误入账,或原交易被外部支付渠道最终撤销且原权益不再成立的场景。
  • 借方冲正必须基于调整申请和原成功入账记录生成新流水,不修改原记录。
  • 目标余额不足时不部分扣款、不形成负余额;冻结后续同主体农业入账并转人工处理。
  • 退款或差异在正式入账前发现时,优先冻结和重算未入账业务账本,不使用“先入后冲”。

十、租地/认养履约口径

租地和认养属于农业体验与约定农产品交付:

用户支付套餐
→ 分配真实地块、动物个体或养殖批次份额
→ 平台代种植/代养殖
→ 形成一次或多次采收/产出
→ 按约定数量邮寄到家
→ 记录售后和未履约退款

需要记录:

  • 套餐价格与权益快照。
  • 套餐商品价中农业服务价值和农产品交付价值的拆分快照。
  • 按订单明细实际支付金额折算的 service_refund_base_amountdelivery_refund_base_amount
  • 约定交付数量或最低交付数量。
  • 真实资产分配和生产批次。
  • 实际采收/产出批次。
  • 已履约、剩余和未履约退款数量。
  • 邮寄运费承担。
  • 减产、死亡、延期、替换、补发和退款事件。

农业订单的退款分两个阶段:

  • 真实资产尚未正式分配或生产尚未开始时,按原订单售后规则计算尚未履行的服务和交付金额。
  • 生产开始后,农业未履约部分按交付退款基数计算:
累计未履约应退
= delivery_refund_base_amount × 累计已确认退款数量 ÷ 承诺交付数量

本次退款
= 累计未履约应退 - 历史已退款金额 - 已生成未完成退款金额

金额使用高精度累计计算,最后一次退款吸收分钱尾差,累计不得超过 delivery_refund_base_amount。平台另行承诺的商业补偿使用独立补偿记录,不修改套餐和订单历史快照。

租地/认养不生成用户收益账本,也不进入云仓代销。

十一、账本类型

商户

类型 说明
普通商品货款 CRMEB 普通商户商品销售
云仓供货货款 用户首次有效购买对应供货价
退款扣减 首次交易退款
履约扣减 规则明确由商户承担的费用
冲正/冻结 异常修正和争议

用户云仓

类型 说明
本金返还 按结算模式释放已售商品本金
代销收益 用户按批次利润分成获得的收益
回购款 到期未售商品由平台回购的金额
冻结/解冻 售后或异常期间控制可用性
冲正 对原账本追加反向事实

本金返还、收益和回购款必须分字段、分账本类型展示,不能只给用户一个无法解释的“总收益”。

十二、关键快照与字段

订单明细快照

  • 商品来源、归属主体、商户、商品和 SKU。
  • 活动、活动商品、云仓批次和供货记录。
  • 抢购单价、数量、商品实付。
  • 唯一去向、选择截止和选择方式。
  • 运费支付单和运费承担。
  • 结算模式、节点、周期、分成率和回购比例。
  • 首次与二次售后观察期。

二次零售关联

  • 二次订单和订单明细。
  • 云仓批次。
  • 分配数量。
  • 商品实付。
  • 平台补贴。
  • 退款数量/金额。
  • 有效时间和状态。

用户持仓

  • 初始/有效代销数量。
  • 单位本金和总本金。
  • 分摊已售、剩余和回购数量。
  • 已返本金。
  • 已确认/已结算收益。
  • 回购金额。
  • 结算和冻结状态。

商户供货账本

  • 有效首次购买数量。
  • 供货价。
  • 入库/供货验收时间。
  • 售后观察期到期时间。
  • 退款和履约扣减。
  • 应结算金额和状态。

十三、结算前核对

每份结算单生成前必须核对:

  • 来源订单和订单明细存在且归属正确。
  • 商品、活动、批次和规则快照完整。
  • 库存数量恒等式成立。
  • 售后观察期已结束。
  • 不存在未处理退款、争议或冻结。
  • 当前累计应结算减历史金额大于 0。
  • 幂等键未处理过。
  • 商户与用户数据权限正确。
  • 金额尾差在批次最终结算中闭合。

十四、关联文档

Clone this wiki locally