|
|
|
|
@ -2,24 +2,30 @@ package payplus |
|
|
|
|
|
|
|
|
|
// 常量定义
|
|
|
|
|
const ( |
|
|
|
|
key = "your_secret_key" |
|
|
|
|
StatusSuccess = "SUCCESS" |
|
|
|
|
StatusFail = "FAIL" |
|
|
|
|
key = "QRUQNQ36INNYFFJVRPG8VB394QSWSUG7ZMPDQJ91AMHV6YCBRRAOAQIUCRFMH0F24RGNARLNBYTJBGXPERQHFCPPQAB4THC6ZBMVKRXHRK4LTZE0S1AYDN0GEXBBL0SL" |
|
|
|
|
statusSuccess = "SUCCESS" |
|
|
|
|
statusFail = "FAIL" |
|
|
|
|
payApi = "http://api.letspayfast.com/apipay" |
|
|
|
|
withdrawApi = "http://api.letspayfast.com/apitrans" |
|
|
|
|
mchId = "723609043726" |
|
|
|
|
indiaUpi = "indiaupi" |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
// PayReq 支付请求结构体
|
|
|
|
|
type PayReq struct { |
|
|
|
|
MchId string `json:"mchId" binding:"required"` // 商户号
|
|
|
|
|
OrderNo string `json:"orderNo" binding:"required"` // 订单号
|
|
|
|
|
Amount int64 `json:"amount" binding:"required"` // 支付金额
|
|
|
|
|
NotifyUrl string `json:"notifyUrl" binding:"required"` // 支付结果通知的回调URL
|
|
|
|
|
Sign string `json:"sign,omitempty"` // 签名,生成后填充
|
|
|
|
|
MchId string `json:"mchId"` // 商户号
|
|
|
|
|
OrderNo string `json:"orderNo"` // 订单号
|
|
|
|
|
Amount float64 `json:"amount"` // 支付金额
|
|
|
|
|
Product string `json:"product"` // 产品号 indiaupi
|
|
|
|
|
BankCode string `json:"bankcode"` // 银行代号
|
|
|
|
|
Goods string `json:"goods"` // 物品说明
|
|
|
|
|
NotifyUrl string `json:"notifyUrl"` // 支付结果通知的回调URL
|
|
|
|
|
ReturnUrl string `json:"returnUrl"` // 同步通知
|
|
|
|
|
Sign string `json:"sign"` // 签名,生成后填充
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// PaymentResponse 支付响应结构体
|
|
|
|
|
type PaymentResponse struct { |
|
|
|
|
// PayResp 支付响应结构体
|
|
|
|
|
type PayResp struct { |
|
|
|
|
RetCode string `json:"retCode"` |
|
|
|
|
PayUrl string `json:"payUrl"` |
|
|
|
|
OrderNo string `json:"orderNo"` |
|
|
|
|
@ -30,43 +36,45 @@ type PaymentResponse struct { |
|
|
|
|
|
|
|
|
|
// PayCallbackReq 支付通知结构体
|
|
|
|
|
type PayCallbackReq struct { |
|
|
|
|
MchId string `json:"mchId" binding:"required"` // 商户号
|
|
|
|
|
OrderNo string `json:"orderNo" binding:"required"` // 订单号
|
|
|
|
|
Amount string `json:"amount" binding:"required"` // 支付金额
|
|
|
|
|
TradeNo string `json:"tradeNo" binding:"required"` // 支付平台生成的交易号
|
|
|
|
|
Status string `json:"status" binding:"required"` // 支付状态(如成功、失败)
|
|
|
|
|
Sign string `json:"sign" binding:"required"` // 签名,用于验证通知的真实性
|
|
|
|
|
MchId string `json:"mchId" form:"mchId"` // 商户号
|
|
|
|
|
OrderNo string `json:"orderNo" form:"orderNo"` // 订单号
|
|
|
|
|
Amount string `json:"amount" form:"amount"` // 支付金额
|
|
|
|
|
Product string `json:"product" form:"product"` // 产品号 indiaupi
|
|
|
|
|
PaySuccTime string `json:"paySuccTime" form:"paySuccTime"` // 成功时间
|
|
|
|
|
Status int `json:"status" form:"status"` // 支付状态 1 支付中,2 成功,5 失效,-1 失败
|
|
|
|
|
Sign string `json:"sign" form:"sign"` // 签名,用于验证通知的真实性
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// WithdrawReq 代付请求结构体
|
|
|
|
|
type WithdrawReq struct { |
|
|
|
|
MchId string `json:"mchId" binding:"required"` // 商户号
|
|
|
|
|
OrderNo string `json:"orderNo" binding:"required"` // 订单号
|
|
|
|
|
Amount int64 `json:"amount" binding:"required"` // 代付金额
|
|
|
|
|
BankCode string `json:"bankCode" binding:"required"` // 收款银行代码
|
|
|
|
|
AccountName string `json:"accountName" binding:"required"` // 收款人姓名
|
|
|
|
|
AccountNo string `json:"accountNo" binding:"required"` // 收款账号
|
|
|
|
|
NotifyUrl string `json:"notifyUrl" binding:"required"` // 代付结果通知的回调URL
|
|
|
|
|
Sign string `json:"sign,omitempty"` // 签名,生成后填充
|
|
|
|
|
Type string `json:"type"` // 必填字符小写固定字符 api
|
|
|
|
|
MchId string `json:"mchId"` // 商户号
|
|
|
|
|
MchTransNo string `json:"mchTransNo"` // o 转账订单号
|
|
|
|
|
Amount float64 `json:"amount"` // 代付金额
|
|
|
|
|
NotifyUrl string `json:"notifyUrl"` // 代付结果通知的回调URL
|
|
|
|
|
AccountName string `json:"accountName"` // 收款人姓名
|
|
|
|
|
AccountNo string `json:"accountNo"` // 收款账号
|
|
|
|
|
BankCode string `json:"bankCode"` // 收款银行代码
|
|
|
|
|
RemarkInfo string `json:"remarkInfo"` // 收款银行代码
|
|
|
|
|
Sign string `json:"sign"` // 签名,生成后填充
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// PayoutResponse 代付响应结构体
|
|
|
|
|
type PayoutResponse struct { |
|
|
|
|
// WithdrawResp 代付响应结构体
|
|
|
|
|
type WithdrawResp struct { |
|
|
|
|
RetCode string `json:"retCode"` |
|
|
|
|
RetMsg string `json:"retMsg"` |
|
|
|
|
MchTransNo string `json:"mchTransNo"` |
|
|
|
|
PlatOrder string `json:"platOrder"` |
|
|
|
|
Status string `json:"status"` |
|
|
|
|
Status string `json:"status"` // 1 处理中 3 失败
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// WithdrawCallbackReq 代付通知结构体
|
|
|
|
|
type WithdrawCallbackReq struct { |
|
|
|
|
MchId string `json:"mchId" binding:"required"` // 商户号
|
|
|
|
|
OrderNo string `json:"orderNo" binding:"required"` // 订单号
|
|
|
|
|
Amount string `json:"amount" binding:"required"` // 代付金额
|
|
|
|
|
TradeNo string `json:"tradeNo" binding:"required"` // 代付平台生成的交易号
|
|
|
|
|
Status string `json:"status" binding:"required"` // 代付状态(如成功、失败)
|
|
|
|
|
AccountName string `json:"accountName" binding:"required"` // 收款人姓名
|
|
|
|
|
AccountNo string `json:"accountNo" binding:"required"` // 收款账号
|
|
|
|
|
Sign string `json:"sign" binding:"required"` // 签名,用于验证通知的真实性
|
|
|
|
|
MchId string `json:"mchId" form:"mchId"` // 商户号
|
|
|
|
|
MchTransNo string `json:"mchTransNo" form:"mchTransNo"` // 转账订单号
|
|
|
|
|
Amount string `json:"amount" form:"amount"` // 代付金额
|
|
|
|
|
Status int `json:"status" form:"status"` // 代付状态(如成功、失败) 1 处理中,2 成功,3 失败
|
|
|
|
|
TransSuccTime string `json:"transSuccTime" form:"transSuccTime"` // 收款人姓名
|
|
|
|
|
Sign string `json:"sign" form:"sign"` // 签名,用于验证通知的真实性
|
|
|
|
|
Msg string `json:"msg" form:"msg"` // 信息描述
|
|
|
|
|
} |
|
|
|
|
|