收藏
回答

调用小程序纯签约返回暂无法开通此服务,商家系统错误,请联系商家处理?

let postExtraData = {
					appid: data.h5_url.extraData.appid,
					contract_code: data.h5_url.extraData.contract_code,
					contract_display_account: data.h5_url.extraData.contract_display_account,
					mch_id: data.h5_url.extraData.mch_id,
					notify_url: encodeURIComponent(data.h5_url.extraData.notify_url),//encodeURIComponent(data.h5_url.extraData.notify_url),
					plan_id: data.h5_url.extraData.plan_id,//'195543'
					request_serial: data.h5_url.extraData.request_serial,
					timestamp: data.h5_url.extraData.timestamp,
					outerid: data.h5_url.extraData.outerid,
					sign: data.h5_url.extraData.sign
			}

小程序纯签约展示该报错,使用公众号签约正常签约成功。

1、使用签名工具(https://pay.weixin.qq.com/doc/v2/tool/sign_verify)排查了签名没有问题

2、参数以及参数类型也没有问题

3、notify_url小程序端做了encode, 签名的时候没有encode

4、检查request_serial(请求序列号)或timestamp(时间戳)是int类型,并且时间戳是10位序列号大于10位:9223372036854776000

希望各位大佬帮忙看下,或者有没有哪一位原来遇到过,希望告知排查路径。

			wx.navigateToMiniProgram({
				appId: 'wxbd687630cd02ce1d',
				path: 'pages/index/index',
				extraData: postExtraData,
				success(res) {
					// 成功跳转到签约小程序 
					console.log("打印跳转成功res  " + JSON.stringify(res))
				},
				fail(res) {
					uni.showToast({
						title: '取消签约',
					})
					setTimeout(() => {
						uni.navigateBack()
					}, 600)
					console.log('fail:', res)
					// 未成功跳转到签约小程序 
				},
				complete(res){
					console.log('complete:', res)
				}
			})
回答关注问题邀请回答
收藏

1 个回答

  • 北望沣渭
    北望沣渭
    05-23

    小程序签约,后端给前端的数据中,需要把notify_url做encode后去签名

    05-23
    有用
    回复 2
    • Mark
      Mark
      05-27
      这个尝试过了还是一样的错误
      05-27
      回复
    • 支付社区运营
      支付社区运营
      05-27回复Mark
      打印下签名使用的数据和实际调起时的数据,检查下格式。如果签名确定没问题的话,可能是发起签约域名没有申请,需要联系对接的运营申请。
      05-27
      回复
登录 后发表内容