微信:企业付款给用户

微信企业付款给个人零钱

使用盛派开发的sdk :nuget地址 senparc.weixin.mp.dll

盛派sdk地址:https://weixin.senparc.com/

盛派SDK github 地址:https://github.com/JeffreySu/WeiXinMPSDK


 

企业付款API

使用接口:

 TenPayV3.Transfers(TenPayV3TransfersRequestData dataInfo, string cert, string certPassword, int timeOut = Config.TIME_OUT)

TenPayV3TransfersRequestData 类是对一系列查询参数的封装,最后转换成XML格式

cert 证书存放的绝对路径

certPassword 秘钥

timeout 超时时间

返回结果

类型:TransfersResult


TenPayV3TransfersRequestData(string mchAppid, string mchId, string deviceInfo, string nonceStr, string outTradeNo, string openId, string key, string checkName, string reUserName, decimal amount, string desc, string spbillCreateIP)

其中的参数

参数 类型 备注 是否必须
mchAppid string 公众号appid  
mchId string 商户号  
deviceInfo string 设备号
nonceStr string 随机字符串  
outTradeNo string 商户订单号  
openId string 用户openid  
key string api密钥  
checkName string 校验用户名选项 NO_CHECK:不校验真实姓名 
FORCE_CHECK:强校验真实姓名
reUserName string 收款用户姓名

可选

收款用户真实姓名。 
如果check_name设置为FORCE_CHECK,则必填用户真实姓名

amount decimal 金额  
desc string 描述  
spbillCreateIP string 用户ip  

 

TransfersResult 返回类型

    返回值        描述
err_code 错误代码
err_code_des 错误代码描述
result_code 返回业务结果
result_code 设备号
mch_appid 商户appid
nonce_str 随机字符串
partner_trade_no 商户订单号
payment_no 微信订单号
payment_time  微信支付成功时间

 

 

实现代码如下

                //获取配置信息
                string appId = "appid";
                string MCHID = "商户号";

                //获取随机字符串
                string nonceStr = JSSDKHelper.GetNoncestr();//利用sdk jssdkhelper类获取随机字符串方法
                //获取商户订单号
                string partner_trade_no = WxPayApi.GenerateOutTradeNo();//利用wxpayapi 下生成的随机字符串
                //用户openIDstring openid = "用户openid";
                //api密钥
                string key ="api密钥";
          //用户真实姓名string reUserName = "";//可填/可不填 //金额 decimal amount = 自己设定; //描述 string desc = "描述信息"; //获取提现用户ip地址 string ip = HttpContext.Current.Request.UserHostAddress; TenPayV3TransfersRequestData data = new TenPayV3TransfersRequestData(appId, MCHID, "设备号(可为空)", nonceStr, partner_trade_no, openid, key, "NO_CHECK(两个参数可选)", reUserName, amount, desc, ip);
          //获取证书路径
string cert = Server.MapPath("证书路径"); TransfersResult result = TenPayV3.Transfers(data, cert, "cert密码", 10000);
          //接受微信返回的信息
string IsSuccess = result.result_code;
          
if (IsSuccess == "SUCCESS")
          {           
//执行逻辑操作           }
          else
          {
          }

 

 

 

 

 

posted @ 2018-03-27 18:12  IcareU  阅读(735)  评论(0编辑  收藏  举报