# M5 合同与续约 — 逻辑设计文档（LDD · How）

| 项 | 值 |
|---|---|
| 模块 | M5 合同与续约 |
| 类型 | 逻辑设计文档（LDD） |
| 对应需求 | [requirements/M5](../requirements/M5-合同与续约.md) |
| 上级 | [需求分析总纲](../需求分析总纲.md) |

> 本文档描述**实现方式（How）**；"做什么/为什么/验收"见对应需求文档。

## 1. 续约流程状态机（可配）

标准订阅续约生命周期，实现为**可配状态机**：

```
续约识别 → 风险评估 → 续约计划 → 报价/谈判 →（如折扣/特殊条款）审批 → 客户签署 → 完成 / 流失
```

各状态说明：

| 阶段 | 说明 | 触发/依赖 |
|---|---|---|
| 续约识别 | 到期前 T-90 / T-60 / T-30 分级触发 | 按 Contract 到期日 |
| 风险评估 | 结合 M4 健康度 / 用量 / 满意度评估续约风险 | 依赖 M4 |
| 续约计划 | 制定 续 / 涨 / 降 / 扩购 策略 + 指定负责人 | — |
| 报价/谈判 | 生成报价、与客户谈判 | — |
| 审批 | 如涉及折扣或特殊条款，走 M9 审批 | 集成 M9 |
| 客户签署 | 客户签署续约合同 | 集成 M8 |
| 完成（Closed-Won） | 续约成功 | 终态 |
| 流失（Closed-Lost） | 续约失败，记录流失原因 | 终态 |

- 状态机各阶段的**负责人 / 时限 / 看板列**可配置（对应 FR-REN-08）。

## 1b. 留存指标口径（NRR/GRR/流失，FR-REN-06）
> 基于 **ARRSnapshot（数据字典，周期快照每客户 ARR = 在效合同 `Contract.arr` 汇总）** 计算，取同一批期初客户：
- **GRR（毛留存）** = （期初 ARR − 流失 ARR − 收缩 ARR）/ 期初 ARR；不含扩张，上限 100%。
- **NRR（净留存）** = （期初 ARR − 流失 − 收缩 + 扩张 ARR）/ 期初 ARR；含扩张，可 >100%。
- **流失率（客户/金额）** = 期内流失客户数或流失 ARR / 期初；**流失原因** 取 Renewal 终态 Closed-Lost 的必填原因分类（FR-REN-06）。
- 客户集合：以**期初在效客户**为分母基（cohort）；边界（新增客户不入当期分母、部分周期按比例）等细节进详设。

## 2. 集成点

- **健康度输入**：M4（续约风险评估、续约预测/可能性 FR-REN-03）。
- **审批**：M9（折扣 / 特殊条款审批）。
- **签署**：M8（续约合同客户签署）。
- **主数据**：M1（Product Contract 打通，生效/到期/金额/产品字段）。
- **指标呈现**：M10（NRR/GRR、流失率、流失原因趋势 FR-REN-06）。
