Jerry %!s(int64=6) %!d(string=hai) anos
pai
achega
a05951851c
Modificáronse 2 ficheiros con 56 adicións e 10 borrados
  1. 44 0
      README.md
  2. 12 10
      constant.go

+ 44 - 0
README.md

@@ -34,6 +34,7 @@
 * 下载对账单:client.DownloadBill()
 * 下载对账单:client.DownloadBill()
 * 下载资金账单:client.DownloadFundFlow()
 * 下载资金账单:client.DownloadFundFlow()
 * 拉取订单评价数据:client.BatchQueryComment()
 * 拉取订单评价数据:client.BatchQueryComment()
+* 企业向微信用户个人付款:client.Transfer()
 
 
 ## 微信公共API
 ## 微信公共API
 
 
@@ -410,6 +411,49 @@ if err != nil {
 }
 }
 fmt.Println("Response:", wxRsp)
 fmt.Println("Response:", wxRsp)
 ```
 ```
+
+### 企业向微信用户个人付款
+
+参数说明文档:[企业付款](https://pay.weixin.qq.com/wiki/doc/api/tools/mch_pay.php?chapter=14_2)
+
+注意:默认只支持正式环境,isProd 请填写 true
+
+```go
+//初始化微信客户端
+//    appId:应用ID
+//    MchID:商户ID
+//    ApiKey:Key值
+//    isProd:是否是正式环境(企业转账到个人账户,默认正式环境)
+client := gopay.NewWeChatClient("wxd678efh567hg6787", "1230000109", "192006250b4c09247ec02edce69f6a2d", true)
+
+nonceStr := gopay.GetRandomString(32)
+partnerTradeNo := gopay.GetRandomString(32)
+
+fmt.Println("partnerTradeNo:", partnerTradeNo)
+//初始化参数结构体
+body := make(gopay.BodyMap)
+body.Set("nonce_str", nonceStr)
+body.Set("partner_trade_no", partnerTradeNo)
+body.Set("openid", openid)
+body.Set("check_name", "FORCE_CHECK") // NO_CHECK:不校验真实姓名 , FORCE_CHECK:强校验真实姓名
+body.Set("re_user_name", "付明明")       //收款用户真实姓名。 如果check_name设置为FORCE_CHECK,则必填用户真实姓名
+body.Set("amount", 1)                 //企业付款金额,单位为分
+body.Set("desc", "测试转账")              //企业付款备注,必填。注意:备注中的敏感词会被转成字符*
+body.Set("spbill_create_ip", "127.0.0.1")
+
+//请求申请退款(沙箱环境下,证书路径参数可传空)
+//    body:参数Body
+//    certFilePath:cert证书路径
+//    keyFilePath:Key证书路径
+//    pkcs12FilePath:p12证书路径
+wxRsp, err := client.Transfer(body, "apiclient_cert.pem", "apiclient_key.pem", "apiclient_cert.p12")
+if err != nil {
+    fmt.Println("Error:", err)
+    return
+}
+fmt.Println("wxRsp:", *wxRsp)
+```
+
 ---
 ---
 
 
 # 支付宝支付
 # 支付宝支付

+ 12 - 10
constant.go

@@ -21,16 +21,17 @@ const (
 	wx_base_url_us  = "https://apius.mch.weixin.qq.com/" //其他
 	wx_base_url_us  = "https://apius.mch.weixin.qq.com/" //其他
 
 
 	//正式
 	//正式
-	wx_Micropay          = "pay/micropay"                    //提交付款码支付
-	wx_UnifiedOrder      = "pay/unifiedorder"                //统一下单
-	wx_OrderQuery        = "pay/orderquery"                  //查询订单
-	wx_CloseOrder        = "pay/closeorder"                  //关闭订单
-	wx_Refund            = "secapi/pay/refund"               //申请退款
-	wx_Reverse           = "secapi/pay/reverse"              //撤销订单
-	wx_RefundQuery       = "pay/refundquery"                 //查询退款
-	wx_DownloadBill      = "pay/downloadbill"                //下载对账单
-	wx_DownloadFundFlow  = "pay/downloadfundflow"            //下载资金账单
-	wx_BatchQueryComment = "billcommentsp/batchquerycomment" //拉取订单评价数据
+	wx_Micropay          = "pay/micropay"                          //提交付款码支付
+	wx_UnifiedOrder      = "pay/unifiedorder"                      //统一下单
+	wx_OrderQuery        = "pay/orderquery"                        //查询订单
+	wx_CloseOrder        = "pay/closeorder"                        //关闭订单
+	wx_Refund            = "secapi/pay/refund"                     //申请退款
+	wx_Reverse           = "secapi/pay/reverse"                    //撤销订单
+	wx_RefundQuery       = "pay/refundquery"                       //查询退款
+	wx_DownloadBill      = "pay/downloadbill"                      //下载对账单
+	wx_DownloadFundFlow  = "pay/downloadfundflow"                  //下载资金账单
+	wx_BatchQueryComment = "billcommentsp/batchquerycomment"       //拉取订单评价数据
+	wx_Transfers         = "mmpaymkttransfers/promotion/transfers" //企业向微信用户个人付款
 
 
 	//SanBox
 	//SanBox
 	wx_SanBox_GetSignKey        = "https://api.mch.weixin.qq.com/sandboxnew/pay/getsignkey"
 	wx_SanBox_GetSignKey        = "https://api.mch.weixin.qq.com/sandboxnew/pay/getsignkey"
@@ -44,6 +45,7 @@ const (
 	wx_SanBox_DownloadBill      = "sandboxnew/pay/downloadbill"
 	wx_SanBox_DownloadBill      = "sandboxnew/pay/downloadbill"
 	wx_SanBox_DownloadFundFlow  = "sandboxnew/pay/downloadfundflow"
 	wx_SanBox_DownloadFundFlow  = "sandboxnew/pay/downloadfundflow"
 	wx_SanBox_BatchQueryComment = "sandboxnew/billcommentsp/batchquerycomment"
 	wx_SanBox_BatchQueryComment = "sandboxnew/billcommentsp/batchquerycomment"
+	wx_SanBox_Transfers         = "sandboxnew/mmpaymkttransfers/promotion/transfers"
 
 
 	//支付类型
 	//支付类型
 	TradeType_Mini   = "JSAPI"
 	TradeType_Mini   = "JSAPI"