Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type BankAccountDetails ¶
type BankAccountDetails struct {
BankName string `json:"bankName,omitempty"`
Last4 string `json:"last4"`
RoutingNumber string `json:"routingNumber,omitempty"`
AccountType string `json:"accountType,omitempty"`
}
BankAccountDetails holds US bank account information for a payment method.
type CardDetails ¶
type CardDetails struct {
Brand string `json:"brand"`
Last4 string `json:"last4"`
ExpMonth int `json:"expMonth"`
ExpYear int `json:"expYear"`
Funding string `json:"funding,omitempty"`
Country string `json:"country,omitempty"`
}
CardDetails holds card-specific information for a payment method.
type CryptoDetails ¶
type CryptoDetails struct {
Network string `json:"network,omitempty"`
WalletAddress string `json:"walletAddress"`
Label string `json:"label,omitempty"`
}
CryptoDetails holds a crypto wallet for a payment method. Field shape mirrors the billing client's `crypto` payload (network/walletAddress/label).
type PayPalDetails ¶
type PayPalDetails struct {
Email string `json:"email"`
}
PayPalDetails holds a PayPal account for a payment method.
type PaymentMethod ¶
type PaymentMethod struct {
mixin.Model[PaymentMethod]
UserId string `json:"userId,omitempty"`
CustomerId string `json:"customerId,omitempty"`
Name string `json:"name,omitempty"`
Type string `json:"type"`
ProviderRef string `json:"providerRef"`
ProviderType string `json:"providerType"`
Card *CardDetails `json:"card,omitempty"`
BankAccount *BankAccountDetails `json:"bankAccount,omitempty"`
Crypto *CryptoDetails `json:"crypto,omitempty"`
Wire *WireDetails `json:"wire,omitempty"`
PayPal *PayPalDetails `json:"paypal,omitempty"`
BillingAddress *types.Address `json:"billingAddress,omitempty"`
IsDefault bool `json:"isDefault,omitempty"`
Metadata map[string]interface{} `json:"metadata,omitempty"`
Created time.Time `json:"created,omitempty"`
}
func New ¶
func New(db *datastore.Datastore) *PaymentMethod
func (*PaymentMethod) Defaults ¶
func (p *PaymentMethod) Defaults()
type WireDetails ¶
type WireDetails struct {
BankName string `json:"bankName,omitempty"`
AccountHolder string `json:"accountHolder,omitempty"`
RoutingNumber string `json:"routingNumber,omitempty"`
AccountLast4 string `json:"accountLast4,omitempty"`
Swift string `json:"swift,omitempty"`
Iban string `json:"iban,omitempty"`
Country string `json:"country,omitempty"`
}
WireDetails holds bank-wire information for a payment method. Field shape mirrors the billing client's `wire` payload.
Click to show internal directories.
Click to hide internal directories.