C#微信分账功能
普通商户分账功能
分账比例:目前只有”低比例分账“小于等于30%分账,分账金额需要减去(千6)手续费.
每一张订单只能分发,当前订单总额的百分之30可以分账;
比如:一张订单支付金额100元,这张订单只能分发29.82元。
(100-100*0.006)*30% 的金额
开发文档地址:https://pay.weixin.qq.com/wiki/doc/api/allocation.php?chapter=27_6&index=2
第一:确认是普通商户分账
第二步:添加分账接收方
注意:添加分账接收方,目前只能没请求一次添加一个分账接收方(我测试时一次只能添加一个分账接收方)。
这个地方就比较坑了:每天加一个接收方都要请求一次地址。
/** * sha256_HMAC加密 * @param message 消息 * @param secret 秘钥 * @return 加密后字符串 */ public static string Encrypt(string message, string secret) { secret = secret ?? ""; var encoding = new System.Text.UTF8Encoding(); byte[] keyByte = encoding.GetBytes(secret); byte[] messageBytes = encoding.GetBytes(message); using (var hmacsha256 = new HMACSHA256(keyByte)) { byte[] hashmessage = hmacsha256.ComputeHash(messageBytes); StringBuilder builder = new StringBuilder(); for (int i = 0; i < hashmessage.Length; i++) { builder.Append(hashmessage[i].ToString("x2")); } return builder.ToString(); } }
第三步:请求单次分账
参数说明:(商户分账单号 out_order_no )是自己平台的商户订单号;