易支付 V1 兼容接入

已对接过易支付的系统(发卡网、One-API/New-API、各类商城插件)无需改代码: 把网关地址、商户 ID(pid)、商户密钥(key)换成本平台的即可。 需平台运营为商户开通易支付接入并下发 pid/key。

网关地址

用途地址方式
API 下单(返回支付链接/二维码)https://linglongpay.app/mapi.phpPOST(IP 白名单)
页面下单(浏览器跳转收银台)https://linglongpay.app/submit.phpGET / POST
综合接口(查单/退款/结算等)https://linglongpay.app/api.phpGET / POST(IP 白名单)

只要求填一个「网关地址」的系统,填 https://linglongpay.app 即可。签名方式选 MD5,协议版本选 易支付 V1 / 彩虹易支付。

签名算法(四步)

  1. 剔除 sign、sign_type 与值为空的参数
  2. 按参数名 ASCII 升序排列
  3. 拼接 k1=v1&k2=v2,值不做 URL 编码(中文、:// 用原文)
  4. 末尾直接追加商户密钥(无分隔符),MD5 取 32 位小写
clientip=1.2.3.4&money=1.00&name=VIP会员&notify_url=https://shop.com/notify
&out_trade_no=MCH20260728001&pid=100001&return_url=https://shop.com/return&type=alipay
+ 商户密钥  →  md5 → 77c46b1a2cb7063f4d01003379863f5e

下单与通知

  • 支付方式:alipay / wxpay / qqpay,映射到商户绑定的对应产品
  • mapi.php 响应 payurl / qrcode / urlscheme 三者只返回其一,请都做兼容
  • 异步通知:支付成功后以 GET 请求 notify_url,参数含 trade_status=TRADE_SUCCESS 与 MD5 签名; 处理成功只输出 success(或 ok),否则按退避重试
  • 验签使用 URL 解码后的参数值;发货必须做幂等(同一 out_trade_no 多次通知只发货一次)
  • 错过通知可调 api.php?act=notify 自助补发

综合接口 act 一览

act说明成功码
order查单(trade_no / out_trade_no 二选一);status 1=支付成功1
orders批量查单(limit ≤50,page 从 1)1
query账户余额与今日/昨日订单数1
settle结算记录(最近 50 条)1
refund退款(money 必填)0(V1 协议怪癖)
notify补发通知(平台扩展)1

与易支付原版的差异(安全强化)

act=query 不回显商户密钥(原版会返回 key 字段用于「测试连接」比对)。 本平台该字段返回空字符串——若对接系统的「测试连接」依赖 key 回显,请直接保存配置后用真实下单验证。 另:mapi.php 仅支持 POST;GET 方式的 submit.php 会在错误页提示安全警告。

排错指引

  • 签名不一致:最常见是对参数值做了 URL 编码,或把空参数算进了签名串
  • 非法请求,请添加接口IP白名单:联系运营将服务器公网出口 IP 加入白名单(submit.php 不受限)
  • 偶发验签失败:检查商品名是否含首尾空格/特殊字符,发送值必须与签名值完全一致
  • 返回 易支付兼容层未启用:联系运营开启平台开关与商户开通