3.0 KiB
3.0 KiB
支付功能快速开始指南
5分钟快速配置
第1步:配置环境变量(.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步:执行数据库迁移
ALTER TABLE `la_order` ADD COLUMN `trade_no` varchar(100) DEFAULT NULL COMMENT '第三方交易号' AFTER `payment_time`;
第3步:测试支付流程
- 打开订单列表
- 点击"支付"按钮
- 选择支付方式(支付宝或微信)
- 点击"确认支付"
- 跳转到支付页面或显示二维码
使用沙箱环境测试
支付宝沙箱测试
- 修改
.env中的网关地址:
ALIPAY_GATEWAY_URL=https://openapi.alipaydev.com/gateway.do
- 使用沙箱账号登录支付宝进行测试
微信支付沙箱测试
- 微信支付已提供沙箱环境
- 使用测试商户号和 API Key
- 在微信支付后台配置沙箱账号
支付流程说明
正常支付
订单列表 → 点击支付 → 选择支付方式 → 确认支付 → 跳转支付页面 → 完成支付
补单支付
订单列表 → 点击支付 → 选择补单支付 → 输入订单号 → 选择支付方式 → 确认支付 → 完成支付
常见问题
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
获取密钥
支付宝
- 登录 https://open.alipay.com/
- 进入"开发者中心" → "应用管理"
- 创建应用或选择已有应用
- 在"开发设置"中生成密钥对
微信
- 登录 https://pay.weixin.qq.com/
- 进入"账户中心" → "API安全"
- 获取商户号和 API Key
下一步
- 阅读
PAYMENT_GATEWAY_INTEGRATION.md了解详细配置 - 阅读
PAYMENT_IMPLEMENTATION_SUMMARY.md了解实现细节 - 在沙箱环境中测试支付流程
- 部署到生产环境