退款
This commit is contained in:
@@ -20,7 +20,12 @@ func NewPayDriver(PayMethod int64, config *Config) Pay {
|
||||
|
||||
// Pay 支付集成接口
|
||||
type Pay interface {
|
||||
|
||||
// 支付预处理
|
||||
GeneratePrepayment(req *GeneratePrepaymentReq) (res *GeneratePrepaymentRes, err error)
|
||||
|
||||
// 支付退款申请
|
||||
PayRefund(req *PayRefundReq) (res *PayRefundRes, err error)
|
||||
}
|
||||
|
||||
type GeneratePrepaymentReq struct {
|
||||
@@ -41,3 +46,10 @@ type GeneratePrepaymentRes struct {
|
||||
ClientSecret string `json:"clientSecret"` //交易密钥
|
||||
SessionId string `json:"session_id"` //SessionId
|
||||
}
|
||||
|
||||
type PayRefundReq struct {
|
||||
TradeNo string `json:"trade_no"` // 交易编号
|
||||
}
|
||||
|
||||
type PayRefundRes struct {
|
||||
}
|
||||
|
||||
@@ -3,12 +3,25 @@ package pay
|
||||
import (
|
||||
"github.com/stripe/stripe-go/v74"
|
||||
"github.com/stripe/stripe-go/v74/checkout/session"
|
||||
"github.com/stripe/stripe-go/v74/refund"
|
||||
"github.com/zeromicro/go-zero/core/logx"
|
||||
)
|
||||
|
||||
type Stripe struct {
|
||||
Key string `json:"key"`
|
||||
}
|
||||
|
||||
// 生成退款
|
||||
func (stripePay *Stripe) PayRefund(req *PayRefundReq) (res *PayRefundRes, err error) {
|
||||
stripe.Key = stripePay.Key
|
||||
params := &stripe.RefundParams{PaymentIntent: stripe.String(req.TradeNo)}
|
||||
_, err = refund.New(params)
|
||||
if err != nil {
|
||||
logx.Error(err)
|
||||
}
|
||||
return res, err
|
||||
}
|
||||
|
||||
// 生成预付款
|
||||
func (stripePay *Stripe) GeneratePrepayment(req *GeneratePrepaymentReq) (res *GeneratePrepaymentRes, err error) {
|
||||
var productData stripe.CheckoutSessionLineItemPriceDataProductDataParams
|
||||
|
||||
Reference in New Issue
Block a user