首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >快应用如何去申请微信支付商户?-快应用申请微信支付-优雅草卓伊凡

快应用如何去申请微信支付商户?-快应用申请微信支付-优雅草卓伊凡

原创
作者头像
卓伊凡
发布2025-07-11 18:02:25
发布2025-07-11 18:02:25
16300
代码可运行
举报
运行总次数:0
代码可运行

快应用如何去申请微信支付商户?-快应用申请微信支付-优雅草卓伊凡

大家都知道 小程序,app,网站 申请 微信支付,那么快应用呢?

在快应用中接入微信支付需要特殊处理,因为快应用本身无法直接调用微信支付SDK。以下是完整的接入方案和技术实现步骤:


一、微信支付申请流程(针对快应用)

1. 注册微信商户平台
  • 访问[微信支付商户平台]
  • 完成企业资质认证(需营业执照、法人身份证等)
  • 获取商户号(MCHID)和API密钥(API_KEY)
2. 申请「H5支付」权限

快应用需使用 微信H5支付 方式(非APP支付):

  1. 登录商户平台 → 产品中心 → H5支付
  2. 提交申请材料:
    • 支付域名:填写快应用落地页域名(如 youyacao.cn
    • 场景说明:描述为”快应用支付”
    • 补充材料上传快应用官方资质证明
3. 配置支付域名

在商户平台 → 账户中心 → API安全 → 支付域名:

代码语言:javascript
代码运行次数:0
运行
复制
https://youyacao.cn

二、快应用端技术实现

1. manifest.json 配置
代码语言:javascript
代码运行次数:0
运行
复制
{
  "features": [
    { "name": "system.pay" }
  ],
  "config": {
    "wechatPay": {
      "appid": "xxxx", // 微信公众平台APPID
      "h5Domain": "https://youyacao.cn" // 与商户平台配置一致
    }
  }
}
2. 支付流程代码实现
代码语言:javascript
代码运行次数:0
运行
复制
// 步骤1:获取支付参数(需后端生成)
async function getWechatPayParams(orderId) {
  const res = await this.$http.post('/api/pay/wechat', {
    order_id: orderId,
    openid: this.userInfo.openid // 如果有用户体系
  });
  return res.data;
}

// 步骤2:调用支付
async function payWithWechat() {
  try {
    const params = await getWechatPayParams('ORDER123');

    // 关键支付代码
    const payment = require('@system.pay');
    payment.pay({
      orderInfo: JSON.stringify({
        appid: params.appId,      // 微信公众平台APPID
        partnerid: params.mchId,  // 商户号
        prepayid: params.prepayId,
        package: 'Sign=WXPay',    // 固定值
        noncestr: params.nonceStr,
        timestamp: params.timeStamp,
        sign: params.sign         // 签名
      }),
      success: () => {
        console.log('支付成功');
      },
      fail: (err) => {
        console.error('支付失败', err);
      }
    });
  } catch (e) {
    console.error('支付异常', e);
  }
}
3. 后端签名生成(PHP示例)
代码语言:javascript
代码运行次数:0
运行
复制
function generateWechatPayParams($order) {
  $params = [
    'appId'     => 'xxxxx', // 公众号APPID
    'mchId'     => 'xxxxx',         // 商户号
    'prepayId'  => $order['prepay_id'],  // 预支付ID
    'nonceStr'  => md5(uniqid()),        // 随机字符串
    'timeStamp' => (string)time(),        // 时间戳
    'package'   => 'Sign=WXPay'          // 固定值
  ];

  // 生成签名
  $signStr = "appId={$params['appId']}&nonceStr={$params['nonceStr']}".
             "&package={$params['package']}&signType=MD5&timeStamp={$params['timeStamp']}";
  $params['sign'] = strtoupper(md5($signStr . "&key=" . API_KEY));

  return $params;
}

三、微信支付调试要点

1. 支付白名单配置
  • 在微信商户平台 → 产品中心 → 开发配置
  • 添加测试支付目录:
代码语言:javascript
代码运行次数:0
运行
复制
https://youyacao.cn/pay/*
2. 常见报错处理

错误码

原因

解决方案

APPID_MCHID_NOT_MATCH

商户号与APPID不匹配

确认公众号与商户号已绑定

NO_AUTH

未开通H5支付权限

重新提交H5支付申请

INVALID_REQUEST

签名错误

检查签名算法和密钥

3. 沙箱测试
代码语言:javascript
代码运行次数:0
运行
复制
# 获取沙箱密钥
curl -d "" "https://api.mch.weixin.qq.com/sandboxnew/pay/getsignkey"

四、注意事项

  1. 域名备案:支付域名必须已完成ICP备案
  2. 回调通知:需处理微信服务器的支付结果异步通知
  3. iOS兼容:快应用在iOS设备需跳转H5支付页
  4. 费率差异:H5支付费率通常为1%,高于APP支付

五、完整支付流程图

按照以上步骤可实现快应用的微信支付接入,如遇审核问题,建议在申请材料中强调快应用是”基于手机厂商联盟标准的轻应用”。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 快应用如何去申请微信支付商户?-快应用申请微信支付-优雅草卓伊凡
    • 一、微信支付申请流程(针对快应用)
    • 二、快应用端技术实现
    • 三、微信支付调试要点
    • 四、注意事项
    • 五、完整支付流程图
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档