banking

package
v0.4.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 23, 2024 License: MIT Imports: 0 Imported by: 0

Documentation

Overview

Package banking provides primitives to interact with the openapi HTTP API.

Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.3.0 DO NOT EDIT.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BankingAccountDetailV3 added in v0.1.4

type BankingAccountDetailV3 struct {
	// AccountId A unique ID of the account adhering to the standards for ID permanence.
	AccountId string `json:"accountId"`

	// AccountNumber The unmasked account number for the account. Should not be supplied if the account number is a PAN requiring PCI compliance. Is expected to be formatted as digits only with leading zeros included and no punctuation or spaces.
	AccountNumber *string `json:"accountNumber,omitempty"`

	// AccountOwnership Value indicating the number of customers that have ownership of the account, according to the data holder's definition of account ownership. Does not indicate that all account owners are eligible consumers.
	AccountOwnership BankingAccountDetailV3AccountOwnership `json:"accountOwnership"`

	// Addresses The addresses for the account to be used for correspondence.
	Addresses *[]CommonPhysicalAddress `json:"addresses,omitempty"`

	// Bsb The unmasked BSB for the account. Is expected to be formatted as digits only with leading zeros included and no punctuation or spaces.
	Bsb *string `json:"bsb,omitempty"`

	// BundleName Optional field to indicate if this account is part of a bundle that is providing additional benefit to the customer.
	BundleName *string `json:"bundleName,omitempty"`

	// CreationDate Date that the account was created (if known).
	CreationDate *string                   `json:"creationDate,omitempty"`
	CreditCard   *BankingCreditCardAccount `json:"creditCard,omitempty"`

	// DepositRate current rate to calculate interest earned being applied to deposit balances as it stands at the time of the API call.
	DepositRate *string `json:"depositRate,omitempty"`

	// DepositRates Fully described deposit rates for this account based on the equivalent structure in Product Reference.
	DepositRates *[]BankingProductDepositRate `json:"depositRates,omitempty"`

	// DisplayName The display name of the account as defined by the bank. This should not incorporate account numbers or PANs. If it does the values should be masked according to the rules of the [MaskedAccountString](#common-field-types) common type.
	DisplayName string `json:"displayName"`

	// Features Array of features of the account based on the equivalent structure in Product Reference with the following additional field.
	Features *[]struct {
		// AdditionalInfo Display text providing more information on the feature. Mandatory if [_featureType_](#tocSproductfeaturetypedoc) is set to `OTHER`.
		AdditionalInfo *string `json:"additionalInfo,omitempty"`

		// AdditionalInfoUri Link to a web page with more information on this feature.
		AdditionalInfoUri *string `json:"additionalInfoUri,omitempty"`

		// AdditionalValue Generic field containing additional information relevant to the [_featureType_](#tocSproductfeaturetypedoc) specified. Whether mandatory or not is dependent on the value of the [_featureType_](#tocSproductfeaturetypedoc).
		AdditionalValue *string `json:"additionalValue,omitempty"`

		// FeatureType The type of feature described. For further details, refer to [Product Feature Types](#tocSproductfeaturetypedoc).
		FeatureType BankingAccountDetailV3FeaturesFeatureType `json:"featureType"`

		// IsActivated `true` if the feature is already activated and `false` if the feature is available for activation. Defaults to `true` if absent.<br>Note: this is an additional field appended to the feature object defined in the Product Reference payload.
		IsActivated *bool `json:"isActivated,omitempty"`
	} `json:"features,omitempty"`

	// Fees Fees and charges applicable to the account based on the equivalent structure in Product Reference.
	Fees *[]BankingProductFee `json:"fees,omitempty"`

	// IsOwned Flag indicating that the customer associated with the authorisation is an owner of the account. Does not indicate sole ownership, however. If not present then `true` is assumed.
	IsOwned *bool `json:"isOwned,omitempty"`

	// LendingRate The current rate to calculate interest payable being applied to lending balances as it stands at the time of the API call.
	LendingRate *string `json:"lendingRate,omitempty"`

	// LendingRates Fully described lending rates for this account based on the equivalent structure in Product Reference.
	LendingRates *[]BankingProductLendingRateV2 `json:"lendingRates,omitempty"`
	Loan         *BankingLoanAccountV2          `json:"loan,omitempty"`

	// MaskedNumber A masked version of the account. Whether BSB/Account Number, Credit Card PAN or another number.
	MaskedNumber string `json:"maskedNumber"`

	// Nickname A customer supplied nick name for the account.
	Nickname *string `json:"nickname,omitempty"`

	// OpenStatus Open or closed status for the account. If not present then `OPEN` is assumed.
	OpenStatus *BankingAccountDetailV3OpenStatus `json:"openStatus,omitempty"`

	// ProductCategory The category to which a product or account belongs. See [here](#product-categories) for more details.
	ProductCategory BankingProductCategory `json:"productCategory"`

	// ProductName The unique identifier of the account as defined by the data holder (akin to model number for the account).
	ProductName string `json:"productName"`

	// SpecificAccountUType The type of structure to present account specific fields.
	SpecificAccountUType *BankingAccountDetailV3SpecificAccountUType `json:"specificAccountUType,omitempty"`
	TermDeposit          *[]BankingTermDepositAccount                `json:"termDeposit,omitempty"`
}

BankingAccountDetailV3 defines model for BankingAccountDetailV3.

type BankingAccountDetailV3AccountOwnership added in v0.1.4

type BankingAccountDetailV3AccountOwnership string

BankingAccountDetailV3AccountOwnership Value indicating the number of customers that have ownership of the account, according to the data holder's definition of account ownership. Does not indicate that all account owners are eligible consumers.

const (
	BankingAccountDetailV3AccountOwnershipMANYPARTY BankingAccountDetailV3AccountOwnership = "MANY_PARTY"
	BankingAccountDetailV3AccountOwnershipONEPARTY  BankingAccountDetailV3AccountOwnership = "ONE_PARTY"
	BankingAccountDetailV3AccountOwnershipOTHER     BankingAccountDetailV3AccountOwnership = "OTHER"
	BankingAccountDetailV3AccountOwnershipTWOPARTY  BankingAccountDetailV3AccountOwnership = "TWO_PARTY"
	BankingAccountDetailV3AccountOwnershipUNKNOWN   BankingAccountDetailV3AccountOwnership = "UNKNOWN"
)

Defines values for BankingAccountDetailV3AccountOwnership.

type BankingAccountDetailV3AllOf added in v0.1.6

type BankingAccountDetailV3AllOf struct {
	// AccountNumber The unmasked account number for the account. Should not be supplied if the account number is a PAN requiring PCI compliance. Is expected to be formatted as digits only with leading zeros included and no punctuation or spaces.
	AccountNumber *string `json:"accountNumber,omitempty"`

	// Addresses The addresses for the account to be used for correspondence.
	Addresses *[]CommonPhysicalAddress `json:"addresses,omitempty"`

	// Bsb The unmasked BSB for the account. Is expected to be formatted as digits only with leading zeros included and no punctuation or spaces.
	Bsb *string `json:"bsb,omitempty"`

	// BundleName Optional field to indicate if this account is part of a bundle that is providing additional benefit to the customer.
	BundleName *string                   `json:"bundleName,omitempty"`
	CreditCard *BankingCreditCardAccount `json:"creditCard,omitempty"`

	// DepositRate current rate to calculate interest earned being applied to deposit balances as it stands at the time of the API call.
	DepositRate *string `json:"depositRate,omitempty"`

	// DepositRates Fully described deposit rates for this account based on the equivalent structure in Product Reference.
	DepositRates *[]BankingProductDepositRate `json:"depositRates,omitempty"`

	// Features Array of features of the account based on the equivalent structure in Product Reference with the following additional field.
	Features *[]struct {
		// AdditionalInfo Display text providing more information on the feature. Mandatory if [_featureType_](#tocSproductfeaturetypedoc) is set to `OTHER`.
		AdditionalInfo *string `json:"additionalInfo,omitempty"`

		// AdditionalInfoUri Link to a web page with more information on this feature.
		AdditionalInfoUri *string `json:"additionalInfoUri,omitempty"`

		// AdditionalValue Generic field containing additional information relevant to the [_featureType_](#tocSproductfeaturetypedoc) specified. Whether mandatory or not is dependent on the value of the [_featureType_](#tocSproductfeaturetypedoc).
		AdditionalValue *string `json:"additionalValue,omitempty"`

		// FeatureType The type of feature described. For further details, refer to [Product Feature Types](#tocSproductfeaturetypedoc).
		FeatureType BankingAccountDetailV3AllOfFeaturesFeatureType `json:"featureType"`

		// IsActivated `true` if the feature is already activated and `false` if the feature is available for activation. Defaults to `true` if absent.<br>Note: this is an additional field appended to the feature object defined in the Product Reference payload.
		IsActivated *bool `json:"isActivated,omitempty"`
	} `json:"features,omitempty"`

	// Fees Fees and charges applicable to the account based on the equivalent structure in Product Reference.
	Fees *[]BankingProductFee `json:"fees,omitempty"`

	// LendingRate The current rate to calculate interest payable being applied to lending balances as it stands at the time of the API call.
	LendingRate *string `json:"lendingRate,omitempty"`

	// LendingRates Fully described lending rates for this account based on the equivalent structure in Product Reference.
	LendingRates *[]BankingProductLendingRateV2 `json:"lendingRates,omitempty"`
	Loan         *BankingLoanAccountV2          `json:"loan,omitempty"`

	// SpecificAccountUType The type of structure to present account specific fields.
	SpecificAccountUType *BankingAccountDetailV3AllOfSpecificAccountUType `json:"specificAccountUType,omitempty"`
	TermDeposit          *[]BankingTermDepositAccount                     `json:"termDeposit,omitempty"`
}

BankingAccountDetailV3AllOf defines model for BankingAccountDetailV3_allOf.

type BankingAccountDetailV3AllOfFeaturesFeatureType added in v0.1.6

type BankingAccountDetailV3AllOfFeaturesFeatureType string

