安全建议
开放接口直接动资金,请按下面逐项检查。
密钥
- [ ] 私钥只放在服务器上:环境变量、权限为 600 的文件,或云厂商的密钥管理服务。
- [ ] 代码仓库、日志、聊天工具、工单里都没有私钥;接口地址也不要公开(不要写进前端页面、App 或公开的文档)。
- [ ] 能在商户后台查看、重新生成密钥的账号尽量少;子账号按需授权。
- [ ] 怀疑密钥泄露时,立刻在商户后台重新生成,并同时更新你的服务器(旧密钥会立刻失效)。
请求
- [ ] 接口地址用
https://,没有关闭证书校验。 - [ ] IP 白名单只填自己服务器的出口 IP。
- [ ] 每笔订单都用自己生成、保存在数据库里的唯一商户订单号。
- [ ] 下单、出款超时后先查询,再决定是否用同一个商户订单号重试(见错误码最后一段)。
- [ ] 出款金额、收款人信息来自你系统里已经审核过的数据,不直接用前端传上来的值。
回调
- [ ] 回调地址是 https。
- [ ] 收到回调先解密、核对商户号,再用查询订单复核状态和金额,详见这里。
- [ ] 同一笔订单同一个状态只处理一次(数据库唯一索引)。
- [ ] 入账和记录「已处理」在同一个数据库事务里,成功后才返回
success。 - [ ] 回调接口限制请求体大小,日志里不记录完整内容。