下单后客户端跳转

跳转目标

H5 版本

  • 页面功能: 微信小店商城
  • 适用场景:
    • 外部环境跳转进入小店首页,支持拼接完整链接后跳转或扫码进入页面,最终页面为小程序(部分特殊商户为 H5 页面)
    • 小程序环境内,通过跳转直接打开小店
      • 如需跳转直接打开收银台,小店模板需选择「独立收银台模板」
  • 页面路径:
https://m.sqbe.cn/a0?${query}

小程序版本

  • 页面功能: 微信小店商城
  • 适用场景: 微信生态内,直接跳转拉起小程序,不支持外部环境(浏览器等)跳转拉起
  • 页面路径:
// 微信
const weixinScheme = `weixin://dl/business/?appid=${appIdWechat}&path=${path}&query=${encodeURIComponent(`merchantSn=${merchantSn}&mallSn=${mallSn}&signature=${encodeURIComponent(signature)}&mallName=${mallName}&extraQuery=${encodeURIComponent(JSON.stringify(extraQuery))}`)}`;
// 示例
weixin://dl/business/?appid=wx36e68952a60af089&path=KQPUJDAZVXH7/y4otuwrldsgy/index&query=mallSn%3D2026032619075406726%26signature%3Dx9BymGO3rl2kbTL6_FUD%26extraQuery%3D%257B%2522orderSn%2522%253A%257B%2522orderSn%2522%253A%25227274443107099797%2522%252C%2522orderSignature%2522%253A%2522WUHsplSwnxVfBsrZNNHU%2522%257D%252C%2522acquiring%2522%253A%257B%2522acquiringSn%2522%253A%25222026033017124728943%2522%252C%2522signature%2522%253A%25221XLdiQsHm0T99WaOlpJB%2522%257D%257D
// 支付宝,有支付宝实现的引导页
const alipayScheme = `https://ds.alipay.com/?scheme=${encodeURIComponent(
`alipays://platformapi/startapp?appId=${appIdAlipay}&page=${path}?merchantSn=${merchantSn}&mallSn=${mallSn}&signature=${encodeURIComponent(signature)}&mallName=${mallName}&extraQuery=${encodeURIComponent(JSON.stringify(extraQuery))}`)}`;

// 支付宝,无引导页
alipays://platformapi/startapp?appId=${appIdAlipay}&page=${path}?merchantSn=${merchantSn}&mallSn=${mallSn}&signature=${encodeURIComponent(signature)}&mallName=${mallName}&extraQuery=${encodeURIComponent(JSON.stringify(extraQuery))}
// 示例
https://ds.alipay.com/?scheme=alipays%3A%2F%2Fplatformapi%2Fstartapp%3FappId%3D2019012963170386%26page%3DKQPUJDAZVXH7%2Fy4otuwrldsgy%2Findex%3FmallSn%253D2026032619075406726%2526signature%253Dx9BymGO3rl2kbTL6_FUD%2526extraQuery%253D%25257B%252522orderSn%252522%25253A%25257B%252522orderSn%252522%25253A%2525227274443107099797%252522%25252C%252522orderSignature%252522%25253A%252522WUHsplSwnxVfBsrZNNHU%252522%25257D%25252C%252522acquiring%252522%25253A%25257B%252522acquiringSn%252522%25253A%2525222026033017124728943%252522%25252C%252522signature%252522%25253A%2525221XLdiQsHm0T99WaOlpJB%252522%25257D%25257D
  • 参数:
    • appid:
      • appIdWechat: wx36e68952a60af089
      • appIdAlipay: 2019012963170386
    • path(小程序页面路径): KQPUJDAZVXH7/y4otuwrldsgy/index
    • query(业务参数):详见入参定义

入参定义

query 参数定义

参数名 类型 说明 是否必传 示例
merchantSn string 商户号 "21690003912886"
mallSn string 商城号 "2025112623044236000"
signature string 商城签名 "TS1yhh-HkG5CzVNgCa61"
mallName string 商城名称 "测试商城"
extraQuery object 用于传递额外的业务参数,必须是一个有效的 JSON 对象 见示例

extraQuery 参数定义

