PRODUCT REQUIREMENTS DOC

许愿池 WishPool

赛博许愿池 + 打赏榜 · 娱乐搞笑向 H5 产品需求文档

版本 v1.0(决策完成稿) 日期 2026-10 状态 决策完成 密级 内部
目 录
SECTION 01

背景与产品判断

1.1 背景

社交平台上"许愿"类内容(生日愿望、搞怪需求、突发奇想)天然具备互动传播属性:许愿者有被满足的期待,围观群众有"帮他实现"的参与冲动。但当前缺少一个轻量、游戏化、以"钱到位"为核心的闭环产品,愿望大多停留在评论区口嗨层面。

1.2 产品判断

定位:娱乐搞笑向的「赛博许愿池 + 打赏榜」。用户发布具体、小额、可被金钱满足的愿望,其他用户通过支付宝打赏"凑单"满足它。谁出钱多谁上榜,榜首成为"财神"。这是纯娱乐社交产品,不是公益、不是慈善、不是众筹平台。

1.3 核心体验闭环

🌠
发布愿望
文字+金额+理由
💰
围观打赏
三档金额一键满足
📊
进度拉满
拼单封顶不可超募
🎉
满足彩蛋
庆祝+分享+上榜

两条角色动线互为供给:许愿者提供内容,打赏者提供资金与排行榜竞争乐趣,形成自循环。

SECTION 02

产品契约

要素约定
主用户喜欢娱乐互动的年轻移动端网民,有支付宝支付能力
核心任务① 许愿者:发布愿望 → 被打赏凑满 → 收到满足通知 → 获得资金
② 打赏者:浏览愿望 → 支付打赏 → 看到进度前拉 → 上榜获得排位荣誉
触发进入愿望广场浏览,或点击发布按钮创建愿望
完成证据愿望进度 100%(已满足态),许愿者收到满足通知,打赏者看到自己进入排行榜
共享对象愿望(Wish):唯一被两条角色动线共同操作的业务对象
信任机制资金由平台统一代收(支付宝商户),愿望满足后自动结算至许愿者支付宝(平台抽成 1%,详见 R-06);打赏一旦到账不可撤回
SECTION 03

范围

3.1 P0 · 最小完整链路

ID能力说明
P0-1手机号验证码登录阿里云PNVS短信,免密码;首次登录设置昵称+鸭子头像
P0-2发布愿望图片(可选)+文字(≤200字)+目标金额+理由;首次发布需填支付宝收款账号
P0-3愿望广场浏览所有进行中/已满足的愿望,点击进详情
P0-4打赏(满足)三档金额9.9/49/199+自定义(≥1元),可带留言;不可超募
P0-5支付宝支付平台代收;支付后自动跳回愿望页,进度实时前拉
P0-6排行榜全站/日/周榜,金额降序,10人/页分页,前三名视觉强化
P0-7满足通知愿望被完全满足时,许愿者收到大大提醒+彩图
P0-8我的个人信息、我发布的愿望、我的打赏记录

3.2 P1 · 支持能力

ID能力说明
P1-1支付彩蛋+分享图支付成功后彩蛋弹窗+一键生成分享图(可在 P0 简化为文案分享)
P1-2留言评论区打赏留言沉淀在愿望评论区(依赖 P0-4 留言字段,独立成区可后置)
P1-3运营后台愿望下架、用户封禁、数据看板

3.3 明确不做

• 非公益/慈善/众筹定位,不做筹款资质相关能力
• 不支持匿名打赏(排行榜实名展示)
• 愿望永不过期(未满足永久挂)
• 不做提现钱包(仅愿望满足后自动结算打款,见 R-06)
• 不做 App(H5 优先)

SECTION 04

角色与对象模型

4.1 角色

角色职责关键权限
许愿者发布愿望、查看进度、收款发布(填收款账号)、查看通知;不能给自己打赏
打赏者浏览广场、打赏、上榜、留言打赏支付、查看排行榜、分享;不能匿名
平台运营内容审核、结算异常处理、风控愿望下架、转账失败人工兜底、封禁用户(P1 后台)

