💳 微信支付接口文档

快速接入微信支付,支持PC扫码支付和H5支付,Token机制简化回调流程

支付概述

wxlogin平台为开发者提供简单易用的微信支付接口服务。通过我们的平台,您可以无需经过复杂的微信官方认证流程,快速为您的应用接入微信支付功能。

v2.0.0 更新说明(Token机制):
• 支付成功后自动生成64位随机token,简化回调流程
• 回调地址只接收token参数,无需解密复杂的JWT数据
• 开发者通过token查询接口获取完整订单信息和支付状态
• PC端扫码跳转H5支付页面,H5端直接调起微信支付
• 支持 mode 参数指定支付模式

支付模式说明

模式触发条件展示方式
PC模式mode=pc 或 PC浏览器访问显示二维码 + 轮询查询状态
H5模式mode=h5 或 移动端/微信访问显示支付按钮,调起JSAPI
H5扫码模式PC二维码被扫码访问自动调起JSAPI支付

支付流程

1
生成订单数据
2
JWT加密
3
跳转支付页面
4
用户完成支付
5
系统生成token
6
回调返回token
7
用token查询订单
💡
Token机制说明:
• 用户支付成功后,系统自动生成64位随机token并存入订单
• 回调跳转时URL只携带token参数,格式:https://yourdomain.com/callback?token=xxx
• 开发者在回调页面获取token后,调用查询接口获取订单详情
• 无需JWT解密,流程更简单安全

发起支付请求

将用户引导至以下URL进行微信支付:

请求URL
// 支付页面入口
https://wxlogin.com/pay?appid={您的AppID}&data={JWT加密的订单数据}&mode={支付模式}

请求参数

参数名类型必填说明
appidstring必填您在平台创建应用时获得的AppID
datastring必填JWT加密的订单数据
modestring可选支付模式:pc/h5,不传则自动判断

订单数据格式(JWT加密前)

JSON
{
    "out_order_no": "商户订单号",
    "amount": 100.00,
    "product_name": "商品名称",
    "product_img": "商品图片URL",
    "product_desc": "商品描述",
    "return_url": "支付成功后跳转URL",
    "time": 1234567890,
    "expire": 1234567990
}

订单数据参数说明

参数名类型必填说明
out_order_nostring可选商户订单号,用于对账
amountfloat必填支付金额,单位:元
product_namestring必填商品名称
product_imgstring可选商品图片URL
product_descstring可选商品描述
return_urlstring可选支付成功后跳转URL
timeint可选请求时间戳
expireint可选过期时间戳

支付成功回调

用户支付成功后,系统会自动跳转到您在后台配置的回调地址(pay_notify_url),URL中只携带token参数:

回调URL示例
// 支付成功后跳转到您配置的回调地址
https://yourdomain.com/pay_callback.php?token={64位随机token}

// 开发者在回调页面获取token
$token = $_GET['token'];

// 通过token调用查询接口获取订单信息
$result = file_get_contents('https://wxlogin.com/pay/query?token=' . $token);
$orderInfo = json_decode($result, true);

if ($orderInfo['code'] == 200 && $orderInfo['data']['status'] == 1) {
    // 支付成功,处理业务逻辑
    $order_no = $orderInfo['data']['order_no'];
    $amount = $orderInfo['data']['amount'];
    // ... 您的业务逻辑
}

生成支付链接示例

PHP
// 订单数据
$orderData = [
    'out_order_no' => 'ORDER' . time(),
    'amount' => 99.00,
    'product_name' => 'VIP会员',
    'product_desc' => '购买VIP会员1个月',
    'return_url' => 'https://yourdomain.com/pay/success',
    'time' => time(),
    'expire' => time() + 900  // 15分钟后过期
];

// JWT加密(使用您的AppSecret作为密钥)
$data = JWT_encode($orderData, $appSecret);

// 生成支付URL
$payUrl = 'https://wxlogin.com/pay?appid=' . $appid . '&data=' . urlencode($data);

// 跳转到支付页面
header('Location: ' . $payUrl);

通过Token查询订单状态

开发者获取token后,通过此接口查询订单详细信息和支付状态:

请求URL
GET https://wxlogin.com/pay/query?token={支付成功后返回的token}

查询接口参数说明

参数名类型必填说明
tokenstring必填支付成功后系统生成的64位随机token
响应示例
{
    "code": 200,
    "msg": "查询成功",
    "data": {
        "order_no": "PAY202604151057301234",
        "out_order_no": "商户订单号",
        "amount": 100.00,
        "product_name": "VIP会员",
        "product_desc": "购买VIP会员1个月",
        "status": 1,  // 0=待支付 1=已支付
        "pay_time": "2026-04-15 10:58:00",
        "transaction_id": "微信交易号"
    }
}
⚠️
注意事项:
• token在支付成功后才会生成,未支付的订单无法通过token查询
• token为64位随机字符串,具有唯一性,可安全用于URL传参
• 建议在回调页面获取token后立即调用查询接口确认订单状态

错误码说明

错误码说明解决方案
10001AppID不存在请检查AppID是否正确
10002应用已禁用请联系管理员处理
20001数据解密失败请检查AppSecret是否正确
30001订单不存在请检查token是否正确
30002订单未支付用户尚未完成支付
💬
技术支持:
如遇到其他问题,请访问我们的网站获取帮助。