Documentation ¶
Index ¶
- Constants
- type ApiError
- type CertificatesResponse
- type CertificatesResult
- type Client
- func (c *Client) Certificates() *CertificatesResult
- func (c *Client) EcommerceFundBalance(accountType string) *EcommerceFundBalanceResult
- func (c *Client) EcommerceFundEndDayBalance(date string) *EcommerceFundEndDayBalanceResult
- func (c *Client) GetJsApi(param GetJsApi) (result GetJsApiResult, err error)
- func (c *Client) GetSpAppid() string
- func (c *Client) GetSpMchId() string
- func (c *Client) GetSubAppid() string
- func (c *Client) GetSubMchId() string
- func (c *Client) MerchantFundBalance(accountType string) *MerchantFundBalanceResult
- func (c *Client) MerchantFundDayEndBalance(accountType, date string) *MerchantFundDayEndBalanceResult
- func (c *Client) PayPartnerTransactionsH5(notMustParams ...gorequest.Params) *PayPartnerTransactionsH5Result
- func (c *Client) PayPartnerTransactionsId(transactionId string) *PayPartnerTransactionsIdResult
- func (c *Client) PayPartnerTransactionsJsapi(notMustParams ...gorequest.Params) *PayPartnerTransactionsJsapiResult
- func (c *Client) PayPartnerTransactionsOutTradeNo(outTradeNo string) *PayPartnerTransactionsOutTradeNoResult
- func (c *Client) PayPartnerTransactionsOutTradeNoClose(outTradeNo string) *PayPartnerTransactionsOutTradeNoCloseResult
- func (c *Client) RefundDomesticRefunds(notMustParams ...gorequest.Params) *RefundDomesticRefundsResult
- func (c *Client) RefundDomesticRefundsOutRefundNo(outRefundNo string) *RefundDomesticRefundsOutRefundNoResult
- func (c *Client) SubConfig(subAppid, subMchId string) *Client
- type ConfigClient
- type EcommerceFundBalanceResponse
- type EcommerceFundBalanceResult
- type EcommerceFundEndDayBalanceResponse
- type EcommerceFundEndDayBalanceResult
- type GetJsApi
- type GetJsApiResult
- type MerchantFundBalanceResponse
- type MerchantFundBalanceResult
- type MerchantFundDayEndBalanceResponse
- type MerchantFundDayEndBalanceResult
- type PayPartnerTransactionsH5Response
- type PayPartnerTransactionsH5Result
- type PayPartnerTransactionsIdResponse
- type PayPartnerTransactionsIdResult
- type PayPartnerTransactionsJsapiResponse
- type PayPartnerTransactionsJsapiResult
- type PayPartnerTransactionsOutTradeNoCloseResult
- type PayPartnerTransactionsOutTradeNoResponse
- type PayPartnerTransactionsOutTradeNoResult
- type RefundDomesticRefundsOutRefundNoResponse
- type RefundDomesticRefundsOutRefundNoResult
- type RefundDomesticRefundsResponse
- type RefundDomesticRefundsResult
Constants ¶
const ( Version = "1.0.1" // SDK 版本 UserAgentFormat = "WechatPay-Go/%s (%s) GO/%s" // UserAgent中的信息 )
SDK 相关信息
const ( Authorization = "Authorization" // Header 中的 Authorization 字段 Accept = "Accept" // Header 中的 Accept 字段 ContentType = "Content-Type" // Header 中的 ContentType 字段 ContentLength = "Content-Length" // Header 中的 ContentLength 字段 UserAgent = "User-Agent" // Header 中的 UserAgent 字段 )
HTTP 请求报文 Header 相关常量
const ( ApplicationJSON = "application/json" ImageJPG = "image/jpg" ImagePNG = "image/png" VideoMP4 = "video/mp4" )
常用 ContentType
const ( SignatureMessageFormat = "%s\n%s\n%d\n%s\n%s\n" // 数字签名原文格式 // HeaderAuthorizationFormat 请求头中的 Authorization 拼接格式 HeaderAuthorizationFormat = "%s mchid=\"%s\",nonce_str=\"%s\",timestamp=\"%d\",serial_no=\"%s\",signature=\"%s\"" )
请求报文签名相关常量
const ( WechatPayTimestamp = "Wechatpay-Timestamp" // 微信支付回包时间戳 WechatPayNonce = "Wechatpay-Nonce" // 微信支付回包随机字符串 WechatPaySignature = "Wechatpay-Signature" // 微信支付回包签名信息 WechatPaySerial = "Wechatpay-Serial" // 微信支付回包平台序列号 RequestID = "Request-Id" // 微信支付回包请求ID )
HTTP 应答报文 Header 相关常量
const ( FiveMinute = 5 * 60 // 回包校验最长时间(秒) DefaultTimeout = 30 * time.Second // HTTP 请求默认超时时间 )
时间相关常量
const (
CodeSuccess = "SUCCESS"
)
const (
WechatPayAPIServerBackup = "https://api2.mch.weixin.qq.com" // 微信支付 API 备份地址
)
微信支付 API 地址
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CertificatesResponse ¶
type CertificatesResponse struct { Data []struct { EffectiveTime time.Time `json:"effective_time"` // 过期时间 EncryptCertificate struct { Algorithm string `json:"algorithm"` AssociatedData string `json:"associated_data"` Ciphertext string `json:"ciphertext"` Nonce string `json:"nonce"` } `json:"encrypt_certificate"` // 加密证书 ExpireTime time.Time `json:"expire_time"` // 有效时间 SerialNo string `json:"serial_no"` // 序列号 } `json:"data"` }
type CertificatesResult ¶
type CertificatesResult struct { Result CertificatesResponse // 结果 Body []byte // 内容 Http gorequest.Response // 请求 Err error // 错误 }
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client 微信支付服务
func (*Client) Certificates ¶
func (c *Client) Certificates() *CertificatesResult
Certificates 获取平台证书列表 https://pay.weixin.qq.com/wiki/doc/apiv3/apis/wechatpay5_1.shtml
func (*Client) EcommerceFundBalance ¶
func (c *Client) EcommerceFundBalance(accountType string) *EcommerceFundBalanceResult
EcommerceFundBalance 查询二级商户账户实时余额API accountType 账户类型 BASIC:基本账户 OPERATION:运营账户 FEES:手续费账户 https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter7_7_1.shtml
func (*Client) EcommerceFundEndDayBalance ¶
func (c *Client) EcommerceFundEndDayBalance(date string) *EcommerceFundEndDayBalanceResult
EcommerceFundEndDayBalance 查询二级商户账户日终余额API date 日期 示例值:2019-08-17 https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter7_7_2.shtml
func (*Client) GetJsApi ¶
func (c *Client) GetJsApi(param GetJsApi) (result GetJsApiResult, err error)
GetJsApi JSAPI调起支付API https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_1_4.shtml
func (*Client) GetSpAppid ¶
func (*Client) GetSpMchId ¶
func (*Client) GetSubAppid ¶
func (*Client) GetSubMchId ¶
func (*Client) MerchantFundBalance ¶
func (c *Client) MerchantFundBalance(accountType string) *MerchantFundBalanceResult
MerchantFundBalance 查询电商平台账户实时余额API accountType 账户类型 BASIC:基本账户 OPERATION:运营账户 FEES:手续费账户 https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter7_7_3.shtml
func (*Client) MerchantFundDayEndBalance ¶
func (c *Client) MerchantFundDayEndBalance(accountType, date string) *MerchantFundDayEndBalanceResult
MerchantFundDayEndBalance 查询电商平台账户日终余额API accountType 账户类型 BASIC:基本账户 OPERATION:运营账户 FEES:手续费账户 date 日期 示例值:2019-08-17 https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter7_7_4.shtml
func (*Client) PayPartnerTransactionsH5 ¶
func (c *Client) PayPartnerTransactionsH5(notMustParams ...gorequest.Params) *PayPartnerTransactionsH5Result
PayPartnerTransactionsH5 H5下单API https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter4_3_1.shtml
func (*Client) PayPartnerTransactionsId ¶
func (c *Client) PayPartnerTransactionsId(transactionId string) *PayPartnerTransactionsIdResult
PayPartnerTransactionsId 微信支付订单号查询 https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter4_5_2.shtml
func (*Client) PayPartnerTransactionsJsapi ¶
func (c *Client) PayPartnerTransactionsJsapi(notMustParams ...gorequest.Params) *PayPartnerTransactionsJsapiResult
PayPartnerTransactionsJsapi JSAPI下单 https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter4_5_1.shtml
func (*Client) PayPartnerTransactionsOutTradeNo ¶
func (c *Client) PayPartnerTransactionsOutTradeNo(outTradeNo string) *PayPartnerTransactionsOutTradeNoResult
PayPartnerTransactionsOutTradeNo 商户订单号查询 https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter4_5_2.shtml
func (*Client) PayPartnerTransactionsOutTradeNoClose ¶
func (c *Client) PayPartnerTransactionsOutTradeNoClose(outTradeNo string) *PayPartnerTransactionsOutTradeNoCloseResult
PayPartnerTransactionsOutTradeNoClose 关闭订单API https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter4_5_3.shtml
func (*Client) RefundDomesticRefunds ¶
func (c *Client) RefundDomesticRefunds(notMustParams ...gorequest.Params) *RefundDomesticRefundsResult
RefundDomesticRefunds 申请退款API https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter4_5_9.shtml
func (*Client) RefundDomesticRefundsOutRefundNo ¶
func (c *Client) RefundDomesticRefundsOutRefundNo(outRefundNo string) *RefundDomesticRefundsOutRefundNoResult
RefundDomesticRefundsOutRefundNo 查询单笔退款API https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter4_5_9.shtml
type ConfigClient ¶
type ConfigClient struct { SpAppid string // 服务商应用ID SpMchId string // 服务商户号 SubAppid string // 子商户应用ID SubMchId string // 子商户号 ApiV2 string // APIv2密钥 ApiV3 string // APIv3密钥 SerialNo string // 序列号 MchSslSerialNo string // pem 证书号 MchSslCer string // pem 内容 MchSslKey string // pem key 内容 MongoDb *dorm.MongoClient // 日志数据库 PgsqlDb *gorm.DB // 日志数据库 DatabaseName string // 库名 }
type EcommerceFundBalanceResult ¶
type EcommerceFundBalanceResult struct { Result EcommerceFundBalanceResponse // 结果 Body []byte // 内容 Http gorequest.Response // 请求 Err error // 错误 }
type EcommerceFundEndDayBalanceResult ¶
type EcommerceFundEndDayBalanceResult struct { Result EcommerceFundEndDayBalanceResponse // 结果 Body []byte // 内容 Http gorequest.Response // 请求 Err error // 错误 }
type GetJsApiResult ¶
type GetJsApiResult struct { AppId string `json:"app_id"` // 应用ID TimeStamp string `json:"time_stamp"` // 时间戳 NonceStr string `json:"nonce_str"` // 随机字符串 Package string `json:"package"` // 订单详情扩展字符串 SignType string `json:"sign_type"` // 签名方式 PaySign string `json:"pay_sign"` // 签名 }
GetJsApiResult 返回参数
type MerchantFundBalanceResult ¶
type MerchantFundBalanceResult struct { Result MerchantFundBalanceResponse // 结果 Body []byte // 内容 Http gorequest.Response // 请求 Err error // 错误 }
type MerchantFundDayEndBalanceResult ¶
type MerchantFundDayEndBalanceResult struct { Result MerchantFundDayEndBalanceResponse // 结果 Body []byte // 内容 Http gorequest.Response // 请求 Err error // 错误 }
type PayPartnerTransactionsH5Response ¶
type PayPartnerTransactionsH5Response struct {
H5Url string `json:"h5_url"` // 支付跳转链接
}
type PayPartnerTransactionsIdResponse ¶
type PayPartnerTransactionsIdResponse struct { Appid string `json:"appid"` Mchid string `json:"mchid"` OutTradeNo string `json:"out_trade_no"` TransactionId string `json:"transaction_id,omitempty"` TradeType string `json:"trade_type,omitempty"` TradeState string `json:"trade_state"` TradeStateDesc string `json:"trade_state_desc"` BankType string `json:"bank_type,omitempty"` Attach string `json:"attach,omitempty"` SuccessTime string `json:"success_time,omitempty"` Payer struct { Openid string `json:"openid"` } `json:"payer"` Amount struct { Total int `json:"total,omitempty"` PayerTotal int `json:"payer_total,omitempty"` Currency string `json:"currency,omitempty"` PayerCurrency string `json:"payer_currency,omitempty"` } `json:"amount,omitempty"` SceneInfo struct { DeviceId string `json:"device_id,omitempty"` } PromotionDetail []struct { CouponId string `json:"coupon_id"` Name string `json:"name,omitempty"` Scope string `json:"scope,omitempty"` Type string `json:"type,omitempty"` Amount int `json:"amount"` StockId string `json:"stock_id,omitempty"` WechatpayContribute int `json:"wechatpay_contribute,omitempty"` MerchantContribute int `json:"merchant_contribute,omitempty"` OtherContribute int `json:"other_contribute,omitempty"` Currency string `json:"currency,omitempty"` GoodsDetail []struct { GoodsId string `json:"goods_id"` Quantity int `json:"quantity"` UnitPrice int `json:"unit_price"` DiscountAmount int `json:"discount_amount"` GoodsRemark string `json:"goods_remark,omitempty"` } `json:"goods_detail"` } }
type PayPartnerTransactionsIdResult ¶
type PayPartnerTransactionsIdResult struct { Result PayPartnerTransactionsIdResponse // 结果 Body []byte // 内容 Http gorequest.Response // 请求 Err error // 错误 }
type PayPartnerTransactionsJsapiResponse ¶
type PayPartnerTransactionsJsapiResponse struct {
PrepayId string `json:"prepay_id"`
}
type PayPartnerTransactionsOutTradeNoResponse ¶
type PayPartnerTransactionsOutTradeNoResponse struct { SpAppid string `json:"sp_appid"` // 服务商应用ID SpMchid string `json:"sp_mchid"` // 服务商户号 SubAppid string `json:"sub_appid"` // 子商户应用ID SubMchid string `json:"sub_mchid"` // 子商户号 OutTradeNo string `json:"out_trade_no"` // 商户订单号 TransactionId string `json:"transaction_id"` // 微信支付订单号 TradeType string `json:"trade_type"` // 交易类型 TradeState string `json:"trade_state"` // 交易状态 TradeStateDesc string `json:"trade_state_desc"` // 交易状态描述 BankType string `json:"bank_type"` // 付款银行 Attach string `json:"attach"` // 附加数据 SuccessTime string `json:"success_time"` // 支付完成时间 Payer struct { SpOpenid string `json:"sp_openid"` // 用户服务标识 SubOpenid string `json:"sub_openid"` // 用户子标识 } `json:"payer"` // 支付者 Amount struct { Total int `json:"total"` // 总金额 PayerTotal int `json:"payer_total"` // 用户支付金额 Currency string `json:"currency"` // 货币类型 PayerCurrency string `json:"payer_currency"` // 用户支付币种 } `json:"amount"` // 订单金额 SceneInfo struct { DeviceId string `json:"device_id"` // 商户端设备号 } `json:"scene_info"` // 场景信息 PromotionDetail []struct { CouponId string `json:"coupon_id"` // 券ID Name string `json:"name"` // 优惠名称 Scope string `json:"scope"` // 优惠范围 Type string `json:"type"` // 优惠类型 Amount int `json:"amount"` // 优惠券面额 StockId string `json:"stock_id"` // 活动ID WechatpayContribute int `json:"wechatpay_contribute"` // 微信出资 MerchantContribute int `json:"merchant_contribute"` // 商户出资 OtherContribute int `json:"other_contribute"` // 其他出资 Currency string `json:"currency"` // 优惠币种 GoodsDetail []struct { GoodsId string `json:"goods_id"` // 商品编码 Quantity int `json:"quantity"` // 商品数量 UnitPrice int `json:"unit_price"` // 商品单价 DiscountAmount int `json:"discount_amount"` // 商品优惠金额 GoodsRemark string `json:"goods_remark"` // 商品备注 } `json:"goods_detail"` // 单品列表 } `json:"promotion_detail"` // 优惠功能 }
type RefundDomesticRefundsOutRefundNoResponse ¶
type RefundDomesticRefundsOutRefundNoResponse struct { RefundId string `json:"refund_id"` OutRefundNo string `json:"out_refund_no"` TransactionId string `json:"transaction_id"` OutTradeNo string `json:"out_trade_no"` Channel string `json:"channel"` UserReceivedAccount string `json:"user_received_account"` SuccessTime string `json:"success_time"` CreateTime time.Time `json:"create_time"` Status string `json:"status"` FundsAccount string `json:"funds_account"` Amount struct { Total int `json:"total"` Refund int `json:"refund"` From []struct { Account string `json:"account"` Amount int `json:"amount"` } `json:"from"` PayerTotal int `json:"payer_total"` PayerRefund int `json:"payer_refund"` SettlementRefund int `json:"settlement_refund"` SettlementTotal int `json:"settlement_total"` DiscountRefund int `json:"discount_refund"` Currency string `json:"currency"` } `json:"amount"` PromotionDetail []struct { PromotionId string `json:"promotion_id"` Scope string `json:"scope"` Type string `json:"type"` Amount int `json:"amount"` RefundAmount int `json:"refund_amount"` GoodsDetail struct { MerchantGoodsId string `json:"merchant_goods_id"` WechatpayGoodsId string `json:"wechatpay_goods_id"` GoodsName string `json:"goods_name"` UnitPrice int `json:"unit_price"` RefundAmount int `json:"refund_amount"` RefundQuantity int `json:"refund_quantity"` } `json:"goods_detail"` } `json:"promotion_detail"` }
type RefundDomesticRefundsOutRefundNoResult ¶
type RefundDomesticRefundsOutRefundNoResult struct { Result RefundDomesticRefundsOutRefundNoResponse // 结果 Body []byte // 内容 Http gorequest.Response // 请求 Err error // 错误 }
type RefundDomesticRefundsResponse ¶
type RefundDomesticRefundsResponse struct { RefundId string `json:"refund_id"` OutRefundNo string `json:"out_refund_no"` TransactionId string `json:"transaction_id"` OutTradeNo string `json:"out_trade_no"` Channel string `json:"channel"` UserReceivedAccount string `json:"user_received_account"` SuccessTime time.Time `json:"success_time"` CreateTime time.Time `json:"create_time"` Status string `json:"status"` FundsAccount string `json:"funds_account"` Amount struct { Total int `json:"total"` Refund int `json:"refund"` From []struct { Account string `json:"account"` Amount int `json:"amount"` } `json:"from"` PayerTotal int `json:"payer_total"` PayerRefund int `json:"payer_refund"` SettlementRefund int `json:"settlement_refund"` SettlementTotal int `json:"settlement_total"` DiscountRefund int `json:"discount_refund"` Currency string `json:"currency"` } `json:"amount"` PromotionDetail []struct { PromotionId string `json:"promotion_id"` Scope string `json:"scope"` Type string `json:"type"` Amount int `json:"amount"` RefundAmount int `json:"refund_amount"` GoodsDetail struct { MerchantGoodsId string `json:"merchant_goods_id"` WechatpayGoodsId string `json:"wechatpay_goods_id"` GoodsName string `json:"goods_name"` UnitPrice int `json:"unit_price"` RefundAmount int `json:"refund_amount"` RefundQuantity int `json:"refund_quantity"` } `json:"goods_detail"` } `json:"promotion_detail"` }
type RefundDomesticRefundsResult ¶
type RefundDomesticRefundsResult struct { Result RefundDomesticRefundsResponse // 结果 Body []byte // 内容 Http gorequest.Response // 请求 Err error // 错误 }
Source Files ¶
- certificates.go
- client.go
- const.go
- ecommerce.fund.balance.go
- ecommerce.fund.enddaybalance.go
- get.go
- merchant.fund.balance.go
- merchant.fund.dayendbalance.go
- pay.jsapi.go
- pay.partner.transactions.h5.go
- pay.partner.transactions.id.go
- pay.partner.transactions.jsapi.go
- pay.partner.transactions.out-trade-no.close.go
- pay.partner.transactions.out-trade-no.go
- refund.domestic.refunds.go
- refund.domestic.refunds.out_refund_no.go
- request.go
- set.go
- sign.go