***新版微信H5支付技术总结(原创)

新版微信H5支付官方文档:

https://pay.weixin.qq.com/wiki/doc/api/H5.php?chapter=9_20&index=1

H5支付是指商户在微信客户端外的移动端网页展示商品或服务,用户在前述页面确认使用微信支付时,商户发起本服务呼起微信客户端进行支付。 主要用于触屏版的手机浏览器请求微信支付的场景。可以方便的从外部浏览器唤起微信支付。

 

请求参数 重点:

终端IP   必须传正确的用户端IP

交易类型  trade_type    H5支付的交易类型为MWEB

场景信息   scene_info

该字段用于上报支付的场景信息,针对H5支付有以下三种场景,请根据对应场景上报,H5支付不建议在APP端使用,针对场景1,2请接入APP支付,不然可能会出现兼容性问题

1,IOS移动应用
{"h5_info": //h5支付固定传"h5_info"
{"type": "", //场景类型
"app_name": "", //应用名
"bundle_id": "" //bundle_id
}
}

2,安卓移动应用
{"h5_info": //h5支付固定传"h5_info"
{"type": "", //场景类型
"app_name": "", //应用名
"package_name": "" //包名
}
}

3,WAP网站应用
{"h5_info": //h5支付固定传"h5_info"
{"type": "", //场景类型
"wap_url": "",//WAP网站URL地址
"wap_name": "" //WAP 网站名
}
}

返回参数重点:

支付跳转链接   mweb_url     mweb_url为拉起微信支付收银台的中间页面,可通过访问该url来拉起微信客户端,完成支付,mweb_url的有效期为5分钟。

  (本文为谦信君原创,有相关技术问题可以找老虎咨询 http://www.laohuzx.com/)

微信H5支付DEMO-PHP版参考:

http://www.cnblogs.com/kenshinobiy/p/8883753.html


新版微信H5支付流程

1、用户在商户侧完成下单,使用微信支付进行支付

2、由商户后台向微信支付发起下单请求(调用统一下单接口)注:交易类型trade_type=MWEB

3、微信支付校验商户权限

4、统一下单接口返回支付相关参数给商户后台,如支付跳转url(参数名“mweb_url”,即流程图中的微信中转页面地址)

5、商户后台收到统一下单接口返回参数,将mweb_url返回给前端

6、商户通过前端页面访问微信中转页面mweb_url(此步骤微信支付会校验refer,以判断请求来源是否合法)

7、由中转页面mweb_url主动唤起微信支付收银台

8、微信支付收银台被唤起同时关闭mweb_url中转页面

9、用户在微信支付收银台完成支付

 参考自:https://www.cnblogs.com/txw1958/p/wxpayv3_h5.html

原文地址:https://www.cnblogs.com/kenshinobiy/p/8881326.html