|
@@ -4,60 +4,7 @@ package unionpay
|
|
|
|
|
|
// EntrustCharge 代扣费用
|
|
// EntrustCharge 代扣费用
|
|
func EntrustCharge(mi *MerchantInfo, oi OrderInfo, ci CustomerInfo) (res ReqRespose, err error) {
|
|
func EntrustCharge(mi *MerchantInfo, oi OrderInfo, ci CustomerInfo) (res ReqRespose, err error) {
|
|
- notifyURL := "https://park.chuangxin1.com/api/payment/notify/zhuhai"
|
|
|
|
- /*
|
|
|
|
- var (
|
|
|
|
- accNo []byte
|
|
|
|
- encrypted []byte
|
|
|
|
- signature []byte
|
|
|
|
- values = &url.Values{}
|
|
|
|
- args = make(map[string]string)
|
|
|
|
- )
|
|
|
|
|
|
|
|
-
|
|
|
|
- args["version"] = "5.1.0" // 版本号
|
|
|
|
- args["encoding"] = "utf-8" // 编码方式
|
|
|
|
- args["signMethod"] = "01" // 签名方法
|
|
|
|
- args["txnType"] = "11" // 交易类型
|
|
|
|
- args["txnSubType"] = "02" // 交易子类
|
|
|
|
- args["bizType"] = "000501" // 业务类型
|
|
|
|
- args["accessType"] = "0" // 接入类型
|
|
|
|
- args["channelType"] = "07" // 渠道类型
|
|
|
|
- args["currencyCode"] = "156" // 交易币种, 境内商户勿改
|
|
|
|
- args["backUrl"] = notifyURL // 后台通知地址
|
|
|
|
- args["encryptCertId"] = mi.SerialNumber() // 验签证书序列号
|
|
|
|
- args["certId"] = mi.SerialNumber() // 证书序列号
|
|
|
|
- args["merId"] = mi.MerID // 商户代码
|
|
|
|
- args["orderId"] = oi.OrderID // 商户订单号,8-32位数字字母,不能含“-”或“_”
|
|
|
|
- args["txnTime"] = oi.TxnTime // 订单发送时间,格式为YYYYMMDDhhmmss,取北京时间
|
|
|
|
- args["txnAmt"] = "12" // 交易金额
|
|
|
|
-
|
|
|
|
- accNo, err = mi.Encrypt([]byte(ci.CardNo))
|
|
|
|
- if err != nil {
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
- args["accNo"] = base64Encode(accNo)
|
|
|
|
-
|
|
|
|
- encrypted, err = mi.EncryptCustomerInfo(ci)
|
|
|
|
- if err != nil {
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
- args["customerInfo"] = ci.String(encrypted)
|
|
|
|
-
|
|
|
|
- signature, err = mi.Sign([]byte(createLinkString(args, true, false)))
|
|
|
|
- if err != nil {
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
- args["signature"] = base64Encode(signature) // 签名
|
|
|
|
-
|
|
|
|
- for k, v := range args {
|
|
|
|
- values.Add(k, v)
|
|
|
|
- }
|
|
|
|
- res, err = post(BaseHost+ReqBackTrans, []byte(values.Encode()))
|
|
|
|
- if err != nil {
|
|
|
|
- return
|
|
|
|
- }
|
|
|
|
- // */
|
|
|
|
var body string
|
|
var body string
|
|
args := newParams(oi, ci)
|
|
args := newParams(oi, ci)
|
|
args.TxnType = "11" // 交易类型, 取值:11
|
|
args.TxnType = "11" // 交易类型, 取值:11
|
|
@@ -65,7 +12,7 @@ func EntrustCharge(mi *MerchantInfo, oi OrderInfo, ci CustomerInfo) (res ReqResp
|
|
|
|
|
|
args.BizType = "000501" // 业务类型 代收产品
|
|
args.BizType = "000501" // 业务类型 代收产品
|
|
|
|
|
|
- args.BackURL = notifyURL
|
|
|
|
|
|
+ args.BackURL = oi.NotifyURL
|
|
body, err = args.ToBody(mi, ci)
|
|
body, err = args.ToBody(mi, ci)
|
|
if err != nil {
|
|
if err != nil {
|
|
return
|
|
return
|