/// <summary> /// 红包支付 /// </summary> /// <returns></returns> public static string RedPackPay() // { //CheckAccount();//检查AccountInfo的对象属性值 IDictionary <string, string> parameters = new Dictionary <string, string>(); parameters.Add("nonce_str", StringOperate.GetRandomString(16)); //随机字符串 parameters.Add("mch_billno", "201807311513001"); //商户订单号 parameters.Add("mch_id", "1489094092"); //商户号, 注意是mchid而非mch_id parameters.Add("wxappid", "wx6f67aee8f096b87f"); //微信分配的公众账号ID(企业号corpid即为此appId)。在微信开放平台(open.weixin.qq.com)申请的移动应用appid无法使用该接口。 parameters.Add("send_name", "味达美餐饮"); parameters.Add("re_openid", "o_-IA0YU6JgzTvKINab0B30y0L_Y"); parameters.Add("total_amount", "0.5"); //终端ip parameters.Add("total_num", "1"); //终端ip parameters.Add("wishing", "谢谢"); parameters.Add("client_ip", "58.57.17.2"); parameters.Add("act_name", "尚品生抽活动"); parameters.Add("remark", "多买多发"); parameters.Add("scene_id", "PRODUCT_1"); parameters.Add("risk_info", ""); parameters.Add("consume_mch_id", ""); parameters = parameters.OrderBy(p => p.Key).ToDictionary(p => p.Key, o => o.Value); parameters.Add("sign", StringOperate.Str2MD5(StringOperate.MakeSign(parameters, ConfigurationManager.AppSettings["APISecret"].ToString())));//最后生成签名 string requestXml = XmlHelpler.GetRedPackPayXml(parameters); var url = string.Format("https://api.mch.weixin.qq.com/mmpaymkttransfers/sendredpack"); var a = WeiXinHelper.SendCorpPayWithCert(requestXml, url); return(a); }
/// <summary> /// 企业付款(请求需要双向证书) /// 企业付款业务是基于微信支付商户平台的资金管理能力,为了协助商户方便地实现企业向个人付款, /// 针对部分有开发能力的商户,提供通过API完成企业付款的功能。 比如目前的保险行业向客户退保、给付、理赔。 /// 企业付款将使用商户的可用余额,需确保可用余额充足。查看可用余额、充值、提现请登录商户平台“资金管理”进行操作。https://pay.weixin.qq.com/ /// 注意:与商户微信支付收款资金并非同一账户,需要单独充值。 /// </summary> /// <param name="amount">企业支付数据</param> /// <param name="openid">微信openid</param> /// <returns></returns> public static string CorpPay(string amount, string openid) // { string nowDay = DateTime.Now.ToString("yyyyMMddHHmmssffff"); IDictionary <string, string> parameters = new Dictionary <string, string>(); //parameters.Add("mch_appid", "wx6de1aa1032b410fc");//公众账号appid, 注意是mch_appid,而非wxappid parameters.Add("mch_appid", "wx9657251bde1a71c4"); //公众账号appid, 注意是mch_appid,而非wxappid 餐饮积分的 //parameters.Add("mchid", "1489094092");//商户号, 注意是mchid而非mch_id parameters.Add("mchid", "1249285801"); //商户号, 注意是mchid而非mch_id 餐饮积分的 parameters.Add("nonce_str", StringOperate.GetRandomString(16)); //随机字符串 parameters.Add("spbill_create_ip", "58.57.17.2"); //终端ip parameters.Add("partner_trade_no", nowDay); //交易单号 parameters.Add("device_info", ""); //终端ip parameters.Add("openid", openid); //我的openid用于测试 parameters.Add("check_name", "NO_CHECK"); parameters.Add("re_user_name", ""); parameters.Add("amount", amount); parameters.Add("desc", "恭喜您,味达美尚品生抽的红包已领取成功!"); parameters = parameters.OrderBy(p => p.Key).ToDictionary(p => p.Key, o => o.Value); parameters.Add("sign", StringOperate.Str2MD5(StringOperate.MakeSign(parameters, ConfigurationManager.AppSettings["APISecret"].ToString())));//最后生成签名 string requestXml = XmlHelpler.GetCorpPayXml(parameters); var url = string.Format("https://api.mch.weixin.qq.com/mmpaymkttransfers/promotion/transfers"); var responseXml = WeiXinHelper.SendCorpPayWithCert(requestXml, url); return(responseXml); }