Documentation ¶
Index ¶
- type Account
- type AccountAttributes
- type AccountTransaction
- type AccountTransactionAttributes
- type AccountTransactions
- type Accounts
- type Client
- func (c *Client) GetAccountTransactions(accountID string) (AccountTransactions, error)
- func (c *Client) GetAccounts() (Accounts, error)
- func (c *Client) GetCreditCardTransactions(creditCardID string) (CreditCardTransactions, error)
- func (c *Client) GetCreditCards() (CreditCards, error)
- func (c *Client) GetDocumentData(id string) ([]byte, error)
- func (c *Client) GetDocuments() (Documents, error)
- func (c *Client) Login(username, password string, mfaMethodSelector MfaMethodSelector) error
- type CreditCard
- type CreditCardTransaction
- type CreditCardTransactionAttributes
- type CreditCardTransactions
- type CreditCards
- type CurrencyValue
- type Document
- type Documents
- type MFAChallenge
- type MFAChallengeData
- type MFAChallengeDataAttributes
- type MFAChallengeResponse
- type MFAChallengeResponseData
- type MFAMethod
- type MFAMethodsResponse
- type MfaMethodSelector
- type Product
- type ReferenceAccount
- type TokenData
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Account ¶
type Account struct { Type string `json:"type"` Id string `json:"id"` Attributes AccountAttributes `json:"attributes"` }
type AccountAttributes ¶
type AccountAttributes struct { HolderName string `json:"holderName"` Iban string `json:"iban"` Permissions []string `json:"permissions"` CurrencyCode string `json:"currencyCode"` Balance CurrencyValue `json:"balance"` AvailableBalance CurrencyValue `json:"availableBalance"` NearTimeBalance CurrencyValue `json:"nearTimeBalance"` Product Product `json:"product"` State string `json:"state"` UpdatedAt string `json:"updatedAt"` OpeningDate string `json:"openingDate"` OverdraftLimit string `json:"overdraftLimit"` OverdraftInterestRate string `json:"overdraftInterestRate,omitempty"` InterestRate string `json:"interestRate"` LastAccountStatementDate string `json:"lastAccountStatementDate"` ReferenceAccount ReferenceAccount `json:"referenceAccount,omitempty"` }
type AccountTransaction ¶
type AccountTransaction struct { Type string `json:"type"` Id string `json:"id"` Attributes AccountTransactionAttributes `json:"attributes"` }
type AccountTransactionAttributes ¶
type AccountTransactionAttributes struct { Status string `json:"status"` BookingDate string `json:"bookingDate"` Description string `json:"description"` EndToEndId string `json:"endToEndId,omitempty"` TransactionType string `json:"transactionType"` PurposeCode string `json:"purposeCode,omitempty"` BusinessTransactionCode string `json:"businessTransactionCode"` Amount CurrencyValue `json:"amount"` Creditor struct { Name string `json:"name,omitempty"` CreditorAccount struct { AccountNr string `json:"accountNr,omitempty"` Blz string `json:"blz,omitempty"` Iban string `json:"iban,omitempty"` } `json:"creditorAccount"` Agent struct { Bic string `json:"bic"` } `json:"agent,omitempty"` IntermediaryName string `json:"intermediaryName,omitempty"` Id string `json:"id,omitempty"` } `json:"creditor"` Debtor struct { Name string `json:"name,omitempty"` DebtorAccount struct { AccountNr string `json:"accountNr,omitempty"` Blz string `json:"blz,omitempty"` Iban string `json:"iban,omitempty"` } `json:"debtorAccount"` Agent struct { Bic string `json:"bic"` } `json:"agent,omitempty"` IntermediaryName string `json:"intermediaryName,omitempty"` } `json:"debtor"` IsRevocable bool `json:"isRevocable"` ValueDate string `json:"valueDate,omitempty"` MandateId string `json:"mandateId,omitempty"` }
type AccountTransactions ¶
type AccountTransactions struct {
Data []AccountTransaction `json:"data"`
}
type Client ¶
type Client struct { VerificationStatusPollInterval time.Duration VerificationStatusPollRetries int // contains filtered or unexported fields }
Client is an HTTP client for the DKB web interface
func (*Client) GetAccountTransactions ¶
func (c *Client) GetAccountTransactions(accountID string) (AccountTransactions, error)
func (*Client) GetAccounts ¶
func (*Client) GetCreditCardTransactions ¶
func (c *Client) GetCreditCardTransactions(creditCardID string) (CreditCardTransactions, error)
func (*Client) GetCreditCards ¶
func (c *Client) GetCreditCards() (CreditCards, error)
func (*Client) GetDocuments ¶
type CreditCard ¶
type CreditCard struct { Type string `json:"type"` Id string `json:"id"` Attributes struct { MaskedPan string `json:"maskedPan"` Network string `json:"network"` EngravedLine1 string `json:"engravedLine1"` EngravedLine2 string `json:"engravedLine2,omitempty"` ActivationDate string `json:"activationDate,omitempty"` ExpiryDate string `json:"expiryDate"` Balance struct { Date string `json:"date"` CurrencyCode string `json:"currencyCode"` Value string `json:"value"` } `json:"balance,omitempty"` State string `json:"state"` Owner struct { FirstName string `json:"firstName"` LastName string `json:"lastName"` Title string `json:"title"` Salutation string `json:"salutation"` } `json:"owner,omitempty"` Holder struct { Person struct { FirstName string `json:"firstName"` LastName string `json:"lastName"` } `json:"person"` } `json:"holder"` Product struct { SuperProductId string `json:"superProductId"` DisplayName string `json:"displayName"` Institute string `json:"institute"` ProductType string `json:"productType"` OwnerType string `json:"ownerType"` Id string `json:"id"` Type string `json:"type"` } `json:"product"` Limit struct { CurrencyCode string `json:"currencyCode,omitempty"` Value string `json:"value,omitempty"` Identifier string `json:"identifier,omitempty"` Categories []struct { Name string `json:"name"` Amount struct { CurrencyCode string `json:"currencyCode"` Value string `json:"value"` } `json:"amount"` } `json:"categories,omitempty"` } `json:"limit"` AvailableLimit struct { CurrencyCode string `json:"currencyCode"` Value string `json:"value"` } `json:"availableLimit,omitempty"` AuthorizedAmount struct { CurrencyCode string `json:"currencyCode"` Value string `json:"value"` } `json:"authorizedAmount,omitempty"` ReferenceAccount struct { Iban string `json:"iban"` Bic string `json:"bic"` } `json:"referenceAccount"` Status struct { Category string `json:"category"` LimitationsFor []interface{} `json:"limitationsFor,omitempty"` } `json:"status"` BillingDetails struct { Days []int `json:"days"` CalendarType string `json:"calendarType"` Cycle string `json:"cycle"` } `json:"billingDetails,omitempty"` CreationDate string `json:"creationDate,omitempty"` FailedPinAttempts int `json:"failedPinAttempts,omitempty"` } `json:"attributes"` Relationships struct { Owner struct { Data struct { Type string `json:"type"` Id string `json:"id"` } `json:"data"` } `json:"owner,omitempty"` Legitimates struct { Data []struct { Type string `json:"type"` Id string `json:"id"` } `json:"data"` } `json:"legitimates,omitempty"` } `json:"relationships"` }
type CreditCardTransaction ¶
type CreditCardTransaction struct { Type string `json:"type"` Id string `json:"id"` Attributes CreditCardTransactionAttributes `json:"attributes"` }
type CreditCardTransactionAttributes ¶
type CreditCardTransactionAttributes struct { Amount struct { ConversionRate string `json:"conversionRate"` CurrencyCode string `json:"currencyCode"` Value string `json:"value"` } `json:"amount"` CardId string `json:"cardId"` MerchantAmount struct { CurrencyCode string `json:"currencyCode"` Value string `json:"value"` } `json:"merchantAmount"` MerchantCategory struct { Code string `json:"code"` } `json:"merchantCategory,omitempty"` Status string `json:"status"` TransactionType string `json:"transactionType"` AuthorizationDate time.Time `json:"authorizationDate"` BookingDate string `json:"bookingDate"` Description string `json:"description"` Bonuses []interface{} `json:"bonuses"` }
type CreditCardTransactions ¶
type CreditCardTransactions struct {
Data []CreditCardTransaction `json:"data"`
}
type CreditCards ¶
type CreditCards struct { Data []CreditCard `json:"data"` Meta struct { Messages []interface{} `json:"messages"` } `json:"meta"` }
type CurrencyValue ¶
type Document ¶
type Document struct { ID string `json:"id"` Type string `json:"type"` Links struct { Self string `json:"self"` } `json:"links"` Attributes struct { CreationDate time.Time `json:"creationDate"` ExpirationDate string `json:"expirationDate"` RetentionPeriod string `json:"retentionPeriod"` ContentType string `json:"contentType"` Checksum string `json:"checksum"` FileName string `json:"fileName"` Metadata struct { CardID string `json:"cardId"` StatementDate string `json:"statementDate"` StatementAmount string `json:"statementAmount"` Subject string `json:"subject"` StatementID string `json:"statementID"` StatementCurrency string `json:"statementCurrency"` } `json:"metadata"` Owner string `json:"owner"` } `json:"attributes"` Relationships struct { DocumentType struct { Links struct { Self string `json:"self"` Related string `json:"related"` } `json:"links"` } `json:"documentType"` } `json:"relationships"` }
type MFAChallenge ¶
type MFAChallenge struct {
Data MFAChallengeData `json:"data"`
}
type MFAChallengeData ¶
type MFAChallengeData struct { Attributes MFAChallengeDataAttributes `json:"attributes"` Type string `json:"type"` }
type MFAChallengeResponse ¶
type MFAChallengeResponse struct { Data MFAChallengeResponseData `json:"data"` Included []MFAMethod `json:"included"` }
type MFAChallengeResponseData ¶
type MFAChallengeResponseData struct { Type string `json:"type"` ID string `json:"id"` Attributes struct { MfaID string `json:"mfaId"` MethodID string `json:"methodId"` MethodType string `json:"methodType"` VerificationStatus string `json:"verificationStatus"` } `json:"attributes"` Relationships struct { Method struct { Data struct { Type string `json:"type"` ID string `json:"id"` } `json:"data"` } `json:"method"` } `json:"relationships"` Links struct { Self string `json:"self"` } `json:"links"` }
type MFAMethod ¶
type MFAMethod struct { Type string `json:"type"` ID string `json:"id"` Attributes struct { MethodType string `json:"methodType"` DeviceName string `json:"deviceName"` Locked bool `json:"locked"` RemainingValidationAttempts int `json:"remainingValidationAttempts"` RemainingChallenges int `json:"remainingChallenges"` MethodTypeOrder3Ds int `json:"methodTypeOrder3ds"` SealOneID string `json:"sealOneId"` EnrolledAt time.Time `json:"enrolledAt"` Portfolio string `json:"portfolio"` PreferredDevice bool `json:"preferredDevice"` LockingPeriodAfterEnrollmentEnd time.Time `json:"lockingPeriodAfterEnrollmentEnd"` } `json:"attributes"` }
func UserSelectMFAMethod ¶
type MFAMethodsResponse ¶
type MFAMethodsResponse struct {
Data []MFAMethod `json:"data"`
}
type MfaMethodSelector ¶
type ReferenceAccount ¶
type TokenData ¶
type TokenData struct { AccessToken string `json:"access_token"` RefreshTokenExpiresIn string `json:"refresh_token_expires_in"` RefreshToken string `json:"refresh_token"` TokenFactorType string `json:"token_factor_type"` AnonymousUserID string `json:"anonymous_user_id"` Scope string `json:"scope"` IDToken string `json:"id_token"` MfaID string `json:"mfa_id"` TokenType string `json:"token_type"` ExpiresIn int `json:"expires_in"` }
Click to show internal directories.
Click to hide internal directories.