openapi: 3.0.3 info: contact: email: contact@dsb.gov.au name: Data Standards Body url: https://dsb.gov.au/ description: Specifications for resource endpoints applicable to data holders in the Banking sector. license: name: MIT License url: https://opensource.org/licenses/MIT title: CDR Banking Banking Account Balances Banking Accounts API version: 1.36.0 servers: - description: MTLS url: https://mtls.dh.example.com/cds-au/v1 tags: - description: Banking Account endpoints name: Banking Accounts x-shortName: Accounts paths: /banking/accounts: get: description: 'Obtain a list of accounts. Obsolete versions: [v1](includes/obsolete/get-accounts-v1.html), [v2](includes/obsolete/get-accounts-v2.html).' operationId: listBankingAccounts parameters: - description: 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. explode: true in: query name: product-category required: false schema: $ref: '#/components/schemas/BankingProductCategoryV2' style: form - description: Used to filter results according to open/closed status. Values can be `OPEN`, `CLOSED` or `ALL`. If absent then `ALL` is assumed. explode: true in: query name: open-status required: false schema: default: ALL enum: - ALL - CLOSED - OPEN type: string style: form - description: 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. explode: true in: query name: is-owned required: false schema: type: boolean style: form - description: Page of results to request (standard pagination). explode: true in: query name: page required: false schema: default: 1 type: integer style: form x-cds-type: PositiveInteger - description: Page size to request. Default is 25 (standard pagination). explode: true in: query name: page-size required: false schema: default: 25 type: integer style: form x-cds-type: PositiveInteger - description: Version of the API endpoint requested by the client. Must be set to a positive integer. The endpoint 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 endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers). explode: false in: header name: x-v required: true schema: type: string style: simple - description: Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The endpoint 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 endpoint **MUST** respond with a `406 Not Acceptable`. explode: false in: header name: x-min-v required: false schema: type: string style: simple - description: 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. explode: false in: header name: x-fapi-interaction-id required: false schema: type: string style: simple - description: 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. explode: false in: header name: x-fapi-auth-date required: false schema: type: string style: simple x-conditional: true - description: 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. explode: false in: header name: x-fapi-customer-ip-address required: false schema: type: string style: simple - description: 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. explode: false in: header name: x-cds-client-headers required: false schema: type: string style: simple x-conditional: true x-cds-type: Base64 responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResponseBankingAccountListV3' description: Successful response headers: x-v: $ref: '#/components/headers/XV' x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' '400': content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' '406': content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' '422': content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' summary: Get Accounts tags: - Banking Accounts x-scopes: - bank:accounts.basic:read x-version: '3' /banking/accounts/{accountId}: get: description: 'Obtain detailed information on a single account. Obsolete versions: [v1](includes/obsolete/get-account-detail-v1.html), [v2](includes/obsolete/get-account-detail-v2.html), [v3](includes/obsolete/get-account-detail-v3.html), [v4](includes/obsolete/get-account-detail-v4.html).' operationId: getBankingAccountDetail parameters: - description: The _accountId_ to obtain data for. _accountId_ values are returned by account list endpoints. explode: false in: path name: accountId required: true schema: $ref: '#/components/schemas/BankingAccountId' style: simple - description: Version of the API endpoint requested by the client. Must be set to a positive integer. The endpoint 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 endpoint **MUST** respond with a `406 Not Acceptable`. See [HTTP Headers](#request-headers). explode: false in: header name: x-v required: true schema: type: string style: simple - description: Minimum version of the API endpoint requested by the client. Must be set to a positive integer if provided. The endpoint 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 endpoint **MUST** respond with a `406 Not Acceptable`. explode: false in: header name: x-min-v required: false schema: type: string style: simple - description: 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. explode: false in: header name: x-fapi-interaction-id required: false schema: type: string style: simple - description: 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. explode: false in: header name: x-fapi-auth-date required: false schema: type: string style: simple x-conditional: true - description: 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. explode: false in: header name: x-fapi-customer-ip-address required: false schema: type: string style: simple - description: 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. explode: false in: header name: x-cds-client-headers required: false schema: type: string style: simple x-conditional: true x-cds-type: Base64 responses: '200': content: application/json: schema: $ref: '#/components/schemas/ResponseBankingAccountByIdV5' description: Successful response headers: x-v: $ref: '#/components/headers/XV' x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' '400': content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' '404': content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' '406': content: application/json: schema: $ref: '#/components/schemas/ResponseErrorListV2' description: The following error codes **MUST** be supported:
headers: x-fapi-interaction-id: $ref: '#/components/headers/XFAPIInteractionId' summary: Get Account Detail tags: - Banking Accounts x-scopes: - bank:accounts.detail:read x-version: '5' components: schemas: BankingProductLendingRateV3: properties: lendingRateType: description: The type of rate (`FIXED`, `VARIABLE`, etc.) For further details, refer to [Product Lending Rate Types](#tocSproductlendingratetypedoc). enum: - BALANCE_TRANSFER - BUNDLE_DISCOUNT_FIXED - BUNDLE_DISCOUNT_VARIABLE - CASH_ADVANCE - DISCOUNT - FIXED - FLOATING - INTRODUCTORY - MARKET_LINKED - PENALTY - PURCHASE - VARIABLE example: FIXED type: string rate: description: The rate to be applied. type: string x-cds-type: RateString comparisonRate: description: A comparison rate equivalent for this rate. type: string x-cds-type: RateString calculationFrequency: description: 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). type: string x-cds-type: ExternalRef applicationType: description: The type of approach used to apply the rate to the account. enum: - MATURITY - PERIODIC - UPFRONT example: PERIODIC type: string applicationFrequency: description: 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). Mandatory if the _applicationType_ value is `PERIODIC`. type: string x-cds-type: ExternalRef interestPaymentDue: description: When loan payments are due to be paid within each period. The investment benefit of earlier payments affect the rate that can be offered. enum: - IN_ADVANCE - IN_ARREARS type: string repaymentType: description: Option in place for repayments. enum: - INTEREST_ONLY - OTHER - PRINCIPAL_AND_INTEREST - UNCONSTRAINED type: string loanPurpose: description: The reason for taking out the loan. enum: - INVESTMENT - OTHER - OWNER_OCCUPIED - UNCONSTRAINED type: string tiers: description: Qualifying criteria or conditions relevant to the associated rate. items: $ref: '#/components/schemas/BankingProductRateTierV4' type: array applicabilityConditions: description: Applicability conditions for the rate. items: $ref: '#/components/schemas/BankingProductRateConditionV2' type: array additionalValue: description: Generic field containing additional information relevant to the [_lendingRateType_](#tocSproductlendingratetypedoc) specified. Whether mandatory or not is dependent on the value of [_lendingRateType_](#tocSproductlendingratetypedoc). type: string additionalInfo: description: Display text providing more information on the rate. type: string additionalInfoUri: description: Link to a web page with more information on this rate. type: string x-cds-type: URIString required: - applicationType - lendingRateType - loanPurpose - rate - repaymentType type: object x-conditional: - additionalValue - applicationFrequency BankingProductFeeV2: properties: name: description: Name of the fee. type: string feeType: description: The type of fee. For further details, refer to [Product Fee Types](#tocSproductfeetypedoc). enum: - CASH_ADVANCE - DEPOSIT - DISHONOUR - ENQUIRY - EVENT - EXIT - LATE_PAYMENT - OTHER - PAYMENT - PERIODIC - PURCHASE - REPLACEMENT - TRANSACTION - UPFRONT - UPFRONT_PER_PLAN - VARIATION - WITHDRAWAL example: CASH_ADVANCE type: string feeMethodUType: description: Reference to the applicable fee charging method structure. enum: - fixedAmount - rateBased - variable type: string fixedAmount: allOf: - $ref: '#/components/schemas/BankingFeeAmount' description: Mandatory if the _feeMethodUType_ value is `fixedAmount`. Where the fee is a specific amount. rateBased: allOf: - $ref: '#/components/schemas/BankingFeeRate' description: Mandatory if the _feeMethodUType_ value is `rateBased`. Where the fee is based on a type of rate. variable: allOf: - $ref: '#/components/schemas/BankingFeeRange' description: Mandatory if the _feeMethodUType_ value is `variable`. Where the amount or rate may not be known until the fee is incurred. feeCap: description: The cap amount if multiple occurrences of the fee are capped to a limit. type: string x-cds-type: AmountString feeCapPeriod: description: Specifies a duration over which multiple occurrences of the fee will be capped. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax). type: string x-cds-type: ExternalRef currency: default: AUD description: The currency the fee will be charged in. Assumes `AUD` if absent. type: string x-cds-type: CurrencyString additionalValue: description: Generic field containing additional information relevant to the [_feeType_](#tocSproductfeetypedoc) specified. Whether mandatory or not is dependent on the value of [_feeType_](#tocSproductfeetypedoc). type: string additionalInfo: description: Display text providing more information on the fee. Mandatory if the [_feeType_](#tocSproductfeetypedoc) value is `OTHER`. type: string additionalInfoUri: description: Link to a web page with more information on this fee. type: string x-cds-type: URIString discounts: description: An optional list of discounts to this fee that may be available. items: $ref: '#/components/schemas/BankingProductDiscountV2' type: array required: - feeMethodUType - feeType - name type: object x-conditional: - fixedAmount - rateBased - variable - additionalValue - additionalInfo BankingTermDepositAccount: properties: lodgementDate: description: The lodgement date of the original deposit. type: string x-cds-type: DateString maturityDate: description: Maturity date for the term deposit. type: string x-cds-type: DateString maturityAmount: description: Amount to be paid upon maturity. If absent it implies the amount to paid is variable and cannot currently be calculated. type: string x-cds-type: AmountString maturityCurrency: default: AUD description: If absent assumes `AUD`. type: string x-cds-type: CurrencyString maturityInstructions: description: 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. enum: - HOLD_ON_MATURITY - PAID_OUT_AT_MATURITY - ROLLED_OVER type: string required: - lodgementDate - maturityDate - maturityInstructions type: object BankingProductDiscountEligibility: properties: discountEligibilityType: description: The type of the specific eligibility constraint for a discount. For further details, refer to [Product Discount Eligibility Types](#tocSproductdiscounteligibilitydoc). enum: - BUSINESS - EMPLOYMENT_STATUS - INTRODUCTORY - MAX_AGE - MIN_AGE - MIN_INCOME - MIN_TURNOVER - NATURAL_PERSON - OTHER - PENSION_RECIPIENT - RESIDENCY_STATUS - STAFF - STUDENT type: string additionalValue: description: Generic field containing additional information relevant to the [_discountEligibilityType_](#tocSproductdiscounteligibilitydoc) specified. Whether mandatory or not is dependent on the value of [_discountEligibilityType_](#tocSproductdiscounteligibilitydoc). type: string additionalInfo: description: Display text providing more information on this eligibility constraint. Mandatory if the [_discountEligibilityType_](#tocSproductdiscounteligibilitydoc) value is `OTHER`. type: string additionalInfoUri: description: Link to a web page with more information on this eligibility constraint. type: string x-cds-type: URIString required: - discountEligibilityType type: object x-conditional: - additionalInfo - additionalValue Links: example: self: self properties: self: description: Fully qualified link that generated the current response document. type: string x-cds-type: URIString required: - self type: object BankingAccountDetailV5_allOf: properties: bsb: description: The unmasked BSB for the account. Is expected to be formatted as digits only with leading zeros included and no punctuation or spaces. type: string accountNumber: description: 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. type: string bundleName: description: Optional field to indicate if this account is part of a bundle that is providing additional benefit to the customer. type: string instalments: $ref: '#/components/schemas/BankingProductInstalments' specificAccountUType: description: The type of structure to present account specific fields. enum: - creditCard - loan - termDeposit type: string termDeposit: description: Mandatory if the _specificAccountUType_ value is `termDeposit`. items: $ref: '#/components/schemas/BankingTermDepositAccount' type: array creditCard: allOf: - $ref: '#/components/schemas/BankingCreditCardAccount' description: Mandatory if the _specificAccountUType_ value is `creditCard`. loan: allOf: - $ref: '#/components/schemas/BankingLoanAccountV3' description: Mandatory if the _specificAccountUType_ value is `loan`. depositRate: description: Current rate to calculate interest earned being applied to deposit balances as it stands at the time of the API call. type: string x-cds-type: RateString lendingRate: description: The current rate to calculate interest payable being applied to lending balances as it stands at the time of the API call. type: string x-cds-type: RateString depositRates: description: Fully described deposit rates for this account based on the equivalent structure in Product Reference. items: $ref: '#/components/schemas/BankingProductDepositRateV2' type: array lendingRates: description: Fully described lending rates for this account based on the equivalent structure in Product Reference. items: $ref: '#/components/schemas/BankingProductLendingRateV3' type: array features: description: Array of features of the account based on the equivalent structure in Product Reference with the following additional field. items: allOf: - $ref: '#/components/schemas/BankingProductFeatureV4' - properties: isActivated: default: UNKNOWN description: **Note:** This is an additional field appended to the feature structure defined in the Product Reference payload. enum: - ACTIVATED - NOT_ACTIVATED - UNKNOWN type: string type: object type: object type: array fees: description: Fees and charges applicable to the account based on the equivalent structure in Product Reference. items: $ref: '#/components/schemas/BankingProductFeeV2' type: array addresses: description: The addresses for the account to be used for correspondence. items: $ref: '#/components/schemas/CommonPhysicalAddress' type: array type: object x-conditional: - termDeposit - creditCard - loan BankingProductRateConditionV2: description: Defines a condition for the applicability of a rate. properties: rateApplicabilityType: description: Category of applicability condition associated with the rate. For more information refer to [Rate and Tier Applicability Types](#tocSbankingproductrateconditiondoc). enum: - MIN_DEPOSITS - MIN_DEPOSIT_AMOUNT - DEPOSIT_BALANCE_INCREASED - EXISTING_CUST - NEW_ACCOUNTS - NEW_CUSTOMER - NEW_CUSTOMER_TO_GROUP - ONLINE_ONLY - OTHER - MIN_PURCHASES - MAX_WITHDRAWALS - MAX_WITHDRAWAL_AMOUNT example: NEW_CUSTOMER type: string additionalValue: description: Generic field containing additional information relevant to the _rateApplicabilityType_ specified. Whether mandatory or not is dependent on the value of [_rateApplicabilityType_](#tocSbankingproductrateconditiondoc). type: string additionalInfo: description: Display text providing more information on the condition. Mandatory if the [_rateApplicabilityType_](#tocSbankingproductrateconditiondoc) value is `OTHER`. type: string additionalInfoUri: description: Link to a web page with more information on this condition. type: string x-cds-type: URIString required: - rateApplicabilityType type: object x-conditional: - additionalValue - additionalInfo BankingProductDepositRateV2: properties: depositRateType: description: The type of rate (`FIXED`, `VARIABLE`, `BONUS`, etc.) For further details, refer to [Product Deposit Rate Types](#tocSproductdepositratetypedoc). enum: - BONUS - BUNDLE_BONUS - FIXED - FLOATING - INTRODUCTORY - MARKET_LINKED - VARIABLE example: VARIABLE type: string rate: description: The rate to be applied. type: string x-cds-type: RateString calculationFrequency: description: 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). type: string x-cds-type: ExternalRef applicationType: description: The type of approach used to apply the rate to the account. enum: - MATURITY - PERIODIC - UPFRONT example: PERIODIC type: string applicationFrequency: description: 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). Mandatory if the _applicationType_ value is `PERIODIC`. type: string x-cds-type: ExternalRef tiers: description: Qualifying criteria or conditions relevant to the associated rate. items: $ref: '#/components/schemas/BankingProductRateTierV4' type: array applicabilityConditions: description: Applicability conditions for the rate. items: $ref: '#/components/schemas/BankingProductRateConditionV2' type: array additionalValue: description: Generic field containing additional information relevant to the [_depositRateType_](#tocSproductdepositratetypedoc) specified. Whether mandatory or not is dependent on the value of [_depositRateType_](#tocSproductdepositratetypedoc). type: string additionalInfo: description: Display text providing more information on the rate. type: string additionalInfoUri: description: Link to a web page with more information on this rate. type: string x-cds-type: URIString required: - applicationType - depositRateType - rate type: object x-conditional: - additionalValue - applicationFrequency ResponseBankingAccountListV3_data: example: accounts: - accountId: '' maskedNumber: maskedNumber openStatus: OPEN displayName: displayName isOwned: true nickname: nickname creationDate: creationDate productName: productName isInstalmentDetailAvailable: false accountOwnership: UNKNOWN - accountId: '' maskedNumber: maskedNumber openStatus: OPEN displayName: displayName isOwned: true nickname: nickname creationDate: creationDate productName: productName isInstalmentDetailAvailable: false accountOwnership: UNKNOWN properties: accounts: description: The list of accounts returned. If the filter results in an empty set then this array may have no records. items: $ref: '#/components/schemas/BankingAccountV3' type: array required: - accounts type: object MetaPaginated: example: totalRecords: 0 totalPages: 6 properties: totalRecords: description: The total number of records in the full set. See [pagination](#pagination). type: integer x-cds-type: NaturalNumber totalPages: description: The total number of pages in the full set. See [pagination](#pagination). type: integer x-cds-type: NaturalNumber required: - totalPages - totalRecords type: object BankingCreditCardAccount: properties: minPaymentAmount: description: The minimum payment amount due for the next card payment. type: string x-cds-type: AmountString paymentDueAmount: description: The amount due for the next card payment. type: string x-cds-type: AmountString paymentCurrency: default: AUD description: If absent assumes `AUD`. type: string x-cds-type: CurrencyString paymentDueDate: description: Date that the next payment for the card is due. type: string x-cds-type: DateString required: - minPaymentAmount - paymentDueAmount - paymentDueDate type: object BankingFeeDiscountRange: description: A minimum or maximum fee discount amount where a specific fixed amount is not known until the fee is incurred. properties: discountMinimum: description: The minimum fee discount that will be applied per occurrence. type: string x-cds-type: AmountString discountMaximum: description: The maximum fee discount that will be applied per occurrence. type: string x-cds-type: AmountString type: object BankingProductCategoryV2: description: The category to which a product or account belongs. See [here](#product-categories) for more details. enum: - BUSINESS_LOANS - BUY_NOW_PAY_LATER - CRED_AND_CHRG_CARDS - LEASES - MARGIN_LOANS - OVERDRAFTS - PERS_LOANS - REGULATED_TRUST_ACCOUNTS - RESIDENTIAL_MORTGAGES - TERM_DEPOSITS - TRADE_FINANCE - TRANS_AND_SAVINGS_ACCOUNTS - TRAVEL_CARDS type: string ErrorV2: properties: code: description: 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. type: string title: description: A short, human-readable summary of the problem that **MUST NOT** change from occurrence to occurrence of the problem represented by the error code. type: string detail: description: A human-readable explanation specific to this occurrence of the problem. type: string meta: $ref: '#/components/schemas/ErrorV2_meta' required: - code - detail - title type: object x-conditional: - meta BankingAccountDetailV5: allOf: - $ref: '#/components/schemas/BankingAccountV3' - $ref: '#/components/schemas/BankingAccountDetailV5_allOf' BankingProductInstalments: description: Details of instalment features on the account. properties: maximumConcurrentPlans: description: Maximum number of concurrent active instalment plans that may be created on the account. If `null`, there is no predetermined maximum number. type: integer x-cds-type: NaturalNumber instalmentsLimit: description: Maximum combined limit of all instalment plans that may be created on the account. If `null` or not present, an opened account balance _creditLimit_ may be assumed to provide a maximum limit for instalments. type: string x-cds-type: AmountString minimumPlanValue: description: Minimum value that can be opened as an instalment plan. type: string x-cds-type: AmountString maximumPlanValue: description: Maximum value that can be opened as an instalment plan. If `null` or not present, _instalmentsLimit_ is assumed to be the maximum individual plan value. type: string x-cds-type: AmountString minimumSplit: description: Minimum number of instalment payments a plan can be created with. example: 4 type: integer x-cds-type: PositiveInteger maximumSplit: description: Maximum number of instalment payments a plan can be created with. example: 4 type: integer x-cds-type: PositiveInteger required: - maximumSplit - minimumSplit type: object BankingFeeDiscountRate: properties: rateType: description: Type of fee rate discount calculation. enum: - BALANCE - FEE - INTEREST_ACCRUED - TRANSACTION type: string rate: description: The fee rate discount calculated according to the _rateType_. type: string x-cds-type: RateString amountRange: $ref: '#/components/schemas/BankingFeeDiscountRange' required: - rate - rateType type: object ResponseBankingAccountByIdV5: example: meta: '{}' links: self: self properties: data: $ref: '#/components/schemas/BankingAccountDetailV5' links: $ref: '#/components/schemas/Links' meta: type: object required: - data - links type: object LinksPaginated: example: next: next last: last prev: prev self: self first: first properties: self: description: Fully qualified link that generated the current response document. type: string x-cds-type: URIString first: description: URI to the first page of this set. Mandatory if this response is not the first page. type: string x-cds-type: URIString prev: description: URI to the previous page of this set. Mandatory if this response is not the first page. type: string x-cds-type: URIString next: description: URI to the next page of this set. Mandatory if this response is not the last page. type: string x-cds-type: URIString last: description: URI to the last page of this set. Mandatory if this response is not the last page. type: string x-cds-type: URIString required: - self type: object x-conditional: - prev - next - first - last BankingLoanAccountV3: properties: originalStartDate: description: Optional original start date for the loan. type: string x-cds-type: DateString originalLoanAmount: description: Optional original loan value. type: string x-cds-type: AmountString originalLoanCurrency: default: AUD description: If absent assumes `AUD`. type: string x-cds-type: CurrencyString loanEndDate: description: Date that the loan is due to be repaid in full. type: string x-cds-type: DateString nextInstalmentDate: description: Next date that an instalment is required. type: string x-cds-type: DateString minInstalmentAmount: description: Minimum amount of next instalment. type: string x-cds-type: AmountString minInstalmentCurrency: default: AUD description: If absent assumes `AUD`. type: string x-cds-type: CurrencyString maxRedraw: description: Maximum amount of funds that can be redrawn. If not present redraw is not available even if the feature exists for the account. type: string x-cds-type: AmountString maxRedrawCurrency: default: AUD description: If absent assumes `AUD`. type: string x-cds-type: CurrencyString minRedraw: description: Minimum redraw amount. type: string x-cds-type: AmountString minRedrawCurrency: default: AUD description: If absent assumes `AUD`. type: string x-cds-type: CurrencyString offsetAccountEnabled: description: Set to `true` if one or more offset accounts are configured for this loan account. type: boolean offsetAccountIds: description: The _accountId_ values 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. items: $ref: '#/components/schemas/BankingAccountId' type: array repaymentType: description: Option in place for repayments. enum: - INTEREST_ONLY - OTHER - PRINCIPAL_AND_INTEREST - UNCONSTRAINED type: string repaymentFrequency: description: The expected or required repayment frequency. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax). type: string x-cds-type: ExternalRef required: - repaymentType type: object BankingFeeRange: description: A minimum or maximum fee amount where a specific fixed amount is not known until the fee is incurred. properties: feeMinimum: description: The minimum fee that will be charged per occurrence. type: string x-cds-type: AmountString feeMaximum: description: The maximum fee that will be charged per occurrence. type: string x-cds-type: AmountString type: object BankingAccountV3: example: accountId: '' maskedNumber: maskedNumber openStatus: OPEN displayName: displayName isOwned: true nickname: nickname creationDate: creationDate productName: productName isInstalmentDetailAvailable: false accountOwnership: UNKNOWN properties: accountId: allOf: - $ref: '#/components/schemas/BankingAccountId' description: Unique identifier for the account. creationDate: description: Date that the account was created (if known). type: string x-cds-type: DateString displayName: description: 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. type: string nickname: description: A customer supplied nickname for the account. type: string openStatus: default: OPEN description: Open or closed status for the account. If not present then `OPEN` is assumed. enum: - CLOSED - OPEN type: string isOwned: default: true description: 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. type: boolean accountOwnership: description: 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. enum: - UNKNOWN - ONE_PARTY - TWO_PARTY - MANY_PARTY - OTHER type: string maskedNumber: description: A masked version of the account. Whether BSB/Account Number, Credit Card PAN or another number. type: string x-cds-type: MaskedAccountString productCategory: $ref: '#/components/schemas/BankingProductCategoryV2' productName: description: The unique identifier of the account as defined by the data holder (akin to model number for the account). type: string isInstalmentDetailAvailable: default: false description: '`true` if any active or inactive instalment plans are available in the Get Instalment Plans endpoints. `false` if instalment plans are not applicable to the account.' type: boolean required: - accountId - accountOwnership - displayName - maskedNumber - productCategory - productName type: object ErrorV2_meta: description: Additional data for customised error codes. properties: urn: description: 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. type: string type: object x-conditional: - urn BankingFeeAmount: properties: amount: description: The specific amount charged for the fee each time it is incurred. type: string x-cds-type: AmountString required: - amount type: object CommonSimpleAddress: description: Mandatory if the _addressUType_ value is `simple`. properties: mailingName: description: Name of the individual or business formatted for inclusion in an address used for physical mail. type: string addressLine1: description: First line of the standard address object. type: string addressLine2: description: Second line of the standard address object. type: string addressLine3: description: Third line of the standard address object. type: string postcode: description: Mandatory for Australian addresses. type: string city: description: Name of the city or locality. type: string state: description: 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`. type: string country: default: AUS description: 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. type: string x-cds-type: ExternalRef required: - addressLine1 - city - state type: object x-conditional: - postcode CommonPhysicalAddress: properties: addressUType: description: The type of address object present. enum: - paf - simple type: string simple: $ref: '#/components/schemas/CommonSimpleAddress' paf: $ref: '#/components/schemas/CommonPAFAddress' required: - addressUType type: object x-conditional: - simple - paf BankingProductDiscountV2: description: Note that the currency of the fee discount is expected to be the same as the currency of the fee itself. properties: description: description: Description of the discount. type: string discountType: description: The type of discount. For further details, refer to [Product Discount Types](#tocSproductdiscounttypedoc). enum: - BALANCE - DEPOSITS - ELIGIBILITY_ONLY - FEE_CAP - PAYMENTS type: string discountMethodUType: description: Reference to the applicable fee discount method structure. enum: - fixedAmount - rateBased type: string fixedAmount: allOf: - $ref: '#/components/schemas/BankingFeeDiscountAmount' description: Mandatory if the _discountMethodUType_ value is `fixedAmount`. Where the discount is a specific amount. rateBased: allOf: - $ref: '#/components/schemas/BankingFeeDiscountRate' description: Mandatory if the _discountMethodUType_ value is `rateBased`. Where the discount is based on a type of rate. Unless noted in _additionalInfo_, assumes the application and calculation frequency are the same as the corresponding fee. additionalValue: description: Generic field containing additional information relevant to the [_discountType_](#tocSproductdiscounttypedoc) specified. Whether mandatory or not is dependent on the value of [_discountType_](#tocSproductdiscounttypedoc). type: string additionalInfo: description: Display text providing more information on the discount. type: string additionalInfoUri: description: Link to a web page with more information on this discount. type: string x-cds-type: URIString eligibility: description: Eligibility constraints that apply to this discount. Mandatory if the [_discountType_](#tocSproductdiscounttypedoc) value is `ELIGIBILITY_ONLY`. items: $ref: '#/components/schemas/BankingProductDiscountEligibility' type: array required: - description - discountMethodUType - discountType type: object x-conditional: - fixedAmount - rateBased - additionalValue - eligibility BankingFeeRate: properties: rateType: description: Type of fee rate calculation. enum: - BALANCE - INTEREST_ACCRUED - TRANSACTION type: string rate: description: The fee rate calculated according to the _rateType_. type: string x-cds-type: RateString accrualFrequency: description: The indicative frequency with which the fee is calculated on the account if applicable. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax). type: string x-cds-type: ExternalRef amountRange: $ref: '#/components/schemas/BankingFeeRange' required: - rate - rateType type: object x-conditional: - balanceRate - transactionRate - accruedRate BankingProductRateTierV4: description: Defines the criteria and conditions for which a rate applies. properties: name: description: A display name for the tier. type: string unitOfMeasure: description: The unit of measure that applies to the _minimumValue_ and _maximumValue_ values, e.g., enum: - DAY - DOLLAR - MONTH - PERCENT type: string minimumValue: description: The number of _unitOfMeasure_ units that form the lower bound of the tier. The tier should be inclusive of this value. type: string maximumValue: description: '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.' type: string rateApplicationMethod: description: 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'). enum: - PER_TIER - WHOLE_BALANCE type: string applicabilityConditions: description: Applicability conditions for the rate tier. items: $ref: '#/components/schemas/BankingProductRateConditionV2' type: array additionalInfo: description: Display text providing more information on the rate tier. type: string additionalInfoUri: description: Link to a web page with more information on this rate tier. type: string x-cds-type: URIString required: - minimumValue - name - unitOfMeasure type: object ResponseBankingAccountListV3: example: data: accounts: - accountId: '' maskedNumber: maskedNumber openStatus: OPEN displayName: displayName isOwned: true nickname: nickname creationDate: creationDate productName: productName isInstalmentDetailAvailable: false accountOwnership: UNKNOWN - accountId: '' maskedNumber: maskedNumber openStatus: OPEN displayName: displayName isOwned: true nickname: nickname creationDate: creationDate productName: productName isInstalmentDetailAvailable: false accountOwnership: UNKNOWN meta: totalRecords: 0 totalPages: 6 links: next: next last: last prev: prev self: self first: first properties: data: $ref: '#/components/schemas/ResponseBankingAccountListV3_data' links: $ref: '#/components/schemas/LinksPaginated' meta: $ref: '#/components/schemas/MetaPaginated' required: - data - links - meta type: object BankingAccountId: description: A unique identifier for a Banking account, generated according to [CDR ID Permanence](#id-permanence) requirements. type: string x-cds-type: ASCIIString ResponseErrorListV2: properties: errors: description: List of errors. items: $ref: '#/components/schemas/ErrorV2' type: array required: - errors type: object CommonPAFAddress: description: 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). Mandatory if the _addressUType_ value is `paf`. properties: dpid: description: Unique identifier for an address as defined by Australia Post. Also known as Delivery Point Identifier. type: string thoroughfareNumber1: description: Thoroughfare number for a property (first number in a property ranged address). type: integer x-cds-type: PositiveInteger thoroughfareNumber1Suffix: description: Suffix for the thoroughfare number. Only relevant if _thoroughfareNumber1_ is populated. type: string thoroughfareNumber2: description: Second thoroughfare number (only used if the property has a ranged address, e.g., 23-25). type: integer x-cds-type: PositiveInteger thoroughfareNumber2Suffix: description: Suffix for the second thoroughfare number. Only relevant if _thoroughfareNumber2_ is populated. type: string flatUnitType: description: Type of flat or unit for the address. type: string flatUnitNumber: description: Unit number (including suffix, if applicable). type: string floorLevelType: description: Type of floor or level for the address. type: string floorLevelNumber: description: Floor or level number (including alpha characters). type: string lotNumber: description: Allotment number for the address. type: string buildingName1: description: Building/Property name 1. type: string buildingName2: description: Building/Property name 2. type: string streetName: description: The name of the street. type: string streetType: description: The street type. Valid enumeration defined by Australia Post PAF code file. type: string streetSuffix: description: The street type suffix. Valid enumeration defined by Australia Post PAF code file. type: string postalDeliveryType: description: Postal delivery type. (e.g., PO BOX). Valid enumeration defined by Australia Post PAF code file. type: string postalDeliveryNumber: description: Postal delivery number if the address is a postal delivery type. type: integer x-cds-type: PositiveInteger postalDeliveryNumberPrefix: description: Postal delivery number prefix related to the postal delivery number. type: string postalDeliveryNumberSuffix: description: Postal delivery number suffix related to the postal delivery number. type: string localityName: description: Full name of locality. type: string postcode: description: Postcode for the locality. type: string state: description: 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`. type: string required: - localityName - postcode - state type: object BankingProductFeatureV4: properties: featureType: description: The type of feature described. For further details, refer to [Product Feature Types](#tocSproductfeaturetypedoc). enum: - ADDITIONAL_CARDS - BALANCE_TRANSFERS - BILL_PAYMENT - BONUS_REWARDS - CARD_ACCESS - CASHBACK_OFFER - COMPLEMENTARY_PRODUCT_DISCOUNTS - EXTRA_DOWN_PAYMENT - DIGITAL_BANKING - DIGITAL_WALLET - DONATE_INTEREST - EXTRA_REPAYMENTS - FRAUD_PROTECTION - FREE_TXNS - FREE_TXNS_ALLOWANCE - FUNDS_AVAILABLE_AFTER - GUARANTOR - INSTALMENT_PLAN - INSURANCE - INTEREST_FREE - INTEREST_FREE_TRANSFERS - LOYALTY_PROGRAM - NOTIFICATIONS - NPP_ENABLED - NPP_PAYID - OFFSET - OTHER - OVERDRAFT - REDRAW - RELATIONSHIP_MANAGEMENT - UNLIMITED_TXNS type: string additionalValue: description: Generic field containing additional information relevant to the [_featureType_](#tocSproductfeaturetypedoc) specified. Whether mandatory or not is dependent on the value of the [_featureType_](#tocSproductfeaturetypedoc). type: string additionalInfo: description: Display text providing more information on the feature. Mandatory if the [_featureType_](#tocSproductfeaturetypedoc) value is `OTHER`. type: string additionalInfoUri: description: Link to a web page with more information on this feature. type: string x-cds-type: URIString required: - featureType type: object x-conditional: - additionalValue - additionalInfo BankingFeeDiscountAmount: properties: amount: description: The specific amount discounted from the fee each time it is incurred. type: string x-cds-type: AmountString required: - amount type: object headers: XFAPIInteractionId: description: 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. explode: false required: true schema: type: string style: simple XV: description: The [payload version](#response-headers) that the endpoint has responded with. explode: false required: true schema: type: string style: simple