28 lines
1.0 KiB
Go
28 lines
1.0 KiB
Go
package model
|
|
|
|
import (
|
|
"time"
|
|
|
|
"github.com/tech/sendico/pkg/db/storable"
|
|
"github.com/tech/sendico/pkg/model"
|
|
)
|
|
|
|
// PaymentQuoteRecord stores a quoted payment snapshot for later execution.
|
|
type PaymentQuoteRecord struct {
|
|
storable.Base `bson:",inline" json:",inline"`
|
|
model.OrganizationBoundBase `bson:",inline" json:",inline"`
|
|
|
|
QuoteRef string `bson:"quoteRef" json:"quoteRef"`
|
|
IdempotencyKey string `bson:"idempotencyKey" json:"idempotencyKey"`
|
|
RequestShape QuoteRequestShape `bson:"requestShape,omitempty" json:"requestShape,omitempty"`
|
|
Items []*PaymentQuoteItemV2 `bson:"items,omitempty" json:"items,omitempty"`
|
|
ExpiresAt time.Time `bson:"expiresAt" json:"expiresAt"`
|
|
PurgeAt time.Time `bson:"purgeAt,omitempty" json:"purgeAt,omitempty"`
|
|
Hash string `bson:"hash" json:"hash"`
|
|
}
|
|
|
|
// Collection implements storable.Storable.
|
|
func (*PaymentQuoteRecord) Collection() string {
|
|
return "payment_quotes"
|
|
}
|