微信H5支付 C#
H5支付是指商户在微信客户端外的移动端网页展示商品或服务,用户在前述页面确认使用微信支付时,商户发起本服务呼起微信客户端进行支付。
主要用于触屏版的手机浏览器请求微信支付的场景。可以方便的从外部浏览器唤起微信支付。
一、首先需要去 开通H5支付 功能
地址:https://pay.weixin.qq.com/index.php 官网提示 2-3天,我的是一天就开通了。
二、 申请的同时开始写接口代码
参数什么的 最终组合成这种格式的就行了。 详细可以看 API
我个人用的是 TenpayUtil.cs 、UnifiedOrder.cs 这个类,里面函数写好了。只需要传参就好。
<xml> <appid>wx2421b1c4370ec43b</appid> <attach>支付测试</attach> <body>H5支付测试</body> <mch_id>10000100</mch_id> <nonce_str>1add1a30ac87aa2db72f57a2375d8fec</nonce_str> <notify_url>http://wxpay.wxutil.com/pub_v2/pay/notify.v2.php</notify_url> <openid>oUpF8uMuAJO_M2pxb1Q9zNjWeS6o</openid> 非必填 <out_trade_no>1415659990</out_trade_no> <spbill_create_ip>14.23.150.211</spbill_create_ip> <total_fee>1</total_fee> <trade_type>MWEB</trade_type> 注意这个噢 <scene_info>{"h5_info": {"type":"IOS","app_name": "王者荣耀","package_name": "com.tencent.tmgp.sgame"}}</scene_info> <sign>0CB01533B8C1EF103065174F50BCA001</sign> </xml>
string UnifiedPayUrl = "https://api.mch.weixin.qq.com/pay/unifiedorder"; TenpayUtil tu = new TenpayUtil(); string post_data = tu.getUnifiedOrderXml(order, key); string request_data = tu.PostXmlToUrl(UnifiedPayUrl, post_data);
最后 参数POST 到指定地址返回数据 request_data 。
如果 返回了 SUCCESS那代表你成功了! 是不是很NB。
所以 最后 会得到一个 mweb_url 支付跳转链接,直接打开 就可以调起 微信支付了。 恭喜你 ,大功告成!
送 阿里云幸运娟
哥们 如果觉得对你有帮助了,不妨点个赞哈! O(∩_∩)O谢谢。