106 lines
3.0 KiB
Markdown
106 lines
3.0 KiB
Markdown
# 支付功能快速开始指南
|
|
|
|
## 5分钟快速配置
|
|
|
|
### 第1步:配置环境变量(.env)
|
|
|
|
```env
|
|
# 支付宝配置
|
|
ALIPAY_APP_ID=2021000000000000
|
|
ALIPAY_MERCHANT_PRIVATE_KEY=-----BEGIN RSA PRIVATE KEY-----\n...\n-----END RSA PRIVATE KEY-----
|
|
ALIPAY_PUBLIC_KEY=-----BEGIN PUBLIC KEY-----\n...\n-----END PUBLIC KEY-----
|
|
ALIPAY_NOTIFY_URL=https://yourdomain.com/api/order/alipay-notify
|
|
ALIPAY_RETURN_URL=https://yourdomain.com/order
|
|
ALIPAY_GATEWAY_URL=https://openapi.alipay.com/gateway.do
|
|
|
|
# 微信支付配置
|
|
WECHAT_APP_ID=wx1234567890abcdef
|
|
WECHAT_MCH_ID=1234567890
|
|
WECHAT_API_KEY=abcdefghijklmnopqrstuvwxyz123456
|
|
WECHAT_NOTIFY_URL=https://yourdomain.com/api/order/wechat-notify
|
|
WECHAT_GATEWAY_URL=https://api.mch.weixin.qq.com
|
|
```
|
|
|
|
### 第2步:执行数据库迁移
|
|
|
|
```sql
|
|
ALTER TABLE `la_order` ADD COLUMN `trade_no` varchar(100) DEFAULT NULL COMMENT '第三方交易号' AFTER `payment_time`;
|
|
```
|
|
|
|
### 第3步:测试支付流程
|
|
|
|
1. 打开订单列表
|
|
2. 点击"支付"按钮
|
|
3. 选择支付方式(支付宝或微信)
|
|
4. 点击"确认支付"
|
|
5. 跳转到支付页面或显示二维码
|
|
|
|
## 使用沙箱环境测试
|
|
|
|
### 支付宝沙箱测试
|
|
|
|
1. 修改 `.env` 中的网关地址:
|
|
```env
|
|
ALIPAY_GATEWAY_URL=https://openapi.alipaydev.com/gateway.do
|
|
```
|
|
|
|
2. 使用沙箱账号登录支付宝进行测试
|
|
|
|
### 微信支付沙箱测试
|
|
|
|
1. 微信支付已提供沙箱环境
|
|
2. 使用测试商户号和 API Key
|
|
3. 在微信支付后台配置沙箱账号
|
|
|
|
## 支付流程说明
|
|
|
|
### 正常支付
|
|
```
|
|
订单列表 → 点击支付 → 选择支付方式 → 确认支付 → 跳转支付页面 → 完成支付
|
|
```
|
|
|
|
### 补单支付
|
|
```
|
|
订单列表 → 点击支付 → 选择补单支付 → 输入订单号 → 选择支付方式 → 确认支付 → 完成支付
|
|
```
|
|
|
|
## 常见问题
|
|
|
|
### Q: 支付后订单状态没有更新?
|
|
A: 检查回调地址是否正确配置,检查防火墙是否允许回调。
|
|
|
|
### Q: 签名验证失败?
|
|
A: 检查密钥是否正确,检查参数排序是否正确。
|
|
|
|
### Q: 如何查看支付日志?
|
|
A: 检查 `runtime/log` 目录下的日志文件。
|
|
|
|
## 文件位置
|
|
|
|
- 配置文件:`server/config/pay.php`
|
|
- 支付逻辑:`server/app/adminapi/logic/order/OrderLogic.php`
|
|
- 支付接口:`server/app/adminapi/controller/order/OrderController.php`
|
|
- 回调处理:`server/app/adminapi/controller/order/AlipayNotifyController.php`
|
|
- 回调处理:`server/app/adminapi/controller/order/WechatNotifyController.php`
|
|
- 前端支付:`admin/src/views/order/index.vue`
|
|
|
|
## 获取密钥
|
|
|
|
### 支付宝
|
|
1. 登录 https://open.alipay.com/
|
|
2. 进入"开发者中心" → "应用管理"
|
|
3. 创建应用或选择已有应用
|
|
4. 在"开发设置"中生成密钥对
|
|
|
|
### 微信
|
|
1. 登录 https://pay.weixin.qq.com/
|
|
2. 进入"账户中心" → "API安全"
|
|
3. 获取商户号和 API Key
|
|
|
|
## 下一步
|
|
|
|
- 阅读 `PAYMENT_GATEWAY_INTEGRATION.md` 了解详细配置
|
|
- 阅读 `PAYMENT_IMPLEMENTATION_SUMMARY.md` 了解实现细节
|
|
- 在沙箱环境中测试支付流程
|
|
- 部署到生产环境
|