---
swagger: "2.0"
info:
description: API sets created by the Australian Consumer Data Standards to meet the needs of the Consumer Data Right
version: 1.8.0
title: Consumer Data Standards
contact:
name: Consumer Data Standards
url: https://consumerdatastandards.org.au/
email: cdr-data61@csiro.au
license:
name: MIT License
url: https://opensource.org/licenses/MIT
host: data.holder.com.au
basePath: /cds-au/v1
schemes:
- https
consumes:
- application/json
produces:
- application/json
paths:
/banking/accounts:
get:
tags:
- Banking
- Accounts
summary: Get Accounts
description: Obtain a list of accounts
operationId: listAccounts
parameters:
- name: product-category
in: query
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.
required: false
type: string
enum:
- BUSINESS_LOANS
- 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
- name: open-status
in: query
description: Used to filter results according to open/closed status. Values can be OPEN, CLOSED or ALL. If absent then ALL is assumed
required: false
type: string
default: ALL
enum:
- ALL
- CLOSED
- OPEN
- name: is-owned
in: query
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
required: false
type: boolean
x-cds-type: Boolean
- name: page
in: query
description: Page of results to request (standard pagination)
required: false
type: integer
default: 1
x-cds-type: PositiveInteger
- name: page-size
in: query
description: Page size to request. Default is 25 (standard pagination)
required: false
type: integer
default: 25
x-cds-type: PositiveInteger
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseBankingAccountList'
x-scopes:
- bank:accounts.basic:read
x-version: "1"
/banking/accounts/balances:
get:
tags:
- Banking
- Accounts
summary: Get Bulk Balances
description: Obtain balances for multiple, filtered accounts
operationId: listBalancesBulk
parameters:
- name: product-category
in: query
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.
required: false
type: string
enum:
- BUSINESS_LOANS
- 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
- name: open-status
in: query
description: Used to filter results according to open/closed status. Values can be OPEN, CLOSED or ALL. If absent then ALL is assumed
required: false
type: string
default: ALL
enum:
- ALL
- CLOSED
- OPEN
- name: is-owned
in: query
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
required: false
type: boolean
x-cds-type: Boolean
- name: page
in: query
description: Page of results to request (standard pagination)
required: false
type: integer
default: 1
x-cds-type: PositiveInteger
- name: page-size
in: query
description: Page size to request. Default is 25 (standard pagination)
required: false
type: integer
default: 25
x-cds-type: PositiveInteger
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseBankingAccountsBalanceList'
x-scopes:
- bank:accounts.basic:read
x-version: "1"
post:
tags:
- Banking
- Accounts
summary: Get Balances For Specific Accounts
description: Obtain balances for a specified list of accounts
operationId: listBalancesSpecificAccounts
parameters:
- in: body
name: accountIds
description: The list of account IDs to obtain balances for
required: true
schema:
$ref: '#/definitions/RequestAccountIds'
- name: page
in: query
description: Page of results to request (standard pagination)
required: false
type: integer
default: 1
x-cds-type: PositiveInteger
- name: page-size
in: query
description: Page size to request. Default is 25 (standard pagination)
required: false
type: integer
default: 25
x-cds-type: PositiveInteger
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseBankingAccountsBalanceList'
422:
description: The request was well formed but was unable to be processed due to business logic specific to the request. For this API a 422 response must be given if any of the account IDs provided are invalid for the consent context
headers:
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseErrorList'
x-scopes:
- bank:accounts.basic:read
x-version: "1"
/banking/accounts/{accountId}/balance:
get:
tags:
- Banking
- Accounts
summary: Get Account Balance
description: Obtain the balance for a single specified account
operationId: getBalance
parameters:
- name: accountId
in: path
description: ID of the specific account requested
required: true
type: string
x-cds-type: ASCIIString
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseBankingAccountsBalanceById'
x-scopes:
- bank:accounts.basic:read
x-version: "1"
/banking/accounts/{accountId}:
get:
tags:
- Banking
- Accounts
summary: Get Account Detail
description: Obtain detailed information on a single account
operationId: getAccountDetail
parameters:
- name: accountId
in: path
description: A tokenised identifier for the account which is unique but not shareable
required: true
type: string
x-cds-type: ASCIIString
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseBankingAccountById'
x-scopes:
- bank:accounts.detail:read
x-version: "1"
/banking/accounts/{accountId}/transactions:
get:
tags:
- Banking
- Accounts
summary: Get Transactions For Account
description: |-
Obtain transactions for a specific account.
Some general notes that apply to all end points that retrieve transactions:
- Where multiple transactions are returned, transactions should be ordered according to effective date in descending order
- As the date and time for a transaction can alter depending on status and transaction type two separate date/times are included in the payload. There are still some scenarios where neither of these time stamps is available. For the purpose of filtering and ordering it is expected that the data holder will use the “effective” date/time which will be defined as:
- Posted date/time if available, then
- Execution date/time if available, then
- A reasonable date/time nominated by the data holder using internal data structures
- For transaction amounts it should be assumed that a negative value indicates a reduction of the available balance on the account while a positive value indicates an increase in the available balance on the account
- For aggregated transactions (ie. groups of sub transactions reported as a single entry for the account) only the aggregated information, with as much consistent information accross the subsidiary transactions as possible, is required to be shared
operationId: getTransactions
parameters:
- name: accountId
in: path
description: ID of the account to get transactions for. Must have previously been returned by one of the account list end points.
required: true
type: string
x-cds-type: ASCIIString
- name: oldest-time
in: query
description: 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 type
required: false
type: string
x-cds-type: DateTimeString
- name: newest-time
in: query
description: 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 type
required: false
type: string
x-cds-type: DateTimeString
- name: min-amount
in: query
description: Filter transactions to only transactions with amounts higher or equal to than this amount
required: false
type: string
x-cds-type: AmountString
- name: max-amount
in: query
description: Filter transactions to only transactions with amounts less than or equal to than this amount
required: false
type: string
x-cds-type: AmountString
- name: text
in: query
description: 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)
required: false
type: string
- name: page
in: query
description: Page of results to request (standard pagination)
required: false
type: integer
default: 1
x-cds-type: PositiveInteger
- name: page-size
in: query
description: Page size to request. Default is 25 (standard pagination)
required: false
type: integer
default: 25
x-cds-type: PositiveInteger
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseBankingTransactionList'
x-scopes:
- bank:transactions:read
x-version: "1"
/banking/accounts/{accountId}/transactions/{transactionId}:
get:
tags:
- Banking
- Accounts
summary: Get Transaction Detail
description: Obtain detailed information on a transaction for a specific account
operationId: getTransactionDetail
parameters:
- name: accountId
in: path
description: ID of the account to get transactions for. Must have previously been returned by one of the account list end points
required: true
type: string
x-cds-type: ASCIIString
- name: transactionId
in: path
description: ID of the transaction obtained from a previous call to one of the other transaction end points
required: true
type: string
x-cds-type: ASCIIString
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseBankingTransactionById'
x-scopes:
- bank:transactions:read
x-version: "1"
/banking/accounts/{accountId}/direct-debits:
get:
tags:
- Banking
- Direct Debits
summary: Get Direct Debits For Account
description: Obtain direct debit authorisations for a specific account
operationId: listDirectDebits
parameters:
- name: accountId
in: path
description: ID of the account to get direct debit authorisations for. Must have previously been returned by one of the account list end points.
required: true
type: string
x-cds-type: ASCIIString
- name: page
in: query
description: Page of results to request (standard pagination)
required: false
type: integer
default: 1
x-cds-type: PositiveInteger
- name: page-size
in: query
description: Page size to request. Default is 25 (standard pagination)
required: false
type: integer
default: 25
x-cds-type: PositiveInteger
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseBankingDirectDebitAuthorisationList'
x-scopes:
- bank:regular_payments:read
x-version: "1"
/banking/accounts/direct-debits:
get:
tags:
- Banking
- Direct Debits
summary: Get Bulk Direct Debits
description: Obtain direct debit authorisations for multiple, filtered accounts
operationId: listDirectDebitsBulk
parameters:
- name: product-category
in: query
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.
required: false
type: string
enum:
- BUSINESS_LOANS
- 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
- name: open-status
in: query
description: Used to filter results according to open/closed status. Values can be OPEN, CLOSED or ALL. If absent then ALL is assumed
required: false
type: string
default: ALL
enum:
- ALL
- CLOSED
- OPEN
- name: is-owned
in: query
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
required: false
type: boolean
x-cds-type: Boolean
- name: page
in: query
description: Page of results to request (standard pagination)
required: false
type: integer
default: 1
x-cds-type: PositiveInteger
- name: page-size
in: query
description: Page size to request. Default is 25 (standard pagination)
required: false
type: integer
default: 25
x-cds-type: PositiveInteger
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseBankingDirectDebitAuthorisationList'
x-scopes:
- bank:regular_payments:read
x-version: "1"
post:
tags:
- Banking
- Direct Debits
summary: Get Direct Debits For Specific Accounts
description: Obtain direct debit authorisations for a specified list of accounts
operationId: listDirectDebitsSpecificAccounts
parameters:
- in: body
name: accountIds
description: Array of specific accountIds to obtain authorisations for
required: true
schema:
$ref: '#/definitions/RequestAccountIds'
- name: page
in: query
description: Page of results to request (standard pagination)
required: false
type: integer
default: 1
x-cds-type: PositiveInteger
- name: page-size
in: query
description: Page size to request. Default is 25 (standard pagination)
required: false
type: integer
default: 25
x-cds-type: PositiveInteger
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseBankingDirectDebitAuthorisationList'
422:
description: The request was well formed but was unable to be processed due to business logic specific to the request. For this API a 422 response must be given if any of the account IDs provided are invalid for the consent context
headers:
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseErrorList'
x-scopes:
- bank:regular_payments:read
x-version: "1"
/banking/accounts/{accountId}/payments/scheduled:
get:
tags:
- Banking
- Scheduled Payments
summary: Get Scheduled Payments for Account
description: Obtain scheduled, outgoing payments for a specific account
operationId: listScheduledPayments
parameters:
- name: accountId
in: path
description: ID of the account to get scheduled payments for. Must have previously been returned by one of the account list end points. The account specified is the source account for the payment
required: true
type: string
x-cds-type: ASCIIString
- name: page
in: query
description: Page of results to request (standard pagination)
required: false
type: integer
default: 1
x-cds-type: PositiveInteger
- name: page-size
in: query
description: Page size to request. Default is 25 (standard pagination)
required: false
type: integer
default: 25
x-cds-type: PositiveInteger
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseBankingScheduledPaymentsList'
x-scopes:
- bank:regular_payments:read
x-version: "1"
/banking/payments/scheduled:
get:
tags:
- Banking
- Scheduled Payments
summary: Get Scheduled Payments Bulk
description: Obtain scheduled payments for multiple, filtered accounts that are the source of funds for the payments
operationId: listScheduledPaymentsBulk
parameters:
- name: product-category
in: query
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.
required: false
type: string
enum:
- BUSINESS_LOANS
- 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
- name: open-status
in: query
description: Used to filter results according to open/closed status. Values can be OPEN, CLOSED or ALL. If absent then ALL is assumed
required: false
type: string
default: ALL
enum:
- ALL
- CLOSED
- OPEN
- name: is-owned
in: query
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
required: false
type: boolean
x-cds-type: Boolean
- name: page
in: query
description: Page of results to request (standard pagination)
required: false
type: integer
default: 1
x-cds-type: PositiveInteger
- name: page-size
in: query
description: Page size to request. Default is 25 (standard pagination)
required: false
type: integer
default: 25
x-cds-type: PositiveInteger
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseBankingScheduledPaymentsList'
x-scopes:
- bank:regular_payments:read
x-version: "1"
post:
tags:
- Banking
- Scheduled Payments
summary: Get Scheduled Payments For Specific Accounts
description: Obtain scheduled payments for a specified list of accounts
operationId: listScheduledPaymentsSpecificAccounts
parameters:
- in: body
name: accountIds
description: Array of specific accountIds to obtain scheduled payments for. The accounts specified are the source of funds for the payments returned
required: true
schema:
$ref: '#/definitions/RequestAccountIds'
- name: page
in: query
description: Page of results to request (standard pagination)
required: false
type: integer
default: 1
x-cds-type: PositiveInteger
- name: page-size
in: query
description: Page size to request. Default is 25 (standard pagination)
required: false
type: integer
default: 25
x-cds-type: PositiveInteger
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseBankingScheduledPaymentsList'
422:
description: The request was well formed but was unable to be processed due to business logic specific to the request. For this API a 422 response must be given if any of the account IDs provided are invalid for the consent context
headers:
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseErrorList'
x-scopes:
- bank:regular_payments:read
x-version: "1"
/banking/payees:
get:
tags:
- Banking
- Payees
summary: Get Payees
description: Obtain a list of pre-registered payees
operationId: listPayees
parameters:
- name: type
in: query
description: 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
required: false
type: string
default: ALL
enum:
- ALL
- BILLER
- DOMESTIC
- INTERNATIONAL
- name: page
in: query
description: Page of results to request (standard pagination)
required: false
type: integer
default: 1
x-cds-type: PositiveInteger
- name: page-size
in: query
description: Page size to request. Default is 25 (standard pagination)
required: false
type: integer
default: 25
x-cds-type: PositiveInteger
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseBankingPayeeList'
x-scopes:
- bank:payees:read
x-version: "1"
/banking/payees/{payeeId}:
get:
tags:
- Banking
- Payees
summary: Get Payee Detail
description: |-
Obtain detailed information on a single payee.
Note that the payee sub-structure should be selected to represent the payment destination only rather than any known characteristics of the payment recipient
operationId: getPayeeDetail
parameters:
- name: payeeId
in: path
description: The ID used to locate the details of a particular payee
required: true
type: string
x-cds-type: ASCIIString
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseBankingPayeeById'
x-scopes:
- bank:payees:read
x-version: "1"
/banking/products:
get:
tags:
- Banking
- Products
summary: Get Products
description: |-
Obtain a list of products that are currently openly offered to the market
Note that the results returned by this end point are expected to be ordered in descending order according to ``lastUpdated``.
### Conventions
In the product reference payloads there are a number of recurring conventions that are explained here, in one place.
#### Arrays Of Features
In the product detail payload there are a number of arrays articulating generic features, constraints, prices, etc. The intent of these arrays is as follows:
- Each element in an array has the same structure so that clients can reliably interpret the payloads
- Each element as a type element that is an enumeration of the specific aspect of a product being described, such as types of fees.
- Each element has a field name [additionalValue](#productfeaturetypedoc). This is a generic field with contents that will vary based on the type of object being described. The contents of this field for the ADDITIONAL_CARDS feature is the number of cards allowed while the contents of this field for the MAX_LIMIT constraint would be the maximum credit limit allowed for the product.
- An element in these arrays of the same type may appear more than once. For instance, a product may offer two separate loyalty programs that the customer can select from. A fixed term mortgage may have different rates for different term lengths.
- An element in these arrays may contain an additionalInfo and additionalInfoUri field. The additionalInfo field is used to provide displayable text clarifying the purpose of the element in some way when the product is presented to a customer. The additionalInfoUri provides a link to externally hosted information specifically relevant to that feature of the product.
- Depending on the type of data being represented there may be additional specific fields.
#### URIs To More Information
As the complexities and nuances of a financial product can not easily be fully expressed in a data structure without a high degree of complexity it is necessary to provide additional reference information that a potential customer can access so that they are fully informed of the features and implications of the product. The payloads for product reference therefore contain numerous fields that are provided to allow the product holder to describe the product more fully using a web page hosted on their online channels.
These URIs do not need to all link to different pages. If desired, they can all link to a single hosted page and use difference HTML anchors to focus on a specific topic such as eligibility or fees.
#### Linkage To Accounts
From the moment that a customer applies for a product and an account is created the account and the product that spawned it will diverge. Rates and features of the product may change and a discount may be negotiated for the account.
For this reason, while productCategory is a common field between accounts and products, there is no specific ID that can be used to link an account to a product within the regime.
Similarly, many of the fields and objects in the product payload will appear in the account detail payload but the structures and semantics are not identical as one refers to a product that can potentially be originated and one refers to an account that actual has been instantiated and created along with the associated decisions inherent in that process.
#### Dates
It is expected that data consumers needing this data will call relatively frequently to ensure the data they have is representative of the current offering from a bank. To minimise the volume and frequency of these calls the ability to set a lastUpdated field with the date and time of the last update to this product is included. A call for a list of products can then be filtered to only return products that have been updated since the last time that data was obtained using the updated-since query parameter.
In addition, the concept of effective date and time has also been included. This allows for a product to be marked for obsolescence, or introduction, from a certain time without the need for an update to show that a product has been changed. The inclusion of these dates also removes the need to represent deleted products in the payload. Products that are no long offered can be marked not effective for a few weeks before they are then removed from the product set as an option entirely.
NOTE: This version must be implemented by **February 2021**
Obsolete versions: [v1](includes/obsolete/get-products-v1.html) [v2](includes/obsolete/get-products-v2.html)
operationId: listProducts
parameters:
- name: effective
in: query
description: 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'
required: false
type: string
default: CURRENT
enum:
- ALL
- CURRENT
- FUTURE
- name: updated-since
in: query
description: Only include products that have been updated after the specified date and time. If absent defaults to include all products
required: false
type: string
x-cds-type: DateTimeString
- name: brand
in: query
description: Filter results based on a specific brand
required: false
type: string
- name: product-category
in: query
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.
required: false
type: string
enum:
- BUSINESS_LOANS
- 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
- name: page
in: query
description: Page of results to request (standard pagination)
required: false
type: integer
default: 1
x-cds-type: PositiveInteger
- name: page-size
in: query
description: Page size to request. Default is 25 (standard pagination)
required: false
type: integer
default: 25
x-cds-type: PositiveInteger
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
schema:
$ref: '#/definitions/ResponseBankingProductList'
x-version: "3"
/banking/products/{productId}:
get:
tags:
- Banking
- Products
summary: Get Product Detail
description: |-
Obtain detailed information on a single product offered openly to the market.
NOTE: This version must be implemented by **February 2021**
Obsolete versions: [v1](includes/obsolete/get-product-detail-v1.html) [v2](includes/obsolete/get-product-detail-v2.html)
operationId: getProductDetail
parameters:
- name: productId
in: path
description: ID of the specific product requested
required: true
type: string
x-cds-type: ASCIIString
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
schema:
$ref: '#/definitions/ResponseBankingProductById'
x-version: "3"
/common/customer:
get:
tags:
- Common
- Customer
summary: Get Customer
description: Obtain basic information on the customer that has authorised the current session
operationId: getCustomer
parameters:
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseCommonCustomer'
x-scopes:
- common:customer.basic:read
x-version: "1"
/common/customer/detail:
get:
tags:
- Common
- Customer
summary: Get Customer Detail
description: Obtain detailed information on the authorised customer within the current session.
operationId: getCustomerDetail
parameters:
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
- name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
- name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
- name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
- name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
x-fapi-interaction-id:
type: string
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
schema:
$ref: '#/definitions/ResponseCommonCustomerDetail'
x-scopes:
- common:customer.detail:read
x-version: "1"
/discovery/status:
get:
tags:
- Common
- Discovery
summary: Get Status
description: Obtain a health check status for the implementation
operationId: getStatus
parameters:
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
schema:
$ref: '#/definitions/ResponseCommonDiscoveryStatus'
x-version: "1"
/discovery/outages:
get:
tags:
- Common
- Discovery
summary: Get Outages
description: Obtain a list of scheduled outages for the implementation
operationId: getOutages
parameters:
- name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
- name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
responses:
200:
description: Success
headers:
x-v:
type: string
description: The [version](#response-headers) of the API end point that the data holder has responded with.
schema:
$ref: '#/definitions/ResponseDiscoveryOutagesList'
x-version: "1"
definitions:
RequestAccountIds:
type: object
required:
- data
properties:
data:
$ref: '#/definitions/RequestAccountIds_data'
meta:
$ref: '#/definitions/Meta'
ResponseBankingProductList:
type: object
required:
- data
- links
- meta
properties:
data:
$ref: '#/definitions/ResponseBankingProductList_data'
links:
$ref: '#/definitions/LinksPaginated'
meta:
$ref: '#/definitions/MetaPaginated'
BankingProductV3:
type: object
required:
- brand
- description
- isTailored
- lastUpdated
- name
- productCategory
- productId
properties:
productId:
type: string
description: 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.
x-cds-type: ASCIIString
effectiveFrom:
type: string
description: The date and time from which this product is effective (ie. is available for origination). Used to enable the articulation of products to the regime before they are available for customers to originate
x-cds-type: DateTimeString
effectiveTo:
type: string
description: 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
x-cds-type: DateTimeString
lastUpdated:
type: string
description: 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)
x-cds-type: DateTimeString
productCategory:
$ref: '#/definitions/BankingProductCategory'
name:
type: string
description: The display name of the product
description:
type: string
description: A description of the product
brand:
type: string
description: 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
brandName:
type: string
description: An optional display name of the brand
applicationUri:
type: string
description: A link to an application web page where this product can be applied for.
x-cds-type: URIString
isTailored:
type: boolean
description: 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
x-cds-type: Boolean
additionalInformation:
$ref: '#/definitions/BankingProductV3_additionalInformation'
cardArt:
type: array
description: An array of card art images
items:
$ref: '#/definitions/BankingProductV3_cardArt'
ResponseBankingProductById:
type: object
required:
- data
- links
properties:
data:
$ref: '#/definitions/BankingProductDetailV3'
links:
$ref: '#/definitions/Links'
meta:
$ref: '#/definitions/Meta'
BankingProductDetailV3:
allOf:
- $ref: '#/definitions/BankingProductV3'
- type: object
properties:
bundles:
type: array
description: 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
items:
$ref: '#/definitions/BankingProductBundle'
features:
type: array
description: Array of features available for the product
items:
$ref: '#/definitions/BankingProductFeature'
constraints:
type: array
description: Constraints on the application for or operation of the product such as minimum balances or limit thresholds
items:
$ref: '#/definitions/BankingProductConstraint'
eligibility:
type: array
description: Eligibility criteria for the product
items:
$ref: '#/definitions/BankingProductEligibility'
fees:
type: array
description: Fees applicable for the product
items:
$ref: '#/definitions/BankingProductFee'
depositRates:
type: array
description: Interest rates available for deposits
items:
$ref: '#/definitions/BankingProductDepositRate'
lendingRates:
type: array
description: Interest rates charged against lending balances
items:
$ref: '#/definitions/BankingProductLendingRateV2'
BankingProductBundle:
type: object
required:
- description
- name
properties:
name:
type: string
description: Name of the bundle
description:
type: string
description: Description of the bundle
additionalInfo:
type: string
description: Display text providing more information on the bundle
additionalInfoUri:
type: string
description: Link to a web page with more information on the bundle criteria and benefits
x-cds-type: URIString
productIds:
type: array
description: Array of product IDs for products included in the bundle that are available via the product end points. 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 end points
items:
type: string
x-cds-type: ASCIIString
BankingProductFeature:
type: object
required:
- featureType
properties:
featureType:
type: string
description: The type of feature described
enum:
- ADDITIONAL_CARDS
- BALANCE_TRANSFERS
- BILL_PAYMENT
- BONUS_REWARDS
- CARD_ACCESS
- COMPLEMENTARY_PRODUCT_DISCOUNTS
- DIGITAL_BANKING
- DIGITAL_WALLET
- DONATE_INTEREST
- FREE_TXNS
- FREE_TXNS_ALLOWANCE
- INSURANCE
- INTEREST_FREE
- INTEREST_FREE_TRANSFERS
- LOYALTY_PROGRAM
- NOTIFICATIONS
- NPP_ENABLED
- NPP_PAYID
- OFFSET
- OTHER
- OVERDRAFT
- REDRAW
- UNLIMITED_TXNS
additionalValue:
type: string
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)
additionalInfo:
type: string
description: Display text providing more information on the feature. Mandatory if the [feature type](#tocSproductfeaturetypedoc) is set to OTHER
additionalInfoUri:
type: string
description: Link to a web page with more information on this feature
x-cds-type: URIString
x-conditional:
- additionalValue
- additionalInfo
BankingProductConstraint:
type: object
required:
- constraintType
properties:
constraintType:
type: string
description: The type of constraint described. See the next section for an overview of valid values and their meaning
enum:
- MAX_BALANCE
- MAX_LIMIT
- MIN_BALANCE
- MIN_LIMIT
- OPENING_BALANCE
additionalValue:
type: string
description: Generic field containing additional information relevant to the [constraintType](#tocSproductconstrainttypedoc) specified. Whether mandatory or not is dependent on the value of [constraintType](#tocSproductconstrainttypedoc)
additionalInfo:
type: string
description: Display text providing more information the constraint
additionalInfoUri:
type: string
description: Link to a web page with more information on the constraint
x-cds-type: URIString
x-conditional:
- additionalValue
BankingProductEligibility:
type: object
required:
- eligibilityType
properties:
eligibilityType:
type: string
description: The type of eligibility criteria described. See the next section for an overview of valid values and their meaning
enum:
- BUSINESS
- EMPLOYMENT_STATUS
- MAX_AGE
- MIN_AGE
- MIN_INCOME
- MIN_TURNOVER
- NATURAL_PERSON
- OTHER
- PENSION_RECIPIENT
- RESIDENCY_STATUS
- STAFF
- STUDENT
additionalValue:
type: string
description: Generic field containing additional information relevant to the [eligibilityType](#tocSproducteligibilitytypedoc) specified. Whether mandatory or not is dependent on the value of [eligibilityType](#tocSproducteligibilitytypedoc)
additionalInfo:
type: string
description: Display text providing more information on the [eligibility](#tocSproducteligibilitytypedoc) criteria. Mandatory if the field is set to OTHER
additionalInfoUri:
type: string
description: Link to a web page with more information on this eligibility criteria
x-cds-type: URIString
x-conditional:
- additionalValue
- additionalInfo
BankingProductFee:
type: object
required:
- feeType
- name
properties:
name:
type: string
description: Name of the fee
feeType:
type: string
description: The type of fee
enum:
- DEPOSIT
- EVENT
- EXIT
- PAYMENT
- PERIODIC
- PURCHASE
- TRANSACTION
- UPFRONT
- VARIABLE
- WITHDRAWAL
amount:
type: string
description: The amount charged for the fee. One of amount, balanceRate, transactionRate and accruedRate is mandatory unless the *feeType* "VARIABLE" is supplied
x-cds-type: AmountString
balanceRate:
type: string
description: 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.
x-cds-type: RateString
transactionRate:
type: string
description: 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
x-cds-type: RateString
accruedRate:
type: string
description: 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
x-cds-type: RateString
accrualFrequency:
type: string
description: 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)
x-cds-type: ExternalRef
currency:
type: string
description: The currency the fee will be charged in. Assumes AUD if absent
x-cds-type: CurrencyString
additionalValue:
type: string
description: Generic field containing additional information relevant to the [feeType](#tocSproductfeetypedoc) specified. Whether mandatory or not is dependent on the value of [feeType](#tocSproductfeetypedoc)
additionalInfo:
type: string
description: Display text providing more information on the fee
additionalInfoUri:
type: string
description: Link to a web page with more information on this fee
x-cds-type: URIString
discounts:
type: array
description: An optional list of discounts to this fee that may be available
items:
$ref: '#/definitions/BankingProductDiscount'
x-conditional:
- additionalValue
- amount
- balanceRate
- transactionRate
- accruedRate
BankingProductDiscount:
type: object
required:
- description
- discountType
properties:
description:
type: string
description: Description of the discount
discountType:
type: string
description: The type of discount. See the next section for an overview of valid values and their meaning
enum:
- BALANCE
- DEPOSITS
- ELIGIBILITY_ONLY
- FEE_CAP
- PAYMENTS
amount:
type: string
description: Dollar value of the discount. One of amount, balanceRate, transactionRate, accruedRate and feeRate is mandatory.
x-cds-type: AmountString
balanceRate:
type: string
description: 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
x-cds-type: RateString
transactionRate:
type: string
description: 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
x-cds-type: RateString
accruedRate:
type: string
description: 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
x-cds-type: RateString
feeRate:
type: string
description: 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
x-cds-type: RateString
additionalValue:
type: string
description: Generic field containing additional information relevant to the [discountType](#tocSproductdiscounttypedoc) specified. Whether mandatory or not is dependent on the value of [discountType](#tocSproductdiscounttypedoc)
additionalInfo:
type: string
description: Display text providing more information on the discount
additionalInfoUri:
type: string
description: Link to a web page with more information on this discount
x-cds-type: URIString
eligibility:
type: array
description: Eligibility constraints that apply to this discount. Mandatory if ``discountType`` is ``ELIGIBILITY_ONLY``.
items:
$ref: '#/definitions/BankingProductDiscountEligibility'
x-conditional:
- accruedRate
- additionalValue
- amount
- balanceRate
- eligibility
- feeRate
- transactionRate
BankingProductDiscountEligibility:
type: object
required:
- discountEligibilityType
properties:
discountEligibilityType:
type: string
description: The type of the specific eligibility constraint for a discount
enum:
- BUSINESS
- EMPLOYMENT_STATUS
- INTRODUCTORY
- MAX_AGE
- MIN_AGE
- MIN_INCOME
- MIN_TURNOVER
- NATURAL_PERSON
- OTHER
- PENSION_RECIPIENT
- RESIDENCY_STATUS
- STAFF
- STUDENT
additionalValue:
type: string
description: Generic field containing additional information relevant to the [discountEligibilityType](#tocSproductdiscounteligibilitydoc) specified. Whether mandatory or not is dependent on the value of [discountEligibilityType](#tocSproductdiscounteligibilitydoc)
additionalInfo:
type: string
description: Display text providing more information on this eligibility constraint. Whether mandatory or not is dependent on the value of [discountEligibilityType](#tocSproductdiscounteligibilitydoc)
additionalInfoUri:
type: string
description: Link to a web page with more information on this eligibility constraint
x-cds-type: URIString
x-conditional:
- additionalInfo
- additionalValue
BankingProductDepositRate:
type: object
required:
- depositRateType
- rate
properties:
depositRateType:
type: string
description: The type of rate (base, bonus, etc). See the next section for an overview of valid values and their meaning
enum:
- BONUS
- BUNDLE_BONUS
- FIXED
- FLOATING
- INTRODUCTORY
- MARKET_LINKED
- VARIABLE
rate:
type: string
description: The rate to be applied
x-cds-type: RateString
calculationFrequency:
type: string
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)
x-cds-type: ExternalRef
applicationFrequency:
type: string
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)
x-cds-type: ExternalRef
tiers:
type: array
description: Rate tiers applicable for this rate
items:
$ref: '#/definitions/BankingProductRateTierV3'
additionalValue:
type: string
description: Generic field containing additional information relevant to the [depositRateType](#tocSproductdepositratetypedoc) specified. Whether mandatory or not is dependent on the value of [depositRateType](#tocSproductdepositratetypedoc)
additionalInfo:
type: string
description: Display text providing more information on the rate
additionalInfoUri:
type: string
description: Link to a web page with more information on this rate
x-cds-type: URIString
x-conditional:
- additionalValue
BankingProductLendingRateV2:
type: object
required:
- lendingRateType
- rate
properties:
lendingRateType:
type: string
description: The type of rate (fixed, variable, etc). See the next section for an overview of valid values and their meaning
enum:
- BUNDLE_DISCOUNT_FIXED
- BUNDLE_DISCOUNT_VARIABLE
- CASH_ADVANCE
- DISCOUNT
- FIXED
- FLOATING
- INTRODUCTORY
- MARKET_LINKED
- PENALTY
- PURCHASE
- VARIABLE
rate:
type: string
description: The rate to be applied
x-cds-type: RateString
comparisonRate:
type: string
description: A comparison rate equivalent for this rate
x-cds-type: RateString
calculationFrequency:
type: string
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)
x-cds-type: ExternalRef
applicationFrequency:
type: string
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)
x-cds-type: ExternalRef
interestPaymentDue:
type: string
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
repaymentType:
type: string
description: Options in place for repayments. If absent, the lending rate is applicable to all repayment types
enum:
- INTEREST_ONLY
- PRINCIPAL_AND_INTEREST
loanPurpose:
type: string
description: The reason for taking out the loan. If absent, the lending rate is applicable to all loan purposes
enum:
- INVESTMENT
- OWNER_OCCUPIED
tiers:
type: array
description: Rate tiers applicable for this rate
items:
$ref: '#/definitions/BankingProductRateTierV3'
additionalValue:
type: string
description: Generic field containing additional information relevant to the [lendingRateType](#tocSproductlendingratetypedoc) specified. Whether mandatory or not is dependent on the value of [lendingRateType](#tocSproductlendingratetypedoc)
additionalInfo:
type: string
description: Display text providing more information on the rate.
additionalInfoUri:
type: string
description: Link to a web page with more information on this rate
x-cds-type: URIString
x-conditional:
- additionalValue
BankingProductRateTierV3:
type: object
required:
- minimumValue
- name
- unitOfMeasure
properties:
name:
type: string
description: A display name for the tier
unitOfMeasure:
type: string
description: The unit of measure that applies to the tierValueMinimum and tierValueMaximum values e.g. a **DOLLAR** amount. **PERCENT** (in the case of loan-to-value ratio or LVR). Tier term period representing a discrete number of **MONTH**'s or **DAY**'s (in the case of term deposit tiers)
enum:
- DAY
- DOLLAR
- MONTH
- PERCENT
minimumValue:
type: number
description: The number of tierUnitOfMeasure units that form the lower bound of the tier. The tier should be inclusive of this value
x-cds-type: Number
maximumValue:
type: number
description: 'The number of tierUnitOfMeasure 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 tierValueMinimum. Where this is the same as the tierValueMinimum 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.'
x-cds-type: Number
rateApplicationMethod:
type: string
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
applicabilityConditions:
$ref: '#/definitions/BankingProductRateCondition'
additionalInfo:
type: string
description: Display text providing more information on the rate tier.
additionalInfoUri:
type: string
description: Link to a web page with more information on this rate tier
x-cds-type: URIString
description: Defines the criteria and conditions for which a rate applies
BankingProductRateCondition:
type: object
properties:
additionalInfo:
type: string
description: Display text providing more information on the condition
additionalInfoUri:
type: string
description: Link to a web page with more information on this condition
x-cds-type: URIString
description: Defines a condition for the applicability of a tiered rate
ResponseBankingAccountList:
type: object
required:
- data
- links
- meta
properties:
data:
$ref: '#/definitions/ResponseBankingAccountList_data'
links:
$ref: '#/definitions/LinksPaginated'
meta:
$ref: '#/definitions/MetaPaginated'
BankingAccount:
type: object
required:
- accountId
- displayName
- maskedNumber
- productCategory
- productName
properties:
accountId:
type: string
description: A unique ID of the account adhering to the standards for ID permanence
x-cds-type: ASCIIString
creationDate:
type: string
description: Date that the account was created (if known)
x-cds-type: DateString
displayName:
type: string
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 type.
nickname:
type: string
description: A customer supplied nick name for the account
openStatus:
type: string
description: Open or closed status for the account. If not present then OPEN is assumed
default: OPEN
enum:
- CLOSED
- OPEN
isOwned:
type: boolean
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
default: true
x-cds-type: Boolean
maskedNumber:
type: string
description: A masked version of the account. Whether BSB/Account Number, Credit Card PAN or another number
x-cds-type: MaskedAccountString
productCategory:
$ref: '#/definitions/BankingProductCategory'
productName:
type: string
description: The unique identifier of the account as defined by the data holder (akin to model number for the account)
ResponseBankingAccountById:
type: object
required:
- data
- links
properties:
data:
$ref: '#/definitions/BankingAccountDetail'
links:
$ref: '#/definitions/Links'
meta:
$ref: '#/definitions/Meta'
BankingAccountDetail:
allOf:
- $ref: '#/definitions/BankingAccount'
- type: object
properties:
bsb:
type: string
description: The unmasked BSB for the account. Is expected to be formatted as digits only with leading zeros included and no punctuation or spaces
accountNumber:
type: string
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
bundleName:
type: string
description: Optional field to indicate if this account is part of a bundle that is providing additional benefit for to the customer
specificAccountUType:
type: string
description: The type of structure to present account specific fields.
enum:
- creditCard
- loan
- termDeposit
termDeposit:
type: array
items:
$ref: '#/definitions/BankingTermDepositAccount'
creditCard:
$ref: '#/definitions/BankingCreditCardAccount'
loan:
$ref: '#/definitions/BankingLoanAccount'
depositRate:
type: string
description: current rate to calculate interest earned being applied to deposit balances as it stands at the time of the API call
x-cds-type: RateString
lendingRate:
type: string
description: The current rate to calculate interest payable being applied to lending balances as it stands at the time of the API call
x-cds-type: RateString
depositRates:
type: array
description: Fully described deposit rates for this account based on the equivalent structure in Product Reference
items:
$ref: '#/definitions/BankingProductDepositRate'
lendingRates:
type: array
description: Fully described deposit rates for this account based on the equivalent structure in Product Reference
items:
$ref: '#/definitions/BankingProductLendingRateV2'
features:
type: array
description: Array of features of the account based on the equivalent structure in Product Reference with the following additional field
items:
type: object
allOf:
- $ref: '#/definitions/BankingProductFeature'
- type: object
properties:
isActivated:
type: boolean
description: True if the feature is already activated and false if the feature is available for activation. Defaults to true if absent. (note this is an additional field appended to the feature object defined in the Product Reference payload)
default: true
x-cds-type: Boolean
fees:
type: array
description: Fees and charges applicable to the account based on the equivalent structure in Product Reference
items:
$ref: '#/definitions/BankingProductFee'
addresses:
type: array
description: The addresses for the account to be used for correspondence
items:
$ref: '#/definitions/CommonPhysicalAddress'
x-conditional:
- termDeposit
- creditCard
- loan
BankingTermDepositAccount:
type: object
required:
- lodgementDate
- maturityDate
- maturityInstructions
properties:
lodgementDate:
type: string
description: The lodgement date of the original deposit
x-cds-type: DateString
maturityDate:
type: string
description: Maturity date for the term deposit
x-cds-type: DateString
maturityAmount:
type: string
description: Amount to be paid upon maturity. If absent it implies the amount to paid is variable and cannot currently be calculated
x-cds-type: AmountString
maturityCurrency:
type: string
description: If absent assumes AUD
x-cds-type: CurrencyString
maturityInstructions:
type: string
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
BankingCreditCardAccount:
type: object
required:
- minPaymentAmount
- paymentDueAmount
- paymentDueDate
properties:
minPaymentAmount:
type: string
description: The minimum payment amount due for the next card payment
x-cds-type: AmountString
paymentDueAmount:
type: string
description: The amount due for the next card payment
x-cds-type: AmountString
paymentCurrency:
type: string
description: If absent assumes AUD
x-cds-type: CurrencyString
paymentDueDate:
type: string
description: Date that the next payment for the card is due
x-cds-type: DateString
BankingLoanAccount:
type: object
required:
- loanEndDate
- nextInstalmentDate
- repaymentFrequency
properties:
originalStartDate:
type: string
description: Optional original start date for the loan
x-cds-type: DateString
originalLoanAmount:
type: string
description: Optional original loan value
x-cds-type: AmountString
originalLoanCurrency:
type: string
description: If absent assumes AUD
x-cds-type: CurrencyString
loanEndDate:
type: string
description: Date that the loan is due to be repaid in full
x-cds-type: DateString
nextInstalmentDate:
type: string
description: Next date that an instalment is required
x-cds-type: DateString
minInstalmentAmount:
type: string
description: Minimum amount of next instalment
x-cds-type: AmountString
minInstalmentCurrency:
type: string
description: If absent assumes AUD
x-cds-type: CurrencyString
maxRedraw:
type: string
description: Maximum amount of funds that can be redrawn. If not present redraw is not available even if the feature exists for the account
x-cds-type: AmountString
maxRedrawCurrency:
type: string
description: If absent assumes AUD
x-cds-type: CurrencyString
minRedraw:
type: string
description: Minimum redraw amount
x-cds-type: AmountString
minRedrawCurrency:
type: string
description: If absent assumes AUD
x-cds-type: CurrencyString
offsetAccountEnabled:
type: boolean
description: Set to true if one or more offset accounts are configured for this loan account
x-cds-type: Boolean
offsetAccountIds:
type: array
description: 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
items:
type: string
x-cds-type: ASCIIString
repaymentType:
type: string
description: Options in place for repayments. If absent defaults to PRINCIPAL_AND_INTEREST
default: PRINCIPAL_AND_INTEREST
enum:
- INTEREST_ONLY
- PRINCIPAL_AND_INTEREST
repaymentFrequency:
type: string
description: The expected or required repayment frequency. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax)
x-cds-type: ExternalRef
ResponseBankingTransactionList:
type: object
required:
- data
- links
- meta
properties:
data:
$ref: '#/definitions/ResponseBankingTransactionList_data'
links:
$ref: '#/definitions/LinksPaginated'
meta:
$ref: '#/definitions/MetaPaginated'
BankingTransaction:
type: object
required:
- accountId
- amount
- description
- isDetailAvailable
- reference
- status
- type
properties:
accountId:
type: string
description: ID of the account for which transactions are provided
x-cds-type: ASCIIString
transactionId:
type: string
description: 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
x-cds-type: ASCIIString
isDetailAvailable:
type: boolean
description: True if extended information is available using the transaction detail end point. False if extended data is not available
x-cds-type: Boolean
type:
type: string
description: The type of the transaction
enum:
- DIRECT_DEBIT
- FEE
- INTEREST_CHARGED
- INTEREST_PAID
- OTHER
- PAYMENT
- TRANSFER_INCOMING
- TRANSFER_OUTGOING
status:
type: string
description: 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
enum:
- PENDING
- POSTED
description:
type: string
description: The transaction description as applied by the financial institution
postingDateTime:
type: string
description: 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
x-cds-type: DateTimeString
valueDateTime:
type: string
description: 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
x-cds-type: DateTimeString
executionDateTime:
type: string
description: The time the transaction was executed by the originating customer, if available
x-cds-type: DateTimeString
amount:
type: string
description: The value of the transaction. Negative values mean money was outgoing from the account
x-cds-type: AmountString
currency:
type: string
description: The currency for the transaction amount. AUD assumed if not present
x-cds-type: CurrencyString
reference:
type: string
description: The reference for the transaction provided by the originating institution. Empty string if no data provided
merchantName:
type: string
description: Name of the merchant for an outgoing payment to a merchant
merchantCategoryCode:
type: string
description: The merchant category code (or MCC) for an outgoing payment to a merchant
billerCode:
type: string
description: BPAY Biller Code for the transaction (if available)
billerName:
type: string
description: Name of the BPAY biller for the transaction (if available)
crn:
type: string
description: BPAY CRN for the transaction (if available).
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. If the contents are are otherwise sensitive, then it should be masked using the rules applicable for the MaskedAccountString common type.
apcaNumber:
type: string
description: 6 Digit APCA number for the initiating institution. The field is fixed-width and padded with leading zeros if applicable.
x-conditional:
- transactionId
- postingDateTime
- crn
ResponseBankingTransactionById:
type: object
required:
- data
- links
properties:
data:
$ref: '#/definitions/BankingTransactionDetail'
links:
$ref: '#/definitions/Links'
meta:
$ref: '#/definitions/Meta'
BankingTransactionDetail:
allOf:
- $ref: '#/definitions/BankingTransaction'
- type: object
required:
- extendedData
properties:
extendedData:
$ref: '#/definitions/BankingTransactionDetail_extendedData'
ResponseBankingAccountsBalanceList:
type: object
required:
- data
- links
- meta
properties:
data:
$ref: '#/definitions/ResponseBankingAccountsBalanceList_data'
links:
$ref: '#/definitions/LinksPaginated'
meta:
$ref: '#/definitions/MetaPaginated'
ResponseBankingAccountsBalanceById:
required:
- data
- links
properties:
data:
$ref: '#/definitions/BankingBalance'
links:
$ref: '#/definitions/Links'
meta:
$ref: '#/definitions/Meta'
BankingBalance:
type: object
required:
- accountId
- availableBalance
- currentBalance
properties:
accountId:
type: string
description: A unique ID of the account adhering to the standards for ID permanence
x-cds-type: ASCIIString
currentBalance:
type: string
description: 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
x-cds-type: AmountString
availableBalance:
type: string
description: Balance representing the amount of funds available for transfer. Assumed to be zero or positive
x-cds-type: AmountString
creditLimit:
type: string
description: Object representing the maximum amount of credit that is available for this account. Assumed to be zero if absent
x-cds-type: AmountString
amortisedLimit:
type: string
description: Object representing the available limit amortised according to payment schedule. Assumed to be zero if absent
x-cds-type: AmountString
currency:
type: string
description: The currency for the balance amounts. If absent assumed to be AUD
x-cds-type: CurrencyString
purses:
type: array
description: Optional array of balances for the account in other currencies. Included to support accounts that support multi-currency purses such as Travel Cards
items:
$ref: '#/definitions/BankingBalancePurse'
BankingBalancePurse:
type: object
required:
- amount
properties:
amount:
type: string
description: The balance available for this additional currency purse
x-cds-type: AmountString
currency:
type: string
description: The currency for the purse
x-cds-type: CurrencyString
ResponseBankingPayeeList:
type: object
required:
- data
- links
- meta
properties:
data:
$ref: '#/definitions/ResponseBankingPayeeList_data'
links:
$ref: '#/definitions/LinksPaginated'
meta:
$ref: '#/definitions/MetaPaginated'
ResponseBankingPayeeById:
type: object
required:
- data
- links
properties:
data:
$ref: '#/definitions/BankingPayeeDetail'
links:
$ref: '#/definitions/Links'
meta:
$ref: '#/definitions/Meta'
BankingPayee:
type: object
required:
- nickname
- payeeId
- type
properties:
payeeId:
type: string
description: ID of the payee adhering to the rules of ID permanence
x-cds-type: ASCIIString
nickname:
type: string
description: 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
description:
type: string
description: A description of the payee provided by the customer
type:
type: string
description: The type of payee. DOMESTIC means a registered payee for domestic payments including NPP. INTERNATIONAL means a registered payee for international payments. BILLER means a registered payee for BPAY
enum:
- BILLER
- DOMESTIC
- INTERNATIONAL
creationDate:
type: string
description: The date the payee was created by the customer
x-cds-type: DateString
BankingPayeeDetail:
allOf:
- $ref: '#/definitions/BankingPayee'
- type: object
required:
- payeeUType
properties:
payeeUType:
type: string
description: Type of object included that describes the payee in detail
enum:
- biller
- domestic
- international
domestic:
$ref: '#/definitions/BankingDomesticPayee'
biller:
$ref: '#/definitions/BankingBillerPayee'
international:
$ref: '#/definitions/BankingInternationalPayee'
x-conditional:
- domestic
- biller
- international
BankingDomesticPayee:
type: object
required:
- payeeAccountUType
properties:
payeeAccountUType:
type: string
description: 'Type of account object included. Valid values are: **account** A standard Australian account defined by BSB/Account Number. **card** A credit or charge card to pay to (note that PANs are masked). **payId** A PayID recognised by NPP'
enum:
- account
- card
- payId
account:
$ref: '#/definitions/BankingDomesticPayeeAccount'
card:
$ref: '#/definitions/BankingDomesticPayeeCard'
payId:
$ref: '#/definitions/BankingDomesticPayeePayId'
x-conditional:
- account
- card
- payId
BankingDomesticPayeeAccount:
type: object
required:
- accountNumber
- bsb
properties:
accountName:
type: string
description: Name of the account to pay to
bsb:
type: string
description: BSB of the account to pay to
accountNumber:
type: string
description: Number of the account to pay to
BankingDomesticPayeeCard:
type: object
required:
- cardNumber
properties:
cardNumber:
type: string
description: Name of the account to pay to
x-cds-type: MaskedPANString
BankingDomesticPayeePayId:
type: object
required:
- identifier
- type
properties:
name:
type: string
description: The name assigned to the PayID by the owner of the PayID
identifier:
type: string
description: The identifier of the PayID (dependent on type)
type:
type: string
description: The type of the PayID
enum:
- ABN
- EMAIL
- ORG_IDENTIFIER
- TELEPHONE
BankingBillerPayee:
type: object
required:
- billerCode
- billerName
properties:
billerCode:
type: string
description: BPAY Biller Code of the Biller
crn:
type: string
description: BPAY CRN of the Biller (if available).
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. If the contents are are otherwise sensitive, then it should be masked using the rules applicable for the MaskedAccountString common type.
billerName:
type: string
description: Name of the Biller
x-conditional:
- crn
BankingInternationalPayee:
type: object
required:
- bankDetails
- beneficiaryDetails
properties:
beneficiaryDetails:
$ref: '#/definitions/BankingInternationalPayee_beneficiaryDetails'
bankDetails:
$ref: '#/definitions/BankingInternationalPayee_bankDetails'
ResponseBankingDirectDebitAuthorisationList:
type: object
required:
- data
- links
- meta
properties:
data:
$ref: '#/definitions/ResponseBankingDirectDebitAuthorisationList_data'
links:
$ref: '#/definitions/LinksPaginated'
meta:
$ref: '#/definitions/MetaPaginated'
BankingDirectDebit:
type: object
required:
- accountId
- authorisedEntity
properties:
accountId:
type: string
description: A unique ID of the account adhering to the standards for ID permanence.
x-cds-type: ASCIIString
authorisedEntity:
$ref: '#/definitions/BankingAuthorisedEntity'
lastDebitDateTime:
type: string
description: The date and time of the last debit executed under this authorisation
x-cds-type: DateTimeString
lastDebitAmount:
type: string
description: The amount of the last debit executed under this authorisation
x-cds-type: AmountString
BankingAuthorisedEntity:
type: object
properties:
description:
type: string
description: Description of the authorised entity derived from previously executed direct debits
financialInstitution:
type: string
description: 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
abn:
type: string
description: Australian Business Number for the authorised entity
acn:
type: string
description: Australian Company Number for the authorised entity
arbn:
type: string
description: Australian Registered Body Number for the authorised entity
ResponseBankingScheduledPaymentsList:
type: object
required:
- data
- links
- meta
properties:
data:
$ref: '#/definitions/ResponseBankingScheduledPaymentsList_data'
links:
$ref: '#/definitions/LinksPaginated'
meta:
$ref: '#/definitions/MetaPaginated'
BankingScheduledPayment:
type: object
required:
- from
- payerReference
- paymentSet
- recurrence
- scheduledPaymentId
- status
properties:
scheduledPaymentId:
type: string
description: A unique ID of the scheduled payment adhering to the standards for ID permanence
x-cds-type: ASCIIString
nickname:
type: string
description: 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
payerReference:
type: string
description: 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
payeeReference:
type: string
description: 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
status:
type: string
description: 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.
enum:
- ACTIVE
- INACTIVE
- SKIP
from:
$ref: '#/definitions/BankingScheduledPaymentFrom'
paymentSet:
type: array
items:
$ref: '#/definitions/BankingScheduledPaymentSet'
recurrence:
$ref: '#/definitions/BankingScheduledPaymentRecurrence'
x-conditional:
- payeeReference
BankingScheduledPaymentSet:
required:
- to
properties:
to:
$ref: '#/definitions/BankingScheduledPaymentTo'
isAmountCalculated:
type: boolean
description: 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
x-cds-type: Boolean
amount:
type: string
description: The amount of the next payment if known. Mandatory unless the isAmountCalculated field is set to true. Must be zero or positive if present
x-cds-type: AmountString
currency:
type: string
description: The currency for the payment. AUD assumed if not present
x-cds-type: CurrencyString
description: 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
x-conditional:
- amount
BankingScheduledPaymentTo:
type: object
required:
- toUType
properties:
toUType:
type: string
description: The type of object provided that specifies the destination of the funds for the payment.
enum:
- accountId
- biller
- domestic
- international
- payeeId
accountId:
type: string
description: Present if toUType is set to accountId. Indicates that the payment is to another account that is accessible under the current consent
x-cds-type: ASCIIString
payeeId:
type: string
description: Present if toUType is set to payeeId. Indicates that the payment is to registered payee that can be accessed using the payee end point. 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
x-cds-type: ASCIIString
nickname:
type: string
description: 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
payeeReference:
type: string
description: 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.
domestic:
$ref: '#/definitions/BankingDomesticPayee'
biller:
$ref: '#/definitions/BankingBillerPayee'
international:
$ref: '#/definitions/BankingInternationalPayee'
description: Object containing details of the destination of the payment. Used to specify a variety of payment destination types
x-conditional:
- accountId
- payeeId
- domestic
- biller
- international
- nickname
- payeeReference
BankingScheduledPaymentFrom:
type: object
required:
- accountId
properties:
accountId:
type: string
description: ID of the account that is the source of funds for the payment
x-cds-type: ASCIIString
description: 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
BankingScheduledPaymentRecurrence:
type: object
required:
- recurrenceUType
properties:
nextPaymentDate:
type: string
description: The date of the next payment under the recurrence schedule
x-cds-type: DateString
recurrenceUType:
type: string
description: The type of recurrence used to define the schedule
enum:
- eventBased
- intervalSchedule
- lastWeekDay
- onceOff
onceOff:
$ref: '#/definitions/BankingScheduledPaymentRecurrenceOnceOff'
intervalSchedule:
$ref: '#/definitions/BankingScheduledPaymentRecurrenceIntervalSchedule'
lastWeekDay:
$ref: '#/definitions/BankingScheduledPaymentRecurrenceLastWeekday'
eventBased:
$ref: '#/definitions/BankingScheduledPaymentRecurrenceEventBased'
description: Object containing the detail of the schedule for the payment
x-conditional:
- onceOff
- intervalSchedule
- lastWeekDay
- eventBased
BankingScheduledPaymentRecurrenceOnceOff:
type: object
required:
- paymentDate
properties:
paymentDate:
type: string
description: The scheduled date for the once off payment
x-cds-type: DateString
description: Indicates that the payment is a once off payment on a specific future date. Mandatory if recurrenceUType is set to onceOff
BankingScheduledPaymentRecurrenceIntervalSchedule:
type: object
required:
- intervals
properties:
finalPaymentDate:
type: string
description: 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
x-cds-type: DateString
paymentsRemaining:
type: integer
example: 1
description: 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
x-cds-type: PositiveInteger
nonBusinessDayTreatment:
type: string
description: Enumerated field giving the treatment where a scheduled payment date is not a business day. If absent assumed to be ON.
**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.
**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.
**ON** - If a scheduled payment date is a non-business day the payment will be made on that day regardless.
**ONLY** - Payments only occur on business days. If a scheduled payment date is a non-business day the payment will be ignored
default: ON
enum:
- AFTER
- BEFORE
- ON
- ONLY
intervals:
type: array
description: 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
items:
$ref: '#/definitions/BankingScheduledPaymentInterval'
description: Indicates that the schedule of payments is defined by a series of intervals. Mandatory if recurrenceUType is set to intervalSchedule
BankingScheduledPaymentInterval:
type: object
required:
- interval
properties:
interval:
type: string
description: 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
x-cds-type: ExternalRef
dayInInterval:
type: string
description: 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.
x-cds-type: ExternalRef
BankingScheduledPaymentRecurrenceLastWeekday:
type: object
required:
- interval
- lastWeekDay
properties:
finalPaymentDate:
type: string
description: 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
x-cds-type: DateString
paymentsRemaining:
type: integer
example: 1
description: 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
x-cds-type: PositiveInteger
interval:
type: string
description: 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
x-cds-type: ExternalRef
lastWeekDay:
type: string
description: The weekDay specified. The payment will occur on the last occurrence of this weekday in the interval.
enum:
- FRI
- MON
- SAT
- SUN
- THU
- TUE
- WED
nonBusinessDayTreatment:
type: string
description: Enumerated field giving the treatment where a scheduled payment date is not a business day. If absent assumed to be ON.
**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.
**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.
**ON** - If a scheduled payment date is a non-business day the payment will be made on that day regardless.
**ONLY** - Payments only occur on business days. If a scheduled payment date is a non-business day the payment will be ignored
default: ON
enum:
- AFTER
- BEFORE
- ON
- ONLY
description: 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
BankingScheduledPaymentRecurrenceEventBased:
type: object
required:
- description
properties:
description:
type: string
description: Description of the event and conditions that will result in the payment. Expected to be formatted for display to a customer
description: Indicates that the schedule of payments is defined according to an external event that cannot be predetermined. Mandatory if recurrenceUType is set to eventBased
ResponseCommonDiscoveryStatus:
type: object
required:
- data
- links
properties:
data:
$ref: '#/definitions/ResponseCommonDiscoveryStatus_data'
links:
$ref: '#/definitions/Links'
meta:
$ref: '#/definitions/Meta'
ResponseDiscoveryOutagesList:
type: object
required:
- data
- links
properties:
data:
$ref: '#/definitions/ResponseDiscoveryOutagesList_data'
links:
$ref: '#/definitions/Links'
meta:
$ref: '#/definitions/Meta'
DiscoveryOutage:
type: object
required:
- duration
- explanation
- outageTime
properties:
outageTime:
type: string
description: Date and time that the outage is scheduled to begin
x-cds-type: DateTimeString
duration:
type: string
description: Planned duration of the outage. Formatted according to [ISO 8601 Durations](https://en.wikipedia.org/wiki/ISO_8601#Durations) (excludes recurrence syntax)
x-cds-type: ExternalRef
isPartial:
type: boolean
description: Flag that indicates, if present and set to true, that the outage is only partial meaning that only a subset of normally available end points will be affected by the outage
x-cds-type: Boolean
explanation:
type: string
description: Provides an explanation of the current outage that can be displayed to an end customer
ResponseCommonCustomer:
type: object
required:
- data
- links
properties:
data:
$ref: '#/definitions/ResponseCommonCustomer_data'
links:
$ref: '#/definitions/Links'
meta:
$ref: '#/definitions/Meta'
x-conditional:
- person
- organisation
ResponseCommonCustomerDetail:
type: object
required:
- data
- links
properties:
data:
$ref: '#/definitions/ResponseCommonCustomerDetail_data'
links:
$ref: '#/definitions/Links'
meta:
$ref: '#/definitions/Meta'
x-conditional:
- person
- organisation
CommonPerson:
type: object
required:
- lastName
- middleNames
properties:
lastUpdateTime:
type: string
description: The date and time that this record was last updated by the customer. If no update has occurred then this date should reflect the initial creation date for the data
x-cds-type: DateTimeString
firstName:
type: string
description: For people with single names this field need not be present. The single name should be in the lastName field
lastName:
type: string
description: For people with single names the single name should be in this field
middleNames:
type: array
description: Field is mandatory but array may be empty
items:
type: string
prefix:
type: string
description: Also known as title or salutation. The prefix to the name (e.g. Mr, Mrs, Ms, Miss, Sir, etc)
suffix:
type: string
description: Used for a trailing suffix to the name (e.g. Jr)
occupationCode:
type: string
description: Value is a valid [ANZSCO](http://www.abs.gov.au/ANZSCO) Standard Occupation classification code. If the occupation code held by the data holder is not one of the supported [ANZSCO](http://www.abs.gov.au/ANZSCO) versions, then it must not be supplied.
x-cds-type: ExternalRef
occupationCodeVersion:
type: string
description: The applicable [ANZSCO](http://www.abs.gov.au/ANZSCO) release version of the occupation code provided. Mandatory if an ``occupationCode`` is supplied. If ``occupationCode`` is supplied but ``occupationCodeVersion`` is absent, default is ``ANZSCO_1220.0_2013_V1.2``
default: ANZSCO_1220.0_2013_V1.2
enum:
- ANZSCO_1220.0_2006_V1.0
- ANZSCO_1220.0_2006_V1.1
- ANZSCO_1220.0_2013_V1.2
- ANZSCO_1220.0_2013_V1.3
x-conditional:
- occupationCodeVersion
CommonPersonDetail:
allOf:
- $ref: '#/definitions/CommonPerson'
- type: object
required:
- emailAddresses
- phoneNumbers
- physicalAddresses
properties:
phoneNumbers:
type: array
description: Array is mandatory but may be empty if no phone numbers are held
items:
$ref: '#/definitions/CommonPhoneNumber'
emailAddresses:
type: array
description: May be empty
items:
$ref: '#/definitions/CommonEmailAddress'
physicalAddresses:
type: array
description: Must contain at least one address. One and only one address may have the purpose of REGISTERED. Zero or one, and no more than one, record may have the purpose of MAIL. If zero then the REGISTERED address is to be used for mail
items:
$ref: '#/definitions/CommonPhysicalAddressWithPurpose'
CommonOrganisation:
type: object
required:
- agentLastName
- agentRole
- businessName
- organisationType
properties:
lastUpdateTime:
type: string
description: The date and time that this record was last updated by the customer. If no update has occurred then this date should reflect the initial creation date for the data
x-cds-type: DateTimeString
agentFirstName:
type: string
description: The first name of the individual providing access on behalf of the organisation. For people with single names this field need not be present. The single name should be in the lastName field
agentLastName:
type: string
description: The last name of the individual providing access on behalf of the organisation. For people with single names the single name should be in this field
agentRole:
type: string
description: The role of the individual identified as the agent who is providing authorisation. Expected to be used for display. Default to Unspecified if the role is not known
businessName:
type: string
description: Name of the organisation
legalName:
type: string
description: Legal name, if different to the business name
shortName:
type: string
description: Short name used for communication, if different to the business name
abn:
type: string
description: Australian Business Number for the organisation
acn:
type: string
description: Australian Company Number for the organisation. Required only if an ACN is applicable for the organisation type
isACNCRegistered:
type: boolean
description: True if registered with the ACNC. False if not. Absent or null if not confirmed.
x-cds-type: Boolean
industryCode:
type: string
description: A valid [ANZSIC](http://www.abs.gov.au/ANZSIC) code for the organisation. If the industry code held by the data holder is not one of the supported [ANZSIC](http://www.abs.gov.au/ANZSIC) versions, then it must not be supplied.
x-cds-type: ExternalRef
industryCodeVersion:
type: string
description: The applicable [ANZSIC](http://www.abs.gov.au/ANZSIC) release version of the industry code provided. Should only be supplied if ``industryCode`` is also supplied. If ``industryCode`` is supplied but ``industryCodeVersion`` is absent, default is ``ANZSIC_1292.0_2006_V2.0``
default: ANZSIC_1292.0_2006_V2.0
enum:
- ANZSIC_1292.0_2006_V1.0
- ANZSIC_1292.0_2006_V2.0
organisationType:
type: string
description: Legal organisation type
enum:
- COMPANY
- GOVERNMENT_ENTITY
- OTHER
- PARTNERSHIP
- SOLE_TRADER
- TRUST
registeredCountry:
type: string
description: Enumeration with values from [ISO 3166 Alpha-3](https://www.iso.org/iso-3166-country-codes.html) country codes. Assumed to be AUS if absent
x-cds-type: ExternalRef
establishmentDate:
type: string
description: The date the organisation described was established
x-cds-type: DateString
x-conditional:
- industryCodeVersion
CommonOrganisationDetail:
allOf:
- $ref: '#/definitions/CommonOrganisation'
- type: object
required:
- physicalAddresses
properties:
physicalAddresses:
type: array
description: Must contain at least one address. One and only one address may have the purpose of REGISTERED. Zero or one, and no more than one, record may have the purpose of MAIL. If zero then the REGISTERED address is to be used for mail
items:
$ref: '#/definitions/CommonPhysicalAddressWithPurpose'
CommonPhoneNumber:
type: object
required:
- fullNumber
- number
- purpose
properties:
isPreferred:
type: boolean
description: May be true for one and only one entry to indicate the preferred phone number. Assumed to be 'false' if not present
x-cds-type: Boolean
purpose:
type: string
description: The purpose of the number as specified by the customer
enum:
- HOME
- INTERNATIONAL
- MOBILE
- OTHER
- UNSPECIFIED
- WORK
countryCode:
type: string
description: If absent, assumed to be Australia (+61). The + should be included
areaCode:
type: string
description: Required for non Mobile Phones, if field is present and refers to Australian code - the leading 0 should be omitted.
number:
type: string
description: The actual phone number, with leading zeros as appropriate
extension:
type: string
description: An extension number (if applicable)
fullNumber:
type: string
description: Fully formatted phone number with country code, area code, number and extension incorporated. Formatted according to section 5.1.4. of [RFC 3966](https://www.ietf.org/rfc/rfc3966.txt)
x-cds-type: ExternalRef
x-conditional:
- areaCode
CommonEmailAddress:
type: object
required:
- address
- purpose
properties:
isPreferred:
type: boolean
description: May be true for one and only one email record in the collection. Denotes the default email address
x-cds-type: Boolean
purpose:
type: string
description: The purpose for the email, as specified by the customer (Enumeration)
enum:
- HOME
- OTHER
- UNSPECIFIED
- WORK
address:
type: string
description: A correctly formatted email address, as defined by the addr_spec format in [RFC 5322](https://www.ietf.org/rfc/rfc5322.txt)
x-cds-type: ExternalRef
CommonPhysicalAddressWithPurpose:
allOf:
- $ref: '#/definitions/CommonPhysicalAddress'
- type: object
required:
- purpose
properties:
purpose:
type: string
description: Enumeration of values indicating the purpose of the physical address
enum:
- MAIL
- OTHER
- PHYSICAL
- REGISTERED
- WORK
CommonPhysicalAddress:
type: object
required:
- addressUType
properties:
addressUType:
type: string
description: The type of address object present
enum:
- paf
- simple
simple:
$ref: '#/definitions/CommonSimpleAddress'
paf:
$ref: '#/definitions/CommonPAFAddress'
x-conditional:
- simple
- paf
CommonSimpleAddress:
type: object
required:
- addressLine1
- city
- state
properties:
mailingName:
type: string
description: Name of the individual or business formatted for inclusion in an address used for physical mail
addressLine1:
type: string
description: First line of the standard address object
addressLine2:
type: string
description: Second line of the standard address object
addressLine3:
type: string
description: Third line of the standard address object
postcode:
type: string
description: Mandatory for Australian addresses
city:
type: string
description: Name of the city or locality
state:
type: string
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
country:
type: string
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.
default: AUS
x-cds-type: ExternalRef
x-conditional:
- postcode
CommonPAFAddress:
type: object
required:
- localityName
- postcode
- state
properties:
dpid:
type: string
description: Unique identifier for an address as defined by Australia Post. Also known as Delivery Point Identifier
thoroughfareNumber1:
type: integer
description: Thoroughfare number for a property (first number in a property ranged address)
x-cds-type: PositiveInteger
thoroughfareNumber1Suffix:
type: string
description: Suffix for the thoroughfare number. Only relevant is thoroughfareNumber1 is populated
thoroughfareNumber2:
type: integer
description: Second thoroughfare number (only used if the property has a ranged address eg 23-25)
x-cds-type: PositiveInteger
thoroughfareNumber2Suffix:
type: string
description: Suffix for the second thoroughfare number. Only relevant is thoroughfareNumber2 is populated
flatUnitType:
type: string
description: Type of flat or unit for the address
flatUnitNumber:
type: string
description: Unit number (including suffix, if applicable)
floorLevelType:
type: string
description: Type of floor or level for the address
floorLevelNumber:
type: string
description: Floor or level number (including alpha characters)
lotNumber:
type: string
description: Allotment number for the address
buildingName1:
type: string
description: Building/Property name 1
buildingName2:
type: string
description: Building/Property name 2
streetName:
type: string
description: The name of the street
streetType:
type: string
description: The street type. Valid enumeration defined by Australia Post PAF code file
streetSuffix:
type: string
description: The street type suffix. Valid enumeration defined by Australia Post PAF code file
postalDeliveryType:
type: string
description: Postal delivery type. (eg. PO BOX). Valid enumeration defined by Australia Post PAF code file
postalDeliveryNumber:
type: integer
description: Postal delivery number if the address is a postal delivery type
x-cds-type: PositiveInteger
postalDeliveryNumberPrefix:
type: string
description: Postal delivery number prefix related to the postal delivery number
postalDeliveryNumberSuffix:
type: string
description: Postal delivery number suffix related to the postal delivery number
localityName:
type: string
description: Full name of locality
postcode:
type: string
description: Postcode for the locality
state:
type: string
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
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)
Links:
type: object
required:
- self
properties:
self:
type: string
description: Fully qualified link that generated the current response document
x-cds-type: URIString
Meta:
type: object
LinksPaginated:
type: object
required:
- self
properties:
self:
type: string
description: Fully qualified link that generated the current response document
x-cds-type: URIString
first:
type: string
description: URI to the first page of this set. Mandatory if this response is not the first page
x-cds-type: URIString
prev:
type: string
description: URI to the previous page of this set. Mandatory if this response is not the first page
x-cds-type: URIString
next:
type: string
description: URI to the next page of this set. Mandatory if this response is not the last page
x-cds-type: URIString
last:
type: string
description: URI to the last page of this set. Mandatory if this response is not the last page
x-cds-type: URIString
x-conditional:
- prev
- next
- first
- last
MetaPaginated:
type: object
required:
- totalPages
- totalRecords
properties:
totalRecords:
type: integer
description: The total number of records in the full set. See [pagination](#pagination).
x-cds-type: NaturalNumber
totalPages:
type: integer
description: The total number of pages in the full set. See [pagination](#pagination).
x-cds-type: NaturalNumber
ResponseErrorList:
type: object
required:
- errors
properties:
errors:
type: array
items:
$ref: '#/definitions/ResponseErrorList_errors'
BankingProductCategory:
type: string
description: The category to which a product or account belongs. See [here](#product-categories) for more details
enum:
- BUSINESS_LOANS
- 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
RequestAccountIds_data:
required:
- accountIds
properties:
accountIds:
type: array
items:
type: string
description: Array of specific accountIds to obtain authorisations for
x-cds-type: ASCIIString
ResponseBankingProductList_data:
required:
- products
properties:
products:
type: array
description: The list of products returned. If the filter results in an empty set then this array may have no records
items:
$ref: '#/definitions/BankingProductV3'
BankingProductV3_additionalInformation:
properties:
overviewUri:
type: string
description: General overview of the product
x-cds-type: URIString
termsUri:
type: string
description: Terms and conditions for the product
x-cds-type: URIString
eligibilityUri:
type: string
description: Eligibility rules and criteria for the product
x-cds-type: URIString
feesAndPricingUri:
type: string
description: Description of fees, pricing, discounts, exemptions and bonuses for the product
x-cds-type: URIString
bundleUri:
type: string
description: Description of a bundle that this product can be part of
x-cds-type: URIString
description: Object that contains links to additional information on specific topics
BankingProductV3_cardArt:
required:
- imageUri
properties:
title:
type: string
description: Display label for the specific image
imageUri:
type: string
description: 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 [RFC 2397](https://tools.ietf.org/html/rfc2397)
x-cds-type: URIString
ResponseBankingAccountList_data:
required:
- accounts
properties:
accounts:
type: array
description: The list of accounts returned. If the filter results in an empty set then this array may have no records
items:
$ref: '#/definitions/BankingAccount'
ResponseBankingTransactionList_data:
required:
- transactions
properties:
transactions:
type: array
items:
$ref: '#/definitions/BankingTransaction'
BankingTransactionDetail_extendedData_x2p101Payload:
required:
- extendedDescription
properties:
extendedDescription:
type: string
description: An extended string description. Only present if specified by the extensionUType field
endToEndId:
type: string
description: An end to end ID for the payment created at initiation
purposeCode:
type: string
description: Purpose of the payment. Format is defined by NPP standards for the x2p1.01 overlay service
BankingTransactionDetail_extendedData:
required:
- service
properties:
payer:
type: string
description: Label of the originating payer. Mandatory for inbound payment
payee:
type: string
description: 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)
extensionUType:
type: string
description: Optional extended data provided specific to transaction originated via NPP
enum:
- x2p101Payload
x2p101Payload:
$ref: '#/definitions/BankingTransactionDetail_extendedData_x2p101Payload'
service:
type: string
description: 'Identifier of the applicable overlay service. Valid values are: X2P1.01'
enum:
- X2P1.01
ResponseBankingAccountsBalanceList_data:
required:
- balances
properties:
balances:
type: array
description: The list of balances returned
items:
$ref: '#/definitions/BankingBalance'
ResponseBankingPayeeList_data:
required:
- payees
properties:
payees:
type: array
description: The list of payees returned
items:
$ref: '#/definitions/BankingPayee'
BankingInternationalPayee_beneficiaryDetails:
required:
- country
properties:
name:
type: string
description: Name of the beneficiary
country:
type: string
description: Country where the beneficiary resides. A valid [ISO 3166 Alpha-3](https://www.iso.org/iso-3166-country-codes.html) country code
x-cds-type: ExternalRef
message:
type: string
description: Response message for the payment
BankingInternationalPayee_bankDetails_bankAddress:
required:
- address
- name
properties:
name:
type: string
description: Name of the recipient Bank
address:
type: string
description: Address of the recipient Bank
BankingInternationalPayee_bankDetails:
required:
- accountNumber
- country
properties:
country:
type: string
description: Country of the recipient institution. A valid [ISO 3166 Alpha-3](https://www.iso.org/iso-3166-country-codes.html) country code
x-cds-type: ExternalRef
accountNumber:
type: string
description: Account Targeted for payment
bankAddress:
$ref: '#/definitions/BankingInternationalPayee_bankDetails_bankAddress'
beneficiaryBankBIC:
type: string
description: Swift bank code. Aligns with standard [ISO 9362](https://www.iso.org/standard/60390.html)
x-cds-type: ExternalRef
fedWireNumber:
type: string
description: Number for Fedwire payment (Federal Reserve Wire Network)
sortCode:
type: string
description: Sort code used for account identification in some jurisdictions
chipNumber:
type: string
description: Number for the Clearing House Interbank Payments System
routingNumber:
type: string
description: International bank routing number
legalEntityIdentifier:
type: string
description: The legal entity identifier (LEI) for the beneficiary. Aligns with [ISO 17442](https://www.iso.org/standard/59771.html)
x-cds-type: ExternalRef
ResponseBankingDirectDebitAuthorisationList_data:
required:
- directDebitAuthorisations
properties:
directDebitAuthorisations:
type: array
description: The list of authorisations returned
items:
$ref: '#/definitions/BankingDirectDebit'
ResponseBankingScheduledPaymentsList_data:
required:
- scheduledPayments
properties:
scheduledPayments:
type: array
description: The list of scheduled payments to return
items:
$ref: '#/definitions/BankingScheduledPayment'
ResponseCommonDiscoveryStatus_data:
required:
- status
- updateTime
properties:
status:
type: string
description: Enumeration with values. OK (implementation is fully functional). PARTIAL_FAILURE (one or more end points are unexpectedly unavailable). UNAVAILABLE (the full implementation is unexpectedly unavailable). SCHEDULED_OUTAGE (an advertised outage is in effect)
enum:
- OK
- PARTIAL_FAILURE
- SCHEDULED_OUTAGE
- UNAVAILABLE
explanation:
type: string
description: Provides an explanation of the current outage that can be displayed to an end customer. Mandatory if the status property is any value other than OK
detectionTime:
type: string
description: The date and time that the current outage was detected. Should only be present if the status property is PARTIAL_FAILURE or UNAVAILABLE
x-cds-type: DateTimeString
expectedResolutionTime:
type: string
description: The date and time that full service is expected to resume (if known). Should not be present if the status property has a value of OK.
x-cds-type: DateTimeString
updateTime:
type: string
description: The date and time that this status was last updated by the Data Holder.
x-cds-type: DateTimeString
ResponseDiscoveryOutagesList_data:
required:
- outages
properties:
outages:
type: array
description: List of scheduled outages. Property is mandatory but may contain and empty list if no outages are scheduled
items:
$ref: '#/definitions/DiscoveryOutage'
ResponseCommonCustomer_data:
required:
- customerUType
properties:
customerUType:
type: string
description: The type of customer object that is present
enum:
- organisation
- person
person:
$ref: '#/definitions/CommonPerson'
organisation:
$ref: '#/definitions/CommonOrganisation'
ResponseCommonCustomerDetail_data:
required:
- customerUType
properties:
customerUType:
type: string
description: The type of customer object that is present
enum:
- organisation
- person
person:
$ref: '#/definitions/CommonPersonDetail'
organisation:
$ref: '#/definitions/CommonOrganisationDetail'
ResponseErrorList_errors:
required:
- code
- detail
- title
properties:
code:
type: string
description: 'Must be one of the following: 0001 – Account not able to be found'
title:
type: string
description: 'Must be one of the following: Invalid account'
detail:
type: string
description: ID of the account not found
meta:
type: object
description: Optional additional data for specific error types
properties: {}
parameters:
RequestHeader_x-v:
name: x-v
in: header
description: Version of the API end point 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)
required: true
type: string
RequestHeader_x-min-v:
name: x-min-v
in: header
description: Minimum version of the API end point 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.
required: false
type: string
RequestHeader_x-fapi-interaction-id:
name: x-fapi-interaction-id
in: header
description: An [RFC4122](https://tools.ietf.org/html/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] UUID value is required to be provided in the response header to track the interaction.
required: false
type: string
RequestHeader_x-fapi-auth-date:
name: x-fapi-auth-date
in: header
description: The time when the customer last logged in to the data recipient. Required for all resource calls (customer present and unattended). Not to be included for unauthenticated calls.
required: false
type: string
RequestHeader_x-fapi-customer-ip-address:
name: x-fapi-customer-ip-address
in: header
description: The customer's original IP address if the customer is currently logged in to the data recipient. The presence of this header indicates that the API is being called in a customer present context. Not to be included for unauthenticated calls.
required: false
type: string
RequestHeader_x-cds-client-headers:
name: x-cds-client-headers
in: header
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. Mandatory for customer present calls. Not required for unattended or unauthenticated calls.
required: false
type: string
x-cds-type: Base64
ParamAccountOpenStatus:
name: open-status
in: query
description: Used to filter results according to open/closed status. Values can be OPEN, CLOSED or ALL. If absent then ALL is assumed
required: false
type: string
default: ALL
enum:
- ALL
- CLOSED
- OPEN
ParamProductCategory:
name: product-category
in: query
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.
required: false
type: string
enum:
- BUSINESS_LOANS
- 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
ParamAccountIsOwned:
name: is-owned
in: query
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
required: false
type: boolean
x-cds-type: Boolean
ParamPage:
name: page
in: query
description: Page of results to request (standard pagination)
required: false
type: integer
default: 1
x-cds-type: PositiveInteger
ParamPageSize:
name: page-size
in: query
description: Page size to request. Default is 25 (standard pagination)
required: false
type: integer
default: 25
x-cds-type: PositiveInteger
ParamTransactionNewestTime:
name: newest-time
in: query
description: 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 type
required: false
type: string
x-cds-type: DateTimeString
ParamTransactionOldestTime:
name: oldest-time
in: query
description: 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 type
required: false
type: string
x-cds-type: DateTimeString
ParamTransactionMinAmount:
name: min-amount
in: query
description: Filter transactions to only transactions with amounts higher or equal to than this amount
required: false
type: string
x-cds-type: AmountString
ParamTransactionMaxAmount:
name: max-amount
in: query
description: Filter transactions to only transactions with amounts less than or equal to than this amount
required: false
type: string
x-cds-type: AmountString
ParamTransactionText:
name: text
in: query
description: 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)
required: false
type: string