参数名 类型 说明 是否必传 示例
orderSn object 订单信息对象,用于跳转到订单详情页 跳转到订单详情页时必传 orderSn: { "orderSn": "ORDER123456", "orderSignature":"signature123" }
orderSn.orderSn string 订单号 orderSn 存在时必传 "ORDER123456"
orderSn.orderSignature string 订单签名 orderSn 存在时必传 "signature123"
acquiring object 收单信息 acquiring: { "acquiringSn":"ORDER123456", "signature":"signature123" }
acquiring.acquiringSn string 收单号
acquiring.signature string 收单签名
returnURL string 跳转回的链接,一个有效的 https:// 地址 H5 可以传递,传递后跳回到这个地址;小程序不支持此参数

⚠️ 注意事项

  1. 嵌套对象orderSnacquiring 是嵌套对象:
    • orderSn 包含 orderSnorderSignature 两个字段
    • acquiring 包含 acquiringSnsignature 两个字段
  2. 使用 encodeURIComponent() 进行 URL 编码。

代码示例

// 拼接参数和链接跳转

/**
 * 跳转 h5 版本
 * 不需要对接方实现支付方式选择或实现判断规则
 **/
const h5MallLink = 'https://m.sqbe.cn/a0';

const query = `merchantSn=${merchantSn}&mallSn=${mallSn}&signature=${encodeURIComponent(signature)}&mallName=${mallName}`;

if (typeof window !== "undefined") {
    window.location.href = `${h5MallLink}?${query}`;
}

/*
链接示例
https://m.sqbe.cn/a0?mallSn=202504211753125230&signature=tKfaMSYAD78eji2ai4j&extraQuery=%7B%22acquiring%22%3A%7B%22acquiringSn%22%3A%222025120416441289954%22%2C%22signature%22%3A%22ERBo9KH8GDtG-fl7VWYm%22%7D%2C%22orderSn%22%3A%7B%22orderSn%22%3A%227274022662440277%22%2C%22orderSignature%22%3A%22f2hKiYKmKaoKvyJ1hhU3%22%7D%2C%22backgroundColor%22%3A%22%22%2C%22foregroundColor%22%3A%22%22%7D
*/

/**
 * 跳转小程序版本
 * 需要对接方实现支付方式选择或实现判断规则
 **/
const appIdWechat = 'wx36e68952a60af089'; // 微信公众号 appid,如为空则使用默认

// 业务参数
const merchantSn = "21690003912886";
const mallSn = "2025112623044236000";
const signature = "TS1yhh-HkG5CzVNgCa61";
const mallName = "测试商城";

// 订单参数,下单接口获得
const extraQuery = JSON.stringify({
    orderSn: {
        orderSn: "ORDER123456",
        orderSignature: "signature123"
    },
    acquiring: {
        acquiringSn: "ORDER123456",
        signature: "signature123"
    }
});

// 页面路径(不含 query)
const pagePath = "/KQPUJDAZVXH7/y4otuwrldsgy/index";

// 构建 query 参数
let query = `merchantSn=${merchantSn}&mallSn=${mallSn}&signature=${signature}&mallName=${encodeURIComponent(mallName)}`;
if (extraQuery) {
    query += `&extraQuery=${encodeURIComponent(extraQuery)}`;
}

// 微信 Scheme URL(path 和 query 分开)
const weixinScheme = `weixin://dl/business/?appid=${appIdWechat}&path=/KQPUJDAZVXH7/y4otuwrldsgy/index&query=${encodeURIComponent(query)}`;

const appIdAlipay = '2019012963170386';

const alipayScheme = `alipays://platformapi/startapp?appId=${appIdAlipay}&page=${pagePath}?merchantSn=${merchantSn}&mallSn=${mallSn}&signature=${encodeURIComponent(signature)}&mallName=${mallName}&extraQuery=${encodeURIComponent(JSON.stringify(extraQuery))}`;

const alipayUrl = `https://ds.alipay.com/?scheme=${encodeURIComponent(alipayScheme)}`;

// 跳转函数
function jumpToWeixin() {
    window.location.href = weixinScheme;
}

function jumpToAlipay() {
    window.location.href = alipayUrl;
}

results matching ""

    No results matching ""