wx_Transfer.go 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. //==================================
  2. // * Name:Jerry
  3. // * DateTime:2019/8/21 21:02
  4. // * Desc:
  5. //==================================
  6. package wechat
  7. import (
  8. "fmt"
  9. "github.com/iGoogle-ink/gopay"
  10. )
  11. func Transfer() {
  12. //初始化微信客户端
  13. // appId:应用ID
  14. // MchID:商户ID
  15. // ApiKey:Key值
  16. // isProd:是否是正式环境(企业转账到个人账户,默认正式环境)
  17. client := gopay.NewWeChatClient("wxdaa2ab9ef87b5497", "1368139502", "GFDS8j98rewnmgl45wHTt980jg543abc", true)
  18. nonceStr := gopay.GetRandomString(32)
  19. partnerTradeNo := gopay.GetRandomString(32)
  20. fmt.Println("partnerTradeNo:", partnerTradeNo)
  21. //初始化参数结构体
  22. body := make(gopay.BodyMap)
  23. body.Set("nonce_str", nonceStr)
  24. body.Set("partner_trade_no", partnerTradeNo)
  25. body.Set("openid", "oMlss5F06l97UpwtB-8jvZd6Yabc")
  26. body.Set("check_name", "FORCE_CHECK") // NO_CHECK:不校验真实姓名 , FORCE_CHECK:强校验真实姓名
  27. body.Set("re_user_name", "付明明") //收款用户真实姓名。 如果check_name设置为FORCE_CHECK,则必填用户真实姓名
  28. body.Set("amount", 30) //企业付款金额,单位为分
  29. body.Set("desc", "测试转账") //企业付款备注,必填。注意:备注中的敏感词会被转成字符*
  30. body.Set("spbill_create_ip", "127.0.0.1")
  31. //请求申请退款(沙箱环境下,证书路径参数可传空)
  32. // body:参数Body
  33. // certFilePath:cert证书路径
  34. // keyFilePath:Key证书路径
  35. // pkcs12FilePath:p12证书路径
  36. wxRsp, err := client.Transfer(body, "iguiyu_cert/apiclient_cert.pem", "iguiyu_cert/apiclient_key.pem", "iguiyu_cert/apiclient_cert.p12")
  37. if err != nil {
  38. fmt.Println("Error:", err)
  39. return
  40. }
  41. fmt.Println("wxRsp:", *wxRsp)
  42. }