下单后客户端跳转
跳转目标
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 对象 |
否 |
见示例 |
| 参数名 |
类型 |
说明 |
是否必传 |
示例 |
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 可以传递,传递后跳回到这个地址;小程序不支持此参数 |
⚠️ 注意事项
- 嵌套对象:
orderSn 和 acquiring 是嵌套对象:
orderSn 包含 orderSn 和 orderSignature 两个字段
acquiring 包含 acquiringSn 和 signature 两个字段
- 使用
encodeURIComponent() 进行 URL 编码。
代码示例
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}`;
}
const appIdWechat = 'wx36e68952a60af089';
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"
}
});
const pagePath = "/KQPUJDAZVXH7/y4otuwrldsgy/index";
let query = `merchantSn=${merchantSn}&mallSn=${mallSn}&signature=${signature}&mallName=${encodeURIComponent(mallName)}`;
if (extraQuery) {
query += `&extraQuery=${encodeURIComponent(extraQuery)}`;
}
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;
}