Documentation ¶
Index ¶
- type JSAPIParams
- type OrderQueryParams
- type OrderQueryRequest
- type OrderQueryResult
- type Pay
- func (pcf *Pay) CheckSign(or *OrderQueryResult, p *UnifiedorderParams) error
- func (pcf *Pay) GetJSAPI(p *UnifiedorderParams) (*JSAPIParams, error)
- func (pcf *Pay) NotifyInfo(req *http.Request) (*OrderQueryResult, error)
- func (pcf *Pay) OrderMchQuery(TransactionID string) (*OrderQueryResult, error)
- func (pcf *Pay) OrderQuery(outTradeNo string) (*OrderQueryResult, error)
- func (pcf *Pay) PrePayID(p *UnifiedorderParams) (prePayID string, err error)
- type UnifiedorderParams
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type JSAPIParams ¶
type JSAPIParams struct { AppID string Timestamp int64 NonceStr string Package string SignType string Sign string }
JSAPIParams 是传出用于 JSAPIConfig 用的参数
type OrderQueryParams ¶
type OrderQueryParams struct { TransactionID string `xml:"transaction_id,omitempty"` // 微信订单号 TransactionID and OutTradeNo 二选1 OutTradeNo string `xml:"out_trade_no,omitempty"` // 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*@ ,且在同一个商户号下唯一。 }
OrderQueryParams 用以查询订单的传入参数
type OrderQueryRequest ¶
type OrderQueryRequest struct { AppID string `xml:"appid"` // 微信分配的公众账号ID MchID string `xml:"mch_id"` // 微信支付分配的商户号 TransactionID string `xml:"transaction_id,omitempty"` // 微信订单号 TransactionID and OutTradeNo 二选1 OutTradeNo string `xml:"out_trade_no,omitempty"` // 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*@ ,且在同一个商户号下唯一。 NonceStr string `xml:"nonce_str"` // 随机字符串,不长于32位。推荐随机数生成算法 Sign string `xml:"sign"` // 签名,详见签名生成算法 SignType string `xml:"sign_type,omitempty"` // 签名类型 }
OrderQueryRequest 发起订单查询的结构体
type OrderQueryResult ¶
type OrderQueryResult struct { ReturnCode string `xml:"return_code"` // UCCESS/FAIL 此字段是通信标识,非交易标识,交易是否成功需要查看trade_state来判断 ReturnMsg string `xml:"return_msg"` // 当return_code为FAIL时返回信息为错误原因 ,例如 签名失败 参数格式校验错误 AppID string `xml:"appid,omitempty"` // 微信分配的公众账号ID MchID string `xml:"mch_id,omitempty"` // 微信支付分配的商户号 NonceStr string `xml:"nonce_str,omitempty"` // 随机字符串,不长于32位。推荐随机数生成算法 Sign string `xml:"sign,omitempty"` // 签名,详见签名生成算法 ResultCode string `xml:"result_code,omitempty"` // SUCCESS/FAIL ErrCode string `xml:"err_code,omitempty"` // 当result_code为FAIL时返回错误代码,详细参见下文错误列表 ErrCodeDes string `xml:"err_code_des,omitempty"` // 当result_code为FAIL时返回错误描述,详细参见下文错误列表 TradeState string `xml:"trade_state,omitempty"` // SUCCESS—支付成功 REFUND—转入退款NOTPAY—未支付CLOSED—已关闭REVOKED—已撤销(付款码支付)USERPAYING--用户支付中(付款码支付)PAYERROR--支付失败(其他原因,如银行返回失败)支付状态机请见下单API页面 DeviceInfo string `xml:"device_info,omitempty"` // 微信支付分配的终端设备号 OpenID string `xml:"openid,omitempty"` // 用户在商户appid下的唯一标识 IsSubscribe string `XML:"is_subscribe,omitempty"` // 是否关注了公众号 TradeType string `xml:"trade_type,omitempty"` // 交易类型 JSAPI,NATIVE,APP,MICROPAY, BankType string `xml:"bank_type,omitempty"` // 付款银行 TotalFee int `xml:"total_fee,omitempty"` // 标价金额 SettlementTotalFee int `xml:"settlement_total_fee,omitempty"` // 应结订单金额 FeeType string `xml:"fee_type,omitempty"` // 货币种类 目前仅 CNY CashFee int `xml:"cash_fee,omitempty"` // 现金支付金额 CashFeeType string `xml:"cash_fee_type,omitempty"` // 货币类型,符合ISO 4217标准的三位字母代码, CouponFee int `xml:"coupon_fee,omitempty"` // 代金券”金额<=订单金额,订单金额-“代金券”金额=现金支付金额, CouponCount int `xml:"coupon_count,omitempty"` // 代金券 数量 TransactionID string `xml:"transaction_id,omitempty"` // 微信订单号 OutTradeNo string `xml:"out_trade_no,omitempty"` // 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*@ ,且在同一个商户号下唯一。 Attach string `xml:"attach,omitempty"` // 深圳分店 附加数据,原样返回 TradeStateDesc string `xml:"trade_state_desc,omitempty"` // 对当前查询订单状态的描述和下一步操作的指引 TimeEnd string `xml:"time_end,omitempty"` // 交易结束时间 }
OrderQueryResult 查询订单的返回结果 暂时不支持 查询 代金券类型,代金券ID,单个代金券支付金额
type Pay ¶
Pay struct extends context
func (*Pay) CheckSign ¶
func (pcf *Pay) CheckSign(or *OrderQueryResult, p *UnifiedorderParams) error
CheckSign 检查签名
func (*Pay) GetJSAPI ¶
func (pcf *Pay) GetJSAPI(p *UnifiedorderParams) (*JSAPIParams, error)
GetJSAPI 配置文件
func (*Pay) NotifyInfo ¶
func (pcf *Pay) NotifyInfo(req *http.Request) (*OrderQueryResult, error)
NotifyInfo 解码微信的通知信息 并验证权限
func (*Pay) OrderMchQuery ¶
func (pcf *Pay) OrderMchQuery(TransactionID string) (*OrderQueryResult, error)
OrderMchQuery 查询订单结果 自己判断 TradeState 是否成功
func (*Pay) OrderQuery ¶
func (pcf *Pay) OrderQuery(outTradeNo string) (*OrderQueryResult, error)
OrderQuery 查询订单结果 自己判断 TradeState 是否成功
type UnifiedorderParams ¶
type UnifiedorderParams struct { TotalFee string // TotalFee 订单总金额,单位为分 CreateIP string // CreateIP 客户端IP 支持IPV6 Body string // Body 商品描述 长度 128 FeeType string // 标价币种 符合ISO 4217标准的三位字母代码 3 OutTradeNo string // 商户订单号码,唯一 OpenID string // openid 收取获取 PayNotifyURL string //通知地址 }
UnifiedorderParams was NEEDED when request unifiedorder 统一下单 传入的参数,用于生成 prepay_id 的必需参数 FeeType [本平台自增加]= HKD
Click to show internal directories.
Click to hide internal directories.