微信:企业付款给用户

微信企业付款给个人零钱

使用盛派开发的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, "1283802401", 10000);
          //接受微信返回的信息
string IsSuccess = result.result_code;
          
if (IsSuccess == "SUCCESS")
          {           
//执行逻辑操作           }
          else
          {
          }