BankingAccountDetailV3AllOfFeaturesFeatureType The type of feature described. For further details, refer to [Product Feature Types](#tocSproductfeaturetypedoc).

const (
	BankingAccountDetailV3AllOfFeaturesFeatureTypeADDITIONALCARDS               BankingAccountDetailV3AllOfFeaturesFeatureType = "ADDITIONAL_CARDS"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeBALANCETRANSFERS              BankingAccountDetailV3AllOfFeaturesFeatureType = "BALANCE_TRANSFERS"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeBILLPAYMENT                   BankingAccountDetailV3AllOfFeaturesFeatureType = "BILL_PAYMENT"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeBONUSREWARDS                  BankingAccountDetailV3AllOfFeaturesFeatureType = "BONUS_REWARDS"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeCARDACCESS                    BankingAccountDetailV3AllOfFeaturesFeatureType = "CARD_ACCESS"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeCASHBACKOFFER                 BankingAccountDetailV3AllOfFeaturesFeatureType = "CASHBACK_OFFER"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeCOMPLEMENTARYPRODUCTDISCOUNTS BankingAccountDetailV3AllOfFeaturesFeatureType = "COMPLEMENTARY_PRODUCT_DISCOUNTS"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeDIGITALBANKING                BankingAccountDetailV3AllOfFeaturesFeatureType = "DIGITAL_BANKING"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeDIGITALWALLET                 BankingAccountDetailV3AllOfFeaturesFeatureType = "DIGITAL_WALLET"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeDONATEINTEREST                BankingAccountDetailV3AllOfFeaturesFeatureType = "DONATE_INTEREST"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeEXTRAREPAYMENTS               BankingAccountDetailV3AllOfFeaturesFeatureType = "EXTRA_REPAYMENTS"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeFRAUDPROTECTION               BankingAccountDetailV3AllOfFeaturesFeatureType = "FRAUD_PROTECTION"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeFREETXNS                      BankingAccountDetailV3AllOfFeaturesFeatureType = "FREE_TXNS"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeFREETXNSALLOWANCE             BankingAccountDetailV3AllOfFeaturesFeatureType = "FREE_TXNS_ALLOWANCE"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeGUARANTOR                     BankingAccountDetailV3AllOfFeaturesFeatureType = "GUARANTOR"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeINSTALMENTPLAN                BankingAccountDetailV3AllOfFeaturesFeatureType = "INSTALMENT_PLAN"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeINSURANCE                     BankingAccountDetailV3AllOfFeaturesFeatureType = "INSURANCE"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeINTERESTFREE                  BankingAccountDetailV3AllOfFeaturesFeatureType = "INTEREST_FREE"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeINTERESTFREETRANSFERS         BankingAccountDetailV3AllOfFeaturesFeatureType = "INTEREST_FREE_TRANSFERS"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeLOYALTYPROGRAM                BankingAccountDetailV3AllOfFeaturesFeatureType = "LOYALTY_PROGRAM"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeNOTIFICATIONS                 BankingAccountDetailV3AllOfFeaturesFeatureType = "NOTIFICATIONS"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeNPPENABLED                    BankingAccountDetailV3AllOfFeaturesFeatureType = "NPP_ENABLED"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeNPPPAYID                      BankingAccountDetailV3AllOfFeaturesFeatureType = "NPP_PAYID"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeOFFSET                        BankingAccountDetailV3AllOfFeaturesFeatureType = "OFFSET"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeOTHER                         BankingAccountDetailV3AllOfFeaturesFeatureType = "OTHER"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeOVERDRAFT                     BankingAccountDetailV3AllOfFeaturesFeatureType = "OVERDRAFT"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeREDRAW                        BankingAccountDetailV3AllOfFeaturesFeatureType = "REDRAW"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeRELATIONSHIPMANAGEMENT        BankingAccountDetailV3AllOfFeaturesFeatureType = "RELATIONSHIP_MANAGEMENT"
	BankingAccountDetailV3AllOfFeaturesFeatureTypeUNLIMITEDTXNS                 BankingAccountDetailV3AllOfFeaturesFeatureType = "UNLIMITED_TXNS"
)

Defines values for BankingAccountDetailV3AllOfFeaturesFeatureType.

type BankingAccountDetailV3AllOfSpecificAccountUType added in v0.1.6

type BankingAccountDetailV3AllOfSpecificAccountUType string

BankingAccountDetailV3AllOfSpecificAccountUType The type of structure to present account specific fields.

const (
	BankingAccountDetailV3AllOfSpecificAccountUTypeCreditCard  BankingAccountDetailV3AllOfSpecificAccountUType = "creditCard"
	BankingAccountDetailV3AllOfSpecificAccountUTypeLoan        BankingAccountDetailV3AllOfSpecificAccountUType = "loan"
	BankingAccountDetailV3AllOfSpecificAccountUTypeTermDeposit BankingAccountDetailV3AllOfSpecificAccountUType = "termDeposit"
)

Defines values for BankingAccountDetailV3AllOfSpecificAccountUType.

type BankingAccountDetailV3FeaturesFeatureType added in v0.1.4

type BankingAccountDetailV3FeaturesFeatureType string

BankingAccountDetailV3FeaturesFeatureType The type of feature described. For further details, refer to [Product Feature Types](#tocSproductfeaturetypedoc).

const (
	BankingAccountDetailV3FeaturesFeatureTypeADDITIONALCARDS               BankingAccountDetailV3FeaturesFeatureType = "ADDITIONAL_CARDS"
	BankingAccountDetailV3FeaturesFeatureTypeBALANCETRANSFERS              BankingAccountDetailV3FeaturesFeatureType = "BALANCE_TRANSFERS"
	BankingAccountDetailV3FeaturesFeatureTypeBILLPAYMENT                   BankingAccountDetailV3FeaturesFeatureType = "BILL_PAYMENT"
	BankingAccountDetailV3FeaturesFeatureTypeBONUSREWARDS                  BankingAccountDetailV3FeaturesFeatureType = "BONUS_REWARDS"
	BankingAccountDetailV3FeaturesFeatureTypeCARDACCESS                    BankingAccountDetailV3FeaturesFeatureType = "CARD_ACCESS"
	BankingAccountDetailV3FeaturesFeatureTypeCASHBACKOFFER                 BankingAccountDetailV3FeaturesFeatureType = "CASHBACK_OFFER"
	BankingAccountDetailV3FeaturesFeatureTypeCOMPLEMENTARYPRODUCTDISCOUNTS BankingAccountDetailV3FeaturesFeatureType = "COMPLEMENTARY_PRODUCT_DISCOUNTS"
	BankingAccountDetailV3FeaturesFeatureTypeDIGITALBANKING                BankingAccountDetailV3FeaturesFeatureType = "DIGITAL_BANKING"
	BankingAccountDetailV3FeaturesFeatureTypeDIGITALWALLET                 BankingAccountDetailV3FeaturesFeatureType = "DIGITAL_WALLET"
	BankingAccountDetailV3FeaturesFeatureTypeDONATEINTEREST                BankingAccountDetailV3FeaturesFeatureType = "DONATE_INTEREST"
	BankingAccountDetailV3FeaturesFeatureTypeEXTRAREPAYMENTS               BankingAccountDetailV3FeaturesFeatureType = "EXTRA_REPAYMENTS"
	BankingAccountDetailV3FeaturesFeatureTypeFRAUDPROTECTION               BankingAccountDetailV3FeaturesFeatureType = "FRAUD_PROTECTION"
	BankingAccountDetailV3FeaturesFeatureTypeFREETXNS                      BankingAccountDetailV3FeaturesFeatureType = "FREE_TXNS"
	BankingAccountDetailV3FeaturesFeatureTypeFREETXNSALLOWANCE             BankingAccountDetailV3FeaturesFeatureType = "FREE_TXNS_ALLOWANCE"
	BankingAccountDetailV3FeaturesFeatureTypeGUARANTOR                     BankingAccountDetailV3FeaturesFeatureType = "GUARANTOR"
	BankingAccountDetailV3FeaturesFeatureTypeINSTALMENTPLAN                BankingAccountDetailV3FeaturesFeatureType = "INSTALMENT_PLAN"
	BankingAccountDetailV3FeaturesFeatureTypeINSURANCE                     BankingAccountDetailV3FeaturesFeatureType = "INSURANCE"
	BankingAccountDetailV3FeaturesFeatureTypeINTERESTFREE                  BankingAccountDetailV3FeaturesFeatureType = "INTEREST_FREE"
	BankingAccountDetailV3FeaturesFeatureTypeINTERESTFREETRANSFERS         BankingAccountDetailV3FeaturesFeatureType = "INTEREST_FREE_TRANSFERS"
	BankingAccountDetailV3FeaturesFeatureTypeLOYALTYPROGRAM                BankingAccountDetailV3FeaturesFeatureType = "LOYALTY_PROGRAM"
	BankingAccountDetailV3FeaturesFeatureTypeNOTIFICATIONS                 BankingAccountDetailV3FeaturesFeatureType = "NOTIFICATIONS"
	BankingAccountDetailV3FeaturesFeatureTypeNPPENABLED                    BankingAccountDetailV3FeaturesFeatureType = "NPP_ENABLED"
	BankingAccountDetailV3FeaturesFeatureTypeNPPPAYID                      BankingAccountDetailV3FeaturesFeatureType = "NPP_PAYID"
	BankingAccountDetailV3FeaturesFeatureTypeOFFSET                        BankingAccountDetailV3FeaturesFeatureType = "OFFSET"
	BankingAccountDetailV3FeaturesFeatureTypeOTHER                         BankingAccountDetailV3FeaturesFeatureType = "OTHER"
	BankingAccountDetailV3FeaturesFeatureTypeOVERDRAFT                     BankingAccountDetailV3FeaturesFeatureType = "OVERDRAFT"
	BankingAccountDetailV3FeaturesFeatureTypeREDRAW                        BankingAccountDetailV3FeaturesFeatureType = "REDRAW"
	BankingAccountDetailV3FeaturesFeatureTypeRELATIONSHIPMANAGEMENT        BankingAccountDetailV3FeaturesFeatureType = "RELATIONSHIP_MANAGEMENT"
	BankingAccountDetailV3FeaturesFeatureTypeUNLIMITEDTXNS                 BankingAccountDetailV3FeaturesFeatureType = "UNLIMITED_TXNS"
)

Defines values for BankingAccountDetailV3FeaturesFeatureType.

type BankingAccountDetailV3OpenStatus added in v0.1.4

type BankingAccountDetailV3OpenStatus string

BankingAccountDetailV3OpenStatus Open or closed status for the account. If not present then `OPEN` is assumed.

const (
	BankingAccountDetailV3OpenStatusCLOSED BankingAccountDetailV3OpenStatus = "CLOSED"
	BankingAccountDetailV3OpenStatusOPEN   BankingAccountDetailV3OpenStatus = "OPEN"
)

Defines values for BankingAccountDetailV3OpenStatus.

type BankingAccountDetailV3SpecificAccountUType added in v0.1.4

type BankingAccountDetailV3SpecificAccountUType string

BankingAccountDetailV3SpecificAccountUType The type of structure to present account specific fields.

const (
	BankingAccountDetailV3SpecificAccountUTypeCreditCard  BankingAccountDetailV3SpecificAccountUType = "creditCard"
	BankingAccountDetailV3SpecificAccountUTypeLoan        BankingAccountDetailV3SpecificAccountUType = "loan"
	BankingAccountDetailV3SpecificAccountUTypeTermDeposit BankingAccountDetailV3SpecificAccountUType = "termDeposit"
)

Defines values for BankingAccountDetailV3SpecificAccountUType.

type BankingAccountV2 added in v0.1.4

type BankingAccountV2 struct {
	// AccountId A unique ID of the account adhering to the standards for ID permanence.
	AccountId string `json:"accountId"`

	// AccountOwnership Value indicating the number of customers that have ownership of the account, according to the data holder's definition of account ownership. Does not indicate that all account owners are eligible consumers.
	AccountOwnership BankingAccountV2AccountOwnership `json:"accountOwnership"`

	// CreationDate Date that the account was created (if known).
	CreationDate *string `json:"creationDate,omitempty"`

	// DisplayName The display name of the account as defined by the bank. This should not incorporate account numbers or PANs. If it does the values should be masked according to the rules of the [MaskedAccountString](#common-field-types) common type.
	DisplayName string `json:"displayName"`

	// IsOwned Flag indicating that the customer associated with the authorisation is an owner of the account. Does not indicate sole ownership, however. If not present then `true` is assumed.
	IsOwned *bool `json:"isOwned,omitempty"`

	// MaskedNumber A masked version of the account. Whether BSB/Account Number, Credit Card PAN or another number.
	MaskedNumber string `json:"maskedNumber"`

	// Nickname A customer supplied nick name for the account.
	Nickname *string `json:"nickname,omitempty"`

	// OpenStatus Open or closed status for the account. If not present then `OPEN` is assumed.
	OpenStatus *BankingAccountV2OpenStatus `json:"openStatus,omitempty"`

	// ProductCategory The category to which a product or account belongs. See [here](#product-categories) for more details.
	ProductCategory BankingProductCategory `json:"productCategory"`

	// ProductName The unique identifier of the account as defined by the data holder (akin to model number for the account).
	ProductName string `json:"productName"`
}

BankingAccountV2 defines model for BankingAccountV2.

type BankingAccountV2AccountOwnership added in v0.1.4

type BankingAccountV2AccountOwnership string

BankingAccountV2AccountOwnership Value indicating the number of customers that have ownership of the account, according to the data holder's definition of account ownership. Does not indicate that all account owners are eligible consumers.

const (
	BankingAccountV2AccountOwnershipMANYPARTY BankingAccountV2AccountOwnership = "MANY_PARTY"
	BankingAccountV2AccountOwnershipONEPARTY  BankingAccountV2AccountOwnership = "ONE_PARTY"
	BankingAccountV2AccountOwnershipOTHER     BankingAccountV2AccountOwnership = "OTHER"
	BankingAccountV2AccountOwnershipTWOPARTY  BankingAccountV2AccountOwnership = "TWO_PARTY"
	BankingAccountV2AccountOwnershipUNKNOWN   BankingAccountV2AccountOwnership = "UNKNOWN"
)

Defines values for BankingAccountV2AccountOwnership.

type BankingAccountV2OpenStatus added in v0.1.4

type BankingAccountV2OpenStatus string

BankingAccountV2OpenStatus Open or closed status for the account. If not present then `OPEN` is assumed.

const (
	BankingAccountV2OpenStatusCLOSED BankingAccountV2OpenStatus = "CLOSED"
	BankingAccountV2OpenStatusOPEN   BankingAccountV2OpenStatus = "OPEN"
)

Defines values for BankingAccountV2OpenStatus.

type BankingAuthorisedEntity

type BankingAuthorisedEntity struct {
	// Abn Australian Business Number for the authorised entity.
	Abn *string `json:"abn,omitempty"`

	// Acn Australian Company Number for the authorised entity.
	Acn *string `json:"acn,omitempty"`

	// Arbn Australian Registered Body Number for the authorised entity.
	Arbn *string `json:"arbn,omitempty"`

	// Description Description of the authorised entity derived from previously executed direct debits.
	Description *string `json:"description,omitempty"`

	// FinancialInstitution Name of the financial institution through which the direct debit will be executed. Is required unless the payment is made via a credit card scheme.
	FinancialInstitution *string `json:"financialInstitution,omitempty"`
}

BankingAuthorisedEntity defines model for BankingAuthorisedEntity.

type BankingBalance

type BankingBalance struct {
	// AccountId A unique ID of the account adhering to the standards for ID permanence.
	AccountId string `json:"accountId"`

	// AmortisedLimit Object representing the available limit amortised according to payment schedule. Assumed to be zero if absent.
	AmortisedLimit *string `json:"amortisedLimit,omitempty"`

	// AvailableBalance Balance representing the amount of funds available for transfer. Assumed to be zero or positive.
	AvailableBalance string `json:"availableBalance"`

	// CreditLimit Object representing the maximum amount of credit that is available for this account. Assumed to be zero if absent.
	CreditLimit *string `json:"creditLimit,omitempty"`

	// Currency The currency for the balance amounts. If absent assumed to be `AUD`.
	Currency *string `json:"currency,omitempty"`

	// CurrentBalance The balance of the account at this time. Should align to the balance available via other channels such as Internet Banking. Assumed to be negative if the customer has money owing.
	CurrentBalance string `json:"currentBalance"`

	// Purses Optional array of balances for the account in other currencies. Included to support accounts that support multi-currency purses such as Travel Cards.
	Purses *[]BankingBalancePurse `json:"purses,omitempty"`
}

BankingBalance defines model for BankingBalance.

type BankingBalancePurse

type BankingBalancePurse struct {
	// Amount The balance available for this additional currency purse.
	Amount string `json:"amount"`

	// Currency The currency for the purse.
	Currency *string `json:"currency,omitempty"`
}

BankingBalancePurse defines model for BankingBalancePurse.

type BankingBillerPayee

type BankingBillerPayee struct {
	// BillerCode BPAY Biller Code of the Biller.
	BillerCode string `json:"billerCode"`

	// BillerName Name of the Biller.
	BillerName string `json:"billerName"`

	// Crn BPAY CRN of the Biller (if available).<br/>Where the CRN contains sensitive information, it should be masked in line with how the Data Holder currently displays account identifiers in their existing online banking channels. If the contents of the CRN match the format of a Credit Card PAN they should be masked according to the rules applicable for [MaskedPANString](#common-field-types). If the contents are otherwise sensitive, then it should be masked using the rules applicable for the [MaskedAccountString](#common-field-types) common type.
	Crn *string `json:"crn,omitempty"`
}

BankingBillerPayee defines model for BankingBillerPayee.

type BankingCreditCardAccount

type BankingCreditCardAccount struct {
	// MinPaymentAmount The minimum payment amount due for the next card payment.
	MinPaymentAmount string `json:"minPaymentAmount"`

	// PaymentCurrency If absent assumes `AUD`.
	PaymentCurrency *string `json:"paymentCurrency,omitempty"`

	// PaymentDueAmount The amount due for the next card payment.
	PaymentDueAmount string `json:"paymentDueAmount"`

	// PaymentDueDate Date that the next payment for the card is due.
	PaymentDueDate string `json:"paymentDueDate"`
}

BankingCreditCardAccount defines model for BankingCreditCardAccount.

type BankingDigitalWalletPayee

type BankingDigitalWalletPayee struct {
	// Identifier The identifier of the digital wallet (dependent on type).
	Identifier string `json:"identifier"`

	// Name The display name of the wallet as given by the customer, else a default value defined by the data holder.
	Name string `json:"name"`

	// Provider The provider of the digital wallet.
	Provider BankingDigitalWalletPayeeProvider `json:"provider"`

	// Type The type of the digital wallet identifier.
	Type BankingDigitalWalletPayeeType `json:"type"`
}

BankingDigitalWalletPayee defines model for BankingDigitalWalletPayee.

type BankingDigitalWalletPayeeProvider

type BankingDigitalWalletPayeeProvider string

BankingDigitalWalletPayeeProvider The provider of the digital wallet.

const (
	BankingDigitalWalletPayeeProviderOTHER    BankingDigitalWalletPayeeProvider = "OTHER"
	BankingDigitalWalletPayeeProviderPAYPALAU BankingDigitalWalletPayeeProvider = "PAYPAL_AU"
)

Defines values for BankingDigitalWalletPayeeProvider.

type BankingDigitalWalletPayeeType

type BankingDigitalWalletPayeeType string

BankingDigitalWalletPayeeType The type of the digital wallet identifier.

const (
	BankingDigitalWalletPayeeTypeCONTACTNAME BankingDigitalWalletPayeeType = "CONTACT_NAME"
	BankingDigitalWalletPayeeTypeEMAIL       BankingDigitalWalletPayeeType = "EMAIL"
	BankingDigitalWalletPayeeTypeTELEPHONE   BankingDigitalWalletPayeeType = "TELEPHONE"
)

Defines values for BankingDigitalWalletPayeeType.

type BankingDirectDebit

type BankingDirectDebit struct {
	// AccountId A unique ID of the account adhering to the standards for ID permanence.
	AccountId        string                  `json:"accountId"`
	AuthorisedEntity BankingAuthorisedEntity `json:"authorisedEntity"`

	// LastDebitAmount The amount of the last debit executed under this authorisation.
	LastDebitAmount *string `json:"lastDebitAmount,omitempty"`

	// LastDebitDateTime The date and time of the last debit executed under this authorisation.
	LastDebitDateTime *string `json:"lastDebitDateTime,omitempty"`
}

BankingDirectDebit defines model for BankingDirectDebit.

type BankingDomesticPayee

type BankingDomesticPayee struct {
	Account *BankingDomesticPayeeAccount `json:"account,omitempty"`
	Card    *BankingDomesticPayeeCard    `json:"card,omitempty"`
	PayId   *BankingDomesticPayeePayId   `json:"payId,omitempty"`

	// PayeeAccountUType Type of account object included. Valid values are: <ul><li>`account` A standard Australian account defined by BSB/Account Number.<li>`card` A credit or charge card to pay to (note that PANs are masked).<li>`payId` A PayID recognised by NPP.</ul>
	PayeeAccountUType BankingDomesticPayeePayeeAccountUType `json:"payeeAccountUType"`
}

BankingDomesticPayee defines model for BankingDomesticPayee.

type BankingDomesticPayeeAccount

type BankingDomesticPayeeAccount struct {
	// AccountName Name of the account to pay to.
	AccountName *string `json:"accountName,omitempty"`

	// AccountNumber Number of the account to pay to.
	AccountNumber string `json:"accountNumber"`

	// Bsb BSB of the account to pay to.
	Bsb string `json:"bsb"`
}

BankingDomesticPayeeAccount defines model for BankingDomesticPayeeAccount.

type BankingDomesticPayeeCard

type BankingDomesticPayeeCard struct {
	// CardNumber Name of the account to pay to.
	CardNumber string `json:"cardNumber"`
}

BankingDomesticPayeeCard defines model for BankingDomesticPayeeCard.

type BankingDomesticPayeePayId

type BankingDomesticPayeePayId struct {
	// Identifier The identifier of the PayID (dependent on type).
	Identifier string `json:"identifier"`

	// Name The name assigned to the PayID by the owner of the PayID.
	Name *string `json:"name,omitempty"`

	// Type The type of the PayID.
	Type BankingDomesticPayeePayIdType `json:"type"`
}

BankingDomesticPayeePayId defines model for BankingDomesticPayeePayId.

type BankingDomesticPayeePayIdType

type BankingDomesticPayeePayIdType string

BankingDomesticPayeePayIdType The type of the PayID.

const (
	BankingDomesticPayeePayIdTypeABN           BankingDomesticPayeePayIdType = "ABN"
	BankingDomesticPayeePayIdTypeEMAIL         BankingDomesticPayeePayIdType = "EMAIL"
	BankingDomesticPayeePayIdTypeORGIDENTIFIER BankingDomesticPayeePayIdType = "ORG_IDENTIFIER"
	BankingDomesticPayeePayIdTypeTELEPHONE     BankingDomesticPayeePayIdType = "TELEPHONE"
)

Defines values for BankingDomesticPayeePayIdType.

type BankingDomesticPayeePayeeAccountUType

type BankingDomesticPayeePayeeAccountUType string

BankingDomesticPayeePayeeAccountUType Type of account object included. Valid values are: <ul><li>`account` A standard Australian account defined by BSB/Account Number.<li>`card` A credit or charge card to pay to (note that PANs are masked).<li>`payId` A PayID recognised by NPP.</ul>

Defines values for BankingDomesticPayeePayeeAccountUType.

type BankingInternationalPayee

type BankingInternationalPayee struct {
	BankDetails        BankingInternationalPayeeBankDetails        `json:"bankDetails"`
	BeneficiaryDetails BankingInternationalPayeeBeneficiaryDetails `json:"beneficiaryDetails"`
}

BankingInternationalPayee defines model for BankingInternationalPayee.

type BankingInternationalPayeeBankDetails added in v0.1.6

type BankingInternationalPayeeBankDetails struct {
	// AccountNumber Account Targeted for payment.
	AccountNumber string                                           `json:"accountNumber"`
	BankAddress   *BankingInternationalPayeeBankDetailsBankAddress `json:"bankAddress,omitempty"`

	// BeneficiaryBankBIC Swift bank code. Aligns with standard [ISO 9362](https://www.iso.org/standard/60390.html).
	BeneficiaryBankBIC *string `json:"beneficiaryBankBIC,omitempty"`

	// ChipNumber Number for the Clearing House Interbank Payments System.
	ChipNumber *string `json:"chipNumber,omitempty"`

	// Country Country of the recipient institution. A valid [ISO 3166 Alpha-3](https://www.iso.org/iso-3166-country-codes.html) country code.
	Country string `json:"country"`

	// FedWireNumber Number for Fedwire payment (Federal Reserve Wire Network).
	FedWireNumber *string `json:"fedWireNumber,omitempty"`

	// LegalEntityIdentifier The legal entity identifier (LEI) for the beneficiary. Aligns with [ISO 17442](https://www.iso.org/standard/59771.html).
	LegalEntityIdentifier *string `json:"legalEntityIdentifier,omitempty"`

	// RoutingNumber International bank routing number.
	RoutingNumber *string `json:"routingNumber,omitempty"`

	// SortCode Sort code used for account identification in some jurisdictions.
	SortCode *string `json:"sortCode,omitempty"`
}

BankingInternationalPayeeBankDetails defines model for BankingInternationalPayee_bankDetails.

type BankingInternationalPayeeBankDetailsBankAddress added in v0.1.6

type BankingInternationalPayeeBankDetailsBankAddress struct {
	// Address Address of the recipient Bank.
	Address string `json:"address"`

	// Name Name of the recipient Bank.
	Name string `json:"name"`
}

BankingInternationalPayeeBankDetailsBankAddress defines model for BankingInternationalPayee_bankDetails_bankAddress.

type BankingInternationalPayeeBeneficiaryDetails added in v0.1.6

type BankingInternationalPayeeBeneficiaryDetails struct {
	// Country Country where the beneficiary resides. A valid [ISO 3166 Alpha-3](https://www.iso.org/iso-3166-country-codes.html) country code.
	Country string `json:"country"`

	// Message Response message for the payment.
	Message *string `json:"message,omitempty"`

	// Name Name of the beneficiary.
	Name *string `json:"name,omitempty"`
}

BankingInternationalPayeeBeneficiaryDetails defines model for BankingInternationalPayee_beneficiaryDetails.

type BankingLoanAccountV2

type BankingLoanAccountV2 struct {
	// LoanEndDate Date that the loan is due to be repaid in full.
	LoanEndDate *string `json:"loanEndDate,omitempty"`

	// MaxRedraw Maximum amount of funds that can be redrawn. If not present redraw is not available even if the feature exists for the account.
	MaxRedraw *string `json:"maxRedraw,omitempty"`

	// MaxRedrawCurrency If absent assumes `AUD`.
	MaxRedrawCurrency *string `json:"maxRedrawCurrency,omitempty"`

	// MinInstalmentAmount Minimum amount of next instalment.
	MinInstalmentAmount *string `json:"minInstalmentAmount,omitempty"`

	// MinInstalmentCurrency If absent assumes `AUD`.
	MinInstalmentCurrency *string `json:"minInstalmentCurrency,omitempty"`

	// MinRedraw Minimum redraw amount.
	MinRedraw *string `json:"minRedraw,omitempty"`

	// MinRedrawCurrency If absent assumes `AUD`.
	MinRedrawCurrency *string `json:"minRedrawCurrency,omitempty"`

	// NextInstalmentDate Next date that an instalment is required.
	NextInstalmentDate *string `json:"nextInstalmentDate,omitempty"`

	// OffsetAccountEnabled Set to `true` if one or more offset accounts are configured for this loan account.
	OffsetAccountEnabled *bool `json:"offsetAccountEnabled,omitempty"`

	// OffsetAccountIds The accountIDs of the configured offset accounts attached to this loan. Only offset accounts that can be accessed under the current authorisation should be included. It is expected behaviour that _offsetAccountEnabled_ is set to `true` but the _offsetAccountIds_ field is absent or empty. This represents a situation where an offset account exists but details can not be accessed under the current authorisation.
	OffsetAccountIds *[]string `json:"offsetAccountIds,omitempty"`

	// OriginalLoanAmount Optional original loan value.
	OriginalLoanAmount *string `json:"originalLoanAmount,omitempty"`

	// OriginalLoanCurrency If absent assumes `AUD`.
	OriginalLoanCurrency *string `json:"originalLoanCurrency,omitempty"`

	// OriginalStartDate Optional original start date for the loan.
	OriginalStartDate *string `json:"originalStartDate,omitempty"`

	// RepaymentFrequency The expected or required repayment frequency. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax).
	RepaymentFrequency *string `json:"repaymentFrequency,omitempty"`

	// RepaymentType Options in place for repayments. If absent defaults to `PRINCIPAL_AND_INTEREST`.
	RepaymentType *BankingLoanAccountV2RepaymentType `json:"repaymentType,omitempty"`
}

BankingLoanAccountV2 defines model for BankingLoanAccountV2.

type BankingLoanAccountV2RepaymentType

type BankingLoanAccountV2RepaymentType string

BankingLoanAccountV2RepaymentType Options in place for repayments. If absent defaults to `PRINCIPAL_AND_INTEREST`.

const (
	BankingLoanAccountV2RepaymentTypeINTERESTONLY         BankingLoanAccountV2RepaymentType = "INTEREST_ONLY"
	BankingLoanAccountV2RepaymentTypePRINCIPALANDINTEREST BankingLoanAccountV2RepaymentType = "PRINCIPAL_AND_INTEREST"
)

Defines values for BankingLoanAccountV2RepaymentType.

type BankingPayeeDetailV2

type BankingPayeeDetailV2 struct {
	Biller *BankingBillerPayee `json:"biller,omitempty"`

	// CreationDate The date the payee was created by the customer.
	CreationDate *string `json:"creationDate,omitempty"`

	// Description A description of the payee provided by the customer.
	Description   *string                    `json:"description,omitempty"`
	DigitalWallet *BankingDigitalWalletPayee `json:"digitalWallet,omitempty"`
	Domestic      *BankingDomesticPayee      `json:"domestic,omitempty"`
	International *BankingInternationalPayee `json:"international,omitempty"`

	// Nickname The short display name of the payee as provided by the customer. Where a customer has not provided a nickname, a display name derived by the bank for the payee consistent with existing digital banking channels.
	Nickname string `json:"nickname"`

	// PayeeId ID of the payee adhering to the rules of ID permanence.
	PayeeId string `json:"payeeId"`

	// PayeeUType Type of object included that describes the payee in detail.
	PayeeUType BankingPayeeDetailV2PayeeUType `json:"payeeUType"`

	// Type The type of payee.<ul><li>`DOMESTIC` means a registered payee for domestic payments including NPP.<li>`INTERNATIONAL` means a registered payee for international payments.<li>`BILLER` means a registered payee for BPAY.<li>`DIGITAL_WALLET` means a registered payee for a bank's digital wallet.</ul>
	Type BankingPayeeDetailV2Type `json:"type"`
}

BankingPayeeDetailV2 defines model for BankingPayeeDetailV2.

type BankingPayeeDetailV2AllOf added in v0.1.6

type BankingPayeeDetailV2AllOf struct {
	Biller        *BankingBillerPayee        `json:"biller,omitempty"`
	DigitalWallet *BankingDigitalWalletPayee `json:"digitalWallet,omitempty"`
	Domestic      *BankingDomesticPayee      `json:"domestic,omitempty"`
	International *BankingInternationalPayee `json:"international,omitempty"`

	// PayeeUType Type of object included that describes the payee in detail.
	PayeeUType BankingPayeeDetailV2AllOfPayeeUType `json:"payeeUType"`
}

BankingPayeeDetailV2AllOf defines model for BankingPayeeDetailV2_allOf.

type BankingPayeeDetailV2AllOfPayeeUType added in v0.1.6

type BankingPayeeDetailV2AllOfPayeeUType string

BankingPayeeDetailV2AllOfPayeeUType Type of object included that describes the payee in detail.

const (
	BankingPayeeDetailV2AllOfPayeeUTypeBiller        BankingPayeeDetailV2AllOfPayeeUType = "biller"
	BankingPayeeDetailV2AllOfPayeeUTypeDigitalWallet BankingPayeeDetailV2AllOfPayeeUType = "digitalWallet"
	BankingPayeeDetailV2AllOfPayeeUTypeDomestic      BankingPayeeDetailV2AllOfPayeeUType = "domestic"
	BankingPayeeDetailV2AllOfPayeeUTypeInternational BankingPayeeDetailV2AllOfPayeeUType = "international"
)

Defines values for BankingPayeeDetailV2AllOfPayeeUType.

type BankingPayeeDetailV2PayeeUType

type BankingPayeeDetailV2PayeeUType string

BankingPayeeDetailV2PayeeUType Type of object included that describes the payee in detail.

const (
	BankingPayeeDetailV2PayeeUTypeBiller        BankingPayeeDetailV2PayeeUType = "biller"
	BankingPayeeDetailV2PayeeUTypeDigitalWallet BankingPayeeDetailV2PayeeUType = "digitalWallet"
	BankingPayeeDetailV2PayeeUTypeDomestic      BankingPayeeDetailV2PayeeUType = "domestic"
	BankingPayeeDetailV2PayeeUTypeInternational BankingPayeeDetailV2PayeeUType = "international"
)

Defines values for BankingPayeeDetailV2PayeeUType.

type BankingPayeeDetailV2Type

type BankingPayeeDetailV2Type string

BankingPayeeDetailV2Type The type of payee.<ul><li>`DOMESTIC` means a registered payee for domestic payments including NPP.<li>`INTERNATIONAL` means a registered payee for international payments.<li>`BILLER` means a registered payee for BPAY.<li>`DIGITAL_WALLET` means a registered payee for a bank's digital wallet.</ul>

const (
	BankingPayeeDetailV2TypeBILLER        BankingPayeeDetailV2Type = "BILLER"
	BankingPayeeDetailV2TypeDIGITALWALLET BankingPayeeDetailV2Type = "DIGITAL_WALLET"
	BankingPayeeDetailV2TypeDOMESTIC      BankingPayeeDetailV2Type = "DOMESTIC"
	BankingPayeeDetailV2TypeINTERNATIONAL BankingPayeeDetailV2Type = "INTERNATIONAL"
)

Defines values for BankingPayeeDetailV2Type.

type BankingPayeeV2

type BankingPayeeV2 struct {
	// CreationDate The date the payee was created by the customer.
	CreationDate *string `json:"creationDate,omitempty"`

	// Description A description of the payee provided by the customer.
	Description *string `json:"description,omitempty"`

	// Nickname The short display name of the payee as provided by the customer. Where a customer has not provided a nickname, a display name derived by the bank for the payee consistent with existing digital banking channels.
	Nickname string `json:"nickname"`

	// PayeeId ID of the payee adhering to the rules of ID permanence.
	PayeeId string `json:"payeeId"`

	// Type The type of payee.<ul><li>`DOMESTIC` means a registered payee for domestic payments including NPP.<li>`INTERNATIONAL` means a registered payee for international payments.<li>`BILLER` means a registered payee for BPAY.<li>`DIGITAL_WALLET` means a registered payee for a bank's digital wallet.</ul>
	Type BankingPayeeV2Type `json:"type"`
}

BankingPayeeV2 defines model for BankingPayeeV2.

type BankingPayeeV2Type

type BankingPayeeV2Type string

BankingPayeeV2Type The type of payee.<ul><li>`DOMESTIC` means a registered payee for domestic payments including NPP.<li>`INTERNATIONAL` means a registered payee for international payments.<li>`BILLER` means a registered payee for BPAY.<li>`DIGITAL_WALLET` means a registered payee for a bank's digital wallet.</ul>

const (
	BankingPayeeV2TypeBILLER        BankingPayeeV2Type = "BILLER"
	BankingPayeeV2TypeDIGITALWALLET BankingPayeeV2Type = "DIGITAL_WALLET"
	BankingPayeeV2TypeDOMESTIC      BankingPayeeV2Type = "DOMESTIC"
	BankingPayeeV2TypeINTERNATIONAL BankingPayeeV2Type = "INTERNATIONAL"
)

Defines values for BankingPayeeV2Type.

type BankingProductAdditionalInformationV2

type BankingProductAdditionalInformationV2 struct {
	// AdditionalBundleUris An array of additional bundles for the product, if applicable. To be treated as secondary documents to the _bundleUri_. Only to be used if there is a primary _bundleUri_.
	AdditionalBundleUris *[]BankingProductAdditionalInformationV2AdditionalInformationUris `json:"additionalBundleUris,omitempty"`

	// AdditionalEligibilityUris An array of additional eligibility rules and criteria for the product, if applicable. To be treated as secondary documents to the _eligibilityUri_. Only to be used if there is a primary _eligibilityUri_.
	AdditionalEligibilityUris *[]BankingProductAdditionalInformationV2AdditionalInformationUris `json:"additionalEligibilityUris,omitempty"`

	// AdditionalFeesAndPricingUris An array of additional fees, pricing, discounts, exemptions and bonuses for the product, if applicable. To be treated as secondary documents to the _feesAndPricingUri_. Only to be used if there is a primary _feesAndPricingUri_.
	AdditionalFeesAndPricingUris *[]BankingProductAdditionalInformationV2AdditionalInformationUris `json:"additionalFeesAndPricingUris,omitempty"`

	// AdditionalOverviewUris An array of additional general overviews for the product or features of the product, if applicable. To be treated as secondary documents to the _overviewUri_. Only to be used if there is a primary _overviewUri_.
	AdditionalOverviewUris *[]BankingProductAdditionalInformationV2AdditionalInformationUris `json:"additionalOverviewUris,omitempty"`

	// AdditionalTermsUris An array of additional terms and conditions for the product, if applicable. To be treated as secondary documents to the _termsUri_. Only to be used if there is a primary _termsUri_.
	AdditionalTermsUris *[]BankingProductAdditionalInformationV2AdditionalInformationUris `json:"additionalTermsUris,omitempty"`

	// BundleUri Description of a bundle that this product can be part of. Mandatory if _additionalBundleUris_ includes one or more supporting documents.
	BundleUri *string `json:"bundleUri,omitempty"`

	// EligibilityUri Eligibility rules and criteria for the product. Mandatory if _additionalEligibilityUris_ includes one or more supporting documents.
	EligibilityUri *string `json:"eligibilityUri,omitempty"`

	// FeesAndPricingUri Description of fees, pricing, discounts, exemptions and bonuses for the product. Mandatory if _additionalFeesAndPricingUris_ includes one or more supporting documents.
	FeesAndPricingUri *string `json:"feesAndPricingUri,omitempty"`

	// OverviewUri General overview of the product. Mandatory if _additionalOverviewUris_ includes one or more supporting documents.
	OverviewUri *string `json:"overviewUri,omitempty"`

	// TermsUri Terms and conditions for the product. Mandatory if _additionalTermsUris_ includes one or more supporting documents.
	TermsUri *string `json:"termsUri,omitempty"`
}

BankingProductAdditionalInformationV2 Object that contains links to additional information on specific topics.

type BankingProductAdditionalInformationV2AdditionalInformationUris

type BankingProductAdditionalInformationV2AdditionalInformationUris struct {
	// AdditionalInfoUri The URI describing the additional information.
	AdditionalInfoUri string `json:"additionalInfoUri"`

	// Description Display text providing more information about the document URI.
	Description *string `json:"description,omitempty"`
}

BankingProductAdditionalInformationV2AdditionalInformationUris defines model for BankingProductAdditionalInformationV2_additionalInformationUris.

type BankingProductBundle

type BankingProductBundle struct {
	// AdditionalInfo Display text providing more information on the bundle.
	AdditionalInfo *string `json:"additionalInfo,omitempty"`

	// AdditionalInfoUri Link to a web page with more information on the bundle criteria and benefits.
	AdditionalInfoUri *string `json:"additionalInfoUri,omitempty"`

	// Description Description of the bundle.
	Description string `json:"description"`

	// Name Name of the bundle.
	Name string `json:"name"`

	// ProductIds Array of product IDs for products included in the bundle that are available via the product endpoints. Note that this array is not intended to represent a comprehensive model of the products included in the bundle and some products available for the bundle may not be available via the product reference endpoints.
	ProductIds *[]string `json:"productIds,omitempty"`
}

BankingProductBundle defines model for BankingProductBundle.

type BankingProductCategory

type BankingProductCategory string

BankingProductCategory The category to which a product or account belongs. See [here](#product-categories) for more details.

const (
	BankingProductCategoryBUSINESSLOANS           BankingProductCategory = "BUSINESS_LOANS"
	BankingProductCategoryCREDANDCHRGCARDS        BankingProductCategory = "CRED_AND_CHRG_CARDS"
	BankingProductCategoryLEASES                  BankingProductCategory = "LEASES"
	BankingProductCategoryMARGINLOANS             BankingProductCategory = "MARGIN_LOANS"
	BankingProductCategoryOVERDRAFTS              BankingProductCategory = "OVERDRAFTS"
	BankingProductCategoryPERSLOANS               BankingProductCategory = "PERS_LOANS"
	BankingProductCategoryREGULATEDTRUSTACCOUNTS  BankingProductCategory = "REGULATED_TRUST_ACCOUNTS"
	BankingProductCategoryRESIDENTIALMORTGAGES    BankingProductCategory = "RESIDENTIAL_MORTGAGES"
	BankingProductCategoryTERMDEPOSITS            BankingProductCategory = "TERM_DEPOSITS"
	BankingProductCategoryTRADEFINANCE            BankingProductCategory = "TRADE_FINANCE"
	BankingProductCategoryTRANSANDSAVINGSACCOUNTS BankingProductCategory = "TRANS_AND_SAVINGS_ACCOUNTS"
	BankingProductCategoryTRAVELCARDS             BankingProductCategory = "TRAVEL_CARDS"
)

Defines values for BankingProductCategory.

type BankingProductConstraint

type BankingProductConstraint struct {
	// AdditionalInfo Display text providing more information the constraint.
	AdditionalInfo *string `json:"additionalInfo,omitempty"`

	// AdditionalInfoUri Link to a web page with more information on the constraint.
	AdditionalInfoUri *string `json:"additionalInfoUri,omitempty"`

	// AdditionalValue Generic field containing additional information relevant to the [_constraintType_](#tocSproductconstrainttypedoc) specified. Whether mandatory or not is dependent on the value of [_constraintType_](#tocSproductconstrainttypedoc).
	AdditionalValue *string `json:"additionalValue,omitempty"`

	// ConstraintType The type of constraint described. For further details, refer to [Product Constraint Types](#tocSproductconstrainttypedoc).
	ConstraintType BankingProductConstraintConstraintType `json:"constraintType"`
}

BankingProductConstraint defines model for BankingProductConstraint.

type BankingProductConstraintConstraintType

type BankingProductConstraintConstraintType string

BankingProductConstraintConstraintType The type of constraint described. For further details, refer to [Product Constraint Types](#tocSproductconstrainttypedoc).

const (
	MAXBALANCE     BankingProductConstraintConstraintType = "MAX_BALANCE"
	MAXLIMIT       BankingProductConstraintConstraintType = "MAX_LIMIT"
	MINBALANCE     BankingProductConstraintConstraintType = "MIN_BALANCE"
	MINLIMIT       BankingProductConstraintConstraintType = "MIN_LIMIT"
	OPENINGBALANCE BankingProductConstraintConstraintType = "OPENING_BALANCE"
)

Defines values for BankingProductConstraintConstraintType.

type BankingProductDepositRate

type BankingProductDepositRate struct {
	// AdditionalInfo Display text providing more information on the rate.
	AdditionalInfo *string `json:"additionalInfo,omitempty"`

	// AdditionalInfoUri Link to a web page with more information on this rate.
	AdditionalInfoUri *string `json:"additionalInfoUri,omitempty"`

	// AdditionalValue Generic field containing additional information relevant to the [_depositRateType_](#tocSproductdepositratetypedoc) specified. Whether mandatory or not is dependent on the value of [_depositRateType_](#tocSproductdepositratetypedoc).
	AdditionalValue *string `json:"additionalValue,omitempty"`

	// ApplicationFrequency The period after which the calculated amount(s) (see _calculationFrequency_) are 'applied' (i.e. debited or credited) to the account. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax).
	ApplicationFrequency *string `json:"applicationFrequency,omitempty"`

	// CalculationFrequency The period after which the rate is applied to the balance to calculate the amount due for the period. Calculation of the amount is often daily (as balances may change) but accumulated until the total amount is 'applied' to the account (see _applicationFrequency_). Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax).
	CalculationFrequency *string `json:"calculationFrequency,omitempty"`

	// DepositRateType The type of rate (`FIXED`, `VARIABLE`, `BONUS`, etc.) For further details, refer to [Product Deposit Rate Types](#tocSproductdepositratetypedoc).
	DepositRateType BankingProductDepositRateDepositRateType `json:"depositRateType"`

	// Rate The rate to be applied.
	Rate string `json:"rate"`

	// Tiers Rate tiers applicable for this rate.
	Tiers *[]BankingProductRateTierV3 `json:"tiers,omitempty"`
}

BankingProductDepositRate defines model for BankingProductDepositRate.

type BankingProductDepositRateDepositRateType

type BankingProductDepositRateDepositRateType string

BankingProductDepositRateDepositRateType The type of rate (`FIXED`, `VARIABLE`, `BONUS`, etc.) For further details, refer to [Product Deposit Rate Types](#tocSproductdepositratetypedoc).

const (
	BankingProductDepositRateDepositRateTypeBONUS        BankingProductDepositRateDepositRateType = "BONUS"
	BankingProductDepositRateDepositRateTypeBUNDLEBONUS  BankingProductDepositRateDepositRateType = "BUNDLE_BONUS"
	BankingProductDepositRateDepositRateTypeFIXED        BankingProductDepositRateDepositRateType = "FIXED"
	BankingProductDepositRateDepositRateTypeFLOATING     BankingProductDepositRateDepositRateType = "FLOATING"
	BankingProductDepositRateDepositRateTypeINTRODUCTORY BankingProductDepositRateDepositRateType = "INTRODUCTORY"
	BankingProductDepositRateDepositRateTypeMARKETLINKED BankingProductDepositRateDepositRateType = "MARKET_LINKED"
	BankingProductDepositRateDepositRateTypeVARIABLE     BankingProductDepositRateDepositRateType = "VARIABLE"
)

Defines values for BankingProductDepositRateDepositRateType.

type BankingProductDetailV4

type BankingProductDetailV4 struct {
	// AdditionalInformation Object that contains links to additional information on specific topics.
	AdditionalInformation *BankingProductAdditionalInformationV2 `json:"additionalInformation,omitempty"`

	// ApplicationUri A link to an application web page where this product can be applied for.
	ApplicationUri *string `json:"applicationUri,omitempty"`

	// Brand A label of the brand for the product. Able to be used for filtering. For data holders with single brands this value is still required.
	Brand string `json:"brand"`

	// BrandName An optional display name of the brand.
	BrandName *string `json:"brandName,omitempty"`

	// Bundles An array of bundles that this product participates in. Each bundle is described by free form information but also by a list of product IDs of the other products that are included in the bundle. It is assumed that the current product is included in the bundle also.
	Bundles *[]BankingProductBundle `json:"bundles,omitempty"`

	// CardArt An array of card art images.
	CardArt *[]BankingProductV4CardArt `json:"cardArt,omitempty"`

	// Constraints Constraints on the application for or operation of the product such as minimum balances or limit thresholds.
	Constraints *[]BankingProductConstraint `json:"constraints,omitempty"`

	// DepositRates Interest rates available for deposits.
	DepositRates *[]BankingProductDepositRate `json:"depositRates,omitempty"`

	// Description A description of the product.
	Description string `json:"description"`

	// EffectiveFrom The date and time from which this product is effective (i.e. is available for origination). Used to enable the articulation of products to the regime before they are available for customers to originate.
	EffectiveFrom *string `json:"effectiveFrom,omitempty"`

	// EffectiveTo The date and time at which this product will be retired and will no longer be offered. Used to enable the managed deprecation of products.
	EffectiveTo *string `json:"effectiveTo,omitempty"`

	// Eligibility Eligibility criteria for the product.
	Eligibility *[]BankingProductEligibility `json:"eligibility,omitempty"`

	// Features Array of features available for the product.
	Features *[]BankingProductFeatureV2 `json:"features,omitempty"`

	// Fees Fees applicable for the product.
	Fees *[]BankingProductFee `json:"fees,omitempty"`

	// IsTailored Indicates whether the product is specifically tailored to a circumstance. In this case fees and prices are significantly negotiated depending on context. While all products are open to a degree of tailoring this flag indicates that tailoring is expected and thus that the provision of specific fees and rates is not applicable.
	IsTailored bool `json:"isTailored"`

	// LastUpdated The last date and time that the information for this product was changed (or the creation date for the product if it has never been altered).
	LastUpdated string `json:"lastUpdated"`

	// LendingRates Interest rates charged against lending balances.
	LendingRates *[]BankingProductLendingRateV2 `json:"lendingRates,omitempty"`

	// Name The display name of the product.
	Name string `json:"name"`

	// ProductCategory The category to which a product or account belongs. See [here](#product-categories) for more details.
	ProductCategory BankingProductCategory `json:"productCategory"`

	// ProductId A data holder specific unique identifier for this product. This identifier must be unique to a product but does not otherwise need to adhere to ID permanence guidelines.
	ProductId string `json:"productId"`
}

BankingProductDetailV4 defines model for BankingProductDetailV4.

type BankingProductDetailV4AllOf added in v0.1.6

type BankingProductDetailV4AllOf struct {
	// Bundles An array of bundles that this product participates in. Each bundle is described by free form information but also by a list of product IDs of the other products that are included in the bundle. It is assumed that the current product is included in the bundle also.
	Bundles *[]BankingProductBundle `json:"bundles,omitempty"`

	// Constraints Constraints on the application for or operation of the product such as minimum balances or limit thresholds.
	Constraints *[]BankingProductConstraint `json:"constraints,omitempty"`

	// DepositRates Interest rates available for deposits.
	DepositRates *[]BankingProductDepositRate `json:"depositRates,omitempty"`

	// Eligibility Eligibility criteria for the product.
	Eligibility *[]BankingProductEligibility `json:"eligibility,omitempty"`

	// Features Array of features available for the product.
	Features *[]BankingProductFeatureV2 `json:"features,omitempty"`

	// Fees Fees applicable for the product.
	Fees *[]BankingProductFee `json:"fees,omitempty"`

	// LendingRates Interest rates charged against lending balances.
	LendingRates *[]BankingProductLendingRateV2 `json:"lendingRates,omitempty"`
}

BankingProductDetailV4AllOf defines model for BankingProductDetailV4_allOf.

type BankingProductDiscount

type BankingProductDiscount struct {
	// AccruedRate A discount rate calculated based on a proportion of the calculated interest accrued on the account. Note that the currency of the fee discount is expected to be the same as the currency of the fee itself. One of _amount_, _balanceRate_, _transactionRate_, _accruedRate_ and _feeRate_ is mandatory. Unless noted in _additionalInfo_, assumes the application and calculation frequency are the same as the corresponding fee.
	AccruedRate *string `json:"accruedRate,omitempty"`

	// AdditionalInfo Display text providing more information on the discount.
	AdditionalInfo *string `json:"additionalInfo,omitempty"`

	// AdditionalInfoUri Link to a web page with more information on this discount.
	AdditionalInfoUri *string `json:"additionalInfoUri,omitempty"`

	// AdditionalValue Generic field containing additional information relevant to the [_discountType_](#tocSproductdiscounttypedoc) specified. Whether mandatory or not is dependent on the value of [_discountType_](#tocSproductdiscounttypedoc).
	AdditionalValue *string `json:"additionalValue,omitempty"`

	// Amount Dollar value of the discount. One of _amount_, _balanceRate_, _transactionRate_, _accruedRate_ and _feeRate_ is mandatory.
	Amount *string `json:"amount,omitempty"`

	// BalanceRate A discount rate calculated based on a proportion of the balance. Note that the currency of the fee discount is expected to be the same as the currency of the fee itself. One of _amount_, _balanceRate_, _transactionRate_, _accruedRate_ and _feeRate_ is mandatory. Unless noted in _additionalInfo_, assumes the application and calculation frequency are the same as the corresponding fee.
	BalanceRate *string `json:"balanceRate,omitempty"`

	// Description Description of the discount.
	Description string `json:"description"`

	// DiscountType The type of discount. For further details, refer to [Product Discount Types](#tocSproductdiscounttypedoc).
	DiscountType BankingProductDiscountDiscountType `json:"discountType"`

	// Eligibility Eligibility constraints that apply to this discount. Mandatory if _discountType_ is `ELIGIBILITY_ONLY`.
	Eligibility *[]BankingProductDiscountEligibility `json:"eligibility,omitempty"`

	// FeeRate A discount rate calculated based on a proportion of the fee to which this discount is attached. Note that the currency of the fee discount is expected to be the same as the currency of the fee itself. One of _amount_, _balanceRate_, _transactionRate_, _accruedRate_ and _feeRate_ is mandatory. Unless noted in _additionalInfo_, assumes the application and calculation frequency are the same as the corresponding fee.
	FeeRate *string `json:"feeRate,omitempty"`

	// TransactionRate A discount rate calculated based on a proportion of a transaction. Note that the currency of the fee discount is expected to be the same as the currency of the fee itself. One of _amount_, _balanceRate_, _transactionRate_, _accruedRate_ and _feeRate_ is mandatory.
	TransactionRate *string `json:"transactionRate,omitempty"`
}

BankingProductDiscount defines model for BankingProductDiscount.

type BankingProductDiscountDiscountType

type BankingProductDiscountDiscountType string

BankingProductDiscountDiscountType The type of discount. For further details, refer to [Product Discount Types](#tocSproductdiscounttypedoc).

const (
	BALANCE         BankingProductDiscountDiscountType = "BALANCE"
	DEPOSITS        BankingProductDiscountDiscountType = "DEPOSITS"
	ELIGIBILITYONLY BankingProductDiscountDiscountType = "ELIGIBILITY_ONLY"
	FEECAP          BankingProductDiscountDiscountType = "FEE_CAP"
	PAYMENTS        BankingProductDiscountDiscountType = "PAYMENTS"
)

Defines values for BankingProductDiscountDiscountType.

type BankingProductDiscountEligibility

type BankingProductDiscountEligibility struct {
	// AdditionalInfo Display text providing more information on this eligibility constraint. Whether mandatory or not is dependent on the value of [_discountEligibilityType_](#tocSproductdiscounteligibilitydoc).
	AdditionalInfo *string `json:"additionalInfo,omitempty"`

	// AdditionalInfoUri Link to a web page with more information on this eligibility constraint.
	AdditionalInfoUri *string `json:"additionalInfoUri,omitempty"`

	// AdditionalValue Generic field containing additional information relevant to the [_discountEligibilityType_](#tocSproductdiscounteligibilitydoc) specified. Whether mandatory or not is dependent on the value of [_discountEligibilityType_](#tocSproductdiscounteligibilitydoc).
	AdditionalValue *string `json:"additionalValue,omitempty"`

	// DiscountEligibilityType The type of the specific eligibility constraint for a discount. For further details, refer to [Product Discount Eligibility Types](#tocSproductdiscounteligibilitydoc).
	DiscountEligibilityType BankingProductDiscountEligibilityDiscountEligibilityType `json:"discountEligibilityType"`
}

BankingProductDiscountEligibility defines model for BankingProductDiscountEligibility.

type BankingProductDiscountEligibilityDiscountEligibilityType

type BankingProductDiscountEligibilityDiscountEligibilityType string

BankingProductDiscountEligibilityDiscountEligibilityType The type of the specific eligibility constraint for a discount. For further details, refer to [Product Discount Eligibility Types](#tocSproductdiscounteligibilitydoc).

const (
	BankingProductDiscountEligibilityDiscountEligibilityTypeBUSINESS         BankingProductDiscountEligibilityDiscountEligibilityType = "BUSINESS"
	BankingProductDiscountEligibilityDiscountEligibilityTypeEMPLOYMENTSTATUS BankingProductDiscountEligibilityDiscountEligibilityType = "EMPLOYMENT_STATUS"
	BankingProductDiscountEligibilityDiscountEligibilityTypeINTRODUCTORY     BankingProductDiscountEligibilityDiscountEligibilityType = "INTRODUCTORY"
	BankingProductDiscountEligibilityDiscountEligibilityTypeMAXAGE           BankingProductDiscountEligibilityDiscountEligibilityType = "MAX_AGE"
	BankingProductDiscountEligibilityDiscountEligibilityTypeMINAGE           BankingProductDiscountEligibilityDiscountEligibilityType = "MIN_AGE"
	BankingProductDiscountEligibilityDiscountEligibilityTypeMININCOME        BankingProductDiscountEligibilityDiscountEligibilityType = "MIN_INCOME"
	BankingProductDiscountEligibilityDiscountEligibilityTypeMINTURNOVER      BankingProductDiscountEligibilityDiscountEligibilityType = "MIN_TURNOVER"
	BankingProductDiscountEligibilityDiscountEligibilityTypeNATURALPERSON    BankingProductDiscountEligibilityDiscountEligibilityType = "NATURAL_PERSON"
	BankingProductDiscountEligibilityDiscountEligibilityTypeOTHER            BankingProductDiscountEligibilityDiscountEligibilityType = "OTHER"
	BankingProductDiscountEligibilityDiscountEligibilityTypePENSIONRECIPIENT BankingProductDiscountEligibilityDiscountEligibilityType = "PENSION_RECIPIENT"
	BankingProductDiscountEligibilityDiscountEligibilityTypeRESIDENCYSTATUS  BankingProductDiscountEligibilityDiscountEligibilityType = "RESIDENCY_STATUS"
	BankingProductDiscountEligibilityDiscountEligibilityTypeSTAFF            BankingProductDiscountEligibilityDiscountEligibilityType = "STAFF"
	BankingProductDiscountEligibilityDiscountEligibilityTypeSTUDENT          BankingProductDiscountEligibilityDiscountEligibilityType = "STUDENT"
)

Defines values for BankingProductDiscountEligibilityDiscountEligibilityType.

type BankingProductEligibility

type BankingProductEligibility struct {
	// AdditionalInfo Display text providing more information on the [eligibility](#tocSproducteligibilitytypedoc) criteria. Mandatory if the field is set to `OTHER`.
	AdditionalInfo *string `json:"additionalInfo,omitempty"`

	// AdditionalInfoUri Link to a web page with more information on this eligibility criteria.
	AdditionalInfoUri *string `json:"additionalInfoUri,omitempty"`

	// AdditionalValue Generic field containing additional information relevant to the [_eligibilityType_](#tocSproducteligibilitytypedoc) specified. Whether mandatory or not is dependent on the value of [_eligibilityType_](#tocSproducteligibilitytypedoc).
	AdditionalValue *string `json:"additionalValue,omitempty"`

	// EligibilityType The type of eligibility criteria described. For further details, refer to [Product Eligibility Types](#tocSproducteligibilitytypedoc).
	EligibilityType BankingProductEligibilityEligibilityType `json:"eligibilityType"`
}

BankingProductEligibility defines model for BankingProductEligibility.

type BankingProductEligibilityEligibilityType

type BankingProductEligibilityEligibilityType string

BankingProductEligibilityEligibilityType The type of eligibility criteria described. For further details, refer to [Product Eligibility Types](#tocSproducteligibilitytypedoc).

const (
	BankingProductEligibilityEligibilityTypeBUSINESS         BankingProductEligibilityEligibilityType = "BUSINESS"
	BankingProductEligibilityEligibilityTypeEMPLOYMENTSTATUS BankingProductEligibilityEligibilityType = "EMPLOYMENT_STATUS"
	BankingProductEligibilityEligibilityTypeMAXAGE           BankingProductEligibilityEligibilityType = "MAX_AGE"
	BankingProductEligibilityEligibilityTypeMINAGE           BankingProductEligibilityEligibilityType = "MIN_AGE"
	BankingProductEligibilityEligibilityTypeMININCOME        BankingProductEligibilityEligibilityType = "MIN_INCOME"
	BankingProductEligibilityEligibilityTypeMINTURNOVER      BankingProductEligibilityEligibilityType = "MIN_TURNOVER"
	BankingProductEligibilityEligibilityTypeNATURALPERSON    BankingProductEligibilityEligibilityType = "NATURAL_PERSON"
	BankingProductEligibilityEligibilityTypeOTHER            BankingProductEligibilityEligibilityType = "OTHER"
	BankingProductEligibilityEligibilityTypePENSIONRECIPIENT BankingProductEligibilityEligibilityType = "PENSION_RECIPIENT"
	BankingProductEligibilityEligibilityTypeRESIDENCYSTATUS  BankingProductEligibilityEligibilityType = "RESIDENCY_STATUS"
	BankingProductEligibilityEligibilityTypeSTAFF            BankingProductEligibilityEligibilityType = "STAFF"
	BankingProductEligibilityEligibilityTypeSTUDENT          BankingProductEligibilityEligibilityType = "STUDENT"
)

Defines values for BankingProductEligibilityEligibilityType.

type BankingProductFeatureV2

type BankingProductFeatureV2 struct {
	// AdditionalInfo Display text providing more information on the feature. Mandatory if [_featureType_](#tocSproductfeaturetypedoc) is set to `OTHER`.
	AdditionalInfo *string `json:"additionalInfo,omitempty"`

	// AdditionalInfoUri Link to a web page with more information on this feature.
	AdditionalInfoUri *string `json:"additionalInfoUri,omitempty"`

	// AdditionalValue Generic field containing additional information relevant to the [_featureType_](#tocSproductfeaturetypedoc) specified. Whether mandatory or not is dependent on the value of the [_featureType_](#tocSproductfeaturetypedoc).
	AdditionalValue *string `json:"additionalValue,omitempty"`

	// FeatureType The type of feature described. For further details, refer to [Product Feature Types](#tocSproductfeaturetypedoc).
	FeatureType BankingProductFeatureV2FeatureType `json:"featureType"`
}

BankingProductFeatureV2 defines model for BankingProductFeatureV2.

type BankingProductFeatureV2FeatureType

type BankingProductFeatureV2FeatureType string

BankingProductFeatureV2FeatureType The type of feature described. For further details, refer to [Product Feature Types](#tocSproductfeaturetypedoc).

const (
	BankingProductFeatureV2FeatureTypeADDITIONALCARDS               BankingProductFeatureV2FeatureType = "ADDITIONAL_CARDS"
	BankingProductFeatureV2FeatureTypeBALANCETRANSFERS              BankingProductFeatureV2FeatureType = "BALANCE_TRANSFERS"
	BankingProductFeatureV2FeatureTypeBILLPAYMENT                   BankingProductFeatureV2FeatureType = "BILL_PAYMENT"
	BankingProductFeatureV2FeatureTypeBONUSREWARDS                  BankingProductFeatureV2FeatureType = "BONUS_REWARDS"
	BankingProductFeatureV2FeatureTypeCARDACCESS                    BankingProductFeatureV2FeatureType = "CARD_ACCESS"
	BankingProductFeatureV2FeatureTypeCASHBACKOFFER                 BankingProductFeatureV2FeatureType = "CASHBACK_OFFER"
	BankingProductFeatureV2FeatureTypeCOMPLEMENTARYPRODUCTDISCOUNTS BankingProductFeatureV2FeatureType = "COMPLEMENTARY_PRODUCT_DISCOUNTS"
	BankingProductFeatureV2FeatureTypeDIGITALBANKING                BankingProductFeatureV2FeatureType = "DIGITAL_BANKING"
	BankingProductFeatureV2FeatureTypeDIGITALWALLET                 BankingProductFeatureV2FeatureType = "DIGITAL_WALLET"
	BankingProductFeatureV2FeatureTypeDONATEINTEREST                BankingProductFeatureV2FeatureType = "DONATE_INTEREST"
	BankingProductFeatureV2FeatureTypeEXTRAREPAYMENTS               BankingProductFeatureV2FeatureType = "EXTRA_REPAYMENTS"
	BankingProductFeatureV2FeatureTypeFRAUDPROTECTION               BankingProductFeatureV2FeatureType = "FRAUD_PROTECTION"
	BankingProductFeatureV2FeatureTypeFREETXNS                      BankingProductFeatureV2FeatureType = "FREE_TXNS"
	BankingProductFeatureV2FeatureTypeFREETXNSALLOWANCE             BankingProductFeatureV2FeatureType = "FREE_TXNS_ALLOWANCE"
	BankingProductFeatureV2FeatureTypeGUARANTOR                     BankingProductFeatureV2FeatureType = "GUARANTOR"
	BankingProductFeatureV2FeatureTypeINSTALMENTPLAN                BankingProductFeatureV2FeatureType = "INSTALMENT_PLAN"
	BankingProductFeatureV2FeatureTypeINSURANCE                     BankingProductFeatureV2FeatureType = "INSURANCE"
	BankingProductFeatureV2FeatureTypeINTERESTFREE                  BankingProductFeatureV2FeatureType = "INTEREST_FREE"
	BankingProductFeatureV2FeatureTypeINTERESTFREETRANSFERS         BankingProductFeatureV2FeatureType = "INTEREST_FREE_TRANSFERS"
	BankingProductFeatureV2FeatureTypeLOYALTYPROGRAM                BankingProductFeatureV2FeatureType = "LOYALTY_PROGRAM"
	BankingProductFeatureV2FeatureTypeNOTIFICATIONS                 BankingProductFeatureV2FeatureType = "NOTIFICATIONS"
	BankingProductFeatureV2FeatureTypeNPPENABLED                    BankingProductFeatureV2FeatureType = "NPP_ENABLED"
	BankingProductFeatureV2FeatureTypeNPPPAYID                      BankingProductFeatureV2FeatureType = "NPP_PAYID"
	BankingProductFeatureV2FeatureTypeOFFSET                        BankingProductFeatureV2FeatureType = "OFFSET"
	BankingProductFeatureV2FeatureTypeOTHER                         BankingProductFeatureV2FeatureType = "OTHER"
	BankingProductFeatureV2FeatureTypeOVERDRAFT                     BankingProductFeatureV2FeatureType = "OVERDRAFT"
	BankingProductFeatureV2FeatureTypeREDRAW                        BankingProductFeatureV2FeatureType = "REDRAW"
	BankingProductFeatureV2FeatureTypeRELATIONSHIPMANAGEMENT        BankingProductFeatureV2FeatureType = "RELATIONSHIP_MANAGEMENT"
	BankingProductFeatureV2FeatureTypeUNLIMITEDTXNS                 BankingProductFeatureV2FeatureType = "UNLIMITED_TXNS"
)

Defines values for BankingProductFeatureV2FeatureType.

type BankingProductFee

type BankingProductFee struct {
	// AccrualFrequency The indicative frequency with which the fee is calculated on the account. Only applies if _balanceRate_ or _accruedRate_ is also present. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax).
	AccrualFrequency *string `json:"accrualFrequency,omitempty"`

	// AccruedRate A fee rate calculated based on a proportion of the calculated interest accrued on the account. One of _amount_, _balanceRate_, _transactionRate_ and _accruedRate_ is mandatory unless the _feeType_ `VARIABLE` is supplied.
	AccruedRate *string `json:"accruedRate,omitempty"`

	// AdditionalInfo Display text providing more information on the fee.
	AdditionalInfo *string `json:"additionalInfo,omitempty"`

	// AdditionalInfoUri Link to a web page with more information on this fee.
	AdditionalInfoUri *string `json:"additionalInfoUri,omitempty"`

	// AdditionalValue Generic field containing additional information relevant to the [_feeType_](#tocSproductfeetypedoc) specified. Whether mandatory or not is dependent on the value of [_feeType_](#tocSproductfeetypedoc).
	AdditionalValue *string `json:"additionalValue,omitempty"`

	// Amount The amount charged for the fee. One of _amount_, _balanceRate_, _transactionRate_ and _accruedRate_ is mandatory unless the _feeType_ `VARIABLE` is supplied.
	Amount *string `json:"amount,omitempty"`

	// BalanceRate A fee rate calculated based on a proportion of the balance. One of _amount_, _balanceRate_, _transactionRate_ and _accruedRate_ is mandatory unless the _feeType_ `VARIABLE` is supplied.
	BalanceRate *string `json:"balanceRate,omitempty"`

	// Currency The currency the fee will be charged in. Assumes `AUD` if absent.
	Currency *string `json:"currency,omitempty"`

	// Discounts An optional list of discounts to this fee that may be available.
	Discounts *[]BankingProductDiscount `json:"discounts,omitempty"`

	// FeeType The type of fee. For further details, refer to [Product Fee Types](#tocSproductfeetypedoc).
	FeeType BankingProductFeeFeeType `json:"feeType"`

	// Name Name of the fee.
	Name string `json:"name"`

	// TransactionRate A fee rate calculated based on a proportion of a transaction. One of _amount_, _balanceRate_, _transactionRate_ and _accruedRate_ is mandatory unless the _feeType_ `VARIABLE` is supplied.
	TransactionRate *string `json:"transactionRate,omitempty"`
}

BankingProductFee defines model for BankingProductFee.

type BankingProductFeeFeeType

type BankingProductFeeFeeType string

BankingProductFeeFeeType The type of fee. For further details, refer to [Product Fee Types](#tocSproductfeetypedoc).

const (
	BankingProductFeeFeeTypeDEPOSIT     BankingProductFeeFeeType = "DEPOSIT"
	BankingProductFeeFeeTypeEVENT       BankingProductFeeFeeType = "EVENT"
	BankingProductFeeFeeTypeEXIT        BankingProductFeeFeeType = "EXIT"
	BankingProductFeeFeeTypePAYMENT     BankingProductFeeFeeType = "PAYMENT"
	BankingProductFeeFeeTypePERIODIC    BankingProductFeeFeeType = "PERIODIC"
	BankingProductFeeFeeTypePURCHASE    BankingProductFeeFeeType = "PURCHASE"
	BankingProductFeeFeeTypeTRANSACTION BankingProductFeeFeeType = "TRANSACTION"
	BankingProductFeeFeeTypeUPFRONT     BankingProductFeeFeeType = "UPFRONT"
	BankingProductFeeFeeTypeVARIABLE    BankingProductFeeFeeType = "VARIABLE"
	BankingProductFeeFeeTypeWITHDRAWAL  BankingProductFeeFeeType = "WITHDRAWAL"
)

Defines values for BankingProductFeeFeeType.

type BankingProductLendingRateV2

type BankingProductLendingRateV2 struct {
	// AdditionalInfo Display text providing more information on the rate.
	AdditionalInfo *string `json:"additionalInfo,omitempty"`

	// AdditionalInfoUri Link to a web page with more information on this rate.
	AdditionalInfoUri *string `json:"additionalInfoUri,omitempty"`

	// AdditionalValue Generic field containing additional information relevant to the [_lendingRateType_](#tocSproductlendingratetypedoc) specified. Whether mandatory or not is dependent on the value of [_lendingRateType_](#tocSproductlendingratetypedoc).
	AdditionalValue *string `json:"additionalValue,omitempty"`

	// ApplicationFrequency The period after which the calculated amount(s) (see _calculationFrequency_) are 'applied' (i.e. debited or credited) to the account. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax).
	ApplicationFrequency *string `json:"applicationFrequency,omitempty"`

	// CalculationFrequency The period after which the rate is applied to the balance to calculate the amount due for the period. Calculation of the amount is often daily (as balances may change) but accumulated until the total amount is 'applied' to the account (see _applicationFrequency_). Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax).
	CalculationFrequency *string `json:"calculationFrequency,omitempty"`

	// ComparisonRate A comparison rate equivalent for this rate.
	ComparisonRate *string `json:"comparisonRate,omitempty"`

	// InterestPaymentDue When loan payments are due to be paid within each period. The investment benefit of earlier payments affect the rate that can be offered.
	InterestPaymentDue *BankingProductLendingRateV2InterestPaymentDue `json:"interestPaymentDue,omitempty"`

	// LendingRateType The type of rate (`FIXED`, `VARIABLE`, etc.) For further details, refer to [Product Lending Rate Types](#tocSproductlendingratetypedoc).
	LendingRateType BankingProductLendingRateV2LendingRateType `json:"lendingRateType"`

	// LoanPurpose The reason for taking out the loan. If absent, the lending rate is applicable to all loan purposes.
	LoanPurpose *BankingProductLendingRateV2LoanPurpose `json:"loanPurpose,omitempty"`

	// Rate The rate to be applied.
	Rate string `json:"rate"`

	// RepaymentType Options in place for repayments. If absent, the lending rate is applicable to all repayment types.
	RepaymentType *BankingProductLendingRateV2RepaymentType `json:"repaymentType,omitempty"`

	// Tiers Rate tiers applicable for this rate.
	Tiers *[]BankingProductRateTierV3 `json:"tiers,omitempty"`
}

BankingProductLendingRateV2 defines model for BankingProductLendingRateV2.

type BankingProductLendingRateV2InterestPaymentDue

type BankingProductLendingRateV2InterestPaymentDue string

BankingProductLendingRateV2InterestPaymentDue When loan payments are due to be paid within each period. The investment benefit of earlier payments affect the rate that can be offered.

const (
	INADVANCE BankingProductLendingRateV2InterestPaymentDue = "IN_ADVANCE"
	INARREARS BankingProductLendingRateV2InterestPaymentDue = "IN_ARREARS"
)

Defines values for BankingProductLendingRateV2InterestPaymentDue.

type BankingProductLendingRateV2LendingRateType

type BankingProductLendingRateV2LendingRateType string

BankingProductLendingRateV2LendingRateType The type of rate (`FIXED`, `VARIABLE`, etc.) For further details, refer to [Product Lending Rate Types](#tocSproductlendingratetypedoc).

const (
	BUNDLEDISCOUNTFIXED    BankingProductLendingRateV2LendingRateType = "BUNDLE_DISCOUNT_FIXED"
	BUNDLEDISCOUNTVARIABLE BankingProductLendingRateV2LendingRateType = "BUNDLE_DISCOUNT_VARIABLE"
	CASHADVANCE            BankingProductLendingRateV2LendingRateType = "CASH_ADVANCE"
	DISCOUNT               BankingProductLendingRateV2LendingRateType = "DISCOUNT"
	FIXED                  BankingProductLendingRateV2LendingRateType = "FIXED"
	FLOATING               BankingProductLendingRateV2LendingRateType = "FLOATING"
	INTRODUCTORY           BankingProductLendingRateV2LendingRateType = "INTRODUCTORY"
	MARKETLINKED           BankingProductLendingRateV2LendingRateType = "MARKET_LINKED"
	PENALTY                BankingProductLendingRateV2LendingRateType = "PENALTY"
	PURCHASE               BankingProductLendingRateV2LendingRateType = "PURCHASE"
	VARIABLE               BankingProductLendingRateV2LendingRateType = "VARIABLE"
)

Defines values for BankingProductLendingRateV2LendingRateType.

type BankingProductLendingRateV2LoanPurpose

type BankingProductLendingRateV2LoanPurpose string

BankingProductLendingRateV2LoanPurpose The reason for taking out the loan. If absent, the lending rate is applicable to all loan purposes.

const (
	INVESTMENT    BankingProductLendingRateV2LoanPurpose = "INVESTMENT"
	OWNEROCCUPIED BankingProductLendingRateV2LoanPurpose = "OWNER_OCCUPIED"
)

Defines values for BankingProductLendingRateV2LoanPurpose.

type BankingProductLendingRateV2RepaymentType

type BankingProductLendingRateV2RepaymentType string

BankingProductLendingRateV2RepaymentType Options in place for repayments. If absent, the lending rate is applicable to all repayment types.

const (
	BankingProductLendingRateV2RepaymentTypeINTERESTONLY         BankingProductLendingRateV2RepaymentType = "INTEREST_ONLY"
	BankingProductLendingRateV2RepaymentTypePRINCIPALANDINTEREST BankingProductLendingRateV2RepaymentType = "PRINCIPAL_AND_INTEREST"
)

Defines values for BankingProductLendingRateV2RepaymentType.

type BankingProductRateCondition

type BankingProductRateCondition struct {
	// AdditionalInfo Display text providing more information on the condition.
	AdditionalInfo *string `json:"additionalInfo,omitempty"`

	// AdditionalInfoUri Link to a web page with more information on this condition.
	AdditionalInfoUri *string `json:"additionalInfoUri,omitempty"`
}

BankingProductRateCondition Defines a condition for the applicability of a tiered rate.

type BankingProductRateTierV3

type BankingProductRateTierV3 struct {
	// AdditionalInfo Display text providing more information on the rate tier.
	AdditionalInfo *string `json:"additionalInfo,omitempty"`

	// AdditionalInfoUri Link to a web page with more information on this rate tier.
	AdditionalInfoUri *string `json:"additionalInfoUri,omitempty"`

	// ApplicabilityConditions Defines a condition for the applicability of a tiered rate.
	ApplicabilityConditions *BankingProductRateCondition `json:"applicabilityConditions,omitempty"`

	// MaximumValue The number of _unitOfMeasure_ units that form the upper bound of the tier or band. For a tier with a discrete value (as opposed to a range of values e.g., 1 month) this must be the same as _minimumValue_. Where this is the same as the _minimumValue_ value of the next-higher tier the referenced tier should be exclusive of this value. For example a term deposit of 2 months falls into the upper tier of the following tiers: (1 – 2 months, 2 – 3 months). If absent the tier's range has no upper bound.
	MaximumValue *float32 `json:"maximumValue,omitempty"`

	// MinimumValue The number of _unitOfMeasure_ units that form the lower bound of the tier. The tier should be inclusive of this value.
	MinimumValue float32 `json:"minimumValue"`

	// Name A display name for the tier.
	Name string `json:"name"`

	// RateApplicationMethod The method used to calculate the amount to be applied using one or more tiers. A single rate may be applied to the entire balance or each applicable tier rate is applied to the portion of the balance that falls into that tier (referred to as 'bands' or 'steps').
	RateApplicationMethod *BankingProductRateTierV3RateApplicationMethod `json:"rateApplicationMethod,omitempty"`

	// UnitOfMeasure The unit of measure that applies to the _minimumValue_ and _maximumValue_ values e.g.,<ul><li>`DOLLAR` amount.<li>`PERCENT` (in the case of loan-to-value ratio or LVR).<li>Tier term period representing a discrete number of `MONTH`(s) or `DAY`(s) (in the case of term deposit tiers).</ul>
	UnitOfMeasure BankingProductRateTierV3UnitOfMeasure `json:"unitOfMeasure"`
}

BankingProductRateTierV3 Defines the criteria and conditions for which a rate applies.

type BankingProductRateTierV3RateApplicationMethod

type BankingProductRateTierV3RateApplicationMethod string

BankingProductRateTierV3RateApplicationMethod The method used to calculate the amount to be applied using one or more tiers. A single rate may be applied to the entire balance or each applicable tier rate is applied to the portion of the balance that falls into that tier (referred to as 'bands' or 'steps').

const (
	PERTIER      BankingProductRateTierV3RateApplicationMethod = "PER_TIER"
	WHOLEBALANCE BankingProductRateTierV3RateApplicationMethod = "WHOLE_BALANCE"
)

Defines values for BankingProductRateTierV3RateApplicationMethod.

type BankingProductRateTierV3UnitOfMeasure

type BankingProductRateTierV3UnitOfMeasure string

BankingProductRateTierV3UnitOfMeasure The unit of measure that applies to the _minimumValue_ and _maximumValue_ values e.g.,<ul><li>`DOLLAR` amount.<li>`PERCENT` (in the case of loan-to-value ratio or LVR).<li>Tier term period representing a discrete number of `MONTH`(s) or `DAY`(s) (in the case of term deposit tiers).</ul>

Defines values for BankingProductRateTierV3UnitOfMeasure.

type BankingProductV4

type BankingProductV4 struct {
	// AdditionalInformation Object that contains links to additional information on specific topics.
	AdditionalInformation *BankingProductAdditionalInformationV2 `json:"additionalInformation,omitempty"`

	// ApplicationUri A link to an application web page where this product can be applied for.
	ApplicationUri *string `json:"applicationUri,omitempty"`

	// Brand A label of the brand for the product. Able to be used for filtering. For data holders with single brands this value is still required.
	Brand string `json:"brand"`

	// BrandName An optional display name of the brand.
	BrandName *string `json:"brandName,omitempty"`

	// CardArt An array of card art images.
	CardArt *[]BankingProductV4CardArt `json:"cardArt,omitempty"`

	// Description A description of the product.
	Description string `json:"description"`

	// EffectiveFrom The date and time from which this product is effective (i.e. is available for origination). Used to enable the articulation of products to the regime before they are available for customers to originate.
	EffectiveFrom *string `json:"effectiveFrom,omitempty"`

	// EffectiveTo The date and time at which this product will be retired and will no longer be offered. Used to enable the managed deprecation of products.
	EffectiveTo *string `json:"effectiveTo,omitempty"`

	// IsTailored Indicates whether the product is specifically tailored to a circumstance. In this case fees and prices are significantly negotiated depending on context. While all products are open to a degree of tailoring this flag indicates that tailoring is expected and thus that the provision of specific fees and rates is not applicable.
	IsTailored bool `json:"isTailored"`

	// LastUpdated The last date and time that the information for this product was changed (or the creation date for the product if it has never been altered).
	LastUpdated string `json:"lastUpdated"`

	// Name The display name of the product.
	Name string `json:"name"`

	// ProductCategory The category to which a product or account belongs. See [here](#product-categories) for more details.
	ProductCategory BankingProductCategory `json:"productCategory"`

	// ProductId A data holder specific unique identifier for this product. This identifier must be unique to a product but does not otherwise need to adhere to ID permanence guidelines.
	ProductId string `json:"productId"`
}

BankingProductV4 defines model for BankingProductV4.

type BankingProductV4CardArt added in v0.1.6

type BankingProductV4CardArt struct {
	// ImageUri URI reference to a PNG, JPG or GIF image with proportions defined by ISO 7810 ID-1 and width no greater than 512 pixels. The URI reference may be a link or url-encoded data URI according to **[[RFC2397]](#nref-RFC2397)**.
	ImageUri string `json:"imageUri"`

	// Title Display label for the specific image.
	Title *string `json:"title,omitempty"`
}

BankingProductV4CardArt defines model for BankingProductV4_cardArt.

type BankingScheduledPaymentFrom

type BankingScheduledPaymentFrom struct {
	// AccountId ID of the account that is the source of funds for the payment.
	AccountId string `json:"accountId"`
}

BankingScheduledPaymentFrom Object containing details of the source of the payment. Currently only specifies an account ID but provided as an object to facilitate future extensibility and consistency with the _to_ object.

type BankingScheduledPaymentInterval

type BankingScheduledPaymentInterval struct {
	// DayInInterval Uses an interval to define the ordinal day within the interval defined by the interval field on which the payment occurs. If the resulting duration is 0 days in length or larger than the number of days in the interval then the payment will occur on the last day of the interval. A duration of 1 day indicates the first day of the interval. If absent the assumed value is `P1D`. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax) with components less than a day in length ignored. The first day of a week is considered to be Monday.
	DayInInterval *string `json:"dayInInterval,omitempty"`

	// Interval An interval for the payment. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax) with components less than a day in length ignored. This duration defines the period between payments starting with _nextPaymentDate_.
	Interval string `json:"interval"`
}

BankingScheduledPaymentInterval defines model for BankingScheduledPaymentInterval.

type BankingScheduledPaymentRecurrence

type BankingScheduledPaymentRecurrence struct {
	// EventBased Indicates that the schedule of payments is defined according to an external event that cannot be predetermined. Mandatory if _recurrenceUType_ is set to `eventBased`.
	EventBased *BankingScheduledPaymentRecurrenceEventBased `json:"eventBased,omitempty"`

	// IntervalSchedule Indicates that the schedule of payments is defined by a series of intervals. Mandatory if _recurrenceUType_ is set to `intervalSchedule`.
	IntervalSchedule *BankingScheduledPaymentRecurrenceIntervalSchedule `json:"intervalSchedule,omitempty"`

	// LastWeekDay Indicates that the schedule of payments is defined according to the last occurrence of a specific weekday in an interval. Mandatory if _recurrenceUType_ is set to `lastWeekDay`.
	LastWeekDay *BankingScheduledPaymentRecurrenceLastWeekday `json:"lastWeekDay,omitempty"`

	// NextPaymentDate The date of the next payment under the recurrence schedule.
	NextPaymentDate *string `json:"nextPaymentDate,omitempty"`

	// OnceOff Indicates that the payment is a once off payment on a specific future date. Mandatory if _recurrenceUType_ is set to `onceOff`.
	OnceOff *BankingScheduledPaymentRecurrenceOnceOff `json:"onceOff,omitempty"`

	// RecurrenceUType The type of recurrence used to define the schedule.
	RecurrenceUType BankingScheduledPaymentRecurrenceRecurrenceUType `json:"recurrenceUType"`
}

BankingScheduledPaymentRecurrence Object containing the detail of the schedule for the payment.

type BankingScheduledPaymentRecurrenceEventBased

type BankingScheduledPaymentRecurrenceEventBased struct {
	// Description Description of the event and conditions that will result in the payment. Expected to be formatted for display to a customer.
	Description string `json:"description"`
}

BankingScheduledPaymentRecurrenceEventBased Indicates that the schedule of payments is defined according to an external event that cannot be predetermined. Mandatory if _recurrenceUType_ is set to `eventBased`.

type BankingScheduledPaymentRecurrenceIntervalSchedule

type BankingScheduledPaymentRecurrenceIntervalSchedule struct {
	// FinalPaymentDate The limit date after which no more payments should be made using this schedule. If both _finalPaymentDate_ and _paymentsRemaining_ are present then payments will stop according to the most constraining value. If neither field is present the payments will continue indefinitely.
	FinalPaymentDate *string `json:"finalPaymentDate,omitempty"`

	// Intervals An array of interval objects defining the payment schedule. Each entry in the array is additive, in that it adds payments to the overall payment schedule. If multiple intervals result in a payment on the same day then only one payment will be made. Must have at least one entry.
	Intervals []BankingScheduledPaymentInterval `json:"intervals"`

	// NonBusinessDayTreatment Enumerated field giving the treatment where a scheduled payment date is not a business day. If absent assumed to be `ON`.<ul><li>`AFTER` - If a scheduled payment date is a non-business day the payment will be made on the first business day after the scheduled payment date.<li>`BEFORE` - If a scheduled payment date is a non-business day the payment will be made on the first business day before the scheduled payment date.<li>`ON` - If a scheduled payment date is a non-business day the payment will be made on that day regardless.<li>`ONLY` - Payments only occur on business days. If a scheduled payment date is a non-business day the payment will be ignored.</ul>
	NonBusinessDayTreatment *BankingScheduledPaymentRecurrenceIntervalScheduleNonBusinessDayTreatment `json:"nonBusinessDayTreatment,omitempty"`

	// PaymentsRemaining Indicates the number of payments remaining in the schedule. If both _finalPaymentDate_ and _paymentsRemaining_ are present then payments will stop according to the most constraining value, If neither field is present the payments will continue indefinitely.
	PaymentsRemaining *int `json:"paymentsRemaining,omitempty"`
}

BankingScheduledPaymentRecurrenceIntervalSchedule Indicates that the schedule of payments is defined by a series of intervals. Mandatory if _recurrenceUType_ is set to `intervalSchedule`.

type BankingScheduledPaymentRecurrenceIntervalScheduleNonBusinessDayTreatment

type BankingScheduledPaymentRecurrenceIntervalScheduleNonBusinessDayTreatment string

BankingScheduledPaymentRecurrenceIntervalScheduleNonBusinessDayTreatment Enumerated field giving the treatment where a scheduled payment date is not a business day. If absent assumed to be `ON`.<ul><li>`AFTER` - If a scheduled payment date is a non-business day the payment will be made on the first business day after the scheduled payment date.<li>`BEFORE` - If a scheduled payment date is a non-business day the payment will be made on the first business day before the scheduled payment date.<li>`ON` - If a scheduled payment date is a non-business day the payment will be made on that day regardless.<li>`ONLY` - Payments only occur on business days. If a scheduled payment date is a non-business day the payment will be ignored.</ul>

const (
	BankingScheduledPaymentRecurrenceIntervalScheduleNonBusinessDayTreatmentAFTER  BankingScheduledPaymentRecurrenceIntervalScheduleNonBusinessDayTreatment = "AFTER"
	BankingScheduledPaymentRecurrenceIntervalScheduleNonBusinessDayTreatmentBEFORE BankingScheduledPaymentRecurrenceIntervalScheduleNonBusinessDayTreatment = "BEFORE"
	BankingScheduledPaymentRecurrenceIntervalScheduleNonBusinessDayTreatmentON     BankingScheduledPaymentRecurrenceIntervalScheduleNonBusinessDayTreatment = "ON"
	BankingScheduledPaymentRecurrenceIntervalScheduleNonBusinessDayTreatmentONLY   BankingScheduledPaymentRecurrenceIntervalScheduleNonBusinessDayTreatment = "ONLY"
)

Defines values for BankingScheduledPaymentRecurrenceIntervalScheduleNonBusinessDayTreatment.

type BankingScheduledPaymentRecurrenceLastWeekday

type BankingScheduledPaymentRecurrenceLastWeekday struct {
	// FinalPaymentDate The limit date after which no more payments should be made using this schedule. If both _finalPaymentDate_ and _paymentsRemaining_ are present then payments will stop according to the most constraining value. If neither field is present the payments will continue indefinitely.
	FinalPaymentDate *string `json:"finalPaymentDate,omitempty"`

	// Interval The interval for the payment. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax) with components less than a day in length ignored. This duration defines the period between payments starting with _nextPaymentDate_.
	Interval string `json:"interval"`

	// LastWeekDay The weekDay specified. The payment will occur on the last occurrence of this weekday in the interval.
	LastWeekDay BankingScheduledPaymentRecurrenceLastWeekdayLastWeekDay `json:"lastWeekDay"`

	// NonBusinessDayTreatment Enumerated field giving the treatment where a scheduled payment date is not a business day. If absent assumed to be `ON`.<ul><li>`AFTER` - If a scheduled payment date is a non-business day the payment will be made on the first business day after the scheduled payment date.<li>`BEFORE` - If a scheduled payment date is a non-business day the payment will be made on the first business day before the scheduled payment date.<li>`ON` - If a scheduled payment date is a non-business day the payment will be made on that day regardless.<li>`ONLY` - Payments only occur on business days. If a scheduled payment date is a non-business day the payment will be ignored.</ul>
	NonBusinessDayTreatment *BankingScheduledPaymentRecurrenceLastWeekdayNonBusinessDayTreatment `json:"nonBusinessDayTreatment,omitempty"`

	// PaymentsRemaining Indicates the number of payments remaining in the schedule. If both _finalPaymentDate_ and _paymentsRemaining_ are present then payments will stop according to the most constraining value. If neither field is present the payments will continue indefinitely.
	PaymentsRemaining *int `json:"paymentsRemaining,omitempty"`
}

BankingScheduledPaymentRecurrenceLastWeekday Indicates that the schedule of payments is defined according to the last occurrence of a specific weekday in an interval. Mandatory if _recurrenceUType_ is set to `lastWeekDay`.

type BankingScheduledPaymentRecurrenceLastWeekdayLastWeekDay

type BankingScheduledPaymentRecurrenceLastWeekdayLastWeekDay string

BankingScheduledPaymentRecurrenceLastWeekdayLastWeekDay The weekDay specified. The payment will occur on the last occurrence of this weekday in the interval.

type BankingScheduledPaymentRecurrenceLastWeekdayNonBusinessDayTreatment

type BankingScheduledPaymentRecurrenceLastWeekdayNonBusinessDayTreatment string

BankingScheduledPaymentRecurrenceLastWeekdayNonBusinessDayTreatment Enumerated field giving the treatment where a scheduled payment date is not a business day. If absent assumed to be `ON`.<ul><li>`AFTER` - If a scheduled payment date is a non-business day the payment will be made on the first business day after the scheduled payment date.<li>`BEFORE` - If a scheduled payment date is a non-business day the payment will be made on the first business day before the scheduled payment date.<li>`ON` - If a scheduled payment date is a non-business day the payment will be made on that day regardless.<li>`ONLY` - Payments only occur on business days. If a scheduled payment date is a non-business day the payment will be ignored.</ul>

const (
	BankingScheduledPaymentRecurrenceLastWeekdayNonBusinessDayTreatmentAFTER  BankingScheduledPaymentRecurrenceLastWeekdayNonBusinessDayTreatment = "AFTER"
	BankingScheduledPaymentRecurrenceLastWeekdayNonBusinessDayTreatmentBEFORE BankingScheduledPaymentRecurrenceLastWeekdayNonBusinessDayTreatment = "BEFORE"
	BankingScheduledPaymentRecurrenceLastWeekdayNonBusinessDayTreatmentON     BankingScheduledPaymentRecurrenceLastWeekdayNonBusinessDayTreatment = "ON"
	BankingScheduledPaymentRecurrenceLastWeekdayNonBusinessDayTreatmentONLY   BankingScheduledPaymentRecurrenceLastWeekdayNonBusinessDayTreatment = "ONLY"
)

Defines values for BankingScheduledPaymentRecurrenceLastWeekdayNonBusinessDayTreatment.

type BankingScheduledPaymentRecurrenceOnceOff

type BankingScheduledPaymentRecurrenceOnceOff struct {
	// PaymentDate The scheduled date for the once off payment.
	PaymentDate string `json:"paymentDate"`
}

BankingScheduledPaymentRecurrenceOnceOff Indicates that the payment is a once off payment on a specific future date. Mandatory if _recurrenceUType_ is set to `onceOff`.

type BankingScheduledPaymentRecurrenceRecurrenceUType

type BankingScheduledPaymentRecurrenceRecurrenceUType string

BankingScheduledPaymentRecurrenceRecurrenceUType The type of recurrence used to define the schedule.

Defines values for BankingScheduledPaymentRecurrenceRecurrenceUType.

type BankingScheduledPaymentSetV2 added in v0.3.0

type BankingScheduledPaymentSetV2 struct {
	// Amount The amount of the next payment if known. Mandatory unless the _isAmountCalculated_ field is set to `true`. Must be zero or positive if present.
	Amount *string `json:"amount,omitempty"`

	// Currency The currency for the payment. `AUD` assumed if not present.
	Currency *string `json:"currency,omitempty"`

	// IsAmountCalculated Flag indicating whether the amount of the payment is calculated based on the context of the event. For instance a payment to reduce the balance of a credit card to zero. If absent then `false` is assumed.
	IsAmountCalculated *bool `json:"isAmountCalculated,omitempty"`

	// To Object containing details of the destination of the payment. Used to specify a variety of payment destination types.
	To BankingScheduledPaymentToV2 `json:"to"`
}

BankingScheduledPaymentSetV2 The set of payment amounts and destination accounts for this payment accommodating multi-part payments. A single entry indicates a simple payment with one destination account. Must have at least one entry.

type BankingScheduledPaymentToV2 added in v0.3.0

type BankingScheduledPaymentToV2 struct {
	// AccountId Present if _toUType_ is set to `accountId`. Indicates that the payment is to another account that is accessible under the current consent.
	AccountId     *string                    `json:"accountId,omitempty"`
	Biller        *BankingBillerPayee        `json:"biller,omitempty"`
	DigitalWallet *BankingDigitalWalletPayee `json:"digitalWallet,omitempty"`
	Domestic      *BankingDomesticPayee      `json:"domestic,omitempty"`
	International *BankingInternationalPayee `json:"international,omitempty"`

	// Nickname The short display name of the payee as provided by the customer unless _toUType_ is set to `payeeId`. Where a customer has not provided a nickname, a display name derived by the bank for payee should be provided that is consistent with existing digital banking channels.
	Nickname *string `json:"nickname,omitempty"`

	// PayeeId Present if _toUType_ is set to `payeeId`. Indicates that the payment is to registered payee that can be accessed using the payee endpoint. If the Bank Payees scope has not been consented to then a _payeeId_ should not be provided and the full payee details should be provided instead.
	PayeeId *string `json:"payeeId,omitempty"`

	// PayeeReference The reference for the transaction, if applicable, that will be provided by the originating institution for the specific payment. If not empty, it overrides the value provided at the BankingScheduledPayment level.
	PayeeReference *string `json:"payeeReference,omitempty"`

	// ToUType The type of object provided that specifies the destination of the funds for the payment.
	ToUType BankingScheduledPaymentToV2ToUType `json:"toUType"`
}

BankingScheduledPaymentToV2 Object containing details of the destination of the payment. Used to specify a variety of payment destination types.

type BankingScheduledPaymentToV2ToUType added in v0.3.0

type BankingScheduledPaymentToV2ToUType string

BankingScheduledPaymentToV2ToUType The type of object provided that specifies the destination of the funds for the payment.

const (
	AccountId     BankingScheduledPaymentToV2ToUType = "accountId"
	Biller        BankingScheduledPaymentToV2ToUType = "biller"
	DigitalWallet BankingScheduledPaymentToV2ToUType = "digitalWallet"
	Domestic      BankingScheduledPaymentToV2ToUType = "domestic"
	International BankingScheduledPaymentToV2ToUType = "international"
	PayeeId       BankingScheduledPaymentToV2ToUType = "payeeId"
)

Defines values for BankingScheduledPaymentToV2ToUType.

type BankingScheduledPaymentV2 added in v0.3.0

type BankingScheduledPaymentV2 struct {
	// From Object containing details of the source of the payment. Currently only specifies an account ID but provided as an object to facilitate future extensibility and consistency with the _to_ object.
	From BankingScheduledPaymentFrom `json:"from"`

	// Nickname The short display name of the scheduled payment as provided by the customer if provided. Where a customer has not provided a nickname, a display name derived by the bank for the scheduled payment should be provided that is consistent with existing digital banking channels.
	Nickname *string `json:"nickname,omitempty"`

	// PayeeReference The reference for the transaction, if applicable, that will be provided by the originating institution for all payments in the payment set. Empty string if no data provided.
	PayeeReference *string `json:"payeeReference,omitempty"`

	// PayerReference The reference for the transaction that will be used by the originating institution for the purposes of constructing a statement narrative on the payer’s account. Empty string if no data provided.
	PayerReference string                         `json:"payerReference"`
	PaymentSet     []BankingScheduledPaymentSetV2 `json:"paymentSet"`

	// Recurrence Object containing the detail of the schedule for the payment.
	Recurrence BankingScheduledPaymentRecurrence `json:"recurrence"`

	// ScheduledPaymentId A unique ID of the scheduled payment adhering to the standards for ID permanence.
	ScheduledPaymentId string `json:"scheduledPaymentId"`

	// Status Indicates whether the schedule is currently active. The value `SKIP` is equivalent to `ACTIVE` except that the customer has requested the next normal occurrence to be skipped.
	Status BankingScheduledPaymentV2Status `json:"status"`
}

BankingScheduledPaymentV2 defines model for BankingScheduledPaymentV2.

type BankingScheduledPaymentV2Status added in v0.3.0

type BankingScheduledPaymentV2Status string

BankingScheduledPaymentV2Status Indicates whether the schedule is currently active. The value `SKIP` is equivalent to `ACTIVE` except that the customer has requested the next normal occurrence to be skipped.

const (
	ACTIVE   BankingScheduledPaymentV2Status = "ACTIVE"
	INACTIVE BankingScheduledPaymentV2Status = "INACTIVE"
	SKIP     BankingScheduledPaymentV2Status = "SKIP"
)

Defines values for BankingScheduledPaymentV2Status.

type BankingTermDepositAccount

type BankingTermDepositAccount struct {
	// LodgementDate The lodgement date of the original deposit.
	LodgementDate string `json:"lodgementDate"`

	// MaturityAmount Amount to be paid upon maturity. If absent it implies the amount to paid is variable and cannot currently be calculated.
	MaturityAmount *string `json:"maturityAmount,omitempty"`

	// MaturityCurrency If absent assumes `AUD`.
	MaturityCurrency *string `json:"maturityCurrency,omitempty"`

	// MaturityDate Maturity date for the term deposit.
	MaturityDate string `json:"maturityDate"`

	// MaturityInstructions Current instructions on action to be taken at maturity. This includes default actions that may be specified in the terms and conditions for the product e.g., roll-over to the same term and frequency of interest payments.
	MaturityInstructions BankingTermDepositAccountMaturityInstructions `json:"maturityInstructions"`
}

BankingTermDepositAccount defines model for BankingTermDepositAccount.

type BankingTermDepositAccountMaturityInstructions

type BankingTermDepositAccountMaturityInstructions string

BankingTermDepositAccountMaturityInstructions Current instructions on action to be taken at maturity. This includes default actions that may be specified in the terms and conditions for the product e.g., roll-over to the same term and frequency of interest payments.

const (
	HOLDONMATURITY    BankingTermDepositAccountMaturityInstructions = "HOLD_ON_MATURITY"
	PAIDOUTATMATURITY BankingTermDepositAccountMaturityInstructions = "PAID_OUT_AT_MATURITY"
	ROLLEDOVER        BankingTermDepositAccountMaturityInstructions = "ROLLED_OVER"
)

Defines values for BankingTermDepositAccountMaturityInstructions.

type BankingTransaction

type BankingTransaction struct {
	// AccountId ID of the account for which transactions are provided.
	AccountId string `json:"accountId"`

	// Amount The value of the transaction. Negative values mean money was outgoing from the account.
	Amount string `json:"amount"`

	// ApcaNumber 6 Digit APCA number for the initiating institution. The field is fixed-width and padded with leading zeros if applicable.
	ApcaNumber *string `json:"apcaNumber,omitempty"`

	// BillerCode BPAY Biller Code for the transaction (if available).
	BillerCode *string `json:"billerCode,omitempty"`

	// BillerName Name of the BPAY biller for the transaction (if available).
	BillerName *string `json:"billerName,omitempty"`

	// Crn BPAY CRN for the transaction (if available).<br/>Where the CRN contains sensitive information, it should be masked in line with how the Data Holder currently displays account identifiers in their existing online banking channels. If the contents of the CRN match the format of a Credit Card PAN they should be masked according to the rules applicable for [MaskedPANString](#common-field-types). If the contents are otherwise sensitive, then it should be masked using the rules applicable for the [MaskedAccountString](#common-field-types) common type.
	Crn *string `json:"crn,omitempty"`

	// Currency The currency for the transaction amount. `AUD` assumed if not present.
	Currency *string `json:"currency,omitempty"`

	// Description The transaction description as applied by the financial institution.
	Description string `json:"description"`

	// ExecutionDateTime The time the transaction was executed by the originating customer, if available.
	ExecutionDateTime *string `json:"executionDateTime,omitempty"`

	// IsDetailAvailable `true` if extended information is available using the transaction detail endpoint. `false` if extended data is not available.
	IsDetailAvailable bool `json:"isDetailAvailable"`

	// MerchantCategoryCode The merchant category code (or MCC) for an outgoing payment to a merchant.
	MerchantCategoryCode *string `json:"merchantCategoryCode,omitempty"`

	// MerchantName Name of the merchant for an outgoing payment to a merchant.
	MerchantName *string `json:"merchantName,omitempty"`

	// PostingDateTime The time the transaction was posted. This field is Mandatory if the transaction has status `POSTED`. This is the time that appears on a standard statement.
	PostingDateTime *string `json:"postingDateTime,omitempty"`

	// Reference The reference for the transaction provided by the originating institution. Empty string if no data provided.
	Reference string `json:"reference"`

	// Status Status of the transaction whether pending or posted. Note that there is currently no provision in the standards to guarantee the ability to correlate a pending transaction with an associated posted transaction.
	Status BankingTransactionStatus `json:"status"`

	// TransactionId A unique ID of the transaction adhering to the standards for ID permanence. This is mandatory (through hashing if necessary) unless there are specific and justifiable technical reasons why a transaction cannot be uniquely identified for a particular account type. It is mandatory if _isDetailAvailable_ is set to `true`.
	TransactionId *string `json:"transactionId,omitempty"`

	// Type The type of the transaction.
	Type BankingTransactionType `json:"type"`

	// ValueDateTime Date and time at which assets become available to the account owner in case of a credit entry, or cease to be available to the account owner in case of a debit transaction entry.
	ValueDateTime *string `json:"valueDateTime,omitempty"`
}

BankingTransaction defines model for BankingTransaction.

type BankingTransactionDetail

type BankingTransactionDetail struct {
	// AccountId ID of the account for which transactions are provided.
	AccountId string `json:"accountId"`

	// Amount The value of the transaction. Negative values mean money was outgoing from the account.
	Amount string `json:"amount"`

	// ApcaNumber 6 Digit APCA number for the initiating institution. The field is fixed-width and padded with leading zeros if applicable.
	ApcaNumber *string `json:"apcaNumber,omitempty"`

	// BillerCode BPAY Biller Code for the transaction (if available).
	BillerCode *string `json:"billerCode,omitempty"`

	// BillerName Name of the BPAY biller for the transaction (if available).
	BillerName *string `json:"billerName,omitempty"`

	// Crn BPAY CRN for the transaction (if available).<br/>Where the CRN contains sensitive information, it should be masked in line with how the Data Holder currently displays account identifiers in their existing online banking channels. If the contents of the CRN match the format of a Credit Card PAN they should be masked according to the rules applicable for [MaskedPANString](#common-field-types). If the contents are otherwise sensitive, then it should be masked using the rules applicable for the [MaskedAccountString](#common-field-types) common type.
	Crn *string `json:"crn,omitempty"`

	// Currency The currency for the transaction amount. `AUD` assumed if not present.
	Currency *string `json:"currency,omitempty"`

	// Description The transaction description as applied by the financial institution.
	Description string `json:"description"`

	// ExecutionDateTime The time the transaction was executed by the originating customer, if available.
	ExecutionDateTime *string                                   `json:"executionDateTime,omitempty"`
	ExtendedData      BankingTransactionDetailAllOfExtendedData `json:"extendedData"`

	// IsDetailAvailable `true` if extended information is available using the transaction detail endpoint. `false` if extended data is not available.
	IsDetailAvailable bool `json:"isDetailAvailable"`

	// MerchantCategoryCode The merchant category code (or MCC) for an outgoing payment to a merchant.
	MerchantCategoryCode *string `json:"merchantCategoryCode,omitempty"`

	// MerchantName Name of the merchant for an outgoing payment to a merchant.
	MerchantName *string `json:"merchantName,omitempty"`

	// PostingDateTime The time the transaction was posted. This field is Mandatory if the transaction has status `POSTED`. This is the time that appears on a standard statement.
	PostingDateTime *string `json:"postingDateTime,omitempty"`

	// Reference The reference for the transaction provided by the originating institution. Empty string if no data provided.
	Reference string `json:"reference"`

	// Status Status of the transaction whether pending or posted. Note that there is currently no provision in the standards to guarantee the ability to correlate a pending transaction with an associated posted transaction.
	Status BankingTransactionDetailStatus `json:"status"`

	// TransactionId A unique ID of the transaction adhering to the standards for ID permanence. This is mandatory (through hashing if necessary) unless there are specific and justifiable technical reasons why a transaction cannot be uniquely identified for a particular account type. It is mandatory if _isDetailAvailable_ is set to `true`.
	TransactionId *string `json:"transactionId,omitempty"`

	// Type The type of the transaction.
	Type BankingTransactionDetailType `json:"type"`

	// ValueDateTime Date and time at which assets become available to the account owner in case of a credit entry, or cease to be available to the account owner in case of a debit transaction entry.
	ValueDateTime *string `json:"valueDateTime,omitempty"`
}

BankingTransactionDetail defines model for BankingTransactionDetail.

type BankingTransactionDetailAllOf added in v0.1.6

type BankingTransactionDetailAllOf struct {
	ExtendedData BankingTransactionDetailAllOfExtendedData `json:"extendedData"`
}

BankingTransactionDetailAllOf defines model for BankingTransactionDetail_allOf.

type BankingTransactionDetailAllOfExtendedData added in v0.1.6

type BankingTransactionDetailAllOfExtendedData struct {
	// ExtensionUType Optional extended data specific to transactions originated via NPP.
	ExtensionUType *BankingTransactionDetailAllOfExtendedDataExtensionUType `json:"extensionUType,omitempty"`

	// Payee Label of the target PayID. Mandatory for an outbound payment. The name assigned to the BSB/Account Number or PayID (by the owner of the PayID).
	Payee *string `json:"payee,omitempty"`

	// Payer Label of the originating payer. Mandatory for inbound payment.
	Payer *string `json:"payer,omitempty"`

	// Service Identifier of the applicable overlay service. Valid values are: `X2P1.01`.
	Service       BankingTransactionDetailAllOfExtendedDataService        `json:"service"`
	X2p101Payload *BankingTransactionDetailAllOfExtendedDataX2p101Payload `json:"x2p101Payload,omitempty"`
}

BankingTransactionDetailAllOfExtendedData defines model for BankingTransactionDetail_allOf_extendedData.

type BankingTransactionDetailAllOfExtendedDataExtensionUType added in v0.1.6

type BankingTransactionDetailAllOfExtendedDataExtensionUType string

BankingTransactionDetailAllOfExtendedDataExtensionUType Optional extended data specific to transactions originated via NPP.

const (
	X2p101Payload BankingTransactionDetailAllOfExtendedDataExtensionUType = "x2p101Payload"
)

Defines values for BankingTransactionDetailAllOfExtendedDataExtensionUType.

type BankingTransactionDetailAllOfExtendedDataService added in v0.1.6

type BankingTransactionDetailAllOfExtendedDataService string

BankingTransactionDetailAllOfExtendedDataService Identifier of the applicable overlay service. Valid values are: `X2P1.01`.

Defines values for BankingTransactionDetailAllOfExtendedDataService.

type BankingTransactionDetailAllOfExtendedDataX2p101Payload added in v0.1.6

type BankingTransactionDetailAllOfExtendedDataX2p101Payload struct {
	// EndToEndId An end to end ID for the payment created at initiation.
	EndToEndId *string `json:"endToEndId,omitempty"`

	// ExtendedDescription An extended string description. Required if the _extensionUType_ field is `x2p101Payload`.
	ExtendedDescription *string `json:"extendedDescription,omitempty"`

	// PurposeCode Purpose of the payment. Format is defined by NPP standards for the x2p1.01 overlay service.
	PurposeCode *string `json:"purposeCode,omitempty"`
}

BankingTransactionDetailAllOfExtendedDataX2p101Payload defines model for BankingTransactionDetail_allOf_extendedData_x2p101Payload.

type BankingTransactionDetailStatus

type BankingTransactionDetailStatus string

BankingTransactionDetailStatus Status of the transaction whether pending or posted. Note that there is currently no provision in the standards to guarantee the ability to correlate a pending transaction with an associated posted transaction.

const (
	BankingTransactionDetailStatusPENDING BankingTransactionDetailStatus = "PENDING"
	BankingTransactionDetailStatusPOSTED  BankingTransactionDetailStatus = "POSTED"
)

Defines values for BankingTransactionDetailStatus.

type BankingTransactionDetailType

type BankingTransactionDetailType string

BankingTransactionDetailType The type of the transaction.

const (
	BankingTransactionDetailTypeDIRECTDEBIT      BankingTransactionDetailType = "DIRECT_DEBIT"
	BankingTransactionDetailTypeFEE              BankingTransactionDetailType = "FEE"
	BankingTransactionDetailTypeINTERESTCHARGED  BankingTransactionDetailType = "INTEREST_CHARGED"
	BankingTransactionDetailTypeINTERESTPAID     BankingTransactionDetailType = "INTEREST_PAID"
	BankingTransactionDetailTypeOTHER            BankingTransactionDetailType = "OTHER"
	BankingTransactionDetailTypePAYMENT          BankingTransactionDetailType = "PAYMENT"
	BankingTransactionDetailTypeTRANSFERINCOMING BankingTransactionDetailType = "TRANSFER_INCOMING"
	BankingTransactionDetailTypeTRANSFEROUTGOING BankingTransactionDetailType = "TRANSFER_OUTGOING"
)

Defines values for BankingTransactionDetailType.

type BankingTransactionStatus

type BankingTransactionStatus string

BankingTransactionStatus Status of the transaction whether pending or posted. Note that there is currently no provision in the standards to guarantee the ability to correlate a pending transaction with an associated posted transaction.

const (
	BankingTransactionStatusPENDING BankingTransactionStatus = "PENDING"
	BankingTransactionStatusPOSTED  BankingTransactionStatus = "POSTED"
)

Defines values for BankingTransactionStatus.

type BankingTransactionType

type BankingTransactionType string

BankingTransactionType The type of the transaction.

const (
	BankingTransactionTypeDIRECTDEBIT      BankingTransactionType = "DIRECT_DEBIT"
	BankingTransactionTypeFEE              BankingTransactionType = "FEE"
	BankingTransactionTypeINTERESTCHARGED  BankingTransactionType = "INTEREST_CHARGED"
	BankingTransactionTypeINTERESTPAID     BankingTransactionType = "INTEREST_PAID"
	BankingTransactionTypeOTHER            BankingTransactionType = "OTHER"
	BankingTransactionTypePAYMENT          BankingTransactionType = "PAYMENT"
	BankingTransactionTypeTRANSFERINCOMING BankingTransactionType = "TRANSFER_INCOMING"
	BankingTransactionTypeTRANSFEROUTGOING BankingTransactionType = "TRANSFER_OUTGOING"
)

Defines values for BankingTransactionType.

type CommonPAFAddress

type CommonPAFAddress struct {
	// BuildingName1 Building/Property name 1.
	BuildingName1 *string `json:"buildingName1,omitempty"`

	// BuildingName2 Building/Property name 2.
	BuildingName2 *string `json:"buildingName2,omitempty"`

	// Dpid Unique identifier for an address as defined by Australia Post. Also known as Delivery Point Identifier.
	Dpid *string `json:"dpid,omitempty"`

	// FlatUnitNumber Unit number (including suffix, if applicable).
	FlatUnitNumber *string `json:"flatUnitNumber,omitempty"`

	// FlatUnitType Type of flat or unit for the address.
	FlatUnitType *string `json:"flatUnitType,omitempty"`

	// FloorLevelNumber Floor or level number (including alpha characters).
	FloorLevelNumber *string `json:"floorLevelNumber,omitempty"`

	// FloorLevelType Type of floor or level for the address.
	FloorLevelType *string `json:"floorLevelType,omitempty"`

	// LocalityName Full name of locality.
	LocalityName string `json:"localityName"`

	// LotNumber Allotment number for the address.
	LotNumber *string `json:"lotNumber,omitempty"`

	// PostalDeliveryNumber Postal delivery number if the address is a postal delivery type.
	PostalDeliveryNumber *int `json:"postalDeliveryNumber,omitempty"`

	// PostalDeliveryNumberPrefix Postal delivery number prefix related to the postal delivery number.
	PostalDeliveryNumberPrefix *string `json:"postalDeliveryNumberPrefix,omitempty"`

	// PostalDeliveryNumberSuffix Postal delivery number suffix related to the postal delivery number.
	PostalDeliveryNumberSuffix *string `json:"postalDeliveryNumberSuffix,omitempty"`

	// PostalDeliveryType Postal delivery type. (e.g., PO BOX). Valid enumeration defined by Australia Post PAF code file.
	PostalDeliveryType *string `json:"postalDeliveryType,omitempty"`

	// Postcode Postcode for the locality.
	Postcode string `json:"postcode"`

	// State State in which the address belongs. Valid enumeration defined by Australia Post PAF code file [State Type Abbreviation](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf). `NSW`, `QLD`, `VIC`, `NT`, `WA`, `SA`, `TAS`, `ACT`, `AAT`.
	State string `json:"state"`

	// StreetName The name of the street.
	StreetName *string `json:"streetName,omitempty"`

	// StreetSuffix The street type suffix. Valid enumeration defined by Australia Post PAF code file.
	StreetSuffix *string `json:"streetSuffix,omitempty"`

	// StreetType The street type. Valid enumeration defined by Australia Post PAF code file.
	StreetType *string `json:"streetType,omitempty"`

	// ThoroughfareNumber1 Thoroughfare number for a property (first number in a property ranged address).
	ThoroughfareNumber1 *int `json:"thoroughfareNumber1,omitempty"`

	// ThoroughfareNumber1Suffix Suffix for the thoroughfare number. Only relevant is _thoroughfareNumber1_ is populated.
	ThoroughfareNumber1Suffix *string `json:"thoroughfareNumber1Suffix,omitempty"`

	// ThoroughfareNumber2 Second thoroughfare number (only used if the property has a ranged address, e.g., 23-25).
	ThoroughfareNumber2 *int `json:"thoroughfareNumber2,omitempty"`

	// ThoroughfareNumber2Suffix Suffix for the second thoroughfare number. Only relevant is _thoroughfareNumber2_ is populated.
	ThoroughfareNumber2Suffix *string `json:"thoroughfareNumber2Suffix,omitempty"`
}

CommonPAFAddress Australian address formatted according to the file format defined by the [PAF file format](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf).

type CommonPhysicalAddress

type CommonPhysicalAddress struct {
	// AddressUType The type of address object present.
	AddressUType CommonPhysicalAddressAddressUType `json:"addressUType"`

	// Paf Australian address formatted according to the file format defined by the [PAF file format](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf).
	Paf    *CommonPAFAddress    `json:"paf,omitempty"`
	Simple *CommonSimpleAddress `json:"simple,omitempty"`
}

CommonPhysicalAddress defines model for CommonPhysicalAddress.

type CommonPhysicalAddressAddressUType

type CommonPhysicalAddressAddressUType string

CommonPhysicalAddressAddressUType The type of address object present.

Defines values for CommonPhysicalAddressAddressUType.

type CommonSimpleAddress

type CommonSimpleAddress struct {
	// AddressLine1 First line of the standard address object.
	AddressLine1 string `json:"addressLine1"`

	// AddressLine2 Second line of the standard address object.
	AddressLine2 *string `json:"addressLine2,omitempty"`

	// AddressLine3 Third line of the standard address object.
	AddressLine3 *string `json:"addressLine3,omitempty"`

	// City Name of the city or locality.
	City string `json:"city"`

	// Country A valid [ISO 3166 Alpha-3](https://www.iso.org/iso-3166-country-codes.html) country code. Australia (`AUS`) is assumed if country is not present.
	Country *string `json:"country,omitempty"`

	// MailingName Name of the individual or business formatted for inclusion in an address used for physical mail.
	MailingName *string `json:"mailingName,omitempty"`

	// Postcode Mandatory for Australian addresses.
	Postcode *string `json:"postcode,omitempty"`

	// State Free text if the country is not Australia. If country is Australia then must be one of the values defined by the [State Type Abbreviation](https://auspost.com.au/content/dam/auspost_corp/media/documents/australia-post-data-guide.pdf) in the PAF file format. `NSW`, `QLD`, `VIC`, `NT`, `WA`, `SA`, `TAS`, `ACT`, `AAT`.
	State string `json:"state"`
}

CommonSimpleAddress defines model for CommonSimpleAddress.

type GetAccountDetailParams

type GetAccountDetailParams struct {
	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *string `json:"x-fapi-interaction-id,omitempty"`

	// XFapiAuthDate The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *string `json:"x-fapi-auth-date,omitempty"`

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the Data Recipient Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

GetAccountDetailParams defines parameters for GetAccountDetail.

type GetBalanceParams

type GetBalanceParams struct {
	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *string `json:"x-fapi-interaction-id,omitempty"`

	// XFapiAuthDate The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *string `json:"x-fapi-auth-date,omitempty"`

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the Data Recipient Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

GetBalanceParams defines parameters for GetBalance.

type GetPayeeDetailParams

type GetPayeeDetailParams struct {
	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *string `json:"x-fapi-interaction-id,omitempty"`

	// XFapiAuthDate The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *string `json:"x-fapi-auth-date,omitempty"`

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the Data Recipient Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

GetPayeeDetailParams defines parameters for GetPayeeDetail.

type GetProductDetailParams

type GetProductDetailParams struct {
	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`
}

GetProductDetailParams defines parameters for GetProductDetail.

type GetTransactionDetailParams

type GetTransactionDetailParams struct {
	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *string `json:"x-fapi-interaction-id,omitempty"`

	// XFapiAuthDate The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *string `json:"x-fapi-auth-date,omitempty"`

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the Data Recipient Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

GetTransactionDetailParams defines parameters for GetTransactionDetail.

type GetTransactionsParams

type GetTransactionsParams struct {
	// OldestTime Constrain the transaction history request to transactions with effective time at or after this date/time. If absent defaults to newest-time minus 90 days. Format is aligned to [DateTimeString](#common-field-types) common type.
	OldestTime *string `form:"oldest-time,omitempty" json:"oldest-time,omitempty"`

	// NewestTime Constrain the transaction history request to transactions with effective time at or before this date/time. If absent defaults to today. Format is aligned to [DateTimeString](#common-field-types) common type.
	NewestTime *string `form:"newest-time,omitempty" json:"newest-time,omitempty"`

	// MinAmount Filter transactions to only transactions with amounts higher than or equal to this amount.
	MinAmount *string `form:"min-amount,omitempty" json:"min-amount,omitempty"`

	// MaxAmount Filter transactions to only transactions with amounts less than or equal to this amount.
	MaxAmount *string `form:"max-amount,omitempty" json:"max-amount,omitempty"`

	// Text Filter transactions to only transactions where this string value is found as a substring of either the reference or description fields. Format is arbitrary ASCII string. This parameter is optionally implemented by data holders. If it is not implemented then a response should be provided as normal without text filtering applied and an additional boolean field named _isQueryParamUnsupported_ should be included in the meta object and set to `true` (whether the text parameter is supplied or not).
	Text *string `form:"text,omitempty" json:"text,omitempty"`

	// Page Page of results to request (standard pagination).
	Page *int `form:"page,omitempty" json:"page,omitempty"`

	// PageSize Page size to request. Default is 25 (standard pagination).
	PageSize *int `form:"page-size,omitempty" json:"page-size,omitempty"`

	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *string `json:"x-fapi-interaction-id,omitempty"`

	// XFapiAuthDate The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *string `json:"x-fapi-auth-date,omitempty"`

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the Data Recipient Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

GetTransactionsParams defines parameters for GetTransactions.

type Links struct {
	// Self Fully qualified link that generated the current response document.
	Self string `json:"self"`
}

Links defines model for Links.

type LinksPaginated

type LinksPaginated struct {
	// First URI to the first page of this set. Mandatory if this response is not the first page.
	First *string `json:"first,omitempty"`

	// Last URI to the last page of this set. Mandatory if this response is not the last page.
	Last *string `json:"last,omitempty"`

	// Next URI to the next page of this set. Mandatory if this response is not the last page.
	Next *string `json:"next,omitempty"`

	// Prev URI to the previous page of this set. Mandatory if this response is not the first page.
	Prev *string `json:"prev,omitempty"`

	// Self Fully qualified link that generated the current response document.
	Self string `json:"self"`
}

LinksPaginated defines model for LinksPaginated.

type ListAccountsParams

type ListAccountsParams struct {
	// ProductCategory Used to filter results on the _productCategory_ field applicable to accounts. Any one of the valid values for this field can be supplied. If absent then all accounts returned.
	ProductCategory *ListAccountsParamsProductCategory `form:"product-category,omitempty" json:"product-category,omitempty"`

	// OpenStatus Used to filter results according to open/closed status. Values can be `OPEN`, `CLOSED` or `ALL`. If absent then `ALL` is assumed.
	OpenStatus *ListAccountsParamsOpenStatus `form:"open-status,omitempty" json:"open-status,omitempty"`

	// IsOwned Filters accounts based on whether they are owned by the authorised customer. `true` for owned accounts, `false` for unowned accounts and absent for all accounts.
	IsOwned *bool `form:"is-owned,omitempty" json:"is-owned,omitempty"`

	// Page Page of results to request (standard pagination).
	Page *int `form:"page,omitempty" json:"page,omitempty"`

	// PageSize Page size to request. Default is 25 (standard pagination).
	PageSize *int `form:"page-size,omitempty" json:"page-size,omitempty"`

	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *string `json:"x-fapi-interaction-id,omitempty"`

	// XFapiAuthDate The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *string `json:"x-fapi-auth-date,omitempty"`

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the Data Recipient Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

ListAccountsParams defines parameters for ListAccounts.

type ListAccountsParamsOpenStatus

type ListAccountsParamsOpenStatus string

ListAccountsParamsOpenStatus defines parameters for ListAccounts.

const (
	ListAccountsParamsOpenStatusALL    ListAccountsParamsOpenStatus = "ALL"
	ListAccountsParamsOpenStatusCLOSED ListAccountsParamsOpenStatus = "CLOSED"
	ListAccountsParamsOpenStatusOPEN   ListAccountsParamsOpenStatus = "OPEN"
)

Defines values for ListAccountsParamsOpenStatus.

type ListAccountsParamsProductCategory

type ListAccountsParamsProductCategory string

ListAccountsParamsProductCategory defines parameters for ListAccounts.

const (
	ListAccountsParamsProductCategoryBUSINESSLOANS           ListAccountsParamsProductCategory = "BUSINESS_LOANS"
	ListAccountsParamsProductCategoryCREDANDCHRGCARDS        ListAccountsParamsProductCategory = "CRED_AND_CHRG_CARDS"
	ListAccountsParamsProductCategoryLEASES                  ListAccountsParamsProductCategory = "LEASES"
	ListAccountsParamsProductCategoryMARGINLOANS             ListAccountsParamsProductCategory = "MARGIN_LOANS"
	ListAccountsParamsProductCategoryOVERDRAFTS              ListAccountsParamsProductCategory = "OVERDRAFTS"
	ListAccountsParamsProductCategoryPERSLOANS               ListAccountsParamsProductCategory = "PERS_LOANS"
	ListAccountsParamsProductCategoryREGULATEDTRUSTACCOUNTS  ListAccountsParamsProductCategory = "REGULATED_TRUST_ACCOUNTS"
	ListAccountsParamsProductCategoryRESIDENTIALMORTGAGES    ListAccountsParamsProductCategory = "RESIDENTIAL_MORTGAGES"
	ListAccountsParamsProductCategoryTERMDEPOSITS            ListAccountsParamsProductCategory = "TERM_DEPOSITS"
	ListAccountsParamsProductCategoryTRADEFINANCE            ListAccountsParamsProductCategory = "TRADE_FINANCE"
	ListAccountsParamsProductCategoryTRANSANDSAVINGSACCOUNTS ListAccountsParamsProductCategory = "TRANS_AND_SAVINGS_ACCOUNTS"
	ListAccountsParamsProductCategoryTRAVELCARDS             ListAccountsParamsProductCategory = "TRAVEL_CARDS"
)

Defines values for ListAccountsParamsProductCategory.

type ListBalancesBulkParams

type ListBalancesBulkParams struct {
	// ProductCategory Used to filter results on the _productCategory_ field applicable to accounts. Any one of the valid values for this field can be supplied. If absent then all accounts returned.
	ProductCategory *ListBalancesBulkParamsProductCategory `form:"product-category,omitempty" json:"product-category,omitempty"`

	// OpenStatus Used to filter results according to open/closed status. Values can be `OPEN`, `CLOSED` or `ALL`. If absent then `ALL` is assumed.
	OpenStatus *ListBalancesBulkParamsOpenStatus `form:"open-status,omitempty" json:"open-status,omitempty"`

	// IsOwned Filters accounts based on whether they are owned by the authorised customer. `true` for owned accounts, `false` for unowned accounts and absent for all accounts.
	IsOwned *bool `form:"is-owned,omitempty" json:"is-owned,omitempty"`

	// Page Page of results to request (standard pagination).
	Page *int `form:"page,omitempty" json:"page,omitempty"`

	// PageSize Page size to request. Default is 25 (standard pagination).
	PageSize *int `form:"page-size,omitempty" json:"page-size,omitempty"`

	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *string `json:"x-fapi-interaction-id,omitempty"`

	// XFapiAuthDate The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *string `json:"x-fapi-auth-date,omitempty"`

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the Data Recipient Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

ListBalancesBulkParams defines parameters for ListBalancesBulk.

type ListBalancesBulkParamsOpenStatus

type ListBalancesBulkParamsOpenStatus string

ListBalancesBulkParamsOpenStatus defines parameters for ListBalancesBulk.

const (
	ListBalancesBulkParamsOpenStatusALL    ListBalancesBulkParamsOpenStatus = "ALL"
	ListBalancesBulkParamsOpenStatusCLOSED ListBalancesBulkParamsOpenStatus = "CLOSED"
	ListBalancesBulkParamsOpenStatusOPEN   ListBalancesBulkParamsOpenStatus = "OPEN"
)

Defines values for ListBalancesBulkParamsOpenStatus.

type ListBalancesBulkParamsProductCategory

type ListBalancesBulkParamsProductCategory string

ListBalancesBulkParamsProductCategory defines parameters for ListBalancesBulk.

const (
	ListBalancesBulkParamsProductCategoryBUSINESSLOANS           ListBalancesBulkParamsProductCategory = "BUSINESS_LOANS"
	ListBalancesBulkParamsProductCategoryCREDANDCHRGCARDS        ListBalancesBulkParamsProductCategory = "CRED_AND_CHRG_CARDS"
	ListBalancesBulkParamsProductCategoryLEASES                  ListBalancesBulkParamsProductCategory = "LEASES"
	ListBalancesBulkParamsProductCategoryMARGINLOANS             ListBalancesBulkParamsProductCategory = "MARGIN_LOANS"
	ListBalancesBulkParamsProductCategoryOVERDRAFTS              ListBalancesBulkParamsProductCategory = "OVERDRAFTS"
	ListBalancesBulkParamsProductCategoryPERSLOANS               ListBalancesBulkParamsProductCategory = "PERS_LOANS"
	ListBalancesBulkParamsProductCategoryREGULATEDTRUSTACCOUNTS  ListBalancesBulkParamsProductCategory = "REGULATED_TRUST_ACCOUNTS"
	ListBalancesBulkParamsProductCategoryRESIDENTIALMORTGAGES    ListBalancesBulkParamsProductCategory = "RESIDENTIAL_MORTGAGES"
	ListBalancesBulkParamsProductCategoryTERMDEPOSITS            ListBalancesBulkParamsProductCategory = "TERM_DEPOSITS"
	ListBalancesBulkParamsProductCategoryTRADEFINANCE            ListBalancesBulkParamsProductCategory = "TRADE_FINANCE"
	ListBalancesBulkParamsProductCategoryTRANSANDSAVINGSACCOUNTS ListBalancesBulkParamsProductCategory = "TRANS_AND_SAVINGS_ACCOUNTS"
	ListBalancesBulkParamsProductCategoryTRAVELCARDS             ListBalancesBulkParamsProductCategory = "TRAVEL_CARDS"
)

Defines values for ListBalancesBulkParamsProductCategory.

type ListBalancesSpecificAccountsJSONRequestBody

type ListBalancesSpecificAccountsJSONRequestBody = RequestAccountIds

ListBalancesSpecificAccountsJSONRequestBody defines body for ListBalancesSpecificAccounts for application/json ContentType.

type ListBalancesSpecificAccountsParams

type ListBalancesSpecificAccountsParams struct {
	// Page Page of results to request (standard pagination).
	Page *int `form:"page,omitempty" json:"page,omitempty"`

	// PageSize Page size to request. Default is 25 (standard pagination).
	PageSize *int `form:"page-size,omitempty" json:"page-size,omitempty"`

	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *string `json:"x-fapi-interaction-id,omitempty"`

	// XFapiAuthDate The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *string `json:"x-fapi-auth-date,omitempty"`

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the Data Recipient Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

ListBalancesSpecificAccountsParams defines parameters for ListBalancesSpecificAccounts.

type ListDirectDebitsBulkParams

type ListDirectDebitsBulkParams struct {
	// ProductCategory Used to filter results on the _productCategory_ field applicable to accounts. Any one of the valid values for this field can be supplied. If absent then all accounts returned.
	ProductCategory *ListDirectDebitsBulkParamsProductCategory `form:"product-category,omitempty" json:"product-category,omitempty"`

	// OpenStatus Used to filter results according to open/closed status. Values can be `OPEN`, `CLOSED` or `ALL`. If absent then `ALL` is assumed.
	OpenStatus *ListDirectDebitsBulkParamsOpenStatus `form:"open-status,omitempty" json:"open-status,omitempty"`

	// IsOwned Filters accounts based on whether they are owned by the authorised customer. `true` for owned accounts, `false` for unowned accounts and absent for all accounts.
	IsOwned *bool `form:"is-owned,omitempty" json:"is-owned,omitempty"`

	// Page Page of results to request (standard pagination).
	Page *int `form:"page,omitempty" json:"page,omitempty"`

	// PageSize Page size to request. Default is 25 (standard pagination).
	PageSize *int `form:"page-size,omitempty" json:"page-size,omitempty"`

	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *string `json:"x-fapi-interaction-id,omitempty"`

	// XFapiAuthDate The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *string `json:"x-fapi-auth-date,omitempty"`

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the Data Recipient Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

ListDirectDebitsBulkParams defines parameters for ListDirectDebitsBulk.

type ListDirectDebitsBulkParamsOpenStatus

type ListDirectDebitsBulkParamsOpenStatus string

ListDirectDebitsBulkParamsOpenStatus defines parameters for ListDirectDebitsBulk.

const (
	ListDirectDebitsBulkParamsOpenStatusALL    ListDirectDebitsBulkParamsOpenStatus = "ALL"
	ListDirectDebitsBulkParamsOpenStatusCLOSED ListDirectDebitsBulkParamsOpenStatus = "CLOSED"
	ListDirectDebitsBulkParamsOpenStatusOPEN   ListDirectDebitsBulkParamsOpenStatus = "OPEN"
)

Defines values for ListDirectDebitsBulkParamsOpenStatus.

type ListDirectDebitsBulkParamsProductCategory

type ListDirectDebitsBulkParamsProductCategory string

ListDirectDebitsBulkParamsProductCategory defines parameters for ListDirectDebitsBulk.

const (
	ListDirectDebitsBulkParamsProductCategoryBUSINESSLOANS           ListDirectDebitsBulkParamsProductCategory = "BUSINESS_LOANS"
	ListDirectDebitsBulkParamsProductCategoryCREDANDCHRGCARDS        ListDirectDebitsBulkParamsProductCategory = "CRED_AND_CHRG_CARDS"
	ListDirectDebitsBulkParamsProductCategoryLEASES                  ListDirectDebitsBulkParamsProductCategory = "LEASES"
	ListDirectDebitsBulkParamsProductCategoryMARGINLOANS             ListDirectDebitsBulkParamsProductCategory = "MARGIN_LOANS"
	ListDirectDebitsBulkParamsProductCategoryOVERDRAFTS              ListDirectDebitsBulkParamsProductCategory = "OVERDRAFTS"
	ListDirectDebitsBulkParamsProductCategoryPERSLOANS               ListDirectDebitsBulkParamsProductCategory = "PERS_LOANS"
	ListDirectDebitsBulkParamsProductCategoryREGULATEDTRUSTACCOUNTS  ListDirectDebitsBulkParamsProductCategory = "REGULATED_TRUST_ACCOUNTS"
	ListDirectDebitsBulkParamsProductCategoryRESIDENTIALMORTGAGES    ListDirectDebitsBulkParamsProductCategory = "RESIDENTIAL_MORTGAGES"
	ListDirectDebitsBulkParamsProductCategoryTERMDEPOSITS            ListDirectDebitsBulkParamsProductCategory = "TERM_DEPOSITS"
	ListDirectDebitsBulkParamsProductCategoryTRADEFINANCE            ListDirectDebitsBulkParamsProductCategory = "TRADE_FINANCE"
	ListDirectDebitsBulkParamsProductCategoryTRANSANDSAVINGSACCOUNTS ListDirectDebitsBulkParamsProductCategory = "TRANS_AND_SAVINGS_ACCOUNTS"
	ListDirectDebitsBulkParamsProductCategoryTRAVELCARDS             ListDirectDebitsBulkParamsProductCategory = "TRAVEL_CARDS"
)

Defines values for ListDirectDebitsBulkParamsProductCategory.

type ListDirectDebitsParams

type ListDirectDebitsParams struct {
	// Page Page of results to request (standard pagination).
	Page *int `form:"page,omitempty" json:"page,omitempty"`

	// PageSize Page size to request. Default is 25 (standard pagination).
	PageSize *int `form:"page-size,omitempty" json:"page-size,omitempty"`

	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *string `json:"x-fapi-interaction-id,omitempty"`

	// XFapiAuthDate The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *string `json:"x-fapi-auth-date,omitempty"`

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the Data Recipient Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

ListDirectDebitsParams defines parameters for ListDirectDebits.

type ListDirectDebitsSpecificAccountsJSONRequestBody

type ListDirectDebitsSpecificAccountsJSONRequestBody = RequestAccountIds

ListDirectDebitsSpecificAccountsJSONRequestBody defines body for ListDirectDebitsSpecificAccounts for application/json ContentType.

type ListDirectDebitsSpecificAccountsParams

type ListDirectDebitsSpecificAccountsParams struct {
	// Page Page of results to request (standard pagination).
	Page *int `form:"page,omitempty" json:"page,omitempty"`

	// PageSize Page size to request. Default is 25 (standard pagination).
	PageSize *int `form:"page-size,omitempty" json:"page-size,omitempty"`

	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *string `json:"x-fapi-interaction-id,omitempty"`

	// XFapiAuthDate The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *string `json:"x-fapi-auth-date,omitempty"`

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the Data Recipient Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

ListDirectDebitsSpecificAccountsParams defines parameters for ListDirectDebitsSpecificAccounts.

type ListPayeesParams

type ListPayeesParams struct {
	// Type Filter on the payee type field. In addition to normal type field values, `ALL` can be specified to retrieve all payees. If absent the assumed value is `ALL`.
	Type *ListPayeesParamsType `form:"type,omitempty" json:"type,omitempty"`

	// Page Page of results to request (standard pagination).
	Page *int `form:"page,omitempty" json:"page,omitempty"`

	// PageSize Page size to request. Default is 25 (standard pagination).
	PageSize *int `form:"page-size,omitempty" json:"page-size,omitempty"`

	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *string `json:"x-fapi-interaction-id,omitempty"`

	// XFapiAuthDate The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *string `json:"x-fapi-auth-date,omitempty"`

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the Data Recipient Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

ListPayeesParams defines parameters for ListPayees.

type ListPayeesParamsType

type ListPayeesParamsType string

ListPayeesParamsType defines parameters for ListPayees.

const (
	ListPayeesParamsTypeALL           ListPayeesParamsType = "ALL"
	ListPayeesParamsTypeBILLER        ListPayeesParamsType = "BILLER"
	ListPayeesParamsTypeDIGITALWALLET ListPayeesParamsType = "DIGITAL_WALLET"
	ListPayeesParamsTypeDOMESTIC      ListPayeesParamsType = "DOMESTIC"
	ListPayeesParamsTypeINTERNATIONAL ListPayeesParamsType = "INTERNATIONAL"
)

Defines values for ListPayeesParamsType.

type ListProductsParams

type ListProductsParams struct {
	// Effective Allows for the filtering of products based on whether the current time is within the period of time defined as effective by the effectiveFrom and effectiveTo fields. Valid values are `CURRENT`, `FUTURE` and `ALL`. If absent defaults to `CURRENT`.
	Effective *ListProductsParamsEffective `form:"effective,omitempty" json:"effective,omitempty"`

	// UpdatedSince Only include products that have been updated after the specified date and time. If absent defaults to include all products.
	UpdatedSince *string `form:"updated-since,omitempty" json:"updated-since,omitempty"`

	// Brand Filter results based on a specific brand.
	Brand *string `form:"brand,omitempty" json:"brand,omitempty"`

	// ProductCategory Used to filter results on the _productCategory_ field applicable to accounts. Any one of the valid values for this field can be supplied. If absent then all accounts returned.
	ProductCategory *ListProductsParamsProductCategory `form:"product-category,omitempty" json:"product-category,omitempty"`

	// Page Page of results to request (standard pagination).
	Page *int `form:"page,omitempty" json:"page,omitempty"`

	// PageSize Page size to request. Default is 25 (standard pagination).
	PageSize *int `form:"page-size,omitempty" json:"page-size,omitempty"`

	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`
}

ListProductsParams defines parameters for ListProducts.

type ListProductsParamsEffective

type ListProductsParamsEffective string

ListProductsParamsEffective defines parameters for ListProducts.

const (
	ListProductsParamsEffectiveALL     ListProductsParamsEffective = "ALL"
	ListProductsParamsEffectiveCURRENT ListProductsParamsEffective = "CURRENT"
	ListProductsParamsEffectiveFUTURE  ListProductsParamsEffective = "FUTURE"
)

Defines values for ListProductsParamsEffective.

type ListProductsParamsProductCategory

type ListProductsParamsProductCategory string

ListProductsParamsProductCategory defines parameters for ListProducts.

const (
	ListProductsParamsProductCategoryBUSINESSLOANS           ListProductsParamsProductCategory = "BUSINESS_LOANS"
	ListProductsParamsProductCategoryCREDANDCHRGCARDS        ListProductsParamsProductCategory = "CRED_AND_CHRG_CARDS"
	ListProductsParamsProductCategoryLEASES                  ListProductsParamsProductCategory = "LEASES"
	ListProductsParamsProductCategoryMARGINLOANS             ListProductsParamsProductCategory = "MARGIN_LOANS"
	ListProductsParamsProductCategoryOVERDRAFTS              ListProductsParamsProductCategory = "OVERDRAFTS"
	ListProductsParamsProductCategoryPERSLOANS               ListProductsParamsProductCategory = "PERS_LOANS"
	ListProductsParamsProductCategoryREGULATEDTRUSTACCOUNTS  ListProductsParamsProductCategory = "REGULATED_TRUST_ACCOUNTS"
	ListProductsParamsProductCategoryRESIDENTIALMORTGAGES    ListProductsParamsProductCategory = "RESIDENTIAL_MORTGAGES"
	ListProductsParamsProductCategoryTERMDEPOSITS            ListProductsParamsProductCategory = "TERM_DEPOSITS"
	ListProductsParamsProductCategoryTRADEFINANCE            ListProductsParamsProductCategory = "TRADE_FINANCE"
	ListProductsParamsProductCategoryTRANSANDSAVINGSACCOUNTS ListProductsParamsProductCategory = "TRANS_AND_SAVINGS_ACCOUNTS"
	ListProductsParamsProductCategoryTRAVELCARDS             ListProductsParamsProductCategory = "TRAVEL_CARDS"
)

Defines values for ListProductsParamsProductCategory.

type ListScheduledPaymentsBulkParams

type ListScheduledPaymentsBulkParams struct {
	// ProductCategory Used to filter results on the _productCategory_ field applicable to accounts. Any one of the valid values for this field can be supplied. If absent then all accounts returned.
	ProductCategory *ListScheduledPaymentsBulkParamsProductCategory `form:"product-category,omitempty" json:"product-category,omitempty"`

	// OpenStatus Used to filter results according to open/closed status. Values can be `OPEN`, `CLOSED` or `ALL`. If absent then `ALL` is assumed.
	OpenStatus *ListScheduledPaymentsBulkParamsOpenStatus `form:"open-status,omitempty" json:"open-status,omitempty"`

	// IsOwned Filters accounts based on whether they are owned by the authorised customer. `true` for owned accounts, `false` for unowned accounts and absent for all accounts.
	IsOwned *bool `form:"is-owned,omitempty" json:"is-owned,omitempty"`

	// Page Page of results to request (standard pagination).
	Page *int `form:"page,omitempty" json:"page,omitempty"`

	// PageSize Page size to request. Default is 25 (standard pagination).
	PageSize *int `form:"page-size,omitempty" json:"page-size,omitempty"`

	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *string `json:"x-fapi-interaction-id,omitempty"`

	// XFapiAuthDate The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *string `json:"x-fapi-auth-date,omitempty"`

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the Data Recipient Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

ListScheduledPaymentsBulkParams defines parameters for ListScheduledPaymentsBulk.

type ListScheduledPaymentsBulkParamsOpenStatus

type ListScheduledPaymentsBulkParamsOpenStatus string

ListScheduledPaymentsBulkParamsOpenStatus defines parameters for ListScheduledPaymentsBulk.

const (
	ListScheduledPaymentsBulkParamsOpenStatusALL    ListScheduledPaymentsBulkParamsOpenStatus = "ALL"
	ListScheduledPaymentsBulkParamsOpenStatusCLOSED ListScheduledPaymentsBulkParamsOpenStatus = "CLOSED"
	ListScheduledPaymentsBulkParamsOpenStatusOPEN   ListScheduledPaymentsBulkParamsOpenStatus = "OPEN"
)

Defines values for ListScheduledPaymentsBulkParamsOpenStatus.

type ListScheduledPaymentsBulkParamsProductCategory

type ListScheduledPaymentsBulkParamsProductCategory string

ListScheduledPaymentsBulkParamsProductCategory defines parameters for ListScheduledPaymentsBulk.

const (
	ListScheduledPaymentsBulkParamsProductCategoryBUSINESSLOANS           ListScheduledPaymentsBulkParamsProductCategory = "BUSINESS_LOANS"
	ListScheduledPaymentsBulkParamsProductCategoryCREDANDCHRGCARDS        ListScheduledPaymentsBulkParamsProductCategory = "CRED_AND_CHRG_CARDS"
	ListScheduledPaymentsBulkParamsProductCategoryLEASES                  ListScheduledPaymentsBulkParamsProductCategory = "LEASES"
	ListScheduledPaymentsBulkParamsProductCategoryMARGINLOANS             ListScheduledPaymentsBulkParamsProductCategory = "MARGIN_LOANS"
	ListScheduledPaymentsBulkParamsProductCategoryOVERDRAFTS              ListScheduledPaymentsBulkParamsProductCategory = "OVERDRAFTS"
	ListScheduledPaymentsBulkParamsProductCategoryPERSLOANS               ListScheduledPaymentsBulkParamsProductCategory = "PERS_LOANS"
	ListScheduledPaymentsBulkParamsProductCategoryREGULATEDTRUSTACCOUNTS  ListScheduledPaymentsBulkParamsProductCategory = "REGULATED_TRUST_ACCOUNTS"
	ListScheduledPaymentsBulkParamsProductCategoryRESIDENTIALMORTGAGES    ListScheduledPaymentsBulkParamsProductCategory = "RESIDENTIAL_MORTGAGES"
	ListScheduledPaymentsBulkParamsProductCategoryTERMDEPOSITS            ListScheduledPaymentsBulkParamsProductCategory = "TERM_DEPOSITS"
	ListScheduledPaymentsBulkParamsProductCategoryTRADEFINANCE            ListScheduledPaymentsBulkParamsProductCategory = "TRADE_FINANCE"
	ListScheduledPaymentsBulkParamsProductCategoryTRANSANDSAVINGSACCOUNTS ListScheduledPaymentsBulkParamsProductCategory = "TRANS_AND_SAVINGS_ACCOUNTS"
	ListScheduledPaymentsBulkParamsProductCategoryTRAVELCARDS             ListScheduledPaymentsBulkParamsProductCategory = "TRAVEL_CARDS"
)

Defines values for ListScheduledPaymentsBulkParamsProductCategory.

type ListScheduledPaymentsParams

type ListScheduledPaymentsParams struct {
	// Page Page of results to request (standard pagination).
	Page *int `form:"page,omitempty" json:"page,omitempty"`

	// PageSize Page size to request. Default is 25 (standard pagination).
	PageSize *int `form:"page-size,omitempty" json:"page-size,omitempty"`

	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *string `json:"x-fapi-interaction-id,omitempty"`

	// XFapiAuthDate The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *string `json:"x-fapi-auth-date,omitempty"`

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the Data Recipient Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

ListScheduledPaymentsParams defines parameters for ListScheduledPayments.

type ListScheduledPaymentsSpecificAccountsJSONRequestBody

type ListScheduledPaymentsSpecificAccountsJSONRequestBody = RequestAccountIds

ListScheduledPaymentsSpecificAccountsJSONRequestBody defines body for ListScheduledPaymentsSpecificAccounts for application/json ContentType.

type ListScheduledPaymentsSpecificAccountsParams

type ListScheduledPaymentsSpecificAccountsParams struct {
	// Page Page of results to request (standard pagination).
	Page *int `form:"page,omitempty" json:"page,omitempty"`

	// PageSize Page size to request. Default is 25 (standard pagination).
	PageSize *int `form:"page-size,omitempty" json:"page-size,omitempty"`

	// XV Version of the API endpoint requested by the client. Must be set to a positive integer. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If the value of [_x-min-v_](#request-headers) is equal to or higher than the value of [_x-v_](#request-headers) then the [_x-min-v_](#request-headers) header should be treated as absent. If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers).
	XV string `json:"x-v"`

	// XMinV Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The data holder should respond with the highest supported version between [_x-min-v_](#request-headers) and [_x-v_](#request-headers). If all versions requested are not supported then the data holder must respond with a `406 Not Acceptable`.
	XMinV *string `json:"x-min-v,omitempty"`

	// XFapiInteractionId An **[[RFC4122]](#nref-RFC4122)** UUID used as a correlation id. If provided, the data holder must play back this value in the _x-fapi-interaction-id_ response header. If not provided a **[[RFC4122]](#nref-RFC4122)** UUID value is required to be provided in the response header to track the interaction.
	XFapiInteractionId *string `json:"x-fapi-interaction-id,omitempty"`

	// XFapiAuthDate The time when the customer last logged in to the Data Recipient Software Product as described in **[[FAPI-1.0-Baseline]](#nref-FAPI-1-0-Baseline)**. Required for all resource calls (customer present and unattended). Not required for unauthenticated calls.
	XFapiAuthDate *string `json:"x-fapi-auth-date,omitempty"`

	// XFapiCustomerIpAddress The customer's original IP address if the customer is currently logged in to the Data Recipient Software Product. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
	XFapiCustomerIpAddress *string `json:"x-fapi-customer-ip-address,omitempty"`

	// XCdsClientHeaders The customer's original standard http headers [Base64](#common-field-types) encoded, including the original User Agent header, if the customer is currently logged in to the Data Recipient Software Product. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
	XCdsClientHeaders *string `json:"x-cds-client-headers,omitempty"`
}

ListScheduledPaymentsSpecificAccountsParams defines parameters for ListScheduledPaymentsSpecificAccounts.

type Meta

type Meta = map[string]interface{}

Meta defines model for Meta.

type MetaError

type MetaError struct {
	// Urn The CDR error code URN which the application-specific error code extends. Mandatory if the error _code_ is an application-specific error rather than a standardised error code.
	Urn *string `json:"urn,omitempty"`
}

MetaError Additional data for customised error codes.

type MetaPaginated

type MetaPaginated struct {
	// TotalPages The total number of pages in the full set. See [pagination](#pagination).
	TotalPages int `json:"totalPages"`

	// TotalRecords The total number of records in the full set. See [pagination](#pagination).
	TotalRecords int `json:"totalRecords"`
}

MetaPaginated defines model for MetaPaginated.

type MetaPaginatedTransaction added in v0.3.0

type MetaPaginatedTransaction struct {
	// IsQueryParamUnsupported `true` if _text_ query parameter is not supported.
	IsQueryParamUnsupported *bool `json:"isQueryParamUnsupported,omitempty"`

	// TotalPages The total number of pages in the full set. See [pagination](#pagination).
	TotalPages int `json:"totalPages"`

	// TotalRecords The total number of records in the full set. See [pagination](#pagination).
	TotalRecords int `json:"totalRecords"`
}

MetaPaginatedTransaction defines model for MetaPaginatedTransaction.

type MetaPaginatedTransactionAllOf added in v0.3.0

type MetaPaginatedTransactionAllOf struct {
	// IsQueryParamUnsupported `true` if _text_ query parameter is not supported.
	IsQueryParamUnsupported *bool `json:"isQueryParamUnsupported,omitempty"`
}

MetaPaginatedTransactionAllOf defines model for MetaPaginatedTransaction_allOf.

type RequestAccountIds

type RequestAccountIds struct {
	Data RequestAccountIdsData `json:"data"`
	Meta *Meta                 `json:"meta,omitempty"`
}

RequestAccountIds defines model for RequestAccountIds.

type RequestAccountIdsData added in v0.1.6

type RequestAccountIdsData struct {
	AccountIds []string `json:"accountIds"`
}

RequestAccountIdsData defines model for RequestAccountIds_data.

type ResponseBankingAccountByIdV3 added in v0.1.4

type ResponseBankingAccountByIdV3 struct {
	Data  BankingAccountDetailV3 `json:"data"`
	Links Links                  `json:"links"`
	Meta  *Meta                  `json:"meta,omitempty"`
}

ResponseBankingAccountByIdV3 defines model for ResponseBankingAccountByIdV3.

type ResponseBankingAccountListV2 added in v0.1.4

type ResponseBankingAccountListV2 struct {
	Data  ResponseBankingAccountListV2Data `json:"data"`
	Links LinksPaginated                   `json:"links"`
	Meta  MetaPaginated                    `json:"meta"`
}

ResponseBankingAccountListV2 defines model for ResponseBankingAccountListV2.

type ResponseBankingAccountListV2Data added in v0.1.6

type ResponseBankingAccountListV2Data struct {
	// Accounts The list of accounts returned. If the filter results in an empty set then this array may have no records.
	Accounts []BankingAccountV2 `json:"accounts"`
}

ResponseBankingAccountListV2Data defines model for ResponseBankingAccountListV2_data.

type ResponseBankingAccountsBalanceById

type ResponseBankingAccountsBalanceById struct {
	Data  BankingBalance `json:"data"`
	Links Links          `json:"links"`
	Meta  *Meta          `json:"meta,omitempty"`
}

ResponseBankingAccountsBalanceById defines model for ResponseBankingAccountsBalanceById.

type ResponseBankingAccountsBalanceList

type ResponseBankingAccountsBalanceList struct {
	Data  ResponseBankingAccountsBalanceListData `json:"data"`
	Links LinksPaginated                         `json:"links"`
	Meta  MetaPaginated                          `json:"meta"`
}

ResponseBankingAccountsBalanceList defines model for ResponseBankingAccountsBalanceList.

type ResponseBankingAccountsBalanceListData added in v0.1.6

type ResponseBankingAccountsBalanceListData struct {
	// Balances The list of balances returned.
	Balances []BankingBalance `json:"balances"`
}

ResponseBankingAccountsBalanceListData defines model for ResponseBankingAccountsBalanceList_data.

type ResponseBankingDirectDebitAuthorisationList

type ResponseBankingDirectDebitAuthorisationList struct {
	Data  ResponseBankingDirectDebitAuthorisationListData `json:"data"`
	Links LinksPaginated                                  `json:"links"`
	Meta  MetaPaginated                                   `json:"meta"`
}

ResponseBankingDirectDebitAuthorisationList defines model for ResponseBankingDirectDebitAuthorisationList.

type ResponseBankingDirectDebitAuthorisationListData added in v0.1.6

type ResponseBankingDirectDebitAuthorisationListData struct {
	// DirectDebitAuthorisations The list of authorisations returned.
	DirectDebitAuthorisations []BankingDirectDebit `json:"directDebitAuthorisations"`
}

ResponseBankingDirectDebitAuthorisationListData defines model for ResponseBankingDirectDebitAuthorisationList_data.

type ResponseBankingPayeeByIdV2

type ResponseBankingPayeeByIdV2 struct {
	Data  BankingPayeeDetailV2 `json:"data"`
	Links Links                `json:"links"`
	Meta  *Meta                `json:"meta,omitempty"`
}

ResponseBankingPayeeByIdV2 defines model for ResponseBankingPayeeByIdV2.

type ResponseBankingPayeeListV2

type ResponseBankingPayeeListV2 struct {
	Data  ResponseBankingPayeeListV2Data `json:"data"`
	Links LinksPaginated                 `json:"links"`
	Meta  MetaPaginated                  `json:"meta"`
}

ResponseBankingPayeeListV2 defines model for ResponseBankingPayeeListV2.

type ResponseBankingPayeeListV2Data added in v0.1.6

type ResponseBankingPayeeListV2Data struct {
	// Payees The list of payees returned.
	Payees []BankingPayeeV2 `json:"payees"`
}

ResponseBankingPayeeListV2Data defines model for ResponseBankingPayeeListV2_data.

type ResponseBankingProductByIdV4

type ResponseBankingProductByIdV4 struct {
	Data  BankingProductDetailV4 `json:"data"`
	Links Links                  `json:"links"`
	Meta  *Meta                  `json:"meta,omitempty"`
}

ResponseBankingProductByIdV4 defines model for ResponseBankingProductByIdV4.

type ResponseBankingProductListV2

type ResponseBankingProductListV2 struct {
	Data  ResponseBankingProductListV2Data `json:"data"`
	Links LinksPaginated                   `json:"links"`
	Meta  MetaPaginated                    `json:"meta"`
}

ResponseBankingProductListV2 defines model for ResponseBankingProductListV2.

type ResponseBankingProductListV2Data added in v0.1.6

type ResponseBankingProductListV2Data struct {
	// Products The list of products returned. If the filter results in an empty set then this array may have no records.
	Products []BankingProductV4 `json:"products"`
}

ResponseBankingProductListV2Data defines model for ResponseBankingProductListV2_data.

type ResponseBankingScheduledPaymentsListV2 added in v0.3.0

type ResponseBankingScheduledPaymentsListV2 struct {
	Data  ResponseBankingScheduledPaymentsListV2Data `json:"data"`
	Links LinksPaginated                             `json:"links"`
	Meta  MetaPaginated                              `json:"meta"`
}

ResponseBankingScheduledPaymentsListV2 defines model for ResponseBankingScheduledPaymentsListV2.

type ResponseBankingScheduledPaymentsListV2Data added in v0.3.0

type ResponseBankingScheduledPaymentsListV2Data struct {
	// ScheduledPayments The list of scheduled payments to return.
	ScheduledPayments []BankingScheduledPaymentV2 `json:"scheduledPayments"`
}

ResponseBankingScheduledPaymentsListV2Data defines model for ResponseBankingScheduledPaymentsListV2_data.

type ResponseBankingTransactionById

type ResponseBankingTransactionById struct {
	Data  BankingTransactionDetail `json:"data"`
	Links Links                    `json:"links"`
	Meta  *Meta                    `json:"meta,omitempty"`
}

ResponseBankingTransactionById defines model for ResponseBankingTransactionById.

type ResponseBankingTransactionList

type ResponseBankingTransactionList struct {
	Data  ResponseBankingTransactionListData `json:"data"`
	Links LinksPaginated                     `json:"links"`
	Meta  MetaPaginatedTransaction           `json:"meta"`
}

ResponseBankingTransactionList defines model for ResponseBankingTransactionList.

type ResponseBankingTransactionListData added in v0.1.6

type ResponseBankingTransactionListData struct {
	Transactions []BankingTransaction `json:"transactions"`
}

ResponseBankingTransactionListData defines model for ResponseBankingTransactionList_data.

type ResponseErrorListV2

type ResponseErrorListV2 struct {
	Errors []ResponseErrorListV2Errors `json:"errors"`
}

ResponseErrorListV2 defines model for ResponseErrorListV2.

type ResponseErrorListV2Errors added in v0.1.6

type ResponseErrorListV2Errors struct {
	// Code The code of the error encountered. Where the error is specific to the respondent, an application-specific error code, expressed as a string value. If the error is application-specific, the URN code that the specific error extends must be provided in the meta object. Otherwise, the value is the error code URN.
	Code string `json:"code"`

	// Detail A human-readable explanation specific to this occurrence of the problem.
	Detail string `json:"detail"`

	// Meta Additional data for customised error codes.
	Meta *MetaError `json:"meta,omitempty"`

	// Title A short, human-readable summary of the problem that MUST NOT change from occurrence to occurrence of the problem represented by the error code.
	Title string `json:"title"`
}

ResponseErrorListV2Errors defines model for ResponseErrorListV2_errors.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL