feat(M05-A): 建立统一支付领域与幂等回调
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
# M05-A 统一支付领域 API
|
||||
|
||||
- `POST /app-api/payments`:基于订单服务端未付金额创建支付单;客户端不能提交金额。
|
||||
- `POST /app-api/payments/:paymentId/test-complete`:仅在非生产环境且显式开启时模拟可信支付回调。
|
||||
|
||||
支付单使用 `clientRequestId` 幂等。测试回调使用 provider + callbackId 唯一键;错误金额回调会保存为拒绝状态但不记账。成功回调在同一事务内更新支付单、订单已付金额、订单状态历史和房间预占。
|
||||
|
||||
测试适配器默认关闭,生产环境即使配置开关为 true 也强制关闭。
|
||||
@@ -0,0 +1,10 @@
|
||||
# M05-A 统一支付领域数据库变更
|
||||
|
||||
- 迁移版本:`2026062015`
|
||||
- 扩展 `qipai_payments`:小程序、门店、provider、客户端幂等键、币种、provider 支付号和失败信息。
|
||||
- 新增 `qipai_payment_attempts`、`qipai_payment_callbacks`、`qipai_refunds`、`qipai_profit_shares`。
|
||||
- 新增 `qipai_payment_configs`,按 platform_app / tenant / store 分层解析。
|
||||
- 支付配置只保存 `credential_ref`,例如 `env:WX_STORE`,不保存密钥、证书或 Token 正文。
|
||||
- 旧支付记录迁移时从订单回填门店,并生成稳定的 legacy client request id。
|
||||
|
||||
所有金额使用整数分。支付回调以 tenant + provider + callbackId 唯一约束防止重复记账。
|
||||
Reference in New Issue
Block a user