Files
qipai/docs/devlogs/2026-06-22-M05-D-分账与收款配置.md

34 lines
1.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# M05-D 分账和门店收款配置
- 日期:2026-06-22
- 起始 commit`52edf24`
- 工程 commit`1680d73`
- ENGINEERING_DELTA=YES
- 子阶段状态:DONE,工程 commit 已 push 且 `HEAD == origin/main`
## 工程增量
- 支持按租户、小程序和门店配置微信收款商户号、环境凭据引用、启用状态与分账授权状态。
- 分账接收方只保存 SHA-256、脱敏值和 `receiver:*` 环境引用。
- 支持全局/门店比例策略,同一范围比例总和不得超过 10000 bps。
- 只有成功且具有微信交易号的支付允许分账;未授权账户或接收方被拒绝。
- 分账批次使用 clientRequestId 幂等,每个支付/接收方有唯一约束。
- 接入微信支付 v3 `/v3/profitsharing/orders` 请求签名;API 失败记录 `MANUAL_REVIEW`,不伪造成功。
- Mock 分账仅非生产显式开启后可用,生产环境强制关闭。
- 后台 API 可维护账户、接收方、策略并查询账户、策略、脱敏接收方与分账明细。
## 验证
- Windows 全量测试及仓库门禁通过。
- WSL MySQL 8.4.9 临时库执行 `up → verify → down → up → verify` 通过。
- 迁移语句:up 89、verify 65、down 83。
- 实测未授权开启被拒绝、比例超限被拒绝、接收方不落明文、两接收方金额正确、重复批次不重复分账。
## 外部阻塞
缺微信支付服务商/分账权限和已授权接收方,真实分账标记 `BLOCKED_EXTERNAL`
## 模块回归与后续
M05-A/B/C/D Windows 全量回归与 WSL MySQL 全迁移往返通过。执行游标进入 M06-A:Broker 与 MQTT 基础。