swagger: '2.0' info: title: Account and Transaction API Specification description: Swagger for Account and Transaction API Specification termsOfService: 'https://www.openbanking.org.uk/terms' contact: name: Service Desk email: ServiceDesk@openbanking.org.uk license: name: open-licence url: 'https://www.openbanking.org.uk/open-licence' version: v1.1.0 basePath: /open-banking/v1.1 schemes: - https produces: - application/json; charset=utf-8 paths: /account-requests: post: summary: Create an account request description: Create an account request operationId: CreateAccountRequest consumes: - application/json; charset=utf-8 produces: - application/json; charset=utf-8 parameters: - name: body in: body description: Create an Account Request required: true schema: title: Account Request POST request description: Allows setup of an account access request type: object properties: Data: title: Data description: Allows setup of an account access request type: object properties: Permissions: description: 'Specifies the Open Banking account request types. This is a list of the data clusters being consented by the PSU, and requested for authorisation with the ASPSP.' type: array items: description: 'Specifies the Open Banking account request types. This is a list of the data clusters being consented by the PSU, and requested for authorisation with the ASPSP.' type: string enum: - ReadAccountsBasic - ReadAccountsDetail - ReadBalances - ReadBeneficiariesBasic - ReadBeneficiariesDetail - ReadDirectDebits - ReadProducts - ReadStandingOrdersBasic - ReadStandingOrdersDetail - ReadTransactionsBasic - ReadTransactionsCredits - ReadTransactionsDebits - ReadTransactionsDetail minProperties: 1 additionalProperties: false ExpirationDateTime: description: |- Specified date and time the permissions will expire. If this is not populated, the permissions will be open ended. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time TransactionFromDateTime: description: >- Specified start date and time for the transaction query period. If this is not populated, the start date will be open ended, and data will be returned from the earliest available transaction. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time TransactionToDateTime: description: >- Specified end date and time for the transaction query period. If this is not populated, the end date will be open ended, and data will be returned to the latest available transaction. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time additionalProperties: false required: - Permissions Risk: title: Risk type: object description: The Risk payload is sent by the initiating party to the ASPSP. It is used to specify additional details for risk scoring for Account Info. properties: {} additionalProperties: false additionalProperties: false required: - Data - Risk - &ref_0 in: header name: x-fapi-financial-id type: string required: true description: The unique id of the ASPSP to which the request is issued. The unique id will be issued by OB. - &ref_1 in: header name: x-fapi-customer-last-logged-time type: string required: false description: |- The time when the PSU last logged in with the TPP. All dates in the HTTP headers are represented as RFC 7231 Full Dates. An example is below: Sun, 10 Sep 2017 19:43:31 UTC pattern: '^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \d{2} (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \d{4} \d{2}:\d{2}:\d{2} (GMT|UTC)$' - &ref_2 in: header name: x-fapi-customer-ip-address type: string required: false description: The PSU's IP address if the PSU is currently logged in with the TPP. - &ref_3 in: header name: x-fapi-interaction-id type: string required: false description: An RFC4122 UID used as a correlation id. - &ref_4 in: header name: Authorization type: string required: true description: 'An Authorisation Token as per https://tools.ietf.org/html/rfc6750' - in: header name: x-jws-signature type: string required: true description: Header containing a detached JWS signature of the body of the payload. responses: '201': description: Account Request resource successfully created schema: title: Account Request POST response type: object properties: Data: title: Data description: Account Request Response type: object properties: AccountRequestId: description: Unique identification as assigned to identify the account request resource. type: string minLength: 1 maxLength: 128 Status: description: Specifies the status of the account request resource. type: string enum: - Authorised - AwaitingAuthorisation - Rejected - Revoked CreationDateTime: description: |- Date and time at which the resource was created. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time Permissions: description: 'Specifies the Open Banking account request types. This is a list of the data clusters being consented by the PSU, and requested for authorisation with the ASPSP.' type: array items: description: 'Specifies the Open Banking account request types. This is a list of the data clusters being consented by the PSU, and requested for authorisation with the ASPSP.' type: string enum: - ReadAccountsBasic - ReadAccountsDetail - ReadBalances - ReadBeneficiariesBasic - ReadBeneficiariesDetail - ReadDirectDebits - ReadProducts - ReadStandingOrdersBasic - ReadStandingOrdersDetail - ReadTransactionsBasic - ReadTransactionsCredits - ReadTransactionsDebits - ReadTransactionsDetail minProperties: 1 additionalProperties: false ExpirationDateTime: description: |- Specified date and time the permissions will expire. If this is not populated, the permissions will be open ended. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time TransactionFromDateTime: description: >- Specified start date and time for the transaction query period. If this is not populated, the start date will be open ended, and data will be returned from the earliest available transaction. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time TransactionToDateTime: description: >- Specified end date and time for the transaction query period. If this is not populated, the end date will be open ended, and data will be returned to the latest available transaction. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time additionalProperties: false required: - AccountRequestId - CreationDateTime - Permissions Risk: title: Risk type: object description: The Risk payload is sent by the initiating party to the ASPSP. It is used to specify additional details for risk scoring for Account Info. properties: {} additionalProperties: false Links: title: Links type: object description: Links relevant to the payload properties: Self: type: string format: uri First: type: string format: uri Prev: type: string format: uri Next: type: string format: uri Last: type: string format: uri additionalProperties: false required: - Self Meta: title: MetaData type: object description: Meta Data relevant to the payload properties: TotalPages: type: integer format: int32 FirstAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time LastAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time additionalProperties: false additionalProperties: false required: - Data - Risk - Links - Meta headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': &ref_5 description: Bad Request '401': &ref_6 description: Unauthorized '403': &ref_7 description: Forbidden '405': &ref_8 description: Method Not Allowed '406': &ref_9 description: Not Acceptable '429': &ref_10 description: Too Many Requests headers: Retry-After: description: Number in seconds to wait type: integer '500': &ref_11 description: Internal Server Error security: - TPPOAuth2Security: - tpp_client_credential '/account-requests/{AccountRequestId}': get: summary: Get an account request description: Get an account request operationId: GetAccountRequest produces: - application/json; charset=utf-8 parameters: - &ref_12 name: AccountRequestId in: path description: Unique identification as assigned by the ASPSP to uniquely identify the account request resource. required: true type: string - *ref_0 - *ref_1 - *ref_2 - *ref_3 - *ref_4 responses: '200': description: Account Request resource successfully retrieved schema: title: Account Request GET response type: object properties: Data: title: Data description: Account Request Response type: object properties: AccountRequestId: description: Unique identification as assigned to identify the account request resource. type: string minLength: 1 maxLength: 128 Status: description: Specifies the status of the account request resource. type: string enum: - Authorised - AwaitingAuthorisation - Rejected - Revoked CreationDateTime: description: |- Date and time at which the resource was created. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time Permissions: description: 'Specifies the Open Banking account request types. This is a list of the data clusters being consented by the PSU, and requested for authorisation with the ASPSP.' type: array items: description: 'Specifies the Open Banking account request types. This is a list of the data clusters being consented by the PSU, and requested for authorisation with the ASPSP.' type: string enum: - ReadAccountsBasic - ReadAccountsDetail - ReadBalances - ReadBeneficiariesBasic - ReadBeneficiariesDetail - ReadDirectDebits - ReadProducts - ReadStandingOrdersBasic - ReadStandingOrdersDetail - ReadTransactionsBasic - ReadTransactionsCredits - ReadTransactionsDebits - ReadTransactionsDetail minProperties: 1 additionalProperties: false ExpirationDateTime: description: |- Specified date and time the permissions will expire. If this is not populated, the permissions will be open ended. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time TransactionFromDateTime: description: >- Specified start date and time for the transaction query period. If this is not populated, the start date will be open ended, and data will be returned from the earliest available transaction. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time TransactionToDateTime: description: >- Specified end date and time for the transaction query period. If this is not populated, the end date will be open ended, and data will be returned to the latest available transaction. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time additionalProperties: false required: - AccountRequestId - CreationDateTime - Permissions Risk: title: Risk type: object description: The Risk payload is sent by the initiating party to the ASPSP. It is used to specify additional details for risk scoring for Account Info. properties: {} additionalProperties: false Links: title: Links type: object description: Links relevant to the payload properties: Self: type: string format: uri First: type: string format: uri Prev: type: string format: uri Next: type: string format: uri Last: type: string format: uri additionalProperties: false required: - Self Meta: title: MetaData type: object description: Meta Data relevant to the payload properties: TotalPages: type: integer format: int32 FirstAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time LastAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time additionalProperties: false additionalProperties: false required: - Data - Risk - Links - Meta headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - TPPOAuth2Security: - tpp_client_credential delete: summary: Delete an account request description: Delete an account request operationId: DeleteAccountRequest produces: - application/json; charset=utf-8 parameters: - *ref_12 - *ref_4 - in: header name: x-fapi-financial-id type: string required: true description: The unique id of the ASPSP to which the request is issued. The unique id will be issued by OB. responses: '204': description: Account Request resource successfully deleted headers: x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - TPPOAuth2Security: - tpp_client_credential /accounts: get: summary: Get Accounts description: Get a list of accounts operationId: GetAccounts produces: - application/json; charset=utf-8 parameters: - *ref_0 - *ref_1 - *ref_2 - *ref_3 - *ref_4 responses: '200': description: Accounts successfully retrieved schema: title: Account GET response type: object properties: Data: title: Data type: object description: Data properties: Account: title: Account description: Account type: array items: type: object title: Account description: Account properties: AccountId: description: A unique and immutable identifier used to identify the account resource. This identifier has no meaning to the account owner. type: string minLength: 1 maxLength: 40 Currency: description: >- Identification of the currency in which the account is held. Usage: Currency should only be used in case one and the same account number covers several currencies and the initiating party needs to identify which currency needs to be used for settlement on the account. type: string pattern: '^[A-Z]{3,3}$' Nickname: description: 'The nickname of the account, assigned by the account owner in order to provide an additional means of identification of the account.' type: string minLength: 1 maxLength: 70 Account: description: Provides the details to identify an account. type: object properties: SchemeName: description: 'Name of the identification scheme, in a coded form as published in an external list.' type: string enum: - IBAN - SortCodeAccountNumber Identification: description: Identification assigned by an institution to identify an account. This identification is known by the account owner. type: string minLength: 1 maxLength: 34 Name: description: >- Name of the account, as assigned by the account servicing institution, in agreement with the account owner in order to provide an additional means of identification of the account. Usage: The account name is different from the account owner name. The account name is used in certain user communities to provide a means of identifying the account, in addition to the account owner's identity and the account number. type: string minLength: 1 maxLength: 70 SecondaryIdentification: description: >- This is secondary identification of the account, as assigned by the account servicing institution. This can be used by building societies to additionally identify accounts with a roll number (in addition to a sort code and account number combination). type: string minLength: 1 maxLength: 34 required: - SchemeName - Identification additionalProperties: false Servicer: description: >- Party that manages the account on behalf of the account owner, that is manages the registration and booking of entries on the account, calculates balances on the account and provides information about the account. type: object properties: SchemeName: description: 'Name of the identification scheme, in a coded form as published in an external list.' type: string enum: - BICFI Identification: description: Unique and unambiguous identification of the servicing institution. type: string minLength: 1 maxLength: 35 required: - SchemeName - Identification additionalProperties: false additionalProperties: false required: - AccountId - Currency additionalProperties: false Links: title: Links type: object description: Links relevant to the payload properties: Self: type: string format: uri First: type: string format: uri Prev: type: string format: uri Next: type: string format: uri Last: type: string format: uri additionalProperties: false required: - Self Meta: title: MetaData type: object description: Meta Data relevant to the payload properties: TotalPages: type: integer format: int32 FirstAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time LastAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time additionalProperties: false additionalProperties: false required: - Data - Links - Meta headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - PSUOAuth2Security: - accounts '/accounts/{AccountId}': get: summary: Get Account description: Get an account operationId: GetAccount produces: - application/json; charset=utf-8 parameters: - &ref_13 name: AccountId in: path description: A unique identifier used to identify the account resource. required: true type: string - *ref_0 - *ref_1 - *ref_2 - *ref_3 - *ref_4 responses: '200': description: Account resource successfully retrieved schema: title: Account GET response type: object properties: Data: title: Data description: Data type: object properties: Account: title: Account description: Account type: array items: type: object title: Account description: Account properties: AccountId: description: A unique and immutable identifier used to identify the account resource. This identifier has no meaning to the account owner. type: string minLength: 1 maxLength: 40 Currency: description: >- Identification of the currency in which the account is held. Usage: Currency should only be used in case one and the same account number covers several currencies and the initiating party needs to identify which currency needs to be used for settlement on the account. type: string pattern: '^[A-Z]{3,3}$' Nickname: description: 'The nickname of the account, assigned by the account owner in order to provide an additional means of identification of the account.' type: string minLength: 1 maxLength: 70 Account: description: Provides the details to identify an account. type: object properties: SchemeName: description: 'Name of the identification scheme, in a coded form as published in an external list.' type: string enum: - IBAN - SortCodeAccountNumber Identification: description: Identification assigned by an institution to identify an account. This identification is known by the account owner. type: string minLength: 1 maxLength: 34 Name: description: >- Name of the account, as assigned by the account servicing institution, in agreement with the account owner in order to provide an additional means of identification of the account. Usage: The account name is different from the account owner name. The account name is used in certain user communities to provide a means of identifying the account, in addition to the account owner's identity and the account number. type: string minLength: 1 maxLength: 70 SecondaryIdentification: description: >- This is secondary identification of the account, as assigned by the account servicing institution. This can be used by building societies to additionally identify accounts with a roll number (in addition to a sort code and account number combination). type: string minLength: 1 maxLength: 34 required: - SchemeName - Identification additionalProperties: false Servicer: description: >- Party that manages the account on behalf of the account owner, that is manages the registration and booking of entries on the account, calculates balances on the account and provides information about the account. type: object properties: SchemeName: description: 'Name of the identification scheme, in a coded form as published in an external list.' type: string enum: - BICFI Identification: description: Unique and unambiguous identification of the servicing institution. type: string minLength: 1 maxLength: 35 required: - SchemeName - Identification additionalProperties: false additionalProperties: false required: - AccountId - Currency additionalProperties: false Links: title: Links type: object description: Links relevant to the payload properties: Self: type: string format: uri First: type: string format: uri Prev: type: string format: uri Next: type: string format: uri Last: type: string format: uri additionalProperties: false required: - Self Meta: title: MetaData type: object description: Meta Data relevant to the payload properties: TotalPages: type: integer format: int32 FirstAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time LastAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time additionalProperties: false additionalProperties: false required: - Data - Links - Meta headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - PSUOAuth2Security: - accounts '/accounts/{AccountId}/transactions': get: summary: Get Account Transactions description: Get transactions related to an account operationId: GetAccountTransactions produces: - application/json; charset=utf-8 parameters: - *ref_13 - &ref_17 in: query name: fromBookingDateTime type: string format: date-time description: |- The UTC ISO 8601 Date Time to filter transactions FROM NB Time component is optional - set to 00:00:00 for just Date. The parameter must NOT have a timezone set - &ref_18 in: query name: toBookingDateTime type: string format: date-time description: |- The UTC ISO 8601 Date Time to filter transactions TO NB Time component is optional - set to 00:00:00 for just Date. The parameter must NOT have a timezone set - *ref_0 - *ref_1 - *ref_2 - *ref_3 - *ref_4 responses: '200': description: Account Transactions successfully retrieved schema: &ref_19 title: Account Transactions GET response type: object properties: Data: title: Data description: Data type: object properties: Transaction: title: Transaction description: Transaction type: array items: type: object properties: AccountId: description: A unique and immutable identifier used to identify the account resource. This identifier has no meaning to the account owner. type: string minLength: 1 maxLength: 40 TransactionId: description: Unique identifier for the transaction within an servicing institution. This identifier is both unique and immutable. type: string minLength: 1 maxLength: 40 TransactionReference: description: 'Unique reference for the transaction. This reference is optionally populated, and may as an example be the FPID in the Faster Payments context.' type: string minLength: 1 maxLength: 35 Amount: description: Amount of money in the cash entry. type: object properties: Amount: type: string pattern: '^\d{1,13}\.\d{1,5}$' Currency: description: >- A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 'Codes for the representation of currencies and funds' type: string pattern: '^[A-Z]{3,3}$' required: - Amount - Currency additionalProperties: false CreditDebitIndicator: description: Indicates whether the transaction is a credit or a debit entry. type: string enum: - Credit - Debit Status: description: Status of a transaction entry on the books of the account servicer. type: string enum: - Booked - Pending BookingDateTime: description: >- Date and time when a transaction entry is posted to an account on the account servicer's books. Usage: Booking date is the expected booking date, unless the status is booked, in which case it is the actual booking date. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time ValueDateTime: 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 entry. Usage: If entry status is pending and value date is present, then the value date refers to an expected/requested value date. For entries subject to availability/float and for which availability information is provided, the value date must not be used. In this case the availability component identifies the number of availability days. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time TransactionInformation: description: 'Further details of the transaction. This is the transaction narrative, which is unstructured text.' type: string minLength: 1 maxLength: 500 AddressLine: description: 'Information that locates and identifies a specific address, as defined by postal services, that is presented in free format text.' type: string minLength: 1 maxLength: 70 BankTransactionCode: description: Set of elements used to fully identify the type of underlying transaction resulting in an entry. type: object properties: Code: description: Specifies the family within a domain. type: string SubCode: description: Specifies the sub-product family within a specific family. type: string required: - Code - SubCode additionalProperties: false ProprietaryBankTransactionCode: description: Set of elements to fully identify a proprietary bank transaction code. type: object properties: Code: description: Proprietary bank transaction code to identify the underlying transaction. type: string minLength: 1 maxLength: 35 Issuer: description: Identification of the issuer of the proprietary bank transaction code. type: string minLength: 1 maxLength: 35 required: - Code additionalProperties: false Balance: description: >- Set of elements used to define the balance as a numerical representation of the net increases and decreases in an account after a transaction entry is applied to the account. type: object properties: Amount: description: Amount of money of the cash balance after a transaction entry is applied to the account.. type: object properties: Amount: type: string pattern: '^\d{1,13}\.\d{1,5}$' Currency: description: >- A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 'Codes for the representation of currencies and funds' type: string pattern: '^[A-Z]{3,3}$' required: - Amount - Currency additionalProperties: false CreditDebitIndicator: description: 'Indicates whether the balance is a credit or a debit balance. Usage: A zero balance is considered to be a credit balance.' type: string enum: - Credit - Debit Type: description: 'Balance type, in a coded form.' type: string enum: - ClosingAvailable - ClosingBooked - Expected - ForwardAvailable - Information - InterimAvailable - InterimBooked - OpeningAvailable - OpeningBooked - PreviouslyClosedBooked additionalProperties: false required: - Amount - CreditDebitIndicator - Type MerchantDetails: description: Details of the merchant involved in the transaction. type: object properties: MerchantName: description: Name by which the merchant is known. type: string minLength: 1 maxLength: 350 MerchantCategoryCode: description: 'Category code conform to ISO 18245, related to the type of services or goods the merchant provides for the transaction.' type: string minLength: 3 maxLength: 4 additionalProperties: false additionalProperties: false required: - AccountId - Amount - CreditDebitIndicator - Status - BookingDateTime minItems: 1 additionalProperties: false Links: title: Links type: object description: Links relevant to the payload properties: Self: type: string format: uri First: type: string format: uri Prev: type: string format: uri Next: type: string format: uri Last: type: string format: uri additionalProperties: false required: - Self Meta: title: MetaData type: object description: Meta Data relevant to the payload properties: TotalPages: type: integer format: int32 FirstAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time LastAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time additionalProperties: false additionalProperties: false required: - Data - Links - Meta headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - PSUOAuth2Security: - accounts '/accounts/{AccountId}/beneficiaries': get: summary: Get Account Beneficiaries description: Get Beneficiaries related to an account operationId: GetAccountBeneficiaries produces: - application/json; charset=utf-8 parameters: - *ref_13 - *ref_0 - *ref_1 - *ref_2 - *ref_3 - *ref_4 responses: '200': description: Account Beneficiaries successfully retrieved schema: &ref_16 title: Beneficiaries GET response type: object properties: Data: title: Data type: object description: Data properties: Beneficiary: title: Beneficiary description: Beneficiary type: array items: type: object title: Beneficiary description: Beneficiary properties: AccountId: description: A unique and immutable identifier used to identify the account resource. This identifier has no meaning to the account owner. type: string minLength: 1 maxLength: 40 BeneficiaryId: description: A unique and immutable identifier used to identify the beneficiary resource. This identifier has no meaning to the account owner. type: string minLength: 1 maxLength: 40 Reference: description: >- Unique reference, as assigned by the creditor, to unambiguously refer to the payment transaction. Usage: If available, the initiating party should provide this reference in the structured remittance information, to enable reconciliation by the creditor upon receipt of the amount of money. If the business context requires the use of a creditor reference or a payment remit identification, and only one identifier can be passed through the end-to-end chain, the creditor's reference or payment remittance identification should be quoted in the end-to-end transaction identification. type: string minLength: 1 maxLength: 35 Servicer: description: >- Party that manages the account on behalf of the account owner, that is manages the registration and booking of entries on the account, calculates balances on the account and provides information about the account. This is the servicer of the beneficiary account. type: object properties: SchemeName: description: 'Name of the identification scheme, in a coded form as published in an external list.' type: string enum: - BICFI Identification: description: Unique and unambiguous identification of the servicing institution. type: string minLength: 1 maxLength: 35 required: - SchemeName - Identification additionalProperties: false CreditorAccount: description: Provides the details to identify the beneficiary account. type: object properties: SchemeName: description: 'Name of the identification scheme, in a coded form as published in an external list.' type: string enum: - IBAN - SortCodeAccountNumber Identification: description: Identification assigned by an institution to identify an account. This identification is known by the account owner. type: string minLength: 1 maxLength: 34 Name: description: >- Name of the account, as assigned by the account servicing institution, in agreement with the account owner in order to provide an additional means of identification of the account. Usage: The account name is different from the account owner name. The account name is used in certain user communities to provide a means of identifying the account, in addition to the account owner's identity and the account number. type: string minLength: 1 maxLength: 70 SecondaryIdentification: description: >- This is secondary identification of the account, as assigned by the account servicing institution. This can be used by building societies to additionally identify accounts with a roll number (in addition to a sort code and account number combination). type: string minLength: 1 maxLength: 34 required: - SchemeName - Identification additionalProperties: false additionalProperties: false additionalProperties: false Links: title: Links type: object description: Links relevant to the payload properties: Self: type: string format: uri First: type: string format: uri Prev: type: string format: uri Next: type: string format: uri Last: type: string format: uri additionalProperties: false required: - Self Meta: title: MetaData type: object description: Meta Data relevant to the payload properties: TotalPages: type: integer format: int32 FirstAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time LastAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time additionalProperties: false additionalProperties: false required: - Data - Links - Meta headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - PSUOAuth2Security: - accounts '/accounts/{AccountId}/balances': get: summary: Get Account Balances description: Get Balances related to an account operationId: GetAccountBalances produces: - application/json; charset=utf-8 parameters: - *ref_13 - *ref_0 - *ref_1 - *ref_2 - *ref_3 - *ref_4 responses: '200': description: Account Beneficiaries successfully retrieved schema: &ref_20 title: Balances GET response type: object properties: Data: title: Data description: Data type: object properties: Balance: title: Balance description: Balance type: array items: type: object title: Balance description: Balance properties: AccountId: description: A unique and immutable identifier used to identify the account resource. This identifier has no meaning to the account owner. type: string minLength: 1 maxLength: 40 Amount: description: Amount of money of the cash balance. type: object properties: Amount: type: string pattern: '^\d{1,13}\.\d{1,5}$' Currency: description: >- A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 'Codes for the representation of currencies and funds' type: string pattern: '^[A-Z]{3,3}$' required: - Amount - Currency additionalProperties: false CreditDebitIndicator: description: 'Indicates whether the balance is a credit or a debit balance. Usage: A zero balance is considered to be a credit balance.' type: string enum: - Credit - Debit Type: description: 'Balance type, in a coded form.' type: string enum: - ClosingAvailable - ClosingBooked - Expected - ForwardAvailable - Information - InterimAvailable - InterimBooked - OpeningAvailable - OpeningBooked - PreviouslyClosedBooked DateTime: description: |- Indicates the date (and time) of the balance. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time CreditLine: type: array items: type: object properties: Included: description: >- Indicates whether or not the credit line is included in the balance of the account. Usage: If not present, credit line is not included in the balance amount of the account. type: boolean Amount: description: Active Or Historic Currency Code and Amount type: object properties: Amount: type: string pattern: '^\d{1,13}\.\d{1,5}$' Currency: description: >- A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 'Codes for the representation of currencies and funds' type: string pattern: '^[A-Z]{3,3}$' required: - Amount - Currency additionalProperties: false Type: description: 'Limit type, in a coded form.' type: string enum: - Pre-Agreed - Emergency - Temporary additionalProperties: false required: - Included additionalProperties: false required: - AccountId - Amount - CreditDebitIndicator - DateTime - Type minItems: 1 additionalProperties: false Links: title: Links type: object description: Links relevant to the payload properties: Self: type: string format: uri First: type: string format: uri Prev: type: string format: uri Next: type: string format: uri Last: type: string format: uri additionalProperties: false required: - Self Meta: title: MetaData type: object description: Meta Data relevant to the payload properties: TotalPages: type: integer format: int32 FirstAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time LastAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time additionalProperties: false additionalProperties: false required: - Data - Links - Meta headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - PSUOAuth2Security: - accounts '/accounts/{AccountId}/direct-debits': get: summary: Get Account Direct Debits description: Get Direct Debits related to an account operationId: GetAccountDirectDebits produces: - application/json; charset=utf-8 parameters: - *ref_13 - *ref_0 - *ref_1 - *ref_2 - *ref_3 - *ref_4 responses: '200': description: Account Direct Debits successfully retrieved schema: &ref_15 title: Account GET response type: object properties: Data: title: Data type: object description: Data properties: DirectDebit: title: DirectDebit description: DirectDebit type: array items: type: object title: DirectDebit description: Direct Debit properties: AccountId: description: A unique and immutable identifier used to identify the account resource. This identifier has no meaning to the account owner. type: string minLength: 1 maxLength: 40 DirectDebitId: description: A unique and immutable identifier used to identify the direct debit resource. This identifier has no meaning to the account owner. type: string minLength: 1 maxLength: 40 MandateIdentification: description: Direct Debit reference. For AUDDIS service users provide Core Reference. For non AUDDIS service users provide Core reference if possible or last used reference. type: string minLength: 1 maxLength: 35 DirectDebitStatusCode: description: Specifies the status of the direct debit in code form. type: string enum: - Active - Inactive Name: description: Name of Service User type: string minLength: 1 maxLength: 70 PreviousPaymentDateTime: description: |- Date of most recent direct debit collection. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time PreviousPaymentAmount: description: The amount of the most recent direct debit collection. type: object properties: Amount: type: string pattern: '^\d{1,13}\.\d{1,5}$' Currency: description: >- A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 'Codes for the representation of currencies and funds' type: string pattern: '^[A-Z]{3,3}$' required: - Amount - Currency additionalProperties: false required: - AccountId - MandateIdentification - Name additionalProperties: false additionalProperties: false Links: title: Links type: object description: Links relevant to the payload properties: Self: type: string format: uri First: type: string format: uri Prev: type: string format: uri Next: type: string format: uri Last: type: string format: uri additionalProperties: false required: - Self Meta: title: MetaData type: object description: Meta Data relevant to the payload properties: TotalPages: type: integer format: int32 FirstAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time LastAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time additionalProperties: false additionalProperties: false required: - Data - Links - Meta headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - PSUOAuth2Security: - accounts '/accounts/{AccountId}/standing-orders': get: summary: Get Account Standing Orders description: Get Standing Orders related to an account operationId: GetAccountStandingOrders produces: - application/json; charset=utf-8 parameters: - *ref_13 - *ref_0 - *ref_1 - *ref_2 - *ref_3 - *ref_4 responses: '200': description: Account Standing Orders successfully retrieved schema: &ref_14 title: Standing Orders GET response type: object properties: Data: title: Data description: Data type: object properties: StandingOrder: title: StandingOrder description: StandingOrder type: array items: type: object title: StandingOrder description: Standing Order properties: AccountId: description: The date on which the first payment for a Standing Order schedule will be made. type: string minLength: 1 maxLength: 40 StandingOrderId: description: A unique and immutable identifier used to identify the standing order resource. This identifier has no meaning to the account owner. type: string minLength: 1 maxLength: 40 Frequency: description: | EvryDay - Every day EvryWorkgDay - Every working day IntrvlWkDay - An interval specified in weeks (01 to 09), and the day within the week (01 to 07) WkInMnthDay - A monthly interval, specifying the week of the month (01 to 05) and day within the week (01 to 07) IntrvlMnthDay - An interval specified in months (between 01 to 06, 12, 24), specifying the day within the month (-5 to -1, 1 to 31) QtrDay - Quarterly (either ENGLISH, SCOTTISH, or RECEIVED) Patterns: EvryDay (ScheduleCode) EvryWorkgDay (ScheduleCode) IntrvlWkDay:IntervalInWeeks:DayInWeek (ScheduleCode + IntervalInWeeks + DayInWeek) WkInMnthDay:WeekInMonth:DayInWeek (ScheduleCode + WeekInMonth + DayInWeek) IntrvlMnthDay:IntervalInMonths:DayInMonth (ScheduleCode + IntervalInMonths + DayInMonth) QtrDay: + either (ENGLISH, SCOTTISH or RECEIVED) ScheduleCode + QuarterDay The regular expression for this element combines five smaller versions for each permitted pattern. To aid legibility - the components are presented individually here: EvryDay EvryWorkgDay IntrvlWkDay:0[1-9]:0[1-7] WkInMnthDay:0[1-5]:0[1-7] IntrvlMnthDay:(0[1-6]|12|24):(-0[1-5]|0[1-9]|[12][0-9]|3[01]) QtrDay:(ENGLISH|SCOTTISH|RECEIVED) type: string pattern: >- ^(EvryDay)$|^(EvryWorkgDay)$|^(IntrvlWkDay:0[1-9]:0[1-7])$|^(WkInMnthDay:0[1-5]:0[1-7])$|^(IntrvlMnthDay:(0[1-6]|12|24):(-0[1-5]|0[1-9]|[12][0-9]|3[01]))$|^(QtrDay:(ENGLISH|SCOTTISH|RECEIVED))$ Reference: description: >- Unique reference, as assigned by the creditor, to unambiguously refer to the payment transaction. Usage: If available, the initiating party should provide this reference in the structured remittance information, to enable reconciliation by the creditor upon receipt of the amount of money. If the business context requires the use of a creditor reference or a payment remit identification, and only one identifier can be passed through the end-to-end chain, the creditor's reference or payment remittance identification should be quoted in the end-to-end transaction identification. type: string minLength: 1 maxLength: 35 FirstPaymentDateTime: description: |- The date on which the first payment for a Standing Order schedule will be made. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time FirstPaymentAmount: description: The amount of the first Standing Order type: object properties: Amount: type: string pattern: '^\d{1,13}\.\d{1,5}$' Currency: description: >- A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 'Codes for the representation of currencies and funds' type: string pattern: '^[A-Z]{3,3}$' required: - Amount - Currency additionalProperties: false NextPaymentDateTime: description: |- The date on which the next payment for a Standing Order schedule will be made. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time NextPaymentAmount: description: The amount of the next Standing Order type: object properties: Amount: type: string pattern: '^\d{1,13}\.\d{1,5}$' Currency: description: >- A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 'Codes for the representation of currencies and funds' type: string pattern: '^[A-Z]{3,3}$' required: - Amount - Currency additionalProperties: false FinalPaymentDateTime: description: |- The date on which the final payment for a Standing Order schedule will be made. All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time FinalPaymentAmount: description: The amount of the final Standing Order type: object properties: Amount: type: string pattern: '^\d{1,13}\.\d{1,5}$' Currency: description: >- A code allocated to a currency by a Maintenance Agency under an international identification scheme, as described in the latest edition of the international standard ISO 4217 'Codes for the representation of currencies and funds' type: string pattern: '^[A-Z]{3,3}$' required: - Amount - Currency additionalProperties: false Servicer: description: >- Party that manages the account on behalf of the account owner, that is manages the registration and booking of entries on the account, calculates balances on the account and provides information about the account. This is the servicer of the beneficiary account type: object properties: SchemeName: description: 'Name of the identification scheme, in a coded form as published in an external list.' type: string enum: - BICFI Identification: description: Unique and unambiguous identification of the servicing institution. type: string minLength: 1 maxLength: 35 required: - SchemeName - Identification additionalProperties: false CreditorAccount: description: Provides the details to identify the beneficiary account. type: object properties: SchemeName: description: 'Name of the identification scheme, in a coded form as published in an external list.' type: string enum: - IBAN - SortCodeAccountNumber Identification: description: Identification assigned by an institution to identify an account. This identification is known by the account owner. type: string minLength: 1 maxLength: 34 Name: description: >- Name of the account, as assigned by the account servicing institution, in agreement with the account owner in order to provide an additional means of identification of the account. Usage: The account name is different from the account owner name. The account name is used in certain user communities to provide a means of identifying the account, in addition to the account owner's identity and the account number. type: string minLength: 1 maxLength: 70 SecondaryIdentification: description: >- This is secondary identification of the account, as assigned by the account servicing institution. This can be used by building societies to additionally identify accounts with a roll number (in addition to a sort code and account number combination). type: string minLength: 1 maxLength: 34 required: - SchemeName - Identification additionalProperties: false required: - AccountId - Frequency - NextPaymentDateTime - NextPaymentAmount additionalProperties: false additionalProperties: false Links: title: Links type: object description: Links relevant to the payload properties: Self: type: string format: uri First: type: string format: uri Prev: type: string format: uri Next: type: string format: uri Last: type: string format: uri additionalProperties: false required: - Self Meta: title: MetaData type: object description: Meta Data relevant to the payload properties: TotalPages: type: integer format: int32 FirstAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time LastAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time additionalProperties: false additionalProperties: false required: - Data - Links - Meta headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - PSUOAuth2Security: - accounts '/accounts/{AccountId}/product': get: summary: Get Account Product description: Get Product related to an account operationId: GetAccountProduct produces: - application/json; charset=utf-8 parameters: - *ref_13 - *ref_0 - *ref_1 - *ref_2 - *ref_3 - *ref_4 responses: '200': description: Account Product successfully retrieved schema: title: Product GET response type: object properties: Data: title: Data type: object description: Data properties: Product: title: Product description: Product type: array items: type: object title: Product description: Product properties: AccountId: description: A unique and immutable identifier used to identify the account resource. This identifier has no meaning to the account owner. type: string minLength: 1 maxLength: 40 ProductIdentifier: description: Identifier within the parent organisation for the product. Must be unique in the organisation. type: string ProductType: description: Descriptive code for the product category. type: string enum: - BCA - PCA ProductName: description: The name of the product used for marketing purposes from a customer perspective. I.e. what the customer would recognise. type: string SecondaryProductIdentifier: description: Identifier within the parent organisation for the product. Must be unique in the organisation. type: string additionalProperties: false required: - AccountId - ProductIdentifier - ProductType additionalProperties: false Links: title: Links type: object description: Links relevant to the payload properties: Self: type: string format: uri First: type: string format: uri Prev: type: string format: uri Next: type: string format: uri Last: type: string format: uri additionalProperties: false required: - Self Meta: title: MetaData type: object description: Meta Data relevant to the payload properties: TotalPages: type: integer format: int32 FirstAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time LastAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time additionalProperties: false additionalProperties: false required: - Data - Links - Meta headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - PSUOAuth2Security: - accounts /standing-orders: get: summary: Get Standing Orders description: Get Standing Orders operationId: GetStandingOrders produces: - application/json; charset=utf-8 parameters: - *ref_0 - *ref_1 - *ref_2 - *ref_3 - *ref_4 responses: '200': description: Standing Orders successfully retrieved schema: *ref_14 headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - PSUOAuth2Security: - accounts /direct-debits: get: summary: Get Direct Debits description: Get Direct Debits operationId: GetDirectDebits produces: - application/json; charset=utf-8 parameters: - *ref_0 - *ref_1 - *ref_2 - *ref_3 - *ref_4 responses: '200': description: Direct Debits successfully retrieved schema: *ref_15 headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - PSUOAuth2Security: - accounts /beneficiaries: get: summary: Get Beneficiaries description: Get Beneficiaries operationId: GetBeneficiaries produces: - application/json; charset=utf-8 parameters: - *ref_0 - *ref_1 - *ref_2 - *ref_3 - *ref_4 responses: '200': description: Beneficiaries successfully retrieved schema: *ref_16 headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - PSUOAuth2Security: - accounts /transactions: get: summary: Get Transactions description: Get Transactions operationId: GetTransactions produces: - application/json; charset=utf-8 parameters: - *ref_0 - *ref_1 - *ref_2 - *ref_3 - *ref_4 - *ref_17 - *ref_18 responses: '200': description: Transactions successfully retrieved schema: *ref_19 headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - PSUOAuth2Security: - accounts /balances: get: summary: Get Balances description: Get Balances operationId: GetBalances produces: - application/json; charset=utf-8 parameters: - *ref_0 - *ref_1 - *ref_2 - *ref_3 - *ref_4 responses: '200': description: Balances successfully retrieved schema: *ref_20 headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - PSUOAuth2Security: - accounts /products: get: summary: Get Products description: Get Products operationId: GetProducts produces: - application/json; charset=utf-8 parameters: - *ref_0 - *ref_1 - *ref_2 - *ref_3 - *ref_4 responses: '200': description: Products successfully retrieved schema: title: Products GET response type: object properties: Data: title: Data type: object description: Data properties: Product: title: Product description: Product type: array items: type: object title: Product description: Product properties: AccountId: description: A unique and immutable identifier used to identify the account resource. This identifier has no meaning to the account owner. type: string minLength: 1 maxLength: 40 ProductIdentifier: description: Identifier within the parent organisation for the product. Must be unique in the organisation. type: string ProductType: description: Descriptive code for the product category. type: string enum: - BCA - PCA ProductName: description: The name of the product used for marketing purposes from a customer perspective. I.e. what the customer would recognise. type: string SecondaryProductIdentifier: description: Identifier within the parent organisation for the product. Must be unique in the organisation. type: string additionalProperties: false required: - AccountId - ProductIdentifier - ProductType additionalProperties: false Links: title: Links type: object description: Links relevant to the payload properties: Self: type: string format: uri First: type: string format: uri Prev: type: string format: uri Next: type: string format: uri Last: type: string format: uri additionalProperties: false required: - Self Meta: title: MetaData type: object description: Meta Data relevant to the payload properties: TotalPages: type: integer format: int32 FirstAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time LastAvailableDateTime: description: |2- All dates in the JSON payloads are represented in ISO 8601 date-time format. All date-time fields in responses must include the timezone. An example is below: 2017-04-05T10:43:07+00:00 type: string format: date-time additionalProperties: false additionalProperties: false required: - Data - Links - Meta headers: x-jws-signature: type: string description: Header containing a detached JWS signature of the body of the payload. x-fapi-interaction-id: type: string description: An RFC4122 UID used as a correlation id. '400': *ref_5 '401': *ref_6 '403': *ref_7 '405': *ref_8 '406': *ref_9 '429': *ref_10 '500': *ref_11 security: - PSUOAuth2Security: - accounts securityDefinitions: PSUOAuth2Security: type: oauth2 flow: accessCode tokenUrl: 'https://authserver.example/token' authorizationUrl: 'https://authserver.example/authorization' scopes: accounts: Ability to read Accounts information description: 'OAuth flow, it is required when the PSU needs to perform SCA with the ASPSP when a TPP wants to access an ASPSP resource owned by the PSU' TPPOAuth2Security: type: oauth2 flow: application tokenUrl: 'https://authserver.example/token' scopes: tpp_client_credential: TPP Client Credential Scope description: TPP client credential authorisation flow with the ASPSP responses: 400ErrorResponse: *ref_5 401ErrorResponse: *ref_6 403ErrorResponse: *ref_7 405ErrorResponse: *ref_8 406ErrorResponse: *ref_9 429ErrorResponse: *ref_10 500ErrorResponse: *ref_11