Skip to content

获取授权链接

更新时间:2026/7/26 21:23:52

接口说明

用于微信 JSAPI、支付宝生活号、银联云闪付等场景下,获取用户 openId / userId 的 OAuth 授权链接

业务流程:

  1. 商户后端调用本接口,获得 authUrl(带会话码)和 queryCode
  2. 商户前端引导用户浏览器跳转到 authUrl,由通道完成 OAuth 授权。
  3. 授权完成后,通道回调平台,平台通过 queryCode 关联回商户会话。
  4. 商户通过 授权码认证 或凭 queryCode 轮询获取 openId。

这是「取 openId」而非「登录」

本接口用于在支付前获取通道用户标识(openId/userId),不涉及商户系统的登录态。

请求地址

POST /unipay/assist/channel/auth/generate-auth-url

  • 认证:RSA 签名(@PaymentVerify
  • 响应:DaxResult<AuthUrlResult>

请求参数

基础参数同 统一支付 - 基础参数,业务参数:

参数类型必填最大长度描述
authTypestring32认证类型(wechat/alipay/union_pay/douyin,默认 wechat
productstring32支付产品编码(决定走哪个产品的认证策略;缺失时由 channelMchNo 反查)
channelAppIdstring128指定认证使用的应用 AppId(优先级高于自动解析,须预先配置)
returnPathstring200来源回跳路径(授权完成后前端回跳的目标路径,会随会话码保存)
capabilitystring32支付能力编码(用于解析具体应用:公众号/小程序)

请求示例

json
{
  "mchNo": "M200000001",
  "appId": "APP001",
  "reqId": "REQ20241201020",
  "reqTime": "2024-12-01 12:00:00",
  "sign": "Base64签名值",
  "authType": "wechat",
  "returnPath": "/pay/result"
}

响应参数

DaxResult<AuthUrlResult>data 字段结构:

参数类型描述
authUrlstring授权访问链接(前端跳转到此地址完成授权)
queryCodestring查询标识码(用于后续 授权码认证 恢复上下文)

响应示例

json
{
  "code": 0,
  "msg": "success",
  "data": {
    "authUrl": "https://open.weixin.qq.com/connect/oauth2/authorize?appid=...&state=...",
    "queryCode": "QC20241201020"
  },
  "sign": "Base64签名值",
  "resTime": "2024-12-01T04:00:00Z",
  "reqId": "REQ20241201020"
}

基于 GNU LGPL v3.0 协议开源