4.2 对象:愿望 Wish

进行中
打赏到账
部分满足
进度100%
已满足 ✅
自动结算(99%)
已结算 💰
• 进行中:发布即上线(先发后审,D5),进入广场接受打赏;永不自动过期;违规内容由运营下架
• 部分满足:已有打赏但进度 <100%,继续接受打赏
• 已满足:整卡点亮效果,进入"已满足"页;触发满足通知;不再接受打赏
• 已结算:满足后即时自动转账 99% 金额至许愿者支付宝(抽成 1% 见 R-06);转账失败降级人工处理
• 已下架(运营操作):从广场移除,已到账金额按退款规则处理

4.3 对象:打赏单 Order

已创建
唤起支付
待支付
支付成功
已到账
• 已创建:用户选金额+留言后生成订单(WISH- 前缀区分业务)
• 待支付:跳转支付宝收银台;不占愿望进度;超时/关闭 = 流失
• 已到账:实际入账金额实时拉高进度;进入留言区与排行榜统计
• 退回:并发超额时后到账者自动原路退回
SECTION 05

功能需求

FR-01 登录身份

目的:建立可追溯的实名账户(手机号唯一),支撑打赏上榜与资金结算。

触发:游客浏览广场不受限;点击发布/打赏/查看我的 → 弹出登录。

规则:

• 手机号 + 短信验证码(阿里云PNVS),免密码,验证码 6 位,60s 冷却 / 1h 5条 / 全站 24h 200条
• 首次登录强制设置:昵称(≤12字)+ 头像(复用 AI_EDU 的 8 个随机鸭子头像)
• 已登录用户可随时改昵称/头像;昵称在全站展示(广场、榜单、评论区)
• 手机号仅自己可见且打码展示(138****8888)

状态变化:游客 → 登录用户(含昵称+头像+打码手机号)。

FR-02 发布愿望

目的:许愿者创建一个具体、可被金额满足的愿望。

触发:广场右下角悬浮「+ 发布」按钮 → 登录 → 表单。

字段与校验:

字段必填规则
图片否最多 1 张,作为封面;上传后可替换/删除;先发后审,举报兜底(D5)
愿望文字是≤200 字,实时计数;不能为空
目标金额是元,最小 1 元;上限 ¥10,000(D2)
理由是≤100 字,说明为什么想要/好笑在哪

首次发布拦截:用户首次发布愿望时,先要求填写支付宝收款账号(姓名+支付宝账号),保存后才可提交;后续发布不再要求(可在"我的"修改)。

结果:发布成功 → 自动进入愿望广场顶部(最新);状态 = 进行中。

限制:单用户每日发布 3 条上限(D3,Asia/Shanghai 自然日口径);发布即上线,先发后审(D5)。

可交互演示 · 发布愿望表单(FR-02)
0 / 200

FR-03 愿望广场

目的:内容消费主入口,展示所有可打赏愿望。

布局:瀑布流卡片列表。每卡展示:封面图(无图显示默认底纹)、愿望文字摘要(2行截断)、目标金额、当前进度条(百分比)、打赏人数、许愿者昵称+鸭子头像。

排序:默认"最新发布";可切换"最热"(按近24h打赏金额)。

状态标识:进行中(霓虹描边) / 已满足(绿色点亮+✨角标),已满足卡也保留在广场,点击进入查看。

游客权限:无需登录即可浏览全部内容;登录后才能打赏/发布。

FR-04 愿望详情与打赏

目的:展示愿望完整信息,提供打赏(满足)操作。

布局(自上而下):封面图 / 愿望全文 / 理由 / 许愿者昵称+头像 / 大号进度条(当前金额÷目标金额)/ 显眼「满足 TA」按钮(渐变霓虹,固定底部悬浮)/ 评论区。

打赏流程:

