6 Star 0 Fork 0

北京新途径教育科技有限公司 / gopkg

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
jsapi_types.go 12.62 KB
一键复制 编辑 原始数据 按行查看 历史
荣鹏举 提交于 2023-09-06 15:58 . feat: 完成App的微信支付功能
package wxpay
type (
// JsapiPrepayReq JSAPI支付预下单请求参数
JsapiPrepayReq struct {
Description string `json:"description,required"` // 商品描述
OutTradeNo string `json:"out_trade_no,required"` // 商户系统内部订单号,只能是数字、大小写字母_-*且在同一个商户号下唯一
NotifyURL string `json:"notify_url,required"` // 支付结果通知的回调地址
Amount *AmountByPrepay `json:"amount,required"` // 订单金额信息
Payer *Payer `json:"payer,required"` // 支付者信息
TimeExpire string `json:"time_expire,omitempty"` // 订单失效时间,遵循rfc3339标准格式,示例值:2018-06-08T10:34:56+08:00
Attach string `json:"attach,omitempty"` // 附加数据,在查询API和支付通知中原样返回,可作为自定义参数使用。
GoodsTag string `json:"goods_tag,omitempty"` // 订单优惠标记
SupportFapiao bool `json:"support_fapiao,omitempty"` // 电子发票入口开放标识,传入true时,支付成功消息和支付详情页将出现开票入口。需要在微信支付商户平台或微信公众平台开通电子发票功能,传此字段才可生效。
Detail *OrderDetail `json:"detail,omitempty"` // 商品详情
SceneInfo *SceneInfo `json:"scene_info,omitempty"` // 场景信息
SettleInfo *SettleInfo `json:"settle_info,omitempty"` // 结算信息
}
// JsapiPrepayResp JSAPI支付预下单返回参数
JsapiPrepayResp struct {
PrepayID string // 预支付交易会话标识。用于后续接口调用中使用,该值有效期为2小时
}
)
type (
// JsapiCallPayReq JSAPI支付调起支付请求参数
JsapiCallPayReq struct {
PrepayID string `json:"prepay_id,required"` // 预支付交易会话标识。用于后续接口调用中使用,该值有效期为2小时
}
// JsapiCallPayResp JSAPI支付调起支付返回参数
JsapiCallPayResp struct {
AppID string // 商户申请的公众号对应的appid
TimeStamp string // 时间戳,标准北京时间,时区为东八区,自1970年1月1日 0点0分0秒以来的秒数
NonceStr string // 随机字符串,长度为32个字符以下。
Package string // JSAPI下单接口返回的prepay_id参数值,提交格式如:prepay_id=***
SignType string // 签名算法,暂支持 RSA
PaySign string // 签名,使用字段appId、timeStamp、nonceStr、package计算
}
)
type (
// JsApiQueryPayByTransactionIdReq JSAPI支付查询订单请求参数(通过微信支付订单号查询)
JsApiQueryPayByTransactionIdReq struct {
TransactionId string `json:"transaction_id,required"` // 微信支付订单号
}
// JsApiQueryPayByOutTradeNoReq JSAPI支付查询订单请求参数(通过商户订单号查询)
JsApiQueryPayByOutTradeNoReq struct {
OutTradeNo string `json:"out_trade_no,required"` // 商户系统内部订单号
}
// JsApiQueryPayResp JSAPI支付查询订单返回参数
JsApiQueryPayResp struct {
Appid string // AppID
Attach string // 附加数据,在查询API和支付通知中原样返回,可作为自定义参数使用。
BankType string // 付款银行
Mchid string // 商户号
OutTradeNo string // 商户系统内部订单号
SuccessTime string // 支付完成时间
TradeState string // SUCCESS—支付成功 REFUND—转入退款 NOTPAY—未支付 CLOSED—已关闭 REVOKED—已撤销(付款码支付)USERPAYING--用户支付中(付款码支付)PAYERROR--支付失败(其他原因,如银行返回失败)
TradeStateDesc string // 交易状态描述
TradeType string // 交易类型
TransactionID string // 微信支付订单号
Payer *Payer // 支付者信息
Amount *AmountByQuery // 订单金额信息
PromotionDetail []*PromotionDetailByQuery // 优惠功能
}
)
type (
// JsApiClosePayReq JSAPI支付关闭订单请求参数
JsApiClosePayReq struct {
OutTradeNo string `json:"out_trade_no,required"` // 商户系统内部订单号
}
JsApiClosePayResp struct{}
)
type (
// JsApiRefundPayReq JSAPI支付申请退款请求参数
JsApiRefundPayReq struct {
TransactionID string `json:"transaction_id"` // 原支付交易对应的微信订单号,与out_trade_no二选一
OutTradeNo string `json:"out_trade_no"` // 原支付交易对应的商户订单号,与transaction_id二选一
OutRefundNo string `json:"out_refund_no"` // 商户系统内部的退款单号
Reason string `json:"reason"` // 退款原因
NotifyURL string `json:"notify_url"` // 退款结果回调url
FundsAccount string `json:"funds_account"` // 退款资金来源
Amount *AmountByRefundReq `json:"amount"` // 订单金额信息
GoodsDetail []*GoodDetailByRefund `json:"goods_detail"` // 指定商品退款需要传此参数,其他场景无需传递
}
// JsApiRefundPayResp JSAPI支付申请退款返回参数
JsApiRefundPayResp struct {
RefundID string // 微信支付退款单号
OutRefundNo string // 商户系统内部的退款单号
TransactionID string // 微信支付交易订单号
OutTradeNo string // 原支付交易对应的商户订单号
Channel string // 退款渠道,ORIGINAL:原路退款,BALANCE:退回到余额,OTHER_BALANCE:原账户异常退到其他余额账户,OTHER_BANKCARD:原银行卡异常退到其他银行卡
UserReceivedAccount string // 当前退款单的退款入账方
SuccessTime string // 退款成功时间,当退款状态为退款成功时有返回
CreateTime string // 退款受理时间
Status string // 退款状态,SUCCESS:退款成功,CLOSED:退款关闭,PROCESSING:退款处理中,ABNORMAL:退款异常
FundsAccount string // 退款所使用资金对应的资金账户类型,UNSETTLED : 未结算资金, AVAILABLE : 可用余额, UNAVAILABLE : 不可用余额, OPERATION : 运营户, BASIC : 基本账户(含可用余额和不可用余额)
Amount *AmountByRefundResp // 金额详细信息
PromotionDetail []*PromotionDetailByRefund // 优惠退款信息
}
)
type (
// JsApiQueryRefundReq 查询退款参数
JsApiQueryRefundReq struct {
OutRefundNo string `json:"out_refund_no,required"`
}
// JsApiQueryRefundResp 查询退款返回
JsApiQueryRefundResp struct {
RefundID string // 微信支付退款单号
OutRefundNo string // 商户系统内部的退款单号
TransactionID string // 微信支付交易订单号
OutTradeNo string // 原支付交易对应的商户订单号
Channel string // 退款渠道,ORIGINAL:原路退款,BALANCE:退回到余额,OTHER_BALANCE:原账户异常退到其他余额账户,OTHER_BANKCARD:原银行卡异常退到其他银行卡
UserReceivedAccount string // 当前退款单的退款入账方
SuccessTime string // 退款成功时间,当退款状态为退款成功时有返回
CreateTime string // 退款受理时间
Status string // 退款状态,SUCCESS:退款成功,CLOSED:退款关闭,PROCESSING:退款处理中,ABNORMAL:退款异常
FundsAccount string // 退款所使用资金对应的资金账户类型,UNSETTLED : 未结算资金, AVAILABLE : 可用余额, UNAVAILABLE : 不可用余额, OPERATION : 运营户, BASIC : 基本账户(含可用余额和不可用余额)
Amount *AmountByQueryRefund // 退款金额信息
PromotionDetail []*PromotionDetailByRefund // 优惠退款信息
}
)
type (
// AmountByPrepay 预支付金额信息
AmountByPrepay struct {
Total int64 `json:"total,required"` // 订单总金额,单位为分
Currency string `json:"currency,omitempty"` // 货币类型,默认CNY:人民币,境内商户号仅支持人民币
}
// AmountByQuery 查询订单金额信息
AmountByQuery struct {
Total int64 `json:"total,required"` // 订单总金额,单位为分
Currency string `json:"currency,omitempty"` // 货币类型,默认CNY:人民币,境内商户号仅支持人民币
PayerTotal int64 `json:"payer_total,omitempty"` // 用户支付金额,单位为分
PayerCurrency string `json:"payer_currency,omitempty"` // 用户支付币种
}
// AmountByRefundReq 退款金额信息请求参数
AmountByRefundReq struct {
Refund int64 `json:"refund,required"` // 退款金额,单位为分,只能为整数,不能超过原订单支付金额
Total int64 `json:"total,required"` // 原支付交易的订单总金额,单位为分
Currency string `json:"currency,required"` // 符合ISO 4217标准的三位字母代码,目前只支持人民币:CNY
From []*From `json:"from"` // 退款出资账户及金额
}
// AmountByRefundResp 退款金额信息响应参数
AmountByRefundResp struct {
Total int64 // 订单总金额,单位为分
Refund int64 // 退款标价金额,单位为分,可以做部分退款
PayerTotal int64 // 现金支付金额,单位为分,只能为整数
PayerRefund int64 // 退款给用户的金额,不包含所有优惠券金额
SettlementRefund int64 // 应结退款金额
SettlementTotal int64 // 应结订单金额
DiscountRefund int64 // 优惠退款金额
Currency string // 退款币种
From []*From // 退款出资的账户类型及金额信息
}
// AmountByQueryRefund 使用JsAPI查询退款时的金额信息
AmountByQueryRefund struct {
Total int64 // 订单总金额,单位为分
Refund int64 // 退款标价金额,单位为分,可以做部分退款
PayerTotal int64 // 现金支付金额,单位为分,只能为整数
PayerRefund int64 // 退款给用户的金额,不包含所有优惠券金额
SettlementRefund int64 // 应结退款金额
SettlementTotal int64 // 应结订单金额
DiscountRefund int64 // 优惠退款金额
Currency string // 退款币种
From []*From // 退款出资的账户类型及金额信息
}
// PromotionDetailByQuery 订单查询下的优惠功能
PromotionDetailByQuery struct {
CouponID string // 券ID
Name string // 优惠名称
Scope string // 优惠范围
Type string // 优惠类型
Currency string // CNY:人民币,境内商户号仅支持人民币
StockID string // 活动ID
Amount int64 // 优惠券面额
WechatPayContribute int64 // 微信出资,单位:分
MerchantContribute int64 // 商户出资,单位:分
OtherContribute int64 // 其他出资,单位:分
}
// PromotionDetailByRefund 退款下的优惠功能
PromotionDetailByRefund struct {
PromotionID string // 券或者立减优惠id
Scope string // 优惠范围,GLOBAL:全场代金券,SINGLE:单品优惠
Type string // 优惠类型,COUPON:充值型代金券,DISCOUNT:优惠券
Amount int64 // 优惠券面额
RefundAmount int64 // 优惠退款金额
GoodsDetail []*GoodDetailByRefund // 优惠商品发生退款时返回商品信息
}
// GoodDetailByRefund 优惠商品发生退款时返回商品信息
GoodDetailByRefund struct {
UnitPrice int64 // 商品单价,单位
RefundAmount int64 // 商品退款金额,单位为分
RefundQuantity int64 // 单品的退款数量
MerchantGoodsID string // 商户侧商品编码,由半角的大小写字母、数字、中划线、下划线中的一种或几种组成
WechatPayGoodsID string // 微信支付定义的统一商品编号(没有可不传)
GoodsName string // 商品的实际名称
}
)
Go
1
https://gitee.com/xintujing/gopkg.git
git@gitee.com:xintujing/gopkg.git
xintujing
gopkg
gopkg
v0.0.10

搜索帮助