24 lines
513 B
Go
24 lines
513 B
Go
package payment_provider
|
|
|
|
import (
|
|
"context"
|
|
"gitea.pena/PenaSide/treasurer/internal/errors"
|
|
"gitea.pena/PenaSide/treasurer/internal/models"
|
|
"github.com/labstack/echo/v4"
|
|
)
|
|
|
|
type PaymentProvider interface {
|
|
GetName() string
|
|
Webhooker
|
|
Invocer
|
|
}
|
|
|
|
type Webhooker interface {
|
|
RegisterWebhookHandlers(router *echo.Group)
|
|
}
|
|
|
|
type Invocer interface {
|
|
GetSupportedPaymentMethods() []models.PaymentType
|
|
CreateInvoice(ctx context.Context, request *models.PaymentRequest) (*models.PaymentResponse, errors.Error)
|
|
}
|