22 lines
607 B
Go
22 lines
607 B
Go
package storage
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/tech/sendico/gateway/mntx/storage/model"
|
|
"github.com/tech/sendico/pkg/merrors"
|
|
)
|
|
|
|
var ErrDuplicate = merrors.DataConflict("payment gateway storage: duplicate record")
|
|
|
|
type Repository interface {
|
|
Payouts() PayoutsStore
|
|
}
|
|
|
|
type PayoutsStore interface {
|
|
FindByIdempotencyKey(ctx context.Context, key string) (*model.CardPayout, error)
|
|
FindByOperationRef(ctx context.Context, key string) (*model.CardPayout, error)
|
|
FindByPaymentID(ctx context.Context, key string) (*model.CardPayout, error)
|
|
Upsert(ctx context.Context, record *model.CardPayout) error
|
|
}
|