# 02 — 限制普通资产钱包充值方式

**What to build:** C 端用户为资产钱包充值时，服务只接受该资产当前允许集合与第三方充值方式的交集；钱包永远不会作为“给钱包充值”的渠道。没有可用第三方渠道或客户端伪造方式时，后端安全拒绝。

**Blocked by:** 01 — 接入支付配置并提供资产展示契约。

**Status:** ready-for-agent

**架构通道:** 复杂写（现有充值用例的最小完整边界）。

**完整业务边界:** 本票收口 C 端普通资产钱包充值的支付许可判定及接口交互结果。明确不修改代理、后台、线下、银行或其他充值流程，不复制另一套资产支付规则。

- [ ] 充值创建在资产解析、归属和现有金额/渠道/幂等校验后，以统一支付许可能力校验微信或支付宝；钱包和不允许方式均被拒绝。
- [ ] 接口返回和错误能让页面仅展示可充值第三方方式，并在交集为空时展示不可充值提示；不得通过页面隐藏代替服务端校验。
- [ ] Fiber、认证、GORM/PostgreSQL 与真实 Redis 集成测试覆盖卡/设备组合、空交集、伪造钱包方式、配置变更和既有充值幂等行为。

