Documentation ¶
Index ¶
- type App
- func (app *App) GetJsApi(param GetJsApi) (result GetJsApiResult, err error)
- func (app *App) NewParamsWith(params ...Params) Params
- func (app *App) PayTransactionsId(param PayTransactionsId) (resp PayTransactionsIdResult, result ErrResp, err error)
- func (app *App) PayTransactionsJsapi(param PayTransactionsJsapi) (resp PayTransactionsJsapiResult, result ErrResp, err error)
- func (app *App) PayTransactionsOutTradeNo(param PayTransactionsOutTradeNo) (resp PayTransactionsOutTradeNoResult, result ErrResp, err error)
- func (app *App) PayTransactionsOutTradeNoClose(OutTradeNo string) (result ErrResp, err error)
- func (app *App) RefundDomesticRefunds(notMustParams ...Params) (resp RefundDomesticRefundsResult, result ErrResp, err error)
- func (app *App) RefundDomesticRefundsOutRefundNo(OutRefundNo string) (resp RefundDomesticRefundsOutRefundNoResult, result ErrResp, err error)
- type ErrResp
- type GetJsApi
- type GetJsApiResult
- type Params
- type PayTransactionsId
- type PayTransactionsIdResult
- type PayTransactionsJsapi
- type PayTransactionsJsapiAmount
- type PayTransactionsJsapiDetail
- type PayTransactionsJsapiDetailGoodsDetail
- type PayTransactionsJsapiPayer
- type PayTransactionsJsapiResult
- type PayTransactionsJsapiSceneInfo
- type PayTransactionsJsapiSceneInfoStoreInfo
- type PayTransactionsJsapiSettleInfo
- type PayTransactionsOutTradeNo
- type PayTransactionsOutTradeNoResult
- type RefundDomesticRefundsOutRefundNoResult
- type RefundDomesticRefundsResult
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type App ¶
type App struct { AppId string // 小程序或者公众号唯一凭证 AppSecret string // 小程序或者公众号唯一凭证密钥 MchId string // 微信支付的商户id AesKey string // 私钥 ApiV3 string // API v3密钥 PrivateSerialNo string // 私钥证书号 MchPrivateKey string // 商户私有证书内容 apiclient_key.pem ZapLog *zap.Logger // 日志服务 Db *gorm.DB // 关系数据库服务 RDb *redis.Client // 缓存数据库服务 MDb *mongo.Client // 非关系数据库服务 }
App 微信支付服务
func (*App) GetJsApi ¶
func (app *App) GetJsApi(param GetJsApi) (result GetJsApiResult, err error)
GetJsApi JSAPI调起支付API https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_1_4.shtml
func (*App) NewParamsWith ¶
func (*App) PayTransactionsId ¶
func (app *App) PayTransactionsId(param PayTransactionsId) (resp PayTransactionsIdResult, result ErrResp, err error)
PayTransactionsId 微信支付订单号查询 https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_1_2.shtml
func (*App) PayTransactionsJsapi ¶
func (app *App) PayTransactionsJsapi(param PayTransactionsJsapi) (resp PayTransactionsJsapiResult, result ErrResp, err error)
PayTransactionsJsapi 小程序 JSAPI下单 https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_5_1.shtml
func (*App) PayTransactionsOutTradeNo ¶
func (app *App) PayTransactionsOutTradeNo(param PayTransactionsOutTradeNo) (resp PayTransactionsOutTradeNoResult, result ErrResp, err error)
PayTransactionsOutTradeNo 商户订单号查询 https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_1_2.shtml
func (*App) PayTransactionsOutTradeNoClose ¶
PayTransactionsOutTradeNoClose 关闭订单API https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter3_1_3.shtml
func (*App) RefundDomesticRefunds ¶
func (app *App) RefundDomesticRefunds(notMustParams ...Params) (resp RefundDomesticRefundsResult, result ErrResp, err error)
RefundDomesticRefunds 申请退款API https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter6_1_26.shtml
func (*App) RefundDomesticRefundsOutRefundNo ¶
func (app *App) RefundDomesticRefundsOutRefundNo(OutRefundNo string) (resp RefundDomesticRefundsOutRefundNoResult, result ErrResp, err error)
RefundDomesticRefundsOutRefundNo 查询单笔退款API https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter4_5_10.shtml
type ErrResp ¶
type ErrResp struct { Code string `json:"code"` Message string `json:"message"` Detail struct { Field string `json:"field,omitempty"` Value interface{} `json:"value"` Issue string `json:"issue,omitempty"` Location string `json:"location"` } `json:"detail"` }
ErrResp 错误返回
type GetJsApiResult ¶
type GetJsApiResult struct { AppId string // 应用ID TimeStamp string // 时间戳 NonceStr string // 随机字符串 Package string // 订单详情扩展字符串 SignType string // 签名方式 PaySign string // 签名 }
GetJsApiResult 返回参数
type PayTransactionsId ¶
type PayTransactionsId struct {
TransactionId string `json:"transaction_id"`
}
type PayTransactionsIdResult ¶
type PayTransactionsIdResult 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"` } }
PayTransactionsIdResult 返回参数
type PayTransactionsJsapi ¶
type PayTransactionsJsapi struct { Description string `json:"description"` //【是】商品描述 OutTradeNo string `json:"out_trade_no"` //【是】商户订单号 TimeExpire time.Time `json:"time_expire,omitempty"` //【否】交易结束时间 Attach string `json:"attach,omitempty"` //【否】附加数据 NotifyUrl string `json:"notify_url"` //【是】通知地址 GoodsTag string `json:"goods_tag,omitempty"` //【否】订单优惠标记 Amount *PayTransactionsJsapiAmount `json:"amount"` //【是】订单金额 Payer *PayTransactionsJsapiPayer `json:"payer"` //【是】支付者 Detail *PayTransactionsJsapiDetail `json:"detail,omitempty"` //【否】优惠功能 SceneInfo *PayTransactionsJsapiSceneInfo `json:"scene_info,omitempty"` //【否】场景信息 SettleInfo *PayTransactionsJsapiSettleInfo `json:"settle_info,omitempty"` //【否】结算信息 }
PayTransactionsJsapi 入参
type PayTransactionsJsapiAmount ¶
type PayTransactionsJsapiAmount struct { Total int `json:"total"` //【是】总金额 Currency string `json:"currency,omitempty"` //【否】货币类型 }
PayTransactionsJsapiAmount 订单金额
type PayTransactionsJsapiDetail ¶
type PayTransactionsJsapiDetail struct { CostPrice int `json:"cost_price,omitempty"` //【否】订单原价 InvoiceId string `json:"invoice_id,omitempty"` //【否】商品小票ID GoodsDetail []PayTransactionsJsapiDetailGoodsDetail `json:"goods_detail,omitempty"` //【否】单品列表 }
PayTransactionsJsapiDetail 优惠功能
type PayTransactionsJsapiDetailGoodsDetail ¶
type PayTransactionsJsapiDetailGoodsDetail struct { MerchantGoodsId string `json:"merchant_goods_id"` //【是】商户侧商品编码 WechatpayGoodsId string `json:"wechatpay_goods_id,omitempty"` //【否】微信侧商品编码 GoodsName string `json:"goods_name,omitempty"` //【否】商品名称 Quantity int `json:"quantity"` //【是】商品数量 UnitPrice int `json:"unit_price"` //【是】商品单价 }
PayTransactionsJsapiDetailGoodsDetail 单品列表
type PayTransactionsJsapiPayer ¶
type PayTransactionsJsapiPayer struct {
Openid string `json:"openid"` //【是】用户标识
}
PayTransactionsJsapiPayer 支付者
type PayTransactionsJsapiResult ¶
type PayTransactionsJsapiResult struct {
PrepayId string `json:"prepay_id"`
}
PayTransactionsJsapiResult 返回参数
type PayTransactionsJsapiSceneInfo ¶
type PayTransactionsJsapiSceneInfo struct { PayerClientIp string `json:"payer_client_ip"` //【是】用户终端IP DeviceId string `json:"device_id,omitempty"` //【否】商户端设备号 StoreInfo *PayTransactionsJsapiSceneInfoStoreInfo `json:"store_info,omitempty"` //【否】商户门店信息 }
PayTransactionsJsapiSceneInfo 场景信息
type PayTransactionsJsapiSceneInfoStoreInfo ¶
type PayTransactionsJsapiSceneInfoStoreInfo struct { Id string `json:"id"` //【是】门店编号 Name string `json:"name,omitempty"` //【否】门店名称 AreaCode string `json:"area_code,omitempty"` //【否】地区编码 Address string `json:"address,omitempty"` //【否】详细地址 }
PayTransactionsJsapiSceneInfoStoreInfo 商户门店信息
type PayTransactionsJsapiSettleInfo ¶
type PayTransactionsJsapiSettleInfo struct {
ProfitSharing bool `json:"profit_sharing,omitempty"` //【否】是否指定分账
}
PayTransactionsJsapiSettleInfo 结算信息
type PayTransactionsOutTradeNo ¶
type PayTransactionsOutTradeNo struct {
OutTradeNo string `json:"out_trade_no"`
}
type PayTransactionsOutTradeNoResult ¶
type PayTransactionsOutTradeNoResult 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"` } }
PayTransactionsOutTradeNoResult 返回参数
type RefundDomesticRefundsOutRefundNoResult ¶
type RefundDomesticRefundsOutRefundNoResult 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,omitempty"` // 退款成功时间 CreateTime string `json:"create_time"` // 退款创建时间 Status string `json:"status"` // 退款状态 FundsAccount string `json:"funds_account,omitempty"` // 资金账户 Amount struct { Total int `json:"total"` // 订单金额 Refund int `json:"refund"` // 退款金额 From []struct { Account string `json:"account"` // 出资账户类型 Amount int `json:"amount"` // 出资金额 } `json:"from,omitempty"` 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"` // 券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,omitempty"` // 微信侧商品编码 GoodsName string `json:"goods_name,omitempty"` // 商品名称 UnitPrice int `json:"unit_price"` // 商品单价 RefundAmount int `json:"refund_amount"` // 商品退款金额 RefundQuantity int `json:"refund_quantity"` // 商品退货数量 } `json:"goods_detail"` } `json:"promotion_detail,omitempty"` // 优惠退款信息 }
type RefundDomesticRefundsResult ¶
type RefundDomesticRefundsResult 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,omitempty"` // 退款成功时间 CreateTime string `json:"create_time"` // 退款创建时间 Status string `json:"status"` // 退款状态 FundsAccount string `json:"funds_account,omitempty"` // 资金账户 Amount struct { Total int `json:"total"` // 订单金额 Refund int `json:"refund"` // 退款金额 From []struct { Account string `json:"account"` // 出资账户类型 Amount int `json:"amount"` // 出资金额 } `json:"from,omitempty"` 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"` // 券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,omitempty"` // 微信侧商品编码 GoodsName string `json:"goods_name,omitempty"` // 商品名称 UnitPrice int `json:"unit_price"` // 商品单价 RefundAmount int `json:"refund_amount"` // 商品退款金额 RefundQuantity int `json:"refund_quantity"` // 商品退货数量 } `json:"goods_detail"` } `json:"promotion_detail,omitempty"` // 优惠退款信息 }