① 点击「满足 TA」→ 弹出金额选择面板:
 • 三档快捷:¥9.9 / ¥49 / ¥199
 • 自定义输入(最小 1 元)
 • 可选留言(≤50字,将展示在评论区)
② 金额确认后显示实付金额(= min(选择金额, 剩余金额),见 R-01)→ 确认 → 唤起支付宝支付。

状态限制:已满足愿望按钮置灰显示「已被满足 ✨」;愿望发布者本人的按钮显示「不能给自己许的愿打赏哦」;未成年人账户打赏按钮置灰,提示「未成年人不可以打赏哦」(D7,判定口径见 R-04)。

FR-05 支付与回跳

目的:完成支付宝收款并让用户立刻看到进度变化。

规则:

• 支付方式:支付宝(平台统一商户号代收,订单号前缀 WISH- 区分业务线)
• 支付成功 → 自动跳回该愿望详情页,进度条动画前拉至新位置,金额数字滚动
• 支付取消/失败 → 返回金额选择面板,可重试;订单保留待支付态
• 待支付订单不占用进度,仅在到账后才计入

结果:打赏单状态 → 已到账;愿望进度实时更新;若因此凑满 → 触发满足态(FR-07/FR-10)。

FR-06 拼单与封顶

目的:多人合力满足同一愿望,金额封顶不可超募。

核心规则(详见 R-01):

• 实付金额 = min(用户选择金额, 愿望剩余金额)
• 剩余金额 < 1 元时:三档与自定义均不可选,唯一可选 = 剩余金额(如剩余 0.6 元,只能付 0.6 元)
• 并发打赏超额:以先到账者为准,后到账的超额部分自动原路退回,并提示"该愿望已被满足,你的心意已退回"
• 待支付订单不占进度,到账才算

可交互演示 · 拼单封顶:480/500 时选择 ¥199(FR-06)
🧋 想喝秋天的第一杯杨枝甘露
加班到十点的打工人,嘴上说不要,身体很诚实。帮我实现这个小愿望吧!
已凑 ¥480目标 ¥500
选择打赏金额(试试选 ¥199)
剩余 ¥20 可凑

FR-07 彩蛋与分享(P1)

目的:支付成功的即时正反馈与传播素材。

触发:支付成功回到愿望页的瞬间。

规则:

• 彩蛋弹窗:全屏庆祝动效(礼花+光效),文案如「🎉 你刚打赏 ¥199 满足了一个愿望!」
• 一键分享图:生成含愿望封面+打赏金额+打赏者昵称+二维码的分享卡片(扫码进入愿望详情落地页),文案示例「我刚打赏1000元满足了『想要新键盘』的愿望,快去许愿池看看」;分享方式 = 保存图片 + 二维码扫码落地(D6,规避微信对支付宝域名的屏蔽)
• 弹窗主按钮「去排行榜看看」→ 引导查看自己的排位(FR-08)

FR-08 排行榜

目的:打赏者的荣誉竞技场,"谁是财神"是全站情绪高点。

入口:底部导航「排行榜」Tab。

规则:

• 三个榜:全站榜(累计总额)/ 日榜(当日 Asia/Shanghai)/ 周榜(本周一 00:00 起)
• 排序:按统计周期内打赏金额从高到低;金额并列时以达成时间早者优先(详见 R-02)
• 条目:左 = 鸭子头像 + 昵称,右 = 金额(保留1位小数)
• 实名:不支持匿名打赏,所有上榜者用昵称+头像展示
• 分页:每页 10 人,底部分页器(上一页/页码/下一页)
• 前三名视觉递进强化:
 🥇 第一名(财神):金色渐变卡片 + 光效呼吸动画 + 昵称与金额字号翻倍 + 「财神」标识(各榜动态,实时变化)
 🥈 第二名:银色系强化
 🥉 第三名:铜色系强化
• 榜单内高亮当前登录用户所在行

