PRD: 安装商积分激励体系(Partner Points System)
- 产品: 安装商积分激励体系(Partner Points System)
- 版本: v0.8
- Status: Draft
- 创建日期: 2026-04-27
- 最后更新: 2026-04-30(v0.8)
- 截止: 2026-05-03(提交 市场部 + Dong + 公司审批前)
- 业务方: 市场部(运营 SKU / Promotion / 运营积分发放 / Tier 调整 等所有 A 端操作)
- 业务负责人: 林栋(Dong Lin)
- 产品对接: Shawn(Alpha Connect)+ Jeff Yu(羚羊云平台)
- 关联文档:
- Request: request-partner-app-points-system.md
- 会议纪要 2026-04-27 积分软件需求: GitHub 链接
- 会议纪要 2026-02-12 积分体系软件需求讨论会: GitHub 链接
- 分期与工期规划: partner-points-phasing.md
v0.8 Changelog(2026-04-30)
- 业务方角色统一为”市场部” — 不再提具体姓名(杨嘉成 / Linda),避免人员变动 + 角色混淆
- v0.7 头部 metadata 列表格式 + GitHub 绝对链接保留
- §6 验收标准 v0.6 已与 §12 决议对齐(AC1-AC15 一期/二期分组)
1. 背景与问题陈述
AlphaESS 当前没有面向安装商的官方激励体系。各国家/地区销售团队靠不透明的 rebate、定向折扣、定向促销激励安装商,存在三个问题:
- 总部不可见、不可控:rebate 政策由地区部分头制定,总部无法核算总成本,也难以横向对比各国激励效率
- 安装商感知差:返利通过对账给到老板,安装商现场销售人员体感不到激励、不忠诚
- 缺乏数据驱动:哪个安装商贡献多、应该拉等级,靠地区部主观判断,没有系统化记录
业务方(市场部)已起草 BRD,提出基于设备激活的积分等级体系,把传统 rebate 的一部分预算转移到「积分账户 + 积分兑换」的可视化激励上。
2. 目标
业务目标
- 可控:把分散的国家级激励预算(GMV 的 ~2%)统一到中央化体系,可审计、可分析
- 可见:安装商在 Web 端看到自己的积分余额、等级、兑换记录,激励感知前置到一线销售
- 可调:通过运营积分占比(默认 40%)保留地区部灵活性,可针对不同国家/不同阶段做差异化运营
- 可试点:MVP 阶段在 1-2 个国家小规模跑通,用数据论证后再扩展
用户目标
- 安装商老板 / Sales Admin:登录 Web my account 看到当前积分余额、来源(来自哪些设备激活)、等级、可兑换的物料/产品/市场支持
- 业务方(市场部):可以管理 SKU、运营积分发放、查看各国/各安装商的积分流转
- 总部财务:可以核算积分负债总量,对账安装商兑换的实物成本
3. 非目标(明确排除)
- ❌ Partner App 端的积分功能(确认放在 Web 端,App 不做)
- ❌ 完整商城后台(不做新品发布、图片上传、商品评价、用户运营内容等)
- ❌ 安装工层级的个人积分(积分只到安装商公司维度)
- ❌ 分销商的积分(分销商通过传统返点激励,不在本系统范围内;但本系统需为「分销商定向赠送积分给目标客户」预留扩展)
- ❌ 积分转让/赠予到电工/终端客户(财务负债边界不清,MVP 不做)
- ❌ 全球同步上线(采用单/双国试跑策略)
- ❌ Self-service 兑换商品上下架(MVP 由产品/开发手动管理 SKU)
- ❌ 任务体系(“完成 X 任务领积分” 在欧美安装商场景下接受度低)
- ❌ 实时积分计算(T+1 可接受)
4. 范围
4.1 In-Scope(MVP)
4.1.1 积分获取(自动化)
- 设备 commissioning 成功事件 → 触发积分计算
- 计算公式:
(Σ 逆变器功率 × 逆变器单价分) + (Σ 电池容量 × 电池单价分)) × 等级膨胀系数 × Promotion 倍数 × 国家系数(若启用) - 积分写入安装商 organization 账户
- 积分流水记录(来源设备 SN、计算明细、时间戳)
- 退积分场景:commissioning 成功后 N 天内拆机/退货 → 反向扣减积分(N 值待业务方定,建议 30-90 天)
4.1.2 积分账户
- 安装商 organization 维度
- 字段:总积分、可用积分、已兑换、已过期、有效期
- 多 license 自动汇总到同一 organization
- 流水按时间倒序展示,可按来源/类型筛选
4.1.3 等级体系
- Tier 1 / Tier 2 / Tier 3 / 无等级
- 初始等级基于 2025 年激活量评定(前 50% 进入分级)
- 地区部可申请调整某个安装商等级,渠道管理部审核
- 等级在 Web my account 头部展示(金/银/铜或类似视觉)
4.1.4 兑换页面(极简版)
- 9-10 个 SKU 的列表展示(产品 / 物料包 / 市场支持 package)
- 每个 SKU 显示:名称、图片、所需积分、库存(可选)、地区限制(如适用)
- 兑换流程:选 SKU → 确认积分扣减 → 生成兑换订单 → 后台手动履约
- 兑换订单状态:Pending(待发货)/ Shipped / Delivered / Cancelled
- 兑换记录可查看,含订单号、SKU、扣减积分、状态、时间
4.1.5 运营积分发放(手动)
- 渠道管理部后台:给指定 organization 发放运营积分,必填发放原因、地区/活动归属
- 总量控制:基础积分 + 运营积分 ≤ GMV × 2%(系统提示,不强阻断)
- 流水里清晰标注「基础积分」vs「运营积分」
4.1.6 Promotion 倍数
- 全局 Promotion 配置:选定时间段 + 国家 + 倍数(如 ×1.5),影响该时段该国所有新激活的设备
- 等级膨胀系数和 Promotion 倍数采用「乘法叠加」(例:Tier 1 × 2.5 × Promotion 1.5 = 3.75)
4.2 Out-of-Scope(首版不做,后续迭代)
- 自助商品发布
- 自动化运营活动引擎(任务、抽奖、阶梯返利)
- 积分对账/财务报表自动化
- 移动端 App
- 安装工个人积分明细
- 积分转赠
4.3 平台/载体
整套系统复用现有 Portal 框架(已具备账户体系、RBAC、导航/布局基建),通过角色权限区分 B 端(安装商)和 A 端(Alpha 内部运营/管理)入口。
B 端(安装商面向)—— Business Portal “My Reward Points” 模块
- 入口位置:Business Portal 主导航(与 Devices / Sites 等同级)
- 子页:积分总览(Overview)/ 流水(History)/ 兑换(Redeem)/ 兑换记录(Orders)
- 等级标识在 Portal 头部用户区展示(Tier 1/2/3 徽章)
- 可见角色:安装商 organization 的 Owner / Sales Admin
A 端(Alpha 内部运营/管理)—— Admin Portal “Reward Admin” 模块
- 入口位置:Admin Portal 主导航(同一 Portal 框架,按 RBAC 切换可见性)
- 子页:
- SKU 管理:商品上下架、地区限制(市场部)
- 运营积分发放:地区部 BD 提交 → 渠道管理部审核 → 入账(双角色协作)
- Promotion 配置:时间段 × 国家 × 倍数(市场部)
- 等级管理:初始等级 CSV 导入、单行编辑(必填 reason,市场部)
- 兑换订单履约:状态流转 Pending → Shipped → Delivered(履约/仓储)
- 预算监控:基础积分 + 运营积分总量 vs GMV 2% 上限
- 报表:按国家/安装商/时间段查积分流转(财务 + 业务方)
- 可见角色(建议):
reward_sku_admin(市场部)reward_ops_reviewer(渠道管理部)reward_ops_submitter(地区部 BD)reward_fulfillment(履约/仓储)reward_finance(总部财务,只读)
后端
- 积分引擎服务(新建),监听云平台 commissioning 事件
- 数据源:羚羊云平台(设备型号、容量、激活时间、安装商 organization)
5. 用户场景 / Use Cases
UC1:安装商查看积分
Hans 是 Benelux 一家安装商公司的老板。他在 4 月装了 30 套户储系统。月底他登录 Business Portal,点击导航 “My Reward Points”,Overview 页显示: - 当前等级:Tier 2(膨胀 ×1.8) - 可用积分:18,400 - 本月获取:4,200(点击展开看 30 个设备的明细) - 可兑换:6 件物料 / 2 件产品 / 1 个市场支持包
UC2:安装商兑换物料
Hans 看到「市场推广 package(含 50 张 brochure + 1 套展示样机)」需要 5,000 分。他点击兑换,系统弹窗确认积分扣减,他确认后生成订单 ORD-20260501-001,状态 Pending。两周后他收到 package,订单变为 Delivered。
UC3:地区部发放运营积分
市场部成员想给德国一家潜力客户发 2,000 积分作为销售支持。她在 A 端 Operational Points 页直接填表:License、积分数、活动(Sales Achievement)、justification 文案。点击 Issue 即刻入账,流水标注「运营积分 - DE Key Account Support」。MVP 无审批流,由 市场部 直接操作(§12 #17)。
UC4:Promotion 触发倍数
市场部成员为 6 月的 Benelux 推广活动配置 Promotion:6/1-6/30、Benelux、×1.5。Hans 在 6/15 完成一台 10kW 逆变器 + 20kWh 电池的 commissioning。系统计算: - 基础分:(10×1) + (20×2) = 50 - 等级膨胀:50 × 1.8 = 90 - Promotion:90 × 1.5 = 135 分入账 - 流水显示三步计算明细
UC5:拆机退积分
一台 6/15 入账的设备在 7/10 因为 commissioning 失败被拆除。系统自动反向生成”积分回收”流水,扣减 135 积分。Hans 余额相应减少。
6. 验收标准(可测试)
与 §12 决议清单对齐(v0.5)。AC 按一期 / 二期分组。
一期 AC(积分核心 + 市场部操作 + B 端浏览 + 数据导出)
AC1:积分自动结算
AC2:License 级账户(无聚合)
AC3:积分永久有效
AC4:Tier 管理 + 审计
AC5:运营积分发放(市场部直接 Issue)
AC6:入口 Capability 门控
AC7:积分体系完全不显示等值货币
AC8:B 端浏览体验
AC9:Data Export 一期数据集
二期 AC(兑换闭环 + Promotion 加速)
AC10:兑换流程(订单生成)
AC11:订单状态机 + 取消政策
AC12:SKU 管理(无库存 tracking)
AC13:Promotion 配置
AC14:Promotion 倍数应用
AC15:Data Export 二期补完
7. 依赖与风险
7.1 依赖
| 依赖项 | 责任方 | 状态 |
|---|---|---|
| 羚羊云平台 commissioning 事件流 | Robin / Jeff Yu | 已就绪 |
| 安装商 organization 体系 | Robin(羚羊新平台) | 进行中,需对齐积分体系上线时间 |
| Business Portal “My Reward Points” 模块嵌入 | Business Portal 前端团队 | 需对齐导航结构 + 设计资源 |
| 设备型号/容量主数据 | 云平台 | 已就绪 |
| 兑换商品履约链路 | 市场部 + 仓储/物流 | 业务侧规划中 |
| 基础积分占比终值 | 市场部 → 地区部 → 公司审批 | 2026-05-05 前确定 |
| SKU 列表(首批 9-10 个) | 市场部 | PRD review 前需提供 |
7.2 风险
| 风险 | 影响 | 缓解 |
|---|---|---|
| 公司审批不通过 | 项目作废 | 5/5 之前所有研发投入按 80% 概率押注;PRD 内容先做架构,避免深入实现 |
| 计算规则反复变 | 开发返工 | 规则项全部做成服务端 JSON 配置,不硬编码;UI 上规则相关文案动态化 |
| 试点国家选错(德国不上、Benelux 量小) | MVP 数据不显著 | Benelux + 南非组合,覆盖欧洲成熟市场 + 新兴市场 |
| 积分财务负债 | 法务/财务合规 | 需财务确认积分入账时点的负债计提规则;MVP 阶段每月手动对账 |
| 拆机退积分时间窗 | 业务规则未定 | PRD 中给出 30/60/90 天三档,让业务方选 |
| 兑换商品履约成本失控 | 大件物料运费高 | 高单价/大件物料考虑「pickup from distributor」机制(Dong 提议) |
8. 回滚 / 兼容性
回滚策略
- 积分系统作为独立服务,与现有云平台 commissioning 流程只单向消费事件,不影响主链路
- 若上线后发现严重问题,可通过 feature flag 关闭积分计算,不影响设备激活本身
- 已发放的积分需保留账目,关闭后只是停止新增;恢复后可补算
数据兼容
- 历史 commissioning 数据(系统上线前)不追溯发积分(避免预算失控)
- 等级初始值基于 2025 年激活量计算(一次性 ETL,本系统不依赖历史交易回放)
9. 国际化与合规
- 语言:Web my account 至少支持英文;试点国家增加本地语言(德语、荷兰语、法语;南非英语即可)
- 币种:积分本身无币种概念;兑换商品价格按当地币展示
- GDPR:积分流水包含安装商公司名 + license / org ID,属于 B2B 数据,不涉及个人敏感信息;常规 retention 即可
- 税务:兑换实物可能涉及各国增值税/进口税,由 市场部对接当地财务确认;MVP 不在系统内处理税务
- 澳洲 license one 问题:澳洲单 license 的特殊性导致 organization 聚合复杂,澳洲不在 MVP 范围内
- 反贿赂合规:积分兑换商品应避免「价值过高的私人物品」(如奢侈品),SKU 选择由 市场部 把关
10. Open Questions
5/3 PRD 提交前需尽量收敛 P0/P1 的问题;P2 可在审批通过后开发期间逐步确认。
2026-04-30 重大更新:17 条产品决策已在 §12 MVP 决议清单 中定稿(最小工作量原则)。本节保留真正阻塞 PRD 定稿的业务侧 P0 + 回收一些跨团队对齐项。
P0 — 阻塞 PRD 定稿 / 公司审批(待 市场部 / Dong 答复)
| # | 问题 | 状态 | 责任方 |
|---|---|---|---|
| 1 | 基础积分占比终值(1.2-1.5% vs 0.5-1%) | 待确认 | 市场部 → 地区部,5/3 前给 |
| 2 | SKU 首批清单(9-10 个)+ 每个 SKU 的成本/积分定价 | 未提供 | 市场部,5/3 前给 |
| 3 | 试点国家最终选择(Benelux / 南非 / 其他) | 倾向 Benelux + 南非 | 市场部 + 地区部确认 |
| 4 | 上线时间承诺(Dong 5/5 提交方案要含日期) | 待 Jeff 工时评估 | Shawn + Jeff,5/3 前 |
P1 — 跨团队对齐项
| # | 问题 | 状态 | 责任方 |
|---|---|---|---|
| 5 | 拆机/commissioning 失败退积分时间窗(30/60/90 天) | 待决策(PRD 草拟 30 天) | 市场部 |
| 6 | 兑换商品履约:自营 / 委托第三方 / Distributor pickup | 待方案 | 市场部 + 仓储/物流 |
| 7 | 兑换运费谁承担(含在积分 / 安装商付 / Distributor pickup) | Dong 倾向贵货含、便宜货安装商付 | 市场部 |
| 8 | 积分体系与现有 rebate 系统的关系(并行 / 部分替代 / 完全替代) | 未明确 | Dong |
| 9 | 财务对账:积分负债的计提时点(发放时 / 兑换时) | 未定 | 总部财务 |
| 10 | 等级初始评定数据来源(2025 全年激活量 / 最近 12 个月滚动) | 未定 | 市场部 |
| 11 | “种子积分”策略:上线前是否已对某些客户有口头承诺需补发 | 待 市场部 盘点 | 市场部 |
| 12 | B 端语言支持(试点国家本地语言 vs 仅英文) | 试点国家本地化建议有 | 市场部 + i18n |
✅ 已决议 — 详见 §12 MVP 决议清单
以下问题已通过 §12 决议(2026-04-30 与 Shawn 对齐,最小工作量原则)。本节保留索引便于回溯。
| 原 # | 议题 | 决议(详见 §12 对应行) |
|---|---|---|
| 旧 P1-7 | Tier 膨胀系数 2.5/1.8/1.2 是否仍有效 / 配置化 | §12 #3 服务端 JSON 配置 |
| 旧 P1-8 | 等级评定周期 | §12 #1 年度财务归口后手动 ETL |
| 旧 P1-9 | 积分有效期 | §12 #4 永久有效 |
| 旧 P1-10 | 等级膨胀 × Promotion 叠加方式 | §12 #5 相乘 |
| 旧 P1-11 | 多 Promotion 同时生效 | §12 #6 创建时禁止重叠 |
| 旧 P1-12 | 1 积分 = 1 USD 是否可见 | §12 #7 完全不显示等值货币(v0.3 反转) |
| 旧 P1-13 | 历史激活是否追溯 | §12 #8 不追溯,从上线之日起 |
| 旧 P1-6 | 国家系数是否进 MVP | §12 #2 不进,推 v2 |
| 旧 P1-17 | A 端 5 个角色名 | §12 #17 MVP 全部去掉审批流,仅市场部直接操作 |
| 旧 P1-18 | A 端审批流层级 | §12 #17 MVP 不做审批流 |
| 旧 P2-21 | 谁可以兑换 | §12 #10 仅 Organization Owner |
| 旧 P2-22 | 兑换地址管理 | §12 #11 每次填 Org 地址,不可改 |
| 旧 P2-23 | 库存不足展示 | §12 #12 展示 + 灰显 |
| 旧 P2-25 | 取消 / 退货 | §12 #13 不支持退货,取消仅 Pending |
| 旧 P2-32 | 积分对外命名 | §12 #14 Reward Points / 积分 |
| 旧 P2-36 | 分销商定向发放积分 | §12 #15 MVP 不含 |
| 旧 P2-38 | GMV 2% 超限系统行为 | §12 #16 软提示 + 告警,不硬阻断 |
P2 — 可在开发期间确认(保留)
| # | 问题 | 状态 |
|---|---|---|
| 13 | 兑换通知机制(邮件 / 站内信 / 短信) | MVP 建议邮件 |
| 14 | 安装商离职/公司合并/账号注销时积分处理 | 待 市场部 + 法务 |
| 15 | 是否提供积分排行榜(公开/匿名)增加竞争激励 | MVP 不做 |
| 16 | 安装商间的积分隐私(只看自己 / 看同地区平均) | MVP 仅看自己 |
| 17 | A 端报表导出格式(CSV / Excel / PDF) | MVP 建议 CSV |
| 18 | Promotion 紧急下架/提前结束的操作权限和影响 | 未定 |
| 19 | 是否对外开放积分查询 API(如安装商接 ERP) | MVP 不做 |
| 20 | 是否做兑换购物车(多 SKU 一次结算) | MVP 一次一单 |
| 21 | 等级降级机制(年度复评后从 Tier 1 掉到 Tier 2 怎么处理) | 未定 |
11. Scope 与工时评估(基于 §12 决议后净 scope)
5/3 前需与 Jeff 拉齐评估。下面 PM 视角已应用 §12 决议(去审批流 / 去国家系数 / 去有效期 / 去退货),工时由开发评估。
11.1 后端
| 模块 | 复杂度 | 备注 |
|---|---|---|
| 积分引擎服务(新建) | 中 | 监听 commissioning 事件、计算(base × tier × promo 单一公式)、流水写入。无追溯历史 |
| 积分账户服务(新建) | 低 | 余额、流水。无有效期、无 FIFO |
| 等级管理(新建) | 低 | 年度 CSV ETL 导入,无 UI 编辑无审批 |
| 兑换服务(新建) | 中 | 扣减、订单生成、状态机(Pending / Processing / Shipped / Delivered / Cancelled)。Cancelled 仅 Pending 状态。无退货 |
| 运营积分发放(新建) | 低 | 市场部直接 Issue(无审批流) |
| Promotion 配置(新建) | 低 | 时间段 + 地区 + 倍数;创建时 conflict 校验 |
| Tier 配置文件 | 极低 | 服务端 JSON,无 UI |
| RBAC 角色 + 权限策略 | 极低 | 复用 Portal 现有 RBAC;MVP 仅区分 Owner / Admin |
| Admin API 套件 | 中 | SKU CRUD、订单状态、报表查询、预算监控 |
11.2 前端 - B 端(Business Portal “My Reward Points”)
| 模块 | 复杂度 |
|---|---|
| 主导航接入 + 模块入口 | 低 |
| Overview 页(余额 + 等级 + 本月获取,无有效期文案) | 低 |
| History 页(流水,按类型筛选) | 低 |
| Redeem 页(9-10 SKU + 兑换 modal,库存不足灰显) | 低 |
| Orders 页(订单列表,Cancel 仅 Pending) | 低 |
| 头部 Tier 徽章 | 低 |
11.3 前端 - A 端(Admin Portal “Reward Admin”)
复用 Portal 现有框架(账户、RBAC、布局基建)。
| 模块 | 复杂度 | 备注 |
|---|---|---|
| 模块入口 + RBAC | 极低 | 复用框架 |
| SKU 管理(增删改 + 库存 + region) | 中 | 含图片上传 |
| 运营积分发放(市场部直接 Issue) | 低 | 单一表单,无审批 |
| Promotion 配置(含 conflict 校验) | 低 | 时间段 + 国家 + 倍数 |
| 等级管理(仅 CSV 批量导入) | 极低 | 无 UI 编辑无审批 |
| 兑换订单履约(状态流转 + 物流追踪号) | 低 | |
| 预算监控仪表板(GMV 2% 软告警) | 低 | |
| 报表(CSV 导出 + 基础筛选) | 中 |
11.4 数据 / 集成
| 模块 | 复杂度 |
|---|---|
| 设备主数据接入(型号 → 功率/容量映射) | 低,已有 |
| 等级初始 CSV 导入工具 | 极低 |
| 财务对账接口 | 中 |
11.5 §12 决议带来的工作量节省
相对”完整版” PRD(含审批流 / 国家系数 / 有效期 / 退货等):
- 后端:等级管理 中→低 / 运营积分发放 中→低 / Promotion 中→低 / Tier 配置 中→极低 / RBAC 低→极低(合计 −10-15 人日)
- A 端前端:运营积分 中→低 / 等级管理 中→极低 / 预算监控 中→低(合计 −5-7 人日)
- 数据/集成:历史激活 ETL 砍掉(−2-3 人日)
累计净节省:~17-25 人日(与 §12.1 估算 30-40 人日基本吻合,差额来自重叠模块与共享基础设施)。
Next Steps
- 2026-04-28:Shawn 与 Jeff 拉齐 PRD 草稿(载体已定为 Business Portal “My Reward Points”,重点对齐导航接入和组件复用)
- 2026-04-29 ~ 30:找 市场部 确认 SKU 清单 + Open Questions 中的业务侧问题
- 2026-05-01 ~ 02:完善验收标准、与开发评估工时
- 2026-05-03:PRD 定稿,给 Dong 工时评估
- 2026-05-05:Dong 提交公司审批
- 审批通过后:进入 ready/,建 Jira Epic + Story 拆分
12. MVP 范围决议清单(最小工作量原则)
2026-04-30 与 Shawn 对齐:MVP 全部按”最小工作量”决策,给公司审批一个最瘦版本。下表收敛 §10 Open Questions 中的 17 条 + 1 条额外(第 17 条审批流)。
| # | 议题 | MVP 决议 | 关键理由 | 工作量影响 |
|---|---|---|---|---|
| 1 | Tier 初始 + 自动调整 | ✅ 每年财务归口后手动批量导入 1 次(CSV ETL) | 不做季度自动评定 / 滚动窗口 / 通知 | −3-5 人日 |
| 2 | 国家系数(运营阶段加权) | ⏸️ MVP 不实现,推 v2 | 单价高的国家自然反映价值差异 | −2-3 人日 |
| 3 | 等级膨胀系数(2.5 / 1.8 / 1.2) | ⚙️ 服务端 JSON 配置,无 admin 编辑 UI | 改的话发版前改 config | −1-2 人日 |
| 4 | 积分有效期 | ♾️ 永久有效 | 不做过期字段 / 定时任务 / 通知 / FIFO 扣减 | −5-7 人日(最大头之一) |
| 5 | 等级 × Promotion 叠加方式 | ✖️ 相乘 | 单一公式 base × tier × promo |
极低 |
| 6 | 多个 Promotion 同时生效 | 🚫 创建时禁止重叠(同国家 + 时间段冲突即拒绝) | 从源头避免,无叠加计算/测试 case | −1-2 人日 |
| 7 | 积分与货币换算是否对外显示 | 🚫 完全不显示等值货币,B 端积分作为独立计价单位呈现,SKU/兑换/账户全部以 pts 计 | 绕过多币种 / 汇率 / 兑换商品定价一致性问题;admin 后台保留 GMV/budget 数字以便预算管理 | 极低(净简化) |
| 8 | 积分发放生效时间 | 🆕 从上线之日起,不追溯历史 | 不做历史 ETL / 反推 promotion | −3-5 人日 |
| 9 | SKU 区域维护 | 🌍 全球单一 SKU 库 + region 字段 | 市场部统一维护,不做”区域专属库” | 极低 |
| 10 | 谁可以兑换 | 👤 仅 Organization Owner | 用现有 owner 字段,无额外 RBAC | 极低 |
| 11 | 兑换地址 | 📍 每次兑换默认填 Org 地址(不可改) | 不做地址簿;如需改走线下沟通 | 极低 |
| 12 | 库存不足展示 | 🩶 展示 + 按钮灰显”Out of stock” | 不做”补货订阅” | 极低 |
| 13 | 取消 / 退货 | ❌ MVP 不支持退货;取消仅限 Pending 状态(积分回滚) | 退货走线下手动;无回收/入库/返还流程 | −3-5 人日 |
| 14 | 积分对外命名 | 🏷️ Reward Points / 中文
积分 |
不创品牌(避免 Marketing + 注册流程) | 极低 |
| 15 | 分销商定向发放积分 | ⏸️ MVP 不含,推 v2 | 新角色 + 新流程 | −5-8 人日 |
| 16 | 季度积分预算超限系统行为 | 🟡 软提示 + 告警(不硬阻断) | Budget cap 由 市场部 季度初手动设定(绝对积分数,不依赖 GMV——产品系统 track 不到 GMV);硬阻断会导致 commissioning 成功但积分没发的不一致 | 极低 |
| 17 | 所有审批流 | 🚫 MVP 全部去掉,由市场部直接操作 | 含 Tier 调整 / 运营积分发放 / SKU 上架 三处 | −5-8 人日(最大头之一) |
| 18 | SKU 库存管理 | 📦 不做库存 tracking;没货时市场部手动设 Inactive 即下架 | 不做 stock 字段 / 补货订阅 / 低库存告警 / 减库存事务 | −3-5 人日 |
| 19 | Promotion 编辑 / 删除 | 🚫 不可编辑、不可删除;只能 End early(Live)/ Disable(Scheduled)/ Copy as new(Ended) | 审计完整性 + 简化操作;无编辑表单 / 无删除流 | −2-3 人日 |
| 20 | 公司多 License 聚合 | 🔢 不做聚合,1 License = 1 账户;多 License 公司线下手工处理 | 不做 organization 多 license 关系建模 / 跨 license 积分汇总 | −5-8 人日 |
| 21 | Tier 调整审计 | 📜 必须留底:每次编辑必填 reason,记录 by whom + datetime + before→after + reason | 这是审批流去掉之后的合规保障;append-only 不可改 | 低(一张 audit log 表 + 一个 modal) |
| 22 | 任何”按季度评定 / 季度阈值”假设 | 🚫 不假设;评定周期、tier 阈值都未定,原型只显示当前 tier 不展示进度阈值 | 市场部/Dong 之后定,第一版不预设 | 极低(删 Tier Progress UI) |
| 23 | A 端是否做 Dashboard / Reports / 各页 KPI 统计 | 🚫 MVP 全部不做;仅保留 6 个操作页(Fulfillment / SKU / Ops / Promotions / Tiers)+ 1 个 Data Export(6 个 CSV 数据集) | 统计全部走 Excel / BI 工具消费原始 CSV,避免 admin 内嵌图表的设计 / 数据流 / 性能 / 实时性投入 | −15-20 人日(Dashboard / 报表图表 / 各页 KPI 全砍) |
B 端清理:删除 Tier Progress 进度条(季度评定假设)+ Featured Rewards “quarterly curated” 文案 + 所有 KPI tile 的 “Q2” 前缀(改 YTD)。
A 端极简版(admin-v2):相对 admin-v1 进一步剔除 Dashboard 整页 / Reports 整页 / 各页 KPI strip / Tier 4-tile 概览 / SKU & Tier 表的统计列。统计全部由
export.html6 个 CSV 数据集导出(含 Issuance Log / Redemption Orders / Tier Snapshot / Tier Change History / Ops Points Log / Promotion Log + Bulk ZIP)。
12.1 累计影响
按上述 23 条决议,MVP 累计省 ~60-80 人日(约 12-16 周开发量),相对”完整版” PRD 减少约 70%。
12.2 v2 / 后续迭代候选清单
第一版打通后,以下项可按数据反馈和业务诉求评估:
- #1 自动 Tier 评定(季度滚动 / 实时计算)
- #2 国家系数(按运营阶段加权)
- #4 积分有效期(过期机制 + 通知 + FIFO)
- #13 退货流程(自动入库 + 积分返还)
- #15 分销商定向发放(Distributor → Installer 拓客工具)
- #17 审批流(运营积分多层审核 / Tier 调整工作流)
- A 端审批工作流(如运营人数增加,审计需求增强)
12.3 配套调整(应用到原型)
按本节决议,A/B 端原型需要简化:
| 原型现状 | 调整 |
|---|---|
admin-v1/ops-points.html 4 状态 tabs(Pending /
Approved / Rejected / Draft)+ Approve/Reject 按钮 |
删除审批 UI,改为市场部直接发放 modal(选 org + 填积分 + 写原因 + Issue) |
admin-v1/tiers.html 3 个 pending adjustments 行 |
删除 pending 状态,市场部直接编辑等级 |
admin-v1/dashboard.html 待办列出”7 待审 + 3
等级调整” |
删除前两条,保留”12 履约 + 2 SKU 缺货” |
v2/overview.html 显示”Expires Dec 31, 2026” |
改为 省略或 “No expiry” |
v2/redeem.html 兑换 modal 文案”Redemption is final,
except in fulfillment failure” |
改为更明确:“Cancellation only allowed before order is processed” |
v2/orders.html Cancel 按钮在已发货订单上 |
仅 Pending 状态可见 Cancel |
12.4 Decision Log
- 2026-04-30 与 Shawn 对齐 17 条 MVP 决议清单(最小工作量原则),冻结作为 5/3 提交 Dong 的工时评估输入
13. 分期与工期规划
详见独立文档:partner-points-phasing.md
摘要:
- 一期(3 周开发 + 1 周 UAT)— 积分体系核心 + B 端浏览 + 4 个 CSV 数据集(不含兑换 / 不含 Promotion 系数)
- 二期(4 周开发 + 1 周 UAT)— 兑换闭环 + Promotion 系数 + SKU 线上管理 + 订单履约 + 补完 2 CSV
- 总周期:10 周(2.5 个月)/ 5 人核心团队 / ~205 人日(含 20% 风险缓冲)
- 关键节点(基于 5/12 启动):一期 GA 6/9 / 二期 GA 7/21
Partner Points System — 分期与工期规划
配套 PRD: PRD-partner-points-system.md(v0.8) 创建: 2026-04-30 拍板:Shawn 团队配置:5 人核心(2 BE + 2 FE + 1 QA)+ 0.3 PM + 0.3 UI + 0.2 DevOps
摘要
| 阶段 | 周数 | 工期 | 上线节点 |
|---|---|---|---|
| Phase 0 架构 + 数据建模 + UI 定稿 | 1 周 | ~10 人日 | — |
| 一期 积分体系核心(记账 + 看见) | 3 周开发 + 1 周 UAT/上线 | ~85 人日 | Week 5 GA |
| 二期 兑换闭环 + Promotion 加速 | 4 周开发 + 1 周 UAT/上线 | ~75 人日 | Week 10 GA |
| 小计 | — | ~170 人日 | — |
| 20% 风险缓冲 | — | ~35 人日 | — |
| 保守总计 | 10 周 ≈ 2.5 个月 | ~205 人日 | — |
预计周期(基于 2026-05-12 启动): - 一期 GA:2026-06-09 - 二期 GA:2026-07-21
一期:积分体系核心(3 周开发 + 1 周 UAT)
目标:让积分系统先记账,让 Installer 看见积分累积,让市场部能 Issue 运营积分 + 调整 Tier。暂不开放兑换。
| # | 功能模块 | 功能简述 | 角色 | 工期(人日) |
|---|---|---|---|---|
| 1 | Commissioning 事件订阅 | 监听羚羊云 commissioning 事件作为积分触发源 | BE | 4 |
| 2 | License 主数据集成 | 拉每个 license 的国家、组织名等基本信息 | BE | 2 |
| 3 | 积分计算引擎 | base 计算(Σ kW×1 + Σ kWh×2 等)× tier 系数 → 流水 | BE | 8 |
| 4 | 积分账户服务 | 余额 / 流水查询 / 汇总;无 FIFO / 无有效期 | BE | 5 |
| 5 | Tier 配置文件 | 服务端 JSON 存 1.0/1.2/1.8/2.5 系数 | BE | 1 |
| 6 | Tier 管理 + Audit Log | License 级 tier CRUD + 必填 reason + append-only history | BE | 6 |
| 7 | 运营积分发放服务 | 市场部直接 Issue(无审批)+ 流水写入 | BE | 4 |
| 8 | Admin API(一期相关) | Tier / Ops Points / Issuance 查询接口 | BE | 5 |
| 9 | RBAC + Capability flag | 复用 Portal RBAC,门控 reward 模块 | BE | 2 |
| 10 | A 端 — Tier Management 页 | License 表 + Edit modal + History modal | FE | 4 |
| 11 | A 端 — Operational Points 页 | Issue form + Recent log | FE | 3 |
| 12 | A 端 — Data Export 页(4 数据集) | Issuance Log / Tier Snapshot / Tier Change History / Ops Points Log + 时间筛选 | FE+BE | 5 |
| 13 | A 端 — 公共 layout(sidebar + topbar) | 接入 Portal 框架 + 导航 | FE | 3 |
| 14 | B 端 — Overview 页 | 余额 / 等级徽章 / 本月获取明细 | FE | 5 |
| 15 | B 端 — History 页 | 流水 + 5 类筛选 + 计算公式可见 | FE | 4 |
| 16 | B 端 — 公共 layout(导航 + Tier 徽章) | 嵌入 Business Portal | FE | 2 |
| 17 | 一期测试 | 单元 + 集成 + 回归 | QA | 8 |
| 18 | 一期 UI/UX | 设计稿 + 走查 | UI | 5 |
| 19 | 一期 PM/DevOps | 跟进 + 部署 | PM/DevOps | 4 |
| 一期小计 | 80 | |||
| + UAT/上线(含市场部配合) | 5 | |||
| 一期合计 | 85 |
一期 GA 用户能做的
- ✅ Installer 在 B 端看到积分余额、流水、Tier 等级 / 倍数
- ✅ 市场部成员在 A 端发放运营积分 / 调整 Tier(含 audit)
- ✅ 4 个 CSV 数据集导出(财务核算 / Excel 透视)
- ❌ 兑换(Redeem)不可用
- ❌ Promotion 系数不可用(地区部活动需走运营积分手动发)
二期:兑换闭环 + Promotion 加速(4 周开发 + 1 周 UAT)
目标:完整闭环 — 积分能兑换 SKU,订单可履约,Promotion 系数支持地区部促销活动。
| # | 功能模块 | 功能简述 | 角色 | 工期(人日) |
|---|---|---|---|---|
| 20 | 兑换服务 | 扣减积分 + 生成 Order + 状态机(Pending → Processing → Shipped → Delivered / Cancelled) | BE | 6 |
| 21 | 订单履约后端 | 物流追踪号写入 + 状态变更 API + 履约方对接 | BE+集成 | 5 |
| 22 | Promotion 配置服务 | 时间段 × 国家 × 倍数 + Conflict 校验 + 状态机(Live/Scheduled/Ended/Disabled) | BE | 5 |
| 23 | Promotion 系数集成回积分引擎 | 改 base × tier 为 base × tier × promo;同国时段不重叠保证 | BE | 3 |
| 24 | SKU 管理服务 | CRUD + Active/Inactive + 区域限制(无库存) | BE | 4 |
| 25 | Admin API(二期相关) | SKU / Promotion / Order / Redemption 接口 | BE | 4 |
| 26 | A 端 — SKU Management 页 | 表格 + Add/Edit modal + 图片上传 + 区域 chips | FE | 5 |
| 27 | A 端 — Promotions 页 | 时间轴 + Live/Scheduled/Ended cards + Create form(带 conflict 校验) | FE | 5 |
| 28 | A 端 — Fulfillment 页 | 订单队列 + 批量发货 + 物流号录入 + 状态变更 | FE | 4 |
| 29 | A 端 — Data Export 补完(2 数据集 + Bulk ZIP) | Redemption Orders / Promotion Log + 月度打包 | FE+BE | 4 |
| 30 | B 端 — Redeem 页 | SKU 卡片 grid + 分类 tab + 兑换确认 modal | FE | 5 |
| 31 | B 端 — Orders 页 | 订单列表 + 状态 pipeline + Cancel(Pending only) | FE | 4 |
| 32 | 二期测试 | 单元 + 集成 + 回归 | QA | 8 |
| 33 | 二期 UI/UX | 设计稿 + 走查 | UI | 4 |
| 34 | 二期 PM/DevOps | 跟进 + 部署 | PM/DevOps | 4 |
| 二期小计 | 70 | |||
| + UAT/上线(含履约方测试 + 灰度) | 5 | |||
| 二期合计 | 75 |
二期 GA 用户能做的
- ✅ Installer 完整闭环:累积积分 → 兑换 SKU → 跟踪订单 → 收货
- ✅ 市场部全套运营工具:SKU 上下架 / Promotion 配置 / 订单履约监控
- ✅ 6 个 CSV 数据集 + Bulk ZIP 月度导出
- ✅ 地区部可走正式 Promotion ×1.5 加速
Gantt 时间线(基于 2026-05-12 启动)
Week 1 Week 2 Week 3 Week 4 Week 5 Week 6 Week 7 Week 8 Week 9 Week 10
──────── ──────── ──────── ──────── ──────── ──────── ──────── ──────── ──────── ────────
Phase 0 █████ 架构 + 数据建模 + UI 定稿
5/12-5/18
一期开发 ████████ ████████ ████████
5/19 5/26 6/2
一期 UAT/上线 ████████
6/9 ── 一期 GA
二期开发(并行) ████████ ████████ ████████ ████████
6/9 6/16 6/23 6/30
二期 UAT/上线 ████████
7/21 ── 二期 GA
──────── ──────── ──────── ──────── ──────── ──────── ──────── ──────── ──────── ────────
5/12 5/19 5/26 6/2 6/9 6/16 6/23 6/30 7/7 7/14-7/21
kickoff ↑ 一期 GA ↑ 二期 GA
关键节点
| 日期 | 事件 |
|---|---|
| 2026-05-05 | Dong 提交公司审批(PRD v0.8) |
| 2026-05-12 | Phase 0 启动(架构 + UI 定稿) |
| 2026-05-19 | 一期开发启动 |
| 2026-06-09 | 一期 GA(积分体系核心 + B 端浏览 + 4 CSV) |
| 2026-06-09 | 二期开发并行启动 |
| 2026-06-16 | 二期 Promotion 系数集成进积分引擎(关键依赖完成) |
| 2026-07-21 | 二期 GA(兑换闭环 + Promotion 加速 + 完整 6 CSV) |
工时合计
| 阶段 | 人日 |
|---|---|
| Phase 0(架构 + 数据建模 + UI 定稿) | 10 |
| 一期开发 + UAT/上线 | 85 |
| 二期开发 + UAT/上线 | 75 |
| 小计 | 170 |
| 20% 风险缓冲 | 35 |
| 保守总计 | ~205 |
按 5 人核心团队:~10 周(2.5 个月)
团队角色配置
| 角色 | 人数 | 一期投入 | 二期投入 | 全期累计 |
|---|---|---|---|---|
| 后端工程师 | 2 | ~37 人日 | ~27 人日 | ~64 人日 |
| 前端工程师(B 端 + A 端) | 2 | ~26 人日 | ~27 人日 | ~53 人日 |
| QA / 测试 | 1 | ~8 人日 | ~8 人日 | ~16 人日 |
| 核心团队小计 | 5 | ~71 | ~62 | ~133 |
| UI/UX 设计 | 0.3 兼职 | ~5 人日(前 1.5 周集中) | ~4 人日 | ~9 人日 |
| PM | 0.3-0.5 兼职 | ~3 人日 | ~3 人日 | ~6 人日 |
| DevOps | 0.2 兼职 | ~1 人日 | ~1 人日 | ~2 人日 |
一期 GA 后的”半成品”窗口期管理
⚠️ 业务方需要事先沟通:一期 GA 后到二期 GA 前的 6 周窗口,B 端用户能看到积分但不能兑换。
| 风险 | 缓解 |
|---|---|
| Installer 看到积分但不能花 → 心智弱 | B 端 Overview 保留 Featured Rewards 预览 + “Available July 2026”提示 |
| 地区部缺 Promotion ×1.5 工具 | 临时用运营积分(市场部 Issue 给 organization)作为定向激励手段 |
| 市场部对外宣传需要克制 | 一期定位为”内测期”,二期 GA 后才正式对外推广 |
一期 / 二期之间的依赖关系
| 一期产出 | 二期复用 |
|---|---|
| 积分计算引擎 | 二期扩展 promo 系数(base × tier × promo) |
| 积分账户服务 | 二期兑换扣减积分 |
| Tier 管理 + audit | 二期不动 |
| 运营积分发放 | 二期不动 |
| Admin API 框架 | 二期扩展 SKU / Order / Promotion 接口 |
| Portal layout / RBAC / Capability flag | 二期复用,新增页面挂载 |
| Data Export 框架 | 二期补 2 数据集 + Bulk ZIP |
二期开发并行启动于一期 GA 之前 1-2 周(依赖一期架构而非 GA 结果)— 实际 Week 5 起 BE 一半人转入二期,FE 等一期 UAT 完成后转入。
风险与依赖(5/3 PRD 评审前确认)
关键依赖
| 依赖 | 责任方 | 时间窗口 |
|---|---|---|
| 公司审批(5/5) | Dong | 5/5 之前 |
| 羚羊云 commissioning 事件订阅接口 | Robin / Antelope | 5/12 Phase 0 前 |
| Business Portal 框架接入方式 | Portal 团队 | 5/12 Phase 0 前 |
| License 主数据 API | Robin / Antelope | 5/19 一期开发前 |
| 履约方(仓储 / 物流 / 运营)对接 | 市场部 | 6/9 二期开发前 |
| SKU 首批清单 + 图片素材 | 市场部 | 6/16 SKU 页开发前 |
主要风险
- 5/5 审批不过 → 项目作废;Phase 0 投入按 80% 概率押注
- Portal 框架接入复杂度高于预期 → Phase 0 +1 周
- 羚羊事件流接口未就绪 → 一期开发延期,可用 mock 事件补救
- 市场部团队 SKU 清单延期 → 二期 SKU 页开发延期,可用占位 SKU 先做联调
- 试点国家选择变化 → 二期 GA 前确认 Benelux + 南非或其他
给 Dong 的口径
保守评估(v0.8 极简版):MVP 全套 ≈ 205 人日,5 人核心团队 ≈ 10 周(2.5 个月)开发周期,分二期上线:
- 2026-06-09 一期 GA — 积分核心 + B 端浏览(无兑换)
- 2026-07-21 二期 GA — 兑换闭环 + Promotion 加速
一期 GA 后到二期 GA 前的 6 周为内测窗口期,建议对外只在二期 GA 后正式推广。
文档版本
| 版本 | 日期 | 说明 |
|---|---|---|
| 0.1 | 2026-04-30 | 与 Shawn 对齐分期切口(一期=记账+看见 / 二期=兑换+加速),3 周一期颗粒度,预计 10 周总周期 |