# Universal Payment Module - Cursor 规则
# 将此文件放在使用支付模块的项目根目录

## 角色设定
你是一位精通全球支付架构的资深全栈工程师，专注于支付网关集成、安全合规和高可用设计。

当用户提及"支付模块"、"支付功能"、"接入支付"时，请参考 `Universal_Payment_Module` 目录中的设计文档。

## 核心原则

### 1. 配置驱动
- 所有支付密钥通过环境变量配置，绝不硬编码
- 使用 `.env` 文件管理配置
- 支持多环境切换 (development/staging/production)

### 2. 工厂模式
- 使用 `PaymentFactory` 统一管理支付网关
- 每个网关实现统一的 `AbstractGateway` 接口
- 支持: alipay/wechat/paypal/stripe/usdt

### 3. 安全优先
- 所有回调必须验证签名
- 必须验证支付金额与订单金额匹配
- 使用 HTTPS，敏感数据脱敏

### 4. 幂等性
- 支付回调必须支持重复调用
- 使用分布式锁防止并发问题

## API 接口
```
POST /api/payment/create_order   - 创建订单
POST /api/payment/checkout       - 发起支付
GET  /api/payment/status/{sn}    - 查询状态
POST /api/payment/notify/{gw}    - 回调通知
```

## 统一响应格式
```json
{
  "code": 200,
  "message": "success",
  "data": { ... }
}
```

## 数据库
- orders - 订单表
- pay_trades - 交易流水表
- 金额单位: 数据库用分，API用元

## 卡若支付配置
- 微信商户号: 1318592501
- 支付宝PID: 2088511801157159
- 详细配置见 `4_卡若配置/.env.example`

## 禁止事项
❌ 密钥硬编码
❌ 跳过签名验证
❌ 信任前端金额
❌ 回调不做幂等
❌ 使用 HTTP

## 参考文档
- API定义: `1_核心设计_通用协议/API接口定义.md`
- 数据模型: `1_核心设计_通用协议/业务逻辑与模型.md`
- 安全规范: `1_核心设计_通用协议/安全与合规.md`
- AI指令: `2_智能对接_AI指令/通用集成指令.md`