可交互演示 · 排行榜(FR-08):三榜切换 / 前三强化 / 分页

FR-09 留言评论区(P1)

目的:打赏留言沉淀为愿望的互动内容。

规则:

• 只有成功打赏后可留言(打赏时填写,≤50字),留言随打赏成功进入评论区
• 展示字段:打赏者头像 + 昵称 + 打赏金额 + 留言内容,按时间倒序
• 不打赏不能评论(保持"付钱才能说话"的娱乐调性)
• 违规内容处理:举报入口 + 运营下架(先发后审,D5);下架后资金处理见第 7 节异常表

FR-10 满足通知

目的:愿望被完全满足时给许愿者强提醒,形成产品情绪高点。

触发:愿望进度达到 100% 的瞬间(以最后一笔到账为准)。

规则:

• 许愿者收到大大的提醒:站内弹窗(下次打开 H5 时全屏彩图弹窗)
• 通知彩图内容:愿望封面 + 「你的愿望已被满足!」+ 满足者名单(头像+昵称+金额列表,告知哪些用户满足了他)
• 逐笔打赏不提醒许愿者(避免打扰),仅在完全满足时一次性通知
• 打赏者侧:支付彩蛋见 FR-07,不再额外推送

FR-11 我的

目的:个人信息与资产视角的聚合页。

布局:

• 个人信息区:鸭子头像 + 昵称 + 打码手机号(138****8888)
• 我发布的愿望:列表(进行中/已满足),含进度、打赏人数;已满足的可查看满足者名单
• 我的打赏:历史打赏记录(时间+愿望+金额+状态),可点击回跳愿望
• 支付宝收款账号:查看/修改入口(仅本人可见)
• 榜单排名:当前全站榜排名快照(若上榜)

FR-12 运营后台(P1)

目的:内容治理与资金结算的操作面。

能力:愿望列表(搜索/下架)、用户管理(封禁/解封)、打赏订单查询(WISH-前缀)、结算看板(愿望满足后自动结算 99% 至许愿者支付宝;转账失败/支付宝账号无效的异常单转人工处理并标记已结算)、举报处理队列、基础数据看板。

详细后台 PRD 另行输出,本文档仅约定边界。

SECTION 06

共享规则

R-01 金额与封顶(全站唯一定义)

规则项定义
快捷档位¥9.9 / ¥49 / ¥199
自定义金额最小 ¥1,上限不限(愿望剩余金额为实际上限)
愿望目标金额发布时设置,最小 ¥1;上限 ¥10,000(D2)
实付金额公式实付 = min(用户选择金额, 愿望剩余金额)
剩余 < ¥1 时三档与自定义全部禁用,唯一可选 = 剩余金额(如 ¥0.6)
进度口径进度 = 已到账金额 ÷ 目标金额;待支付订单不计入
并发超额以先到账者优先;后到账的超额部分自动原路退回支付宝

R-02 榜单口径

• 统计金额 = 统计周期内已到账打赏金额(不含待支付/退回)
• 时区:Asia/Shanghai;日榜 = 当日 00:00 起,周榜 = 本周一 00:00 起
• 排序:金额降序;金额并列时以达成时间早者优先(达成时间 = 该并列金额的最后一笔到账时间)
• 退回的打赏不计入榜单(已退回的撤销榜单统计)
• 榜单刷新:实时到账实时更新 [Assumption, TBD]

R-03 隐私

• 手机号:任何页面不展示完整手机号;本人可见打码版(138****8888)
• 支付宝收款账号:永不上墙、永不出现在任何公开页面(广场/详情/榜单/评论区)
• 禁止匿名:打赏、留言、上榜均实名(昵称+头像)
• 满足通知中的满足者名单仅展示昵称+头像+金额,不含手机号

R-04 防刷与风控

• 短信:验证码 60s 冷却 / 单号 1h 5条 / 全站 24h 200条(阿里云PNVS)
• 禁自打赏:不能给自己发布的愿望打赏(前端按钮置灰+后端拦截)
• 每日发布上限:单用户 3 条/天(D3,Asia/Shanghai 自然日口径)
• 单用户单愿望重复打赏:不限制(鼓励土豪多轮满足)
• 内容审核:先发后审(D5)——发布即上线,举报入口 + 运营巡查下架兜底
• 未成年人:未成年人不可以打赏(D7)——判定口径依赖支付宝实名信息 [Assumption];判定为未成年则打赏入口置灰,发布/浏览不受限

R-05 通知

• 完全满足:许愿者收到大提醒+彩图(含满足者名单)——唯一强通知场景
• 逐笔打赏:不提醒许愿者
• 支付成功彩蛋/分享:面向打赏者的即时反馈,非推送通知
• 其他运营推送:P0 不做

R-06 资金流与结算(全站唯一定义)

规则项定义
平台抽成抽成 1%(D1):如愿望被打赏 500 元,平台抽走 5 元,许愿者结算 495 元
结算金额公式许愿者结算金额 = 愿望满足总额 × 99%(满足总额 = 已到账打赏之和)
进度口径抽成不影响进度:进度按打赏全额计算(500 元打赏 → 进度 +500,非 495)
结算触发愿望满足后即时自动结算(D4):系统自动单笔转账 99% 金额至许愿者首次发布时绑定的支付宝账号
转账通道支付宝单笔转账接口(待配置,配置完成前降级为运营人工转账兜底)
结算失败转账失败(账号无效/风控拦截等)→ 转运营后台异常单,人工处理后标记已结算(见第 7 节)
榜单口径排行榜金额按打赏全额统计(抽成不影响榜单,与 R-02 一致)

示例:愿望目标 ¥500,被打赏凑满 ¥500 → 进度 100% → 平台抽 ¥5 → 许愿者支付宝自动到账 ¥495。

SECTION 07

异常与边界

场景处理
支付中途退出/取消订单停留待支付态,不占进度;用户可返回重选金额重新发起支付
并发打赏导致超额先到账者生效;后到账者支付成功但金额超出剩余,超额部分自动原路退回,愿望页提示"该愿望刚被满足,超出部分已退回"
愿望满足瞬间仍有待支付订单该订单支付成功后走退回流程(同上)
打赏后留言失败打赏不受影响(已到账),留言可丢弃;不做补填入口
许愿者支付宝账号无效/自动转账失败愿望满足后自动结算(R-06);转账失败转运营后台异常单,联系用户补正后人工转账并标记已结算,不设固定时效 [Assumption]
未成年人发起打赏打赏入口置灰拦截,提示「未成年人不可以打赏哦」(D7);发布/浏览不受限
愿望内容违规被下架已到账金额全额原路退回打赏者;下架愿望从广场/我的列表移除(保留运营侧可查)
短信验证码超限提示"发送过于频繁,请稍后再试";冷却结束后可重发
空状态(广场无愿望 / 榜单无人)广场:显示引导文案"还没有人许愿,来当第一个梦想家"+发布按钮;榜单:显示"虚位以待,打赏即可登顶"
SECTION 08

已确认决策

以下 7 项决策已拍板(2026-10),全文相关规则已同步更新:

编号问题最终决策落地位置
D1平台抽成抽成 1%:如打赏 500 元,平台抽走 5 元,许愿者结算 495 元R-06 资金流与结算
D2愿望目标金额上限¥10,000FR-02 / R-01
D3单用户每日发布条数3 条/天FR-02 / R-04
D4结算方式与周期愿望满足后即时自动结算(支付宝单笔转账接口,待配置;配置前降级人工)R-06 / FR-12
D5内容审核策略先发后审,举报兜底 + 运营下架4.2 状态机 / R-04
D6分享落地渠道保存分享图 + 二维码扫码落地(规避微信对支付宝域名的屏蔽)FR-07
D7未成年人打赏未成年人不可以打赏(打赏环节拦截)R-04 / FR-04