openapi: 3.0.1

info:
  contact:
    name: JSC Bank of Georgia
    url: https://api.bog.ge/docs/openbanking
  x-logo:
    url: "xs2a/logo.svg"
  description: |
    The core XS2A Interface as introduced above is already supporting Account Information Services (AIS) for current accounts and card reconciliation accounts. These services follow the functionality of online channels of the related ASPSP: Via the services, information on accounts, balances and transactions can be requested for the supported account types. Each request must refer to an underlying consent from the PSU that grants the TPP access to the requested information. 
    For the envisaged Extended Services, the account information function of the openFinance API will go beyond account types defined by the core XS2A Interface. 
    As new entities as a basis of information, the following are supported:
      *	savings accounts
      *	loan accounts
    Note: Even if introduced for TPP related scenarios, the related premium payment services and related technical endpoints could also be offered in a direct access scenario e.g. for corporates of an ASPSP to request information on their corresponding accounts / cards directly.
  license:
    name: Creative Commons Attribution 4.0 International Public License
    url: https://creativecommons.org/licenses/by/4.0/
  title: openFinance API Framework Extended Account Information Services
  version: "2.2"
  x-references:
    documents:
      - document:
        title: openFinance API Framework Data Dictionary
        version: "2.2.6"
      - document:
        title: openFinance API Framework Extended Account Information Services
        version: "2.2"

externalDocs:
  description: |
    openFinance API Framework
    Implementation Guidelines for Extended Services
  url: https://www.berlin-group.org/openfinance-downloads

servers:
  - url: https://xs2a.bog.ge/0.8
    description: Production Environment
  - url: https://xs2a-sandbox.bog.ge/0.8
    description: Sandbox Environment

tags:
  - name: Extended Account Information Service (XAIS)
    description: |
      The component for Account Information Service (AIS) offers the following information services:
      * Transaction lists for a given account with transactions with booking status booked or pending including balances if applicable,
      * List of standing orders of a given account, reported as transactions with booking status information,
      * Balances of a given account,
      * A list of addressable accounts,
      * Account details of a given account or of the list of all accessible accounts relative to a granted consent, and
      * Account details might include the account owner name, where specific requirements on the consent process might apply.

paths:
  /v2/savings:
    get:
      summary: Read Savings Account List
      description: | 
        Reads a list of savings accounts. The ASPSP may choose to provide information on balances in the response.
        See \"Implementation Guidelines for Extended Services \", section \"4.3.1 Read Account List\".
      operationId: getSavingsAccountList
      tags:
        - Extended Account Information Service (XAIS)
      security:
        - {}
        - BearerAuthOAuth: []
      parameters:
        - $ref: '#/components/parameters/HEADER_digest'
        - $ref: '#/components/parameters/HEADER_xJwsSignature'
        - $ref: '#/components/parameters/HEADER_xRequestId'
        - $ref: '#/components/parameters/HEADER_apiContractId'
        - $ref: '#/components/parameters/HEADER_psuIpAddress_optional'
        - $ref: '#/components/parameters/HEADER_consentId_mandatory'
      responses:
        '200':
          $ref: '#/components/responses/Ok_200_AISSAVINGSACCOUNTLIST'
        '400':
          $ref: '#/components/responses/decline_400_AIS'
        '401':
          $ref: '#/components/responses/decline_401_AIS'
        '403':
          $ref: '#/components/responses/decline_403_AIS'
        '404':
          $ref: '#/components/responses/decline_404_AIS'
        '405':
          $ref: '#/components/responses/decline_405_AIS'
        '406':
          $ref: '#/components/responses/decline_406'
        '408':
          $ref: '#/components/responses/decline_408'
        '409':
          $ref: '#/components/responses/decline_409_AIS'
        '415':
          $ref: '#/components/responses/decline_415'
        '500':
          $ref: '#/components/responses/decline_500'
        '503':
          $ref: '#/components/responses/decline_503'
  /v2/savings/{account-id}:
    get:
      summary: Read Savings Account Details
      description: | 
        Reads details about a savings account. The ASPSP may choose to provide information on balances in the response.
        See \"Implementation Guidelines for Extended Services \", section \"4.3.2 Read Account Details\".
      operationId: getSavingsAccountDetails
      tags:
        - Extended Account Information Service (XAIS)
      security:
        - {}
        - BearerAuthOAuth: []
      parameters:
        - $ref: '#/components/parameters/PATH_accountId'
        - $ref: '#/components/parameters/HEADER_digest'
        - $ref: '#/components/parameters/HEADER_xJwsSignature'
        - $ref: '#/components/parameters/HEADER_xRequestId'
        - $ref: '#/components/parameters/HEADER_apiContractId'
        - $ref: '#/components/parameters/HEADER_psuIpAddress_optional'
        - $ref: '#/components/parameters/HEADER_consentId_mandatory'
      responses:
        '200':
          $ref: '#/components/responses/Ok_200_AISSAVINGSACCOUNTDETAILS'
        '400':
          $ref: '#/components/responses/decline_400_AIS'
        '401':
          $ref: '#/components/responses/decline_401_AIS'
        '403':
          $ref: '#/components/responses/decline_403_AIS'
        '404':
          $ref: '#/components/responses/decline_404_AIS'
        '405':
          $ref: '#/components/responses/decline_405_AIS'
        '406':
          $ref: '#/components/responses/decline_406'
        '408':
          $ref: '#/components/responses/decline_408'
        '409':
          $ref: '#/components/responses/decline_409_AIS'
        '415':
          $ref: '#/components/responses/decline_415'
        '500':
          $ref: '#/components/responses/decline_500'
        '503':
          $ref: '#/components/responses/decline_503'
  /v2/savings/{account-id}/balances:
    get:
      summary: Read Savings Account Balance
      description: | 
        Reads balance data from a given savings account addressed by \"account-id\".
        See \"Implementation Guidelines for Extended Services \", section \"4.3.3. Read Account Balances\".
      operationId: getSavingsAccountBalance
      tags:
        - Extended Account Information Service (XAIS)
      security:
        - {}
        - BearerAuthOAuth: []
      parameters:
        - $ref: '#/components/parameters/PATH_accountId'
        - $ref: '#/components/parameters/HEADER_digest'
        - $ref: '#/components/parameters/HEADER_xJwsSignature'
        - $ref: '#/components/parameters/HEADER_xRequestId'
        - $ref: '#/components/parameters/HEADER_apiContractId'
        - $ref: '#/components/parameters/HEADER_psuIpAddress_optional'
        - $ref: '#/components/parameters/HEADER_consentId_mandatory'
      responses:
        '200':
          $ref: '#/components/responses/Ok_200_AISSAVINGSACCOUNTBALANCE'
        '400':
          $ref: '#/components/responses/decline_400_AIS'
        '401':
          $ref: '#/components/responses/decline_401_AIS'
        '403':
          $ref: '#/components/responses/decline_403_AIS'
        '404':
          $ref: '#/components/responses/decline_404_AIS'
        '405':
          $ref: '#/components/responses/decline_405_AIS'
        '406':
          $ref: '#/components/responses/decline_406'
        '408':
          $ref: '#/components/responses/decline_408'
        '409':
          $ref: '#/components/responses/decline_409_AIS'
        '415':
          $ref: '#/components/responses/decline_415'
        '500':
          $ref: '#/components/responses/decline_500'
        '503':
          $ref: '#/components/responses/decline_503'
  /v2/savings/{account-id}/transactions:
    get:
      summary: Read Savings Account Transaction List
      description: | 
        Reads account transaction data from a given savings account addressed by \"account-id\". 
        See \"Implementation Guidelines for Extended Services \", section \"4.3.4 Read Transaction List\".
      operationId: getAccountTransactionList
      tags:
        - Extended Account Information Service (XAIS)
      security:
        - {}
        - BearerAuthOAuth: []
      parameters:
        - $ref: '#/components/parameters/PATH_accountId'
        - $ref: '#/components/parameters/QUERY_dateFrom'
        - $ref: '#/components/parameters/QUERY_dateTo'
        - $ref: '#/components/parameters/QUERY_entryReferenceFrom'
        - $ref: '#/components/parameters/QUERY_bookingStatusGeneric'
        - $ref: '#/components/parameters/QUERY_deltaList'
        - $ref: '#/components/parameters/QUERY_pageSize'
        - $ref: '#/components/parameters/HEADER_digest'
        - $ref: '#/components/parameters/HEADER_xJwsSignature'
        - $ref: '#/components/parameters/HEADER_xRequestId'
        - $ref: '#/components/parameters/HEADER_apiContractId'
        - $ref: '#/components/parameters/HEADER_psuIpAddress_optional'
        - $ref: '#/components/parameters/HEADER_consentId_mandatory'
      responses:
        '200':
          $ref: '#/components/responses/Ok_200_AISSAVINGSACCOUNTTXLIST'
        '400':
          $ref: '#/components/responses/decline_400_AIS'
        '401':
          $ref: '#/components/responses/decline_401_AIS'
        '403':
          $ref: '#/components/responses/decline_403_AIS'
        '404':
          $ref: '#/components/responses/decline_404_AIS'
        '405':
          $ref: '#/components/responses/decline_405_AIS'
        '406':
          $ref: '#/components/responses/decline_406'
        '408':
          $ref: '#/components/responses/decline_408'
        '409':
          $ref: '#/components/responses/decline_409_AIS'
        '415':
          $ref: '#/components/responses/decline_415'
        '500':
          $ref: '#/components/responses/decline_500'
        '503':
          $ref: '#/components/responses/decline_503'
  /v2/loans:
    get:
      summary: Read Loan Account List
      description: | 
        Reads a list of loan accounts. The ASPSP may choose to provide information on balances in the response.
        See \"Implementation Guidelines for Extended Services \", section \"4.4.1 Read Account List\".
      operationId: getLoanAccountList
      tags:
        - Extended Account Information Service (XAIS)
      security:
        - {}
        - BearerAuthOAuth: []
      parameters:
        - $ref: '#/components/parameters/HEADER_digest'
        - $ref: '#/components/parameters/HEADER_xJwsSignature'
        - $ref: '#/components/parameters/HEADER_xRequestId'
        - $ref: '#/components/parameters/HEADER_apiContractId'
        - $ref: '#/components/parameters/HEADER_psuIpAddress_optional'
        - $ref: '#/components/parameters/HEADER_consentId_mandatory'
      responses:
        '200':
          $ref: '#/components/responses/Ok_200_AISLOANACCOUNTLIST'
        '400':
          $ref: '#/components/responses/decline_400_AIS'
        '401':
          $ref: '#/components/responses/decline_401_AIS'
        '403':
          $ref: '#/components/responses/decline_403_AIS'
        '404':
          $ref: '#/components/responses/decline_404_AIS'
        '405':
          $ref: '#/components/responses/decline_405_AIS'
        '406':
          $ref: '#/components/responses/decline_406'
        '408':
          $ref: '#/components/responses/decline_408'
        '409':
          $ref: '#/components/responses/decline_409_AIS'
        '415':
          $ref: '#/components/responses/decline_415'
        '500':
          $ref: '#/components/responses/decline_500'
        '503':
          $ref: '#/components/responses/decline_503'
  /v2/loans/{account-id}:
    get:
      summary: Read Loans Account Details
      description: | 
        Reads details about a loan account. The ASPSP may choose to provide information on balances in the response.
        See \"Implementation Guidelines for Extended Services \", section \"4.4.2 Read Account Details\".
      operationId: getLoanAccountDetails
      tags:
        - Extended Account Information Service (XAIS)
      security:
        - {}
        - BearerAuthOAuth: []
      parameters:
        - $ref: '#/components/parameters/PATH_accountId'
        - $ref: '#/components/parameters/HEADER_digest'
        - $ref: '#/components/parameters/HEADER_xJwsSignature'
        - $ref: '#/components/parameters/HEADER_xRequestId'
        - $ref: '#/components/parameters/HEADER_apiContractId'
        - $ref: '#/components/parameters/HEADER_psuIpAddress_optional'
        - $ref: '#/components/parameters/HEADER_consentId_mandatory'
      responses:
        '200':
          $ref: '#/components/responses/Ok_200_AISLOANACCOUNTDETAILS'
        '400':
          $ref: '#/components/responses/decline_400_AIS'
        '401':
          $ref: '#/components/responses/decline_401_AIS'
        '403':
          $ref: '#/components/responses/decline_403_AIS'
        '404':
          $ref: '#/components/responses/decline_404_AIS'
        '405':
          $ref: '#/components/responses/decline_405_AIS'
        '406':
          $ref: '#/components/responses/decline_406'
        '408':
          $ref: '#/components/responses/decline_408'
        '409':
          $ref: '#/components/responses/decline_409_AIS'
        '415':
          $ref: '#/components/responses/decline_415'
        '500':
          $ref: '#/components/responses/decline_500'
        '503':
          $ref: '#/components/responses/decline_503'
  /v2/loans/{account-id}/balances:
    get:
      summary: Read Loan Account Balance
      description: | 
        Reads balance data from a given loan account addressed by \"account-id\".
        See \"Implementation Guidelines for Extended Services \", section \"4.4.3. Read Account Balances\".
      operationId: getLoanAccountBalance
      tags:
        - Extended Account Information Service (XAIS)
      security:
        - {}
        - BearerAuthOAuth: []
      parameters:
        - $ref: '#/components/parameters/PATH_accountId'
        - $ref: '#/components/parameters/HEADER_digest'
        - $ref: '#/components/parameters/HEADER_xJwsSignature'
        - $ref: '#/components/parameters/HEADER_xRequestId'
        - $ref: '#/components/parameters/HEADER_apiContractId'
        - $ref: '#/components/parameters/HEADER_psuIpAddress_optional'
        - $ref: '#/components/parameters/HEADER_consentId_mandatory'
      responses:
        '200':
          $ref: '#/components/responses/Ok_200_AISLOANACCOUNTBALANCE'
        '400':
          $ref: '#/components/responses/decline_400_AIS'
        '401':
          $ref: '#/components/responses/decline_401_AIS'
        '403':
          $ref: '#/components/responses/decline_403_AIS'
        '404':
          $ref: '#/components/responses/decline_404_AIS'
        '405':
          $ref: '#/components/responses/decline_405_AIS'
        '406':
          $ref: '#/components/responses/decline_406'
        '408':
          $ref: '#/components/responses/decline_408'
        '409':
          $ref: '#/components/responses/decline_409_AIS'
        '415':
          $ref: '#/components/responses/decline_415'
        '500':
          $ref: '#/components/responses/decline_500'
        '503':
          $ref: '#/components/responses/decline_503'
  /v2/loans/{account-id}/transactions:
    get:
      summary: Read Loan Account Transaction List
      description: | 
        Reads account transaction data from a given loan account addressed by \"account-id\". 
        See \"Implementation Guidelines for Extended Services \", section \"4.4.4 Read Transaction List\".
      operationId: getLoanAccountTransactionList
      tags:
        - Extended Account Information Service (XAIS)
      security:
        - {}
        - BearerAuthOAuth: []
      parameters:
        - $ref: '#/components/parameters/PATH_accountId'
        - $ref: '#/components/parameters/QUERY_dateFrom'
        - $ref: '#/components/parameters/QUERY_dateTo'
        - $ref: '#/components/parameters/QUERY_entryReferenceFrom'
        - $ref: '#/components/parameters/QUERY_bookingStatusGeneric'
        - $ref: '#/components/parameters/QUERY_deltaList'
        - $ref: '#/components/parameters/QUERY_pageSize'
        - $ref: '#/components/parameters/HEADER_digest'
        - $ref: '#/components/parameters/HEADER_xJwsSignature'
        - $ref: '#/components/parameters/HEADER_xRequestId'
        - $ref: '#/components/parameters/HEADER_apiContractId'
        - $ref: '#/components/parameters/HEADER_psuIpAddress_optional'
        - $ref: '#/components/parameters/HEADER_consentId_mandatory'
      responses:
        '200':
          $ref: '#/components/responses/Ok_200_AISLOANACCOUNTTXLIST'
        '400':
          $ref: '#/components/responses/decline_400_AIS'
        '401':
          $ref: '#/components/responses/decline_401_AIS'
        '403':
          $ref: '#/components/responses/decline_403_AIS'
        '404':
          $ref: '#/components/responses/decline_404_AIS'
        '405':
          $ref: '#/components/responses/decline_405_AIS'
        '406':
          $ref: '#/components/responses/decline_406'
        '408':
          $ref: '#/components/responses/decline_408'
        '409':
          $ref: '#/components/responses/decline_409_AIS'
        '415':
          $ref: '#/components/responses/decline_415'
        '500':
          $ref: '#/components/responses/decline_500'
        '503':
          $ref: '#/components/responses/decline_503'

components:
  securitySchemes:
    BearerAuthOAuth:
      description: |
        Bearer Token. 
        Is contained only, if an OAuth2 based authentication was performed in a pre-step or 
        an OAuth2 based SCA was performed in a preceding AIS service in the same session.
      type: http
      scheme: bearer
  schemas:
    references:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"References\" for more details.
      type: object
      properties:
        accountServicerReference:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        instructionId:
          description: |
            Unique identification as assigned by an instructing party for an instructed party to unambiguously identify the instruction.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        endToEndId:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        uetr:
          description: |
            Universally unique identifier to provide an end-to-end reference of a payment transaction.
            It is recommended to use time-based version (version 1) and variant 8,9,a or b of the UUID as defined in [RFC4122] for UUID fields such as uetr.
          allOf:
            - $ref: '#/components/schemas/UUID'
        mandateId:
          description: |
            direct debit related mandate.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        checkNumber:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
    SecuritiesOrderSide:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Securities Order Side\" for more details.
      type: string
      enum:
        - buy
        - sell
        - subscription
        - redemption
      example: 'buy'
    cardTransaction:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Card Transaction\" for more details.
      type: object
      properties:
        card:
          description: |
          allOf:
            - $ref: '#/components/schemas/cardType'
        transaction:
          description: |
          allOf:
            - $ref: '#/components/schemas/cardTransactionDetails'
    _links_200_AISSECURITIESACCOUNTORDERLIST: 
      type: object
      additionalProperties: 
        $ref: '#/components/schemas/hrefType'
      properties:
        first:
          $ref: '#/components/schemas/hrefType'
        next:
          $ref: '#/components/schemas/hrefType'
        previous:
          $ref: '#/components/schemas/hrefType'
        last:
          $ref: '#/components/schemas/hrefType'
    error_RFC7807_403_AIS: 
      description: |
        Standardised definition of reporting error information according to [RFC7807].
      type: object
      required:
        - type
        - code
      properties:
        type: 
          description: |
            A URI reference [RFC3986] that identifies the problem type. 
            Remark For Future: These URI will be provided by openFinance API Framework in future.
          type: string
          format: uri
          maxLength: 70
        title:
          description: |
            Short human readable description of error type. Could be in local language. To be provided by ASPSPs.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        status:
          description: |
            HTTP response code generated by the server.
            If contained, this is more relevant as the actual http response code in the actual response, because it is introduced by the application server.            
          type: integer
        detail:
          description: |
            Detailed human readable text specific to this instance of the error. 
          allOf:
            - $ref: '#/components/schemas/Max500Text'
        instance:
          description: |
            This attribute is containing a JSON pointer (as defined in [RFC6901]) or XPath expression to indicate the path to an issue generating the error in the related request.
          allOf:
            - $ref: '#/components/schemas/Max256Text'
        code:
          $ref: '#/components/schemas/MessageCode_403_AIS'
        additionalErrors:
          description: |
            Array of Error Information Blocks.
            Might be used if more than one error is to be communicated
          type: array
          items: #ErrorInformation
            description: This is a data element to support the declaration of additional errors in the context of [RFC7807]. 
            type: object
            required:
              - code
            properties:
              title:
                $ref: '#/components/schemas/Max70Text'
              detail:
                $ref: '#/components/schemas/Max500Text'
              code:
                $ref: '#/components/schemas/MessageCode_403_AIS'
        _links:
          $ref: '#/components/schemas/links'
    Max500Text:
      type: string
      maxLength: 500
      example: 'Text, maximum of 500 characters.'
    CurrencyCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      pattern: '[A-Z]{3}'
      example: 'EUR'
    BankTransactionCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      pattern: '[A-Z]{4,4}-[A-Z]{4,4}-[A-Z]{4,4}'
      example: 'PMNT-RDDT-ESDD'
    AccountStatusCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Acount Status Code\" for more details.
      type: string
      enum: 
        - enabled
        - deleted
        - blocked
      example: 'enabled'
    entryDetails1:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Entry Details1\" for more details.
      type: object
      properties:
        batch:
          description: |
            Provides details on batched transactions.
          allOf:
            - $ref: '#/components/schemas/batchInformation'
        transactionDetails:
          description: |
            Provides information on the underlying transaction(s).
          type: array
          items: 
            $ref: '#/components/schemas/transactionDetail'
    MessageCode_403_AIS: 
      description: Message codes defined for AIS for HTTP Error code 403 (FORBIDDEN).
      anyOf:
        - $ref: '#/components/schemas/MessageCode_ServiceUnspecific_403'
    remittance:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Remittance\" for more details.
      type: object
      properties:
        referredDocumentInformation:
          description: |
            Set of elements used to identify the documents referred to in the remittance information.
          allOf:
            - $ref: '#/components/schemas/referredDocumentInformation'
        creditorReferenceInformation:
          description: |
            Reference information provided by the creditor to allow the identification of the underlying documents.
          allOf:
            - $ref: '#/components/schemas/creditorReferenceInformation'
        additionalRemittanceInformation:
          description: |
            Additional information to be displayed to the PSU e.g. within authorisation processes. This will not be used in related interbank payments.
          type: array
          items:
            $ref: '#/components/schemas/Max140Text'
    transactionSummary:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Transaction Summary\" for more details.
      type: object
      properties:
        totalEntries:
          description: |
            The total number and sum of credit and debit entries.
          allOf:
            - $ref: '#/components/schemas/totalEntries'
        totalCreditEntries:
          description: |
            The total number and sum of credit entries
          allOf:
            - $ref: '#/components/schemas/totalCreditEntries'
        totalDebitEntries:
          description: |
            The total number and sum of debit entries
          allOf:
            - $ref: '#/components/schemas/totalDebitEntries'
        totalEntriesPerBankTransactionCode:
          description: |
            The total number and sum of entries per bank transaction code
          type: array
          items:
            $ref: '#/components/schemas/totalEntriesPerBankTransactionCode'
    financialInstitutionIdentification:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Financial Institution Identification\" for more details.
      type: object
      properties:
        bicfi:
          description: |
          allOf:
            - $ref: '#/components/schemas/BICFI'
        clearingSystemMemberId:
          description: |
            Information used to identify a member within a clearing system.
          allOf:
            - $ref: '#/components/schemas/clearingSystemMemberIdentification'
        name:
          description: |
            Name of the financial institution
          allOf:
            - $ref: '#/components/schemas/Max140Text'
        postalAddress:
          description: |
            Postal Address of the financial institution.
          allOf:
            - $ref: '#/components/schemas/postalAddress'
        other:
          description: |
            Unique identification of an organisation, as assigned by an institution, using an identification scheme.
          allOf:
            - $ref: '#/components/schemas/genericFinancialInstitutionIdentification'
    Max35Text:
      type: string
      maxLength: 35
      example: 'Text, maximum of 35 characters.'
    Max2Text:
      type: string
      maxLength: 2
      example: '2C'
    cardTransactionDetails:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Card Transaction Details\" for more details.
      type: object
      properties:
        paymentContext:
          description: |
            Context of the card payment transaction.
          allOf:
            - $ref: '#/components/schemas/paymentContextType'
        sequenceNumber:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        transactionDateTime:
          description: |
            Local date and time of the transaction assigned by the POI (Point Of Interaction).
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        poiId:
          description: |
            Identification of the POI (Point Of Interaction) performing the transaction.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        authorisationCode:
          description: |
            Value assigned by the authorising party.
          allOf: 
            - $ref: '#/components/schemas/Max8Text'
        saleReferenceId:
          description: |
            Global reference of the sale transaction for the sale system.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        transactionType:
          description: |
            Type of transaction being undertaken for the main service.
          allOf:
            - $ref: '#/components/schemas/CardTransactionType'
    CreditLineType:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more detail
      type: string
      maxLength: 4
      minLength: 1
    accountReference:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Account Reference\" for more details.
      type: object
      properties:
        iban:
          description: |
          allOf:
            - $ref: '#/components/schemas/IBAN'
        bban:
          description: |
            BBAN of the account. This data elements is used for payment accounts which have no IBAN.
          allOf:
            - $ref: '#/components/schemas/BBAN'
        pan:
          description: |
            Primary Account Number (PAN) of a card, can be tokenised by the ASPSP due to PCI DSS requirements. 
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        maskedPan:
          description: |
            Primary Account Number (PAN) of a card in a masked form.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        msisdn:
          description: |
            An alias to access a payment account via a registered mobile phone number.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        other:
          description: |
            An alias with a proprietary coding
          allOf:
            - $ref: '#/components/schemas/genericAccountIdentification'
        typeCode:
          description: |
            Remark: Shall not be used in the consent model, since account category provides enough information for the ASPSP.
          allOf:
            - $ref: '#/components/schemas/CashAccountType'
        typeProprietary:
          description: |
            Remark: Shall not be used in the consent model, since account category provides enough information for the ASPSP.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        currency:
          description: |
            ISO 4217 Alpha 3 currency code
          allOf:
            - $ref: '#/components/schemas/CurrencyCode'
        proxy:
          description: |
          allOf:
            - $ref: '#/components/schemas/proxyAccountIdentification'
        name:
          description: |
            Name of the account
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        owner: 
          description: |
          allOf: 
            - $ref: '#/components/schemas/partyDescription2'
        servicer:
          description: |
          allOf:
            - $ref: '#/components/schemas/financialInstitutionIdentification'
    boundaryAmount:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Boundary Amount\" for more details.
      type: object
      required:
        - boundaryAmount
        - included
      properties:
        boundaryAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
        included:
          description: |
          type: boolean
    amountDependentRate:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Amount dependent Rate\" for more details.
      type: object
      required:
        - percentage
      properties:
        percentage:
          description: |
            The (signed) rate of the interest.
            Up to 20 significant figures. The decimal separator is a dot.
            Trailing zeroes must be truncated.
          type: string
          pattern: '-?[0-9]{1,20}(\.[0-9]{0,19})?'
        fromAmount:
          description: |
            Amount from which the interest rate applies.
          allOf:
            - $ref: '#/components/schemas/amount'
        toAmount:
          description: |
            Amount up to which the interest rate applies.
          allOf:
            - $ref: '#/components/schemas/amount'
    totalCreditEntries:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Total Credit Entries\" for more details.
      type: object
      properties:
        numberOfEntries:
          description: |
            Only numeric text is permitted. 
          allOf:
            - $ref: '#/components/schemas/Max15Text'
        sum: 
          description: |
            The sum of total credit entries.
          type: number
          format: double
    ReturnReasonCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - AC01
        - AC02
        - AC03
        - AC04
        - AC06
        - AC07
        - AC13
        - AC14
        - AC15
        - AC16
        - AC17
        - AG01
        - AG02
        - AG07
        - AGNT
        - AM01
        - AM02
        - AM03
        - AM04
        - AM05
        - AM06
        - AM07
        - AM09
        - AM10
        - ARDT
        - BE01
        - BE04
        - BE05
        - BE06
        - BE07
        - BE08
        - BE10
        - BE11
        - BE16
        - BE17
        - CN01
        - CNOR
        - CNPC
        - CURR
        - CUST
        - DC04
        - DNOR
        - DS28
        - DT01
        - DT02
        - DT04
        - DUPL
        - ED01
        - ED03
        - ED05
        - EMVL
        - ERIN
        - FF03
        - FF04
        - FF05
        - FF06
        - FF07
        - FOCR
        - FR01
        - FRTR
        - G004
        - MD01
        - MD02
        - MD05
        - MD06
        - MD07
        - MS02
        - MS03
        - NARR
        - NOAS
        - NOCM
        - NOOR
        - PINL
        - RC01
        - RC03
        - RC04
        - RC07
        - RC08
        - RC11
        - RF01
        - RR01
        - RR02
        - RR03
        - RR04
        - RR05
        - RR06
        - RR07
        - RR08
        - RR09
        - RR11
        - RR12
        - RUTA
        - SL01
        - SL02
        - SL11
        - SL12
        - SL13
        - SL14
        - SP01
        - SP02
        - SVNR
        - TM01
        - TRAC
        - UPAYY
    _links_200_AISSAVINGSACCOUNTTXLIST: 
      type: object
      additionalProperties: 
        $ref: '#/components/schemas/hrefType'
      properties:
        download:
          $ref: '#/components/schemas/hrefType'
    genericFinancialInstrumentIdentification:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Generic Financial Instrument Identification\" for more details.
      type: object
      required:
        - identification
      properties:
        identification:
          description: |
            Identification of a security.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        suffix:
          description: |
            Identifies the suffix of the security identification.
          allOf:
            - $ref: '#/components/schemas/Max16Text'
        typeCode:
          description: |
            Unique and unambiguous identification source, as assigned via a pre-determined code list.
          allOf:
            - $ref: '#/components/schemas/ExternalFinancialInstrumentIdentificationTypeCode'
        typeProprietary:
          description: |
            Unique and unambiguous identification source using a proprietary identification type.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
    charges:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Charges\" for more details.
      type: object
      required:
        - totalChargesAndTaxAmount
      properties:
        totalChargesAndTaxAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
        record:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/chargesRecord'
    CashAccountType:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - CACC
        - CARD
        - CASH
        - CHAR
        - CISH
        - COMM
        - CPAC
        - LLSV
        - LOAN
        - MGLD
        - MOMA
        - NREX
        - ODFT
        - ONDP
        - OTHR
        - SACC
        - SLRY
        - SVGS
        - TAXE
        - TRAN
        - TRAS
        - VACC
        - NFCA
      example: 'CACC'
    debitEntries:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Debit Entries\" for more details.
      type: object
      properties:
        numberOfEntries:
          description: |
            Only numeric text is permitted.
          allOf:
            - $ref: '#/components/schemas/Max15Text'
        sum: 
          description: |
            The sum of the debit entries.
          type: number
          format: double
    Max15Text:
      type: string
      maxLength: 15
      example: '15CHR15CHR15CHR'
    securitiesRelatedDateOrTime:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Securities related Date or Time\" for more details.
      type: object
      required:
        - type
      properties:
        type:
          description: |
            Type of the date / date time. The following values are pre-defined:
            * effectiveSettlementDate,
            * settlementDate,
            * valueDate,
            * performanceDate,
            * bookingDate,
            * transactionDate
          type: string
        date:
          description: |
            Date according to the \"type\".
          allOf:
            - $ref: '#/components/schemas/ISODate'
        dateAndTime:
          description: |
            Date and time according to the \"type\".
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
    detailsTax:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Details Tax\" for more details.
      type: object
      properties: 
        creditor:
          description: |
            Party on the credit side of the transaction to which the tax applies.
          allOf: 
            - $ref: '#/components/schemas/taxCreditor'
        debtor:
          description: |
            Party on the debit side of the transaction to which the tax applies.
          allOf:
            - $ref: '#/components/schemas/taxDebtor'
        administrationZone:
          description: |
            The territorial part of the country to which the tax is related.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        referenceNumber:
          description: |
            Tax reference information that is specific to a tax agency.
          allOf:
            - $ref: '#/components/schemas/Max140Text'
        method:
          description: |
            Method underlying how the tax payment is performed.
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        totalTaxableBaseAmount:
          description: |
            Total amount of money on which the tax is based.
          allOf:
            - $ref: '#/components/schemas/amount'
        totalTaxAmount:
          description: |
            Total amount of money as a result of the calculation of the tax.
          allOf:
            - $ref: '#/components/schemas/amount'
        date: 
          description: |
            Date by which the tax is due.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        sequenceNumber:
          description: |
            Sequential number of the tax report.
          type: integer
        record:
          description: |
            Record of the tax details.
          type: array
          items:
            $ref: '#/components/schemas/taxRecord'
    partyDescription4:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Party Description4\" for more details.
      type: object
      properties:
        name:
          description: |
            Name of the party.
          allOf:
            - $ref: '#/components/schemas/Max140Text'
        identification:
          description: |
            Identification of the party.
          allOf:
            - $ref: '#/components/schemas/partyIdentification'
    TransactionActivityCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - BOLE
        - CLAI
        - COLL
        - CORP
        - SETT
      example: 'SETT'
    partyDescription2:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Party Description2\" for more details.
      type: object
      properties:
        name:
          description: |
            Name of the party.
          allOf:
            - $ref: '#/components/schemas/Max140Text'
        postaladdress:
          description: |
            Postal Address of the party.
          allOf:
            - $ref: '#/components/schemas/postalAddress'
    taxDebtor:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Tax Debtor\" for more details.
      type: object
      properties:
        taxId:
          description: |
            Tax identification number of the debtor 
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        registrationId:
          description: |
            Unique identification, assigned by an organization, to identify a party.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        taxType:
          description: |
            Type of the tax payer.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        authorisation:
          description: |
            Details of the authorised tax paying party.
          allOf:
            - $ref: '#/components/schemas/taxAuthorisation'
    Max256Text:
      type: string
      maxLength: 256
      example: 'Text, maximum of 256 characters.'
    error_NG_405_AIS: 
      type: object
      properties:
        apiClientMessages:
          type: array
          items:
            $ref: '#/components/schemas/clientMessageInformation_405_AIS'
        _links:
          $ref: '#/components/schemas/links'
    availability:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Availability\" for more details.
      type: object
      required:
        - amount
      properties:
        numberOfDays:
          description: |
          type: integer
        actualDate:
          description: |
          allOf:
            - $ref: '#/components/schemas/ISODate'
        amount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
    clientMessageInformation_403_AIS:
      type: object
      required:
        - category
        - code
      properties:
        category:
          description: |
            Only \"ERROR\" or \"WARNING\" permitted
          type: string
        code:
          $ref: '#/components/schemas/MessageCode_403_AIS'
        path:
          type: string
        text:
          $ref: '#/components/schemas/Max500Text'
    amountDetails:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Amount Details\" for more details.
      type: object
      properties:
        instructedAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amountAndExchangeDetails'
        transactionAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amountAndExchangeDetails'
        counterValueAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amountAndExchangeDetails'
        announcedPostingAmount:
          description: |
          allOf: 
            - $ref: '#/components/schemas/amountAndExchangeDetails'
      example:
          {
            "instructedAmount" : {
              "currency": "DKK",
              "amount": "123.50",
              "sourceCurrency": "DKK",
              "targetCurrency": "EUR",
              "exchangeRate": "7.47"
            },
            "transactionAmount" : {
              "currency": "EUR",
              "amount": "16.53",
              "sourceCurrency": "DKK",
              "targetCurrency": "EUR",
              "exchangeRate": "7.60"
            }
          }
    evaluatedPrice:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Evaluated Price\" for more details.
      type: object
      properties:
        amount:
          description: |
            If the price is evaluated as an amount, amount of the price in its respective currency.
          allOf:
            - $ref: '#/components/schemas/amount'
        percentage:
          description: |
            Percentage of the price with (optional) fractional digits. Up to 20 significant figures. Negative amounts are signed by minus.
            The decimal separator is a dot. Trailing zeroes must be truncated.
          type: string
          pattern: '-?[0-9]{1,20}(\.[0-9]{0,19})?'
        priceDateTime:
          description: |
            Date and time of the evaluation of this price. 
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        priceDate:
          description: |
            Date of the evaluation of this price. 
          allOf:
            - $ref: '#/components/schemas/ISODate'
        priceType:
          description: |
            Type of the price.
          allOf:
            - $ref: '#/components/schemas/TypeOfPriceCode'
        sourceOfPrice:
          description: |
            Indicates the source of the respective price.
          allOf:
            - $ref: '#/components/schemas/sourceOfPrice'
        description:
          description: |
            Additional description of the source of price. E.g., if the source of price indicates a local market, the ASPSP can include the local market's name in this field.
          allOf:
            - $ref: '#/components/schemas/Max500Text'
        exchangeRates:
          description: |
            Relevant exchange rates for the determined price.
          type: array
          items:
            $ref: '#/components/schemas/reportExchangeRate'
    accountReference4:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Account Reference4\" for more details.
      type: object
      properties:
        iban:
          description: |
          allOf:
            - $ref: '#/components/schemas/IBAN'
        other:
          description: |
            An alias with a proprietary coding
          allOf:
            - $ref: '#/components/schemas/genericAccountIdentification'
    NamePrefixCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Name Prefix Code\" for more details.
      type: string
      enum:
        - DOCT
        - MADM
        - MISS
        - MIST
        - MIKS
      example: 'MADM'
    Max140Text:
      type: string
      maxLength: 140
      example: 'Text, maximum of 140 characters.'
    SecuritiesBalanceTypeCode: 
      description: |
       See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - AVAI
        - AWAS
        - BTRA
        - BLOK
        - BLOV
        - BLCA
        - BLOT
        - BORR
        - COLI
        - COLO
        - MARG
        - DRAW
        - COLA
        - TRAN
        - ISSU
        - DIRT
        - LOAN
        - REGO
        - BODE
        - BORE
        - PEDA
        - PECA
        - PEND
        - PDMT
        - PDUM
        - LODE
        - LORE
        - PENR
        - PRMT
        - PRUM
        - PLED
        - QUAS
        - NOMI
        - RSTR
        - SPOS
        - CLEN
        - OTHR
        - UNRG
        - WDOC
      example: 'AVAI'
    address:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Address\" for more details.
      type: object
      required:
        - country
      properties:
        streetName:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        buildingNumber:
          description: |
          type: string
        townName:
          description: |
          type: string
        postCode:
          description: |
          type: string
        country:
          description: |
          allOf:
            - $ref: '#/components/schemas/CountryCode'
    remittanceLocation:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Remittance Location\" for more details.
      type: object
      required:
        - method
      properties:
        method:
          description: |
          allOf: 
            - $ref: '#/components/schemas/MethodCode'
        electronicAddress:
          description: |
            Electronic address to which an agent is to send the remittance information.
          allOf:
            - $ref: '#/components/schemas/Max2048Text'
        postalAddress:
          description: |
          allOf:
            - $ref: '#/components/schemas/partyDescription2'
    accountReport:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Account Report\" for more details.
      type: object
      required:
        - _links
      properties:
        booked:
          description: |
            Shall be contained if bookingStatus parameter is set to \"booked\", \"both\" or \"all\".
          type: array
          items:
            $ref: '#/components/schemas/transactions'
        pending:
          description: |
            Not contained if the bookingStatus parameter is set to \"booked\" or \"information\".
          type: array
          items:
            $ref: '#/components/schemas/transactions'
        information:
          description: |
            Only contained if the bookingStatus is set to \"information\" or \"all\" and if supported by ASPSP.
          type: array
          items:
            $ref: '#/components/schemas/transactions'
        _links:
          description: |
            The following links might be used within this context:
            * account (mandatoryin the context of cash accounts)
            * savingsAccount (mandatory in the context of savings accounts)
            * loanAccount (mandatory in the context of loan accounts)
            * first (optional)
            * next (optional)
            * previous (optional)
            * last (optional)
          allOf:
            - $ref: '#/components/schemas/links'
    FinancialInstitutionIdentificationCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
    ISODate:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      format: date
      example: '2020-01-01'
    creditEntries:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Credit Entries\" for more details.
      type: object
      properties:
        numberOfEntries:
          description: |
            Only numeric text is permitted. 
          allOf:
            - $ref: '#/components/schemas/Max15Text'
        sum:
          description: |
            The sum of credit entries.
          type: number
          format: double
    BBAN:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      pattern: '[a-zA-Z0-9]{1,30}' 
      example: 'BARC12345612345678'
    error_NG_401_AIS: 
      type: object
      properties:
        apiClientMessages:
          type: array
          items:
            $ref: '#/components/schemas/clientMessageInformation_401_AIS'
        _links:
          $ref: '#/components/schemas/links'
    securitiesTransactionFee:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Securities Transaction Fee\" for more details.
      type: object
      required:
        - amount
      properties:
        typeCode:
          description: |
            Type of the fee as a code.
          allOf:
            - $ref: '#/components/schemas/SecuritiesFeeTypeCode'
        typeProprietary:
          description: |
            Type of the fee as a proprietary string.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        amount:
          description: |
            Amount of the fee as applied to the transaction containing this "Securities Transaction Fee" structure.
          allOf:
            - $ref: '#/components/schemas/amount'
        _links:
          description: |
            Links to resources, where the ASPSP can provide additional information on the fee, e.g. an overview on the general fee rules of the underlying securities account.
            Currently no specific href types are defined in this context.
          allOf:
            - $ref: '#/components/schemas/links'
    PhoneNumber:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      pattern: '\+[0-9]{1,3}-[0-9()+\-]{1,30}'
      example: '+44-113-496-0000'
    securitiesAccountFee:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Securities Account Fee\" for more details.
      type: object
      required:
        - feeRules
      properties:
        typeCode:
          description: |
            Type of the fee as a code.
            Might be adjusted in the future based on market experience.
          allOf:
            - $ref: '#/components/schemas/SecuritiesFeeTypeCode'
        typeProprietary:
          description: |
            Type of the fee as a proprietary string.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        feeRules:
          description: |
            Array of fee rules. Each rule represents ow the amount of the fee is determined either explicitly by stating the amount or implicitly by providing a percentage, minimum and maximum amount.
            This array will usually only contain one entry to represent the whole rule. Only in the case of the fee being calculated as a tiered percentage, 
            several entries are included to represent the several tiers of the fee rule.
          type: array
          items: 
            $ref: '#/components/schemas/securitiesAccountFeeRule'
        applicableFrom:
          description: |
            First date, when this fee is applicable.
            If not present, the fee is applicable starting with the creation of this account / the latest reporting date supported by the ASPSP.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        applicableTo:
          description: |
            Last date, when this fee is applicable. If not present, the fee is applicable indefinitely.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        additionalInformation:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max500Text'
    paymentContextType:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Payment Context Type\" for more details.
      type: object
      properties:
        cardPresent:
          description: |
          type: boolean
        cardDataEntryMode:
          description: |
          allOf:
            - $ref: '#/components/schemas/CardDataEntryMode'
    PreferredMethod:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Preferred Method\" for more details.
      type: string
      enum:
        - LETT
        - MAIL
        - PHON
        - FAXX
        - CELL
      example: 'MAIL'
    error_NG_400_AIS: 
      type: object
      properties:
        apiClientMessages:
          type: array
          items:
            $ref: '#/components/schemas/clientMessageInformation_400_AIS'
        _links:
          $ref: '#/components/schemas/links'
    TransactionStatus:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Transaction Status\" for more details.
      type: string
      enum:
        - ACCC
        - ACCP
        - ACSC
        - ACSP
        - ACTC
        - ACWC
        - ACWP
        - RCVD
        - PDNG
        - RJCT
        - CANC
        - ACFC
        - PATC
        - PART
        - PRES
        - RVCM
        - RVNC
        - RCVC
      example: 'ACCC'
    BearerCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - DEBT
        - CRED
        - SHAR
        - SLEV
      example: 'DEBT'
    error_NG_409_AIS: 
      type: object
      properties:
        apiClientMessages:
          type: array
          items:
            $ref: '#/components/schemas/clientMessageInformation_409_AIS'
        _links:
          $ref: '#/components/schemas/links'
    additionalInformationIndicator:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Additional Information Indicator\" for more details.
      type: object
      properties:
        messageNameIdentification:
          description: |
            Specifies the message name identifier of the message that will be used to provide additional details.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        messageIdentification:
          description: |
            Specifies the identification of the message that will be used to provide additional details.
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
    Max70Text:
      type: string
      maxLength: 70
      example: 'Text, maximum of 70 characters.'
    partyDescription:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Party Description\" for more details.
      type: object
      properties:
        name:
          description: |
            Name of the party.
          allOf:
            - $ref: '#/components/schemas/Max140Text'
        postaladdress:
          description: |
            Postal Address of the party.
          allOf:
            - $ref: '#/components/schemas/postalAddress'
        identification:
          description: |
            Identification of the party.
          allOf:
            - $ref: '#/components/schemas/partyIdentification'
        additionalPartyInformation:
          description: |
            Only supported in extended services for creditor related parties, if at all.
            *NOTE:* This information will be neither put to the related interbank payment nor to account reports/statements and 
            might only be used to display related information to the PSU during potential authorisation processes.
          allOf:
            - $ref: '#/components/schemas/additionalPartyInformation'
    totalEntries:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Total Entries\" for more details.
      type: object
      properties:
        numberOfEntries:
          description: |
            Only numeric text is permitted. 
          allOf:
            - $ref: '#/components/schemas/Max15Text'
        sum: 
          description: |
            The sum of total individual entries.
          type: number
          format: double
        totalNetEntry:
          description: |
            The debit or credit amount of the netted amounts of all credit and debit entries. 
          allOf:
            - $ref: '#/components/schemas/totalNetEntry'
    genericFinancialInstitutionIdentification:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Generic Financial Institution Identification\" for more details.
      type: object
      required:
        - identification
      properties:
        identification:
          description: |
            Unique and unambiguous identification of a financial insitution.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        schemeNameCode:
          description: |
            An entry provided by an external ISO code list
          allOf:
            - $ref: '#/components/schemas/FinancialInstitutionIdentificationCode'
        schemeNameProprietary:
          description: |
            A scheme name defined in a proprietary way.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        issuer:
          description: |
            Issuer of the identification
          allOf:
            - $ref: '#/components/schemas/Max35Text'
    clientMessageInformation_405_AIS:
      type: object
      required:
        - category
        - code
      properties:
        category:
          description: |
            Only \"ERROR\" or \"WARNING\" permitted
          type: string
        code:
          $ref: '#/components/schemas/MessageCode_405_AIS'
        path:
          type: string
        text:
          $ref: '#/components/schemas/Max500Text'
    securitiesTransaction:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Securities Transaction\" for more details.
      type: object
      required:
        - relevantDates
        - financialInstrument
      properties:
        transactionId:
          description: |
            Can be used as access-ID in the API, where more details on a transaction is offered. 
            If this data attribute is provided, this shows that the API Client can get access on more details about this transaction using the Read Transaction Details Request.
          type: string
        entryReference:
          description: |
            Identification of the transaction as used e.g. for reference for deltafunction on application level. 
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        relevantDates:
          description: |
            At least one entry containing a pre-defined date type must be present.
          type: array
          items:
            $ref: '#/components/schemas/securitiesRelatedDateOrTime'
        financialInstrument:
          description: |
            Financial instrument that was transferred within the transaction.
          allOf:
            - $ref: '#/components/schemas/financialInstrumentIdentification'
        orderId:
          description: |
            Resource Id of the order resource that triggered this transaction if applicable.
          type: string
        unitsNumber:
          description: |
            Numeric quantification of the financial instrument that has been transferred within this transaction.
            Negative values indicate that the respective quantity of the financial instrument has been taken from the securities account, 
            positive values indicate that the quantity has been added.
          allOf:
            - type: number
        unitsNominal:
          description: |
            Nominal or numeric quantification of the financial instrument that has been transferred within this transaction.
            Negative values indicate that the respective quantity of the financial instrument has been taken from the securities account, 
            positive values indicate that the quantity has been added.
          allOf:
            - $ref: '#/components/schemas/amount'
        transactionTypeCode:
          description: |
            Type of the transaction as code.
          allOf:
            - $ref: '#/components/schemas/TransactionActivityCode'
        transactionTypeProprietary:
          description: |
            Type of the transaction as a proprietary string.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        placeOfTrade:
          description: |
            If the transaction is the result of a trade, place of trade.
          allOf:
            - $ref: '#/components/schemas/marketIdentification'
        amountIncludesFees:
          description: |
            Indicates whether the \"transactionAmount\" (see below) is including fees.
            Default: false.
          type: boolean
        amountIncludesTaxes:
          description: |
            Indicates whether the \"transactionAmount\" (see below) is including taxes.
            Default: false.
          type: boolean
        transactionAmount:
          description: |
            Transaction amount for the transferred security for the PSU. Potential fees or taxes are reflected as indicated by elements \"amountIncludesFees\" and \"amountIncludesTaxes\".
            Remark: The price denoted here is the price for the whole lot of securities within this transaction, not for a single item.
          allOf:
            - $ref: '#/components/schemas/amount'
        relatedFees:
          description: |
            Only allowed if \"amountIncludesFees\" = true. In that case, the structure contains details of the fees 
            that have been applied to this transaction (and therefore represent additional costs of the transaction beyond the \"transactionAmount\").
            Fees with positive amount are debited by the PSU, only in the rare case of a fee credited to the PSU (e.g. in case of a reversal) negative amounts are used.
          type: array
          items:
            $ref: '#/components/schemas/securitiesTransactionFee'
        currencyExchange:
          description: |
            The ASPSP might include exchange rates e.g. if the transaction has been settled in another currency than the PSU's currency.
          type: array
          items:
            $ref: '#/components/schemas/reportExchangeRate'
        reversalIndicator:
          description: |
            The ASPSP might include exchange rates e.g. if the transaction has been settled in another currency than the PSU's currency.
          type: boolean
        reversedTransactionId:
          description: |
            \"transactionId\" of the reversed transaction, if applicable and supported by the ASPSP.
          type: string
        unitsNumberBeforeTx:
          description: |
            Numeric quantification of the financial instrument within the primary position before the transaction, negative values for short positions.
          type: number
        unitsNominalBeforeTx:
          description: |
            Nominal quantification of the financial instrument within the primary position before the transaction, negative values for short positions.
          allOf:
            - $ref: '#/components/schemas/amount'
        unitsNumberAfterTx:
          description: |
            Numeric quantification of the financial instrument within the primary position after the transaction, negative values for short positions.
          type: number
        unitsNominalAfterTx:
          description: |
            Nominal quantification of the financial instrument within the primary position after the transaction, negative values for short positions.
          allOf:
            - $ref: '#/components/schemas/amount'
        accruedInterest:
          description: |
            Accrued interest of the transferred quantity of financial instruments.
          allOf:
            - $ref: '#/components/schemas/accruedInterest'
        details:
          description: |
            Additional details to the transaction.
          allOf:
            - $ref: '#/components/schemas/Max500Text'
        _links:
          description: |
            The following types of links are supported:
            \"transactionDetails\": Single link for retrieving details on this specific transaction.
          allOf:
            - $ref: '#/components/schemas/links'
    Max16Text:
      type: string
      maxLength: 16
      example: '16 Chars at most'
    corporateAction:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Corporate Action\" for more details.
      type: object
      required:
        - eventType
        - eventId
      properties:
        eventType:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        eventId: 
          description: |
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
    accruedInterest:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Accrued Interest\" for more details.
      type: object
      properties:
        daysAccrued:
          description: |
            Specifies the number of days used for calculating the accrued interest amount.
          type: number
        amounts:
          description: |
            Amount of the accrued interest. Each item represents the same monetary value in different currencies, 
            e.g. account currency, currency of the security's denomination.
          type: array
          items:
            $ref: '#/components/schemas/amount'
    accountOwner:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Account Owner\" for more details.
      type: object
      required:
        - name
      properties:
        name:
          description: |
            Account owner name
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        role:
          description: |
            The following proprietary codes are used:
            \"owner\", \"legalRepresentative\", \"authorisedUser\".
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        postalAddress:
          description: |
            Information that locates and identifies a specific address, as defined by postal services.
          allOf:
            - $ref: '#/components/schemas/postalAddress'
        identification:
          description: |
            Unique and unambiguous identification of a party
          allOf:
            - $ref: '#/components/schemas/partyIdentification'
        countryOfResidence:
          description: |
            Country in which a person resides. In case of a company, it is the country from which the affairs of that company are directed.
            Constraints: The code is checked against the list of country names obtained from the United Nations (ISO 3166 Alpha-2 code).
          allOf:
            - $ref: '#/components/schemas/CountryCode'
        contactDetails:
          description: |
            Set of elements used to indicated how to contact the party.
          allOf:
            - $ref: '#/components/schemas/contactDetails'
    TypeOfOrderCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Type of Order Code\" for more details.
      type: string
      enum:
        - allOrNone
        - buyContraShortExempt
        - buyContraShort
        - buyMinus
        - carefully
        - combinationOrder
        - discretionary
        - doNotIncrease
        - doNotReduce
        - icebergOrder
        - limitWith
        - limitWithout
        - limitOrder
        - atMarket
        - marketNotHeld
        - marketToLimitOrder
        - marketUntilTouched
        - notHeld
        - orderLie
        - stopLimit
        - stopOrder
        - stopLoss
        - sellPlus
        - sellShortExempt
        - sellShort
      example: 'allOrNone'
    CardTransactionType:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Card Transaction Type\" for more details.
      type: string
      enum:
        - AGGR
        - DCCV
        - GRTT
        - INSP
        - LOYT
        - NRES
        - PUCO
        - RECP
        - SOAF
        - UNAF
        - VCAU
      example: 'ECTL'
    accountRelatedDates:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Account related Dates\" for more details.
      type: object
      properties:
        contractStartDate:
          description: |
            Start of the account contract.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        contractEndDate:
          description: |
            End of the account contract.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        contractAvailabilityDate:
          description: |
            Next Date where money can be taken off a saving account without loss of interest, if initiated now (in case of a saving account).
            Next Date where a loan can be fully repaid without any extra fee.
          allOf:
            - $ref: '#/components/schemas/ISODate'
    relatedDates:
       description: |
         See document \"openFinance API Framework Data Dictionary\", section \"Related Dates\" for more details.
       type: object
       properties:
         acceptanceDateTime:
           description: |
           allOf:
             - $ref: '#/components/schemas/ISODateTime'
         tradeActivityContractualSettlementDate:
           description: |
           allOf:
             - $ref: '#/components/schemas/ISODate'
         tradeDate:
           description: |
           allOf:
             - $ref: '#/components/schemas/ISODate'
         interbankSettlementDate:
           description: |
           allOf:
             - $ref: '#/components/schemas/ISODate'
         startDate:
           description: |
           allOf:
             - $ref: '#/components/schemas/ISODate'
         endDate:
           description: |
           allOf:
             - $ref: '#/components/schemas/ISODate'
         transactionDateTime:
           description: |
           allOf:
             - $ref: '#/components/schemas/ISODateTime'
    personIdentification:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Person Identification\" for more details.
      type: object
      required:
        - identification
      properties:
        identification:
          description: |
            Unique and unambiguous identification of a oersib.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        schemeNameCode:
          description: |
            An entry provided by an external ISO code list
          allOf:
            - $ref: '#/components/schemas/PersonIdentificationCode'
        schemeNameProprietary:
          description: |
            A scheme name defined in a proprietary way.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        issuer:
          description: |
            Issuer of the identification
          allOf:
            - $ref: '#/components/schemas/Max35Text'
    paymentReturnReason:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Payment Return Reason\" for more details.
      type: object
      properties:
        originalBankTransactionCode:
          description: |
          allOf: 
            - $ref: '#/components/schemas/BankTransactionCode'
        originalBankTransactionCodeProprietary:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        originalBankTransactionCodeIssuer:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        originator:
          description: |
          allOf:
            - $ref: '#/components/schemas/partyDescription'
        reasonCode:
          description: |
            ExternalReturnReason1Code
          allOf:
            - $ref: '#/components/schemas/ReturnReasonCode'
        reasonProprietary:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        additionalInformation:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max105Text'
    AccountIdentificationCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum: 
        - AIIN
        - BBAN
        - CUID
        - UPIC
      example: 'AIIN'
    taxDetails:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Tax Details\" for more details.
      type: object
      required:
        - amount
      properties:
        period:
          description: |
            Provides details on the period of time of the related tax payment. 
          allOf:
            - $ref: '#/components/schemas/taxPeriod'
        amount:
          description: |
            Tax amount related to the specified period.
          allOf:
            - $ref: '#/components/schemas/amount'
    taxPeriod:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Tax Period\" for more details.
      type: object
      properties:
        year:
          description: |
            Year of the related tax payment. 
          allOf:
            - $ref: '#/components/schemas/ISODate'
        type:
          description: |
            Identification of the period related to the tax payment.
          allOf:
            - $ref: '#/components/schemas/TaxRecordPeriodCode'
        fromToDate:
          description: |
            Start and end date of the tax report.
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
    agentDescription1:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Agent Description1\" for more details.
      type: object
      required:
        - financialInstitutionId
      properties:
        financialInstitutionId:
          description: |
          allOf:
            - $ref: '#/components/schemas/financialInstitutionIdentification'
    interestRecord: 
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Interest Record\" for more details.
      type: object
      required:
        - amount
      properties:
        amount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
        typeCode: 
          description: |
            InterestType1code
          allOf: 
            - $ref: '#/components/schemas/InterestType1Code'
        rate:
          description: |
          allOf:
            - $ref: '#/components/schemas/rate'
        fromDateTime:
          description: |
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        toDateTime:
          description: |
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        reason: 
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        tax: 
          description: |
            - $ref: '#/components/schemas/tax'
    agentDescription:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Agent Description\" for more details.
      type: object
      required:
        - financialInstitutionId
      properties:
        financialInstitutionId:
          description: |
          allOf:
            - $ref: '#/components/schemas/financialInstitutionIdentification'
        branchIdentificationId:
          description: |
            Unique and unambiguous identification of a branch of a financial institution.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        branchIdentificationName:
          description: |
            Name by which an agent is known and which is usually used to identify that agent.
          allOf:
            - $ref: '#/components/schemas/Max140Text'
    CreditDebitCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"CreditDebitCode\" for more details.
      type: string
      enum:
        - CRDT
        - DBIT
      example: 'CRDT'
    ReferredDocumentTypeCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Referred Document Type Code\" for more details.
      type: string
      enum:
        - MSIN
        - CNFA
        - DNFA
        - CINV
        - CREN
        - DEBN
        - HIRI
        - SBIN
        - CMCN
        - SOAC
        - DISP
        - BOLD
        - VCHR
        - AROI
        - TSUT
        - PUOR
      example: 'PUOR'
    creditorReferenceInformation:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Creditor Reference Information\" for more details.
      type: object
      required:
        - reference
      properties:
        reference:
          description: |
            The actual reference.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        referenceTypeCode:
          description: |
            Type of the reference, provided as code.
          allOf:
            - $ref: '#/components/schemas/CreditorReferenceTypeCode'
        referenceTypeProprietary:
          description: |
            Type of the reference, provided in proprietary encoding.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        referenceIssuer:
          description: |
            Issuer of the reference.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
    creditLine:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Credit Line\" for more details.
      type: object
      required:
        - included
      properties:
        included:
          description: |
          type: boolean
        typeCode:
          description: |
            short ISO Code
          allOf:
            - $ref: '#/components/schemas/CreditLineType'
        typeProprietary:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        amount:
          description: |
            amount of the credit line.
          allOf:
            - $ref: '#/components/schemas/amount'
        date:
          description: |
            Date of the credit line provided, when multiple credit lines may be provided.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        dateTime:
          description: |
            Date/Time of the credit line provided, when multiple credit lines may be provided.
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
    interest:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Interest\" for more details.
      type: object
      required:
        - rate
      properties:
        type:
          description: |
            Type of the interest. Currently, interests are distinguished between those with fixed rates (\"FIXD\") and those with rates derived from an index (\"INDE\").
          allOf:
            - $ref: '#/components/schemas/InterestTypeCode3'
        relatedIndices:
          description: |
            List of indices related to the interest rate.
          type: array
          items:
            $ref: '#/components/schemas/index'
        rate:
          description: |
            An array of interest rates, which might apply to different amount ranges.
          type: array
          items:
            $ref: '#/components/schemas/amountDependentRate'
        fromDateTime:
          description: |
            The date from which this interest rate is applicable. If no exact time is applicable, 00:00:00 is chosen as time definition.
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        toDateTime:
          description: |
            The date until this interest rate is applicable. If no exact time is applicable, 23:59:59 is chosen as time definition.
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        reason:
          description: |
            Specifies the reason of the interest.
            Though arbitrary text is technically supported, it is recommended to use the following keywords with pre-defined meaning:
            * *arrears:*The addressed interest rate applies only in case of arrears.
            * *alternateRateMaximumOf:* The addressed alternate interest rate applies in cases where this rate implies a higher interest in a dedicated interest period
            than the regular interest rate provided without reason element.
            * *alternateRateMinimumOf:* The addressed alternate interest rate applies in case where this rate implies a lower interest in a dedicated interest period
            than the regular interest rate provided without reason element.
            ASPSPs may define further keywords and shall publish them in their documentation.
          allOf:
                - $ref: '#/components/schemas/Max35Text'
        changeMechanism:
          description: |
            An explanation of a mandated change mechanism.
          allOf:
            - $ref: '#/components/schemas/Max1024Text'
    rate:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Rate\" for more details.
      type: object
      properties:
        typePercentage:
          description: |
          allOf:
            - $ref: '#/components/schemas/PercentageRate'
        typeOther:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        validityRange:
          description: |
          allOf:
            - $ref: '#/components/schemas/amountRange'
    amountRange:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Amount Range\" for more details.
      type: object
      properties:
        fromAmount: 
          description: |
          allOf: 
            - $ref: '#/components/schemas/boundaryAmount'
        toAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/boundaryAmount'
        fromToAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/fromToAmountRange'
        equalAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
        notEqualAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
    statement:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Statement\" for more details.
      type: object
      required:
        - identification
        - account
        - balance
        - entry
      properties:
        identification:
          description: |
            Unique identification, as assigned by the account servicer, to unambiguously identify the account statement.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        pageNumber:
          description: |
            Page Number.
          type: integer
        lastPageIndicator:
          description: |
            Indicates the last page.
          type: boolean
        electronicSequenceNumber:
          description: |
            Sequential number of the statement, as assigned by the account servicer.
            Usage: The sequential number is increased incrementally for each statement sent electronically.
          type: integer
        legalSequenceNumber:
          description: |
            Legal sequential number of the statement, as assigned by the account servicer. It is increased incrementally for each statement sent.
          type: integer
        creationDateTime:
          description: |
            Date and time at which the statement was created.
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        fromDateTime:
          description: |
            Date and time at which the period starts.
            Remark: The value 00:00:00 should be used for expressing that only the date is relevant
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        toDateTime:
          description: |
            Date and time at which the period ends
            Remark: The value 24:00:00 should be used for expressing that only the date is relevant.
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        account: 
          description: |
            Unambiguous identification of the account to which credit and debit entries are made.
          allOf: 
            - $ref: '#/components/schemas/accountReference4'
        relatedAccount: 
          description: |
            Identifies the parent account of the account, for which the statement has been issued.
          allOf: 
            - $ref: '#/components/schemas/accountReference'
        interest:
          description: |
            Provides general interest information that applies to the account at a particular moment in time.
          type: array
          items:
            $ref: '#/components/schemas/accountInterest'
        balance: 
          description: |
            Set of elements used to define the balance as a numerical representation of the net increases and decreases in an account at a specific point in time.
          type: array
          items:
            $ref: '#/components/schemas/balanceStatement'
        transactionSummary:
          description: |
            Provides transction summary Information 
          allOf:
            - $ref: '#/components/schemas/transactionSummary'
        entry:
          description: |
            One array element specifies an entry in the report.
          type: array
          items:
            $ref: '#/components/schemas/entry'
    _links_200_AISLOANACCOUNTTXLIST: 
      type: object
      additionalProperties: 
        $ref: '#/components/schemas/hrefType'
      properties:
        download:
          $ref: '#/components/schemas/hrefType'
    error_NG_404_AIS: 
      type: object
      properties:
        apiClientMessages:
          type: array
          items:
            $ref: '#/components/schemas/clientMessageInformation_404_AIS'
        _links:
          $ref: '#/components/schemas/links'
    ExternalFinancialInstrumentIdentificationTypeCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Exchange Rate Type Code\" for more details.
      type: string
      enum:
        - BELC
        - BLOM
        - CCCD
        - CMED
        - COMM
        - CTAC
        - CUSP
        - FIGC
        - FIGG
        - FIGI
        - ISDU
        - ISDX
        - LCHD
        - OCCS
        - OPRA
        - RCMD
        - RICC
        - SEDL
        - SICC
        - TIKR
        - VALO
        - WKNR
      example: 'WKNR'
    InterestType1Code:
      description:
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - INDY
        - OVRN
    Max105Text:
      type: string
      maxLength: 105
      example: 'Text, maximum of 105 characters.'
    proxyAccountIdentification:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Proxy Account Identification\" for more details.
      type: object
      required:
        - identification
      properties:
        typeCode:
          description: |
            Type of the proxy identification
          allOf:
            - $ref: '#/components/schemas/ProxyAccountTypeCode'
        typeProprietary:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        identification:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max2048Text'
    structuredAdditionalTransactionInformation:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Structured Additional Transaction Information\" for more details.
      type: object
      required:
        - transactionStatus
      properties:
        transactionStatus:
          description: |
          allOf:
            - $ref: '#/components/schemas/TransactionStatus'
        transactionCreated:
          description: |
          allOf:
            - $ref: '#/components/schemas/userEntry'
        transactionAuthorised:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/userEntry'
        transactionCancelled:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/userEntry'
    paymentConditions:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Payment Conditions\" for more details.
      type: object
      properties:
        amountModificationAllowed:
          description: |
            Indicates if the debtor is allowed to pay a different amount then the requested amount.
          type: boolean
        earlyPaymentAllowed:
          description: |
            Indicates if the debtor is allowed to pay before the requested execution date.
          type: boolean
    ExternalLocalInstrumentCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Exchange Rate Type Code\" for more details.
      type: string
      enum:
        - 0090
        - 0091
        - 0092
        - 0002
        - 0221
        - 0224
        - 0226
        - 0225
        - 0222
        - 0227
        - 0220
        - 0223
        - 0001
        - 0000
        - BTR
        - CKS
        - CTR
        - CTP
        - DEP
        - FFR
        - FFS
        - SVC
        - DRW
        - DRB
        - DRC
        - DDMC
        - DDMP
        - DDMU
        - BPA
        - IPA
        - TRF
        - 82
        - 83
        - CPP
        - RTR
        - GST
        - DDT
        - RDD
        - CHN
        - STR
        - SDD
        - SRT
        - SRD
        - SCN
        - SGT
        - CARD
        - 05
        - 04
        - ISE
        - BSE
        - 58
        - 19
        - ASTI
        - BACP
        - MANP
        - SBTI
        - 85
        - 08
        - 89
        - 60
        - RIBA
        - RIDO
        - RIDV
        - IDEAL
        - INSTNT01
        - INSTTC01
        - INSTIDEAL
        - INSTNT01IDEAL
        - INSTTC01IDEAL
        - NLDO
        - NLUP
        - SDN
        - ACCEPT
        - ICMC
        - NLGOV
        - IN
        - ONCL
        - PERI
        - SDCL
        - DDNR
        - DDFA
        - CORE
        - B2BAMIPM
        - B2B
        - CR1AMIPM
        - CORAMIPM
        - COR1
        - FADAMIPM
        - CLSCCPERX
        - CLSCCPLCH
        - INST
        - ADD
        - UDD
        - CCI
        - IAT
        - CCD
        - CTX
        - PPD
        - CIE
        - RCK
        - ARC
        - WEB
        - POP
        - POS
        - TEL
        - ITP
        - CTP
        - MDP
        - IMD
        - SOP
        - FDP
      example: 'CORE'
    securitiesOrder:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Securities Order\" for more details.
      type: object
      required:
        - side
        - financialInstrument
            - orderStatus
      properties:
        orderId:
          description: |
            Can be used as access-ID in the API, where more details on an order is offered.
            If this data attribute is provided, this shows that the API Client can get access on more details about this transaction using the Read Securities Order Details Request.
            *Remark:* Implementers might want to anticipate future services supporting placement or revocation of  orders via the openFinance API. It is therefore recommended to define 
            the orderId in a way that it will also identify an order in the case of a placement / revocation.
          type: string
        side:
          description: |
            Type of transaction that is associated with this order.
          allOf:
            - $ref: '#/components/schemas/SecuritiesOrderSide'
        financialInstrument:
          description: |
            Financial instrument the order refers to.
          allOf:
            - $ref: '#/components/schemas/financialInstrumentIdentification'
        unitsNumberOrder:
          description: |
            Numeric quantification of the financial instrument that is ordered.
          type: number
        unitsNominalOrder:
          description: |
            Nominal quantification of the financial instrument that is ordered.
          allOf:
            - $ref: '#/components/schemas/amount'
        unitsNumberDisplay:
          description: |
            Numeric quantification of the order that shall be displayed.
          type: number
        unitsNominalDisplay:
          description: |
            Nominal quantification of the order that shall be displayed.
          allOf:
            - $ref: '#/components/schemas/amount'
        placeOfTrade:
          description: |
          allOf:
            - $ref: '#/components/schemas/marketIdentification'
        limitPriceAmount:
          description: |
            Limit price displayed as an amount.
          allOf:
            - $ref: '#/components/schemas/amount'
        limitPricePercent:
          description: |
            Limit price displayed as a percentage rate.
            Up to 20 significant figures. The decimal separator is a dot.
            Trailing zeroes must be truncated.
          type: string
          pattern: '-?[0-9]{1,20}(\.[0-9]{0,19})?'
        stopPriceAmount:
          description: |
            Stop price displayed as an amount.
          allOf:
            - $ref: '#/components/schemas/amount'
        stopPricePercent:
          description: |
            Stop price displayed as a percentage rate.
            Up to 20 significant figures. The decimal separator is a dot.
            Trailing zeroes must be truncated.
          type: string
          pattern: '-?[0-9]{1,20}(\.[0-9]{0,19})?'
        tradingSessionIndicator:
          description: |
            Type of the trading session, in which the order shall be executed.
          allOf:
            - $ref: '#/components/schemas/TradingSessionTypeCode'
        typesOfOrder:
          description: |
            One or more codes to indicate characteristics of the order.
          type: array
          items:
            $ref: '#/components/schemas/TypeOfOrderCode'
        timeInForce:
          description: |
            If the order is restricted by a time limit, the type time limit is indicated by a value of the corresponding code set.
          allOf:
            - $ref: '#/components/schemas/OrderTimeLimitCode'
        expiryDate:
          description: |
            Expiry date of the order if applicable.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        expiryDateTime:
          description: |
            Expiry date and time of the order if applicable.
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        relatedCashAccount:
          description: |
            If the execution of this order implies the transfer of money, cash account to be affected by this transfer from the PSU's side.
          allOf:
            - $ref: '#/components/schemas/accountReference'
        orderSplit:
          description: |
            Value \"true\" indicates that this order is the result of an order split. Missing values indicate \"false\".
          type: boolean
        orderModifyable:
          description: |
            Value \"true\" indicates that this order can (still) be modified. Missing values indicate \"false\".
          type: boolean
        orderStatus:
          description: |
            Status of the order.
          allOf:
            - $ref: '#/components/schemas/OrderStatusCode'
        details:
          description: |
            Additional details to the position.
          allOf:
            - $ref: '#/components/schemas/Max500Text'
        _links:
          description: |
            The following types of links are supported:
            \"relatedOrders\": An array of links to request order details of related orders (e.g. other orders that originated from the same order split as this order).
            \"relatedTransactions\": An array of links to request securities transaction details of transactions that resulted from this order.
            \"orderDetails\": Single link for retrieving details on this specific order.
          allOf: 
            - $ref: '#/components/schemas/links'
    clientMessageInformation_409_AIS:
      type: object
      required:
        - category
        - code
      properties:
        category:
          description: |
            Only \"ERROR\" or \"WARNING\" permitted
          type: string
        code:
          $ref: '#/components/schemas/MessageCode_409_AIS'
        path:
          type: string
        text:
          $ref: '#/components/schemas/Max500Text'
    accountDetails:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Account Details\" for more details.
      type: object
      required:
        - resourceId
        - currency
      properties:
        resourceId:
          description: |
            This is the data element to be used in the path when retrieving data from a dedicated account.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        iban:
          description: |
            IBAN of the account.
          allOf:
            - $ref: '#/components/schemas/IBAN'
        bban:
          description: |
            BBAN of the account. This data elements is used for payment accounts which have no IBAN.
          allOf:
            - $ref: '#/components/schemas/BBAN'
        msisdn:
          description: |
            An alias to access a payment account via a registered mobile phone number. This alias might be needed e.g. in the payment initiation services.
            The support of this alias must be explicitly documented by the ASPSP for the corresponding API Calls.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        other:
          description: |
            An alias with a proprietary coding
          allOf:
            - $ref: '#/components/schemas/genericAccountIdentification'
        currency:
          description: |
            Account currency
          allOf:
            - $ref: '#/components/schemas/CurrencyCode'
        ownerName:
          description: |
            Name of the legal account owner. If there is more than one owner, then e.g. two names might be noted here.
            For a corporate account, the corporate name is used for this attribute.
            Even if supported by the ASPSP, the provision of this field might depend on the fact whether  an explicit consent to this specific additional account information has been given by the PSU.
            NOTE: This attribute is deprecated in later versions.
          allOf:
            - $ref: '#/components/schemas/Max140Text'
        ownerNames:
          description: |
            List of owner names together with a role, where applicable.
            NOTE: This attribute is deprecated in later versions.
          type: array
          items:
            $ref: '#/components/schemas/accountOwner'
        owner:
          description: |
            The party that legally owns the account.
          allOf:
            - $ref: '#/components/schemas/accountOwner'
        owners:
          description: |
            List of account owners.
          type: array
          items:
            $ref: '#/components/schemas/accountOwner'
        name:
          description: |
            Name of the account, as assigned by the ASPSP, in agreement with the account owner in order to provide an additional means of identification of the account.
          allOf: 
            - $ref: '#/components/schemas/Max70Text'
        displayName:
          description: |
            Name of the account as defined by the PSU within online channels.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        product:
          description: |
            Product Name of the Bank for this account, proprietary definition
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        cashAccountType:
          description: |
            ExternalCashAccountType1Code from ISO 20022
          allOf:
            - $ref: '#/components/schemas/CashAccountType'
        status:
          description: |
            Account status.
            If this field is not used, than the account is available in the sense of this specification.
          allOf:
            - $ref: '#/components/schemas/AccountStatusCode'
        bic:
          description: |
                    The BIC associated to the account.
          allOf:
            - $ref: '#/components/schemas/BICFI'
        linkedAccounts:
          description: |
            This data attribute is a field, where an ASPSP can name a cash account associated to the described account, e.g. in case of a securities account or a card account.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        usage:
          description: |
            Specifies the usage of the account
            * \"PRIV\": private personal account
            * \"ORGA\": professional account
          allOf:
            - $ref: '#/components/schemas/Max4Text'
        details:
          description: |
            Specifications that might be provided by the ASPSP
            * characteristics of the account
            * characteristics of the relevant card
          allOf:
            - $ref: '#/components/schemas/Max500Text'
        balances:
          type: array
          items:
            $ref: '#/components/schemas/balance'
        tariffs:
          description: |
            Currently only supported for securities accounts:
            Text information on tariffs related to this securities account.
          allOf:
            - $ref: '#/components/schemas/Max1000Text'
        applicableFees:
          description: |
            Currently only supported for securities accounts:
            Array of elements, each representing one fee (rule) that is individually applicable for this Securities account. 
            If, for example, an ASPSP applies a standard \"managementFee\" X, but the consumer negotiated a discount D, an element should represent (X-D), but neither X nor D.
          type: array
          items:
            $ref: '#/components/schemas/securitiesAccountFee'
        interest:
          description: |
            Currently only supported for savings accounts and loan accounts:
            A set of interest rates associated to this account, e.g. interests for savings or credits.
          type: array
          items:
            $ref: '#/components/schemas/interest'
        relatedDates:
          description: |
            Currently only supported for securities accounts:
            Text information on tariffs related to this securities account.
          allOf:
            - $ref: '#/components/schemas/accountRelatedDates'
        collateralsInvolved:
          description: |
            Currently only supported for loan accounts:
            Is set to true if a collateral is involved securing the loan (e.g. security deposit, physical collaterals like houses, cars). 
            More information might be provided under the \"details\" attribute.
          type: boolean
        guaranteeInvolved:
          description: |
            Currently only supported for loan accounts:
            Is set to true in case of specific collaterals where a guarantee of payment of the loan is given by a different person.
          type: boolean
        _links:
          description: |
            Links to the account, which can be directly used for retrieving account information from this dedicated account.
            Links to \"balances\" and/or \"transactions\".
            Links to \"orders\" and/or \"positions\" in the case of securities accounts.
            These links are only supported, when the corresponding consent has been already granted.
          allOf:
            - $ref: '#/components/schemas/links'
    TaxRecordPeriodCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
        Specifies the period related to the tax payment.
      type: string
      enum:
        - MM01
        - MM02
        - MM03
        - MM04
        - MM05
        - MM06
        - MM07
        - MM08
        - MM09
        - MM10
        - MM11
        - MM12
        - QTR1
        - QTR2
        - QTR3
        - QTR4
        - HLF1
        - HLF2
    accountInterest:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Account Interest\" for more details.
      type: object
      properties:
        typeCode:
          description: |
            INDY  for Intraday interest and OVRN Overnight for overnight interest as the only permitted codes.
          allOf: 
            - $ref: '#/components/schemas/InterestType1Code'
        typeProprietary:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        rate:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/rate'
        fromDateTime:
          description: |
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        toDateTime:
          description: |
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        reason:
          description: |
            specifies the reason for the interest
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        tax:
          description: |
          allOf: 
            - $ref: '#/components/schemas/tax'
    clientMessageInformation_400_AIS:
      type: object
      required:
        - category
        - code
      properties:
        category:
          description: |
            Only \"ERROR\" or \"WARNING\" permitted
          type: string
        code:
          $ref: '#/components/schemas/MessageCode_400_AIS'
        path:
          type: string
        text:
          $ref: '#/components/schemas/Max500Text'
    Max1024Text:
      type: string
      maxLength: 1024
      example: 'Text, maximum of 1024 characters.'
    Max2048Text:
      type: string
      maxLength: 2048
      example: 'Text, maximum of 2048 characters.'
    MessageCode_405_AIS: 
      description: |
        Message codes defined for AIS for HTTP Error code 405 (METHOD NOT ALLOWED).
      anyOf:
        - $ref: '#/components/schemas/MessageCode_ServiceUnspecific_405'
    OrganisationIdentificationCode:
      description: |
      type: string
      enum:
        - BANK
        - CBID
        - CHID
        - CINC
        - COID
        - CUST
        - DUNS
        - EMPL
        - GS1G
        - SREN
        - SRET
        - TXID
        - BDID
        - BOID
      example: 'BOID'
    securitiesPosition:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Securities Position\" for more details.
      type: object
      required:
        - financialInstrument
      properties:
        financialInstrument:
          description: |
            Financial instrument that is held within this position.
          allOf:
            - $ref: '#/components/schemas/financialInstrumentIdentification'
        unitsNumber:
          description: |
            Numeric quantification of the financial instrument within this position, negative values for short positions.
          allOf:
            - type: number
        unitsNominal:
          description: |
            Nominal quantification of the financial instrument within this position, negative values for short positions.
          allOf:
            - $ref: '#/components/schemas/amount'
        externalIdentifier:
          description: |
            Name or identifier with an intrinsic meaning for the PSU to be displayed.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        safekeepingPlace:
          description: |
            BIC of the place where the securities are safe-kept, physically or notionally. 
          allOf:
            - $ref: '#/components/schemas/BICFI'
        safekeepingCountry:
          description: |
            Country where the securities are safe-kept.
          allOf:
            - $ref: '#/components/schemas/CountryCode'
        balanceType:
          description: |
            Specifies the nature of the securities or investment fund balance.
            Type of balance in case of multiple positions for the same financial instrument for further distinction.
            Remark: In consequence, several positions with the same financial instrument may occur in one position list, having different values of \"balanceType\".
          allOf:
            - $ref: '#/components/schemas/SecuritiesBalanceTypeCode'
        averageBuyingPrice:
          description: |
            Average buying price of the position excluding any fees or taxes.
          allOf:
            - $ref: '#/components/schemas/amount'
        averageSellingPrice:
          description: |
            Average selling price of the position, e.g. in case of a short position. Price excluding any fees or taxes.
          allOf:
            - $ref: '#/components/schemas/amount'
        totalBuyingPrice:
          description: |
            In case of bonds, an average buying price does not make sense. Therefore, the total buying price excluding any fees or taxes can be displayed instead.
          allOf:
            - $ref: '#/components/schemas/amount'
        estimatedCurrentValue:
          description: |
            Estimated value of the position and timestamp of the estimation.
          allOf:
            - $ref: '#/components/schemas/evaluatedAmount'
        accruedInterest:
          description: |
            Accrued interest by the position.
          allOf:
            - $ref: '#/components/schemas/accruedInterest'
        currencyExchange:
          description: |
            The ASPSP might include exchange rates e.g. if the security is denoted in another currency than the account itself.
          type: array
          items:
            $ref: '#/components/schemas/reportExchangeRate'
        details:
          description: |
            Additional details describing the position.
          allOf:
            - $ref: '#/components/schemas/Max500Text'
    cardAccountReport:
      description: |
         See document \"openFinance API Framework Data Dictionary\", section \"Card Account Report\" for more details.
      type: object
      required:
        - _links
      properties:
        booked:
          description: |
            Shall be contained if bookingStatus parameter is set to \"booked\" or \"both\".
          type: array
          items:
            $ref: '#/components/schemas/cardTransactions'
        pending:
          description: |
            Not contained if the bookingStatus parameter is set to \"booked\".
          type: array
          items:
            $ref: '#/components/schemas/cardTransactions'
        _links:
          description: |
            The following links might be used within this context:
            * cardAccount (mandatory when providing transaction reports on card reconciliation accounts under /card-accounts)
            * card (mandatory when providing transaction reports on single card entry level under /cards)first (optional)
            * next (optional)
            * previous (optional)
            * last (optional)
          allOf:
            - $ref: '#/components/schemas/links'
    proprietaryPrice:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Proprietary Price\" for more details.
      type: object
      required:
        - type
        - price
      properties:
        type:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        price:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
    balance:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Balance\" for more details.
      type: object
      required:
        - balanceAmount
        - balanceType
      properties:
        balanceAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
        balanceType:
          description: |
          allOf:
            - $ref: '#/components/schemas/BalanceType'
        creditLimitIncluded:
          description: |
            A flag indicating if the credit limit of the corresponding account is included in the calculation of the balance, where applicable.
          type: boolean
        lastChangeDateTime:
          description: |
            This data element might be used to indicate e.g. with the expected or booked balance that no action is known on the account, which is not yet booked.
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        referenceDate:
          description: |
            indicates the date of the balance
          allOf:
            - $ref: '#/components/schemas/ISODate'
        lastCommittedTransaction:
          description: |
            entryReference of the last commited transaction to support the TPP in identifying whether all PSU transactions are already known.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
    PercentageRate:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
        Rate expressed as a percentage, that is, in hundredths, for example, 0.7 is 7/10 of a percent, and 7.0 is 7%.
      type: string
      pattern: '^\d\.\d{10}$'
      example: '0.7000000000'
    relatedParties:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Related Parties\" for more details.
      type: object
      properties:
        initiatingParty:
          description: |
          allOf: 
            - $ref: '#/components/schemas/partyDescription'
        initiatingPartyAgent:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        debtor:
          description: |
          allOf: 
            - $ref: '#/components/schemas/partyDescription'
        debtorAgent:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        debtorAccount: 
          description: |
          allOf:
            - $ref: '#/components/schemas/accountReference'
        ultimateDebtor:
          description: |
          allOf: 
            - $ref: '#/components/schemas/partyDescription'
        ultimateDebtorAgent:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        creditor:
          description: |
          allOf: 
            - $ref: '#/components/schemas/partyDescription'
        creditorAgent:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        creditorAccount: 
          description: |
          allOf:
            - $ref: '#/components/schemas/accountReference'
        ultimateCreditor:
          description: |
          allOf: 
            - $ref: '#/components/schemas/partyDescription'
        ultimateCreditorAgent:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        tradingParty:
          description: |
          allOf: 
            - $ref: '#/components/schemas/partyDescription'
        tradingPartyAgent:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
    hrefType:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"href Type\" for more details.
      type: object
      required:
        - href
      properties:
        href:
          description: |
          type: string
    IBAN:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      pattern: '[A-Z]{2,2}[0-9]{2,2}[a-zA-Z0-9]{1,30}'
      example: 'FR7612345987650123456789014'
    totalNetEntry:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Total Net Entry\" for more details.
      type: object
      required:
        - amount
        - creditDebitIndicator
      properties:
        amount:
          description: |
            Amount of the netted amount of all debit and credit entries.
          allOf:
            - $ref: '#/components/schemas/amount'
        creditDebitIndicator:
          description: |
            Indicated whether the amount is a debit or credit amount.
          allOf:
            - $ref: '#/components/schemas/CreditDebitCode'
    index:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Index\" for more details.
      type: object
      properties:
        index:
          description: |
            Though arbitrary text is technically supported, it is recommended to use the following keywords:
            * \"CPI\" - customer Price Index
            * \"FC\" - foreign currency
            * \"other\" - for others, not clearly specified index relations.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        rootIndexValue:
          description: |
            A number (represented as a string) giving the basic index value which is the basis for the loan contract.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        exchangeRate:
          description: |
            Intended for usage in case of index = \"FC\".
          allOf:
            - $ref: '#/components/schemas/amountDependentRate'
        additionalInformation:
          description: |
            Explanations e.g. to specify index = \"other\".
          allOf:
            - $ref: '#/components/schemas/Max500Text'
    error_RFC7807_401_AIS: 
      description: |
        Standardised definition of reporting error information according to [RFC7807].
      type: object
      required:
        - type
        - code
      properties:
        type: 
          description: |
            A URI reference [RFC3986] that identifies the problem type. 
            Remark For Future: These URI will be provided by openFinance API Framework in future.
          type: string
          format: uri
          maxLength: 70
        title:
          description: |
            Short human readable description of error type. Could be in local language. To be provided by ASPSPs.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        status:
          description: |
            HTTP response code generated by the server.
            If contained, this is more relevant as the actual http response code in the actual response, because it is introduced by the application server.            
          type: integer
        detail:
          description: |
            Detailed human readable text specific to this instance of the error. 
          allOf:
            - $ref: '#/components/schemas/Max500Text'
        instance:
          description: |
            This attribute is containing a JSON pointer (as defined in [RFC6901]) or XPath expression to indicate the path to an issue generating the error in the related request.
          allOf:
            - $ref: '#/components/schemas/Max256Text'
        code:
          $ref: '#/components/schemas/MessageCode_401_AIS'
        additionalErrors:
          description: |
            Array of Error Information Blocks.
            Might be used if more than one error is to be communicated
          type: array
          items: #ErrorInformation
            description: This is a data element to support the declaration of additional errors in the context of [RFC7807]. 
            type: object
            required:
              - code
            properties:
              title:
                $ref: '#/components/schemas/Max70Text'
              detail:
                $ref: '#/components/schemas/Max500Text'
              code:
                $ref: '#/components/schemas/MessageCode_401_AIS'
        _links:
          $ref: '#/components/schemas/links'
    transactions:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Transactions\" for more details.
      type: object
      required:
        - transactionAmount
      properties:
        transactionId:
          description: |
            Can be used as access-ID in the API, where more details on an transaction is offered. 
            If this data attribute is provided this shows that the AIS can get access on more details about this transaction using the GET Transaction Details Request. 
            Remark: ASPSPs should ensure that transactionID, if provided, is unique relative to the account that PSU is accessing, in order to ensure the quality of the data provided to the API Client.
          type: string
        entryReference:
          description: |
            Is the identification of the transaction as used e.g. for reference for delta function on application level.
            The same identification as for example used within camt.05x messages.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        batchIndicator:
          description: |
            If this indicator equals \"true\", then the related entry is a batch entry.
          type: boolean
        batchNumberOfTransactions:
          description: |
            Shall be used if and only if the batchIndicator is contained and equals \"true\".
          type: integer
        references:
          description: |
            Might contain the payment identification attributes endToEndId as well as the new UETR field.
            In addition it is inlduing accountServicerReference, mandateId, checkId (all level 1 fields in V1.3.x).
          allOf:
            - $ref: '#/components/schemas/references'
        localInstrumentCode:
          description: |
            User community specific instrument as a code provided by ISO20022.
          allOf:
            - $ref: '#/components/schemas/ExternalLocalInstrumentCode'
        localInstrumentProprietary:
          description: |
            User community specific instrument as a proprietary attribute.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        bookingDate:
          description: |
            The Date when an entry is posted to an account on the ASPSPs books.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        valueDate:
          description: |
            Date 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.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        transactionAmount:
          description: |
            The amount of the transaction or batch as billed to the account.
          allOf:
            - $ref: '#/components/schemas/amount'
        currencyExchange:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/reportExchangeRate'
        amountDetails:
          description: |
            Additional information to the transaction amount.
          allOf:
            - $ref: '#/components/schemas/amountDetails'
        interbankSettlementDate:
          description: |
            Date on which the amount of money ceases to be available to the agent that owes it and when the amount of money becomes available to the agent to which it is due.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        cardTransaction:
          description: |
            Card transaction details in case of an underlying card transaction.
          allOf:
            - $ref: '#/components/schemas/cardTransactionDetails'
        creditor:
          description: |
            Name and potentially an identification of the creditor if a \"Debited\" transaction
          allOf:
            - $ref: '#/components/schemas/partyDescription'
        creditorAccount:
          description: |
            Account of the payee.
          allOf:
            - $ref: '#/components/schemas/accountReference'
        creditorAgent:
          description: |
            Proprietary identifications might be provided under financialInstitutionId/other
          allOf:
            - $ref: '#/components/schemas/agentDescription1'
        ultimateCreditor:
          description: |
            Only name and identification is supported for now for this party.
          allOf:
            - $ref: '#/components/schemas/partyDescription4'
        debtor:
          description: |
            Name and potentially an identification of the debtor if a \"Credited\" transaction
          allOf:
            - $ref: '#/components/schemas/partyDescription'
        debtorAccount:
          description: |
          allOf:
            - $ref: '#/components/schemas/accountReference'
        debtorAgent:
          description: |
            Proprietary identifications might be provided under financialInstitutionId/other
          allOf:
            - $ref: '#/components/schemas/agentDescription1'
        ultimateDebtor:
          description: |
          allOf:
            - $ref: '#/components/schemas/partyDescription4'
        remittanceInformationUnstructured:
          description: |
          type: array
          items: 
            $ref: '#/components/schemas/Max140Text'
        remittanceInformationStructured:
          description: |
          type: array
          items: 
            $ref: '#/components/schemas/remittance'
        entryDetails:
          description: |
            Might be used by the ASPSP to transport details about transactions within a batch.
          type: array
          items: 
            $ref: '#/components/schemas/entryDetails'
        additionalTransactionInformation:
          description: |
            Might be used by the ASPSP to transport additional transaction related information to the PSU
          allOf:
            - $ref: '#/components/schemas/Max500Text'
        additionalInformationStructured:
          description: |
            Is used if and only if the bookingStatus entry equals \"information\". 
            Every active standing order related to the dedicated payment account result into one entry.
            Each received RTP result into one entry.
          allOf:
            - $ref: '#/components/schemas/structuredAdditionalInformation'
        additionalTransactionInformationStructured:
          description: |
            Data about the transactional process of submission, authorisation and/or cancellation of the underlying payment.
          allOf:
            - $ref: '#/components/schemas/structuredAdditionalTransactionInformation'
        purposeCode:
          description: |
          allOf:
            - $ref: '#/components/schemas/PurposeCode'
        bankTransactionCode:
          description: |
            Bank transaction code as used by the ASPSP  and using the sub elements of this structured code defined by ISO20022.
            For standing order reports the following codes are applicable:
            \"PMNT-ICDT-STDO\" for credit transfers,
            \"PMNT-IRCT-STDO\" for instant credit transfers
            \"PMNT-ICDT-XBST\" for cross-border credit transfers
            \"PMNT-IRCT-XBST\" for cross-border real time credit transfers and
            \"PMNT-MCOP-OTHR\" for specific standing orders which have a dynamical amount to move left funds e.g. on month end to a saving account
          allOf:
            - $ref: '#/components/schemas/BankTransactionCode'
        bankTransactionCodeProprietary:
          description: |
            proprietary bank transaction code as used within a community or within an ASPSP e.g. 
            for MT94x based transaction reports. Renaming of the attribute to adapt to statements.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        balanceAfterTransaction:
          description: |
            This is the balance after this transaction. Recommended balance type is interimBooked.
          allOf:
            - $ref: '#/components/schemas/balance'
        _links:
          description: |
            The following links could be used here:
            \"transactionDetails\" for retrieving details of a transaction.
          allOf:
            - $ref: '#/components/schemas/links'
    _links_200_AISCARDTXLIST: 
      type: object
      additionalProperties: 
        $ref: '#/components/schemas/hrefType'
      properties:
        download:
          $ref: '#/components/schemas/hrefType'
    remittanceReports:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Remittance Reports\" for more details.
      type: object
      properties:
        referredDocumentInformation:
          description: |
            Set of elements used to identify the documents referred to in the remittance information.
          type: array
          items: 
            $ref: '#/components/schemas/referredDocumentInformation'
        creditorReferenceInformation:
          description: |
            Reference information provided by the creditor to allow the identification of the underlying documents.
          allOf:
            - $ref: '#/components/schemas/creditorReferenceInformation'
        invoicer:
          description: |
          allOf:
            - $ref: '#/components/schemas/partyDescription'
        invoicee:
          description: |
          allOf:
            - $ref: '#/components/schemas/partyDescription'
        additionalRemittanceInformation:
          description: |
            Additional information to be displayed to the PSU e.g. within authorisation processes. This will not be used in related interbank payments.
          type: array
          items:
            $ref: '#/components/schemas/Max140Text'
    clientMessageInformation_404_AIS:
      type: object
      required:
        - category
        - code
      properties:
        category:
          description: |
            Only \"ERROR\" or \"WARNING\" permitted
          type: string
        code:
          $ref: '#/components/schemas/MessageCode_404_AIS'
        path:
          type: string
        text:
          $ref: '#/components/schemas/Max500Text'
    genericAccountIdentification:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Generic Account Identification\" for more details.
      type: object
      required:
        - identification
      properties:
        identification:
          description: |
            Unique and unambiguous identification of an account.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        schemeNameCode:
          description: |
            An entry provided by an external ISO code list
          allOf:
            - $ref: '#/components/schemas/AccountIdentificationCode'
        schemeNameProprietary:
          description: |
            A scheme name defined in a proprietary way.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        issuer:
          description: |
            Issuer of the identification
          allOf:
            - $ref: '#/components/schemas/Max35Text'
    Max45Text:
      type: string
      maxLength: 45
      example: 'Text, maximum of 45 characters.'
    genericOrganisationIdentification:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Generic Organisation Identification\" for more details.
      type: object
      required:
        - identification
      properties:
        identification:
          description: |
            Unique and unambiguous identification of an organisation.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        schemeNameCode:
          description: |
            An entry provided by an external ISO code list
          allOf:
            - $ref: '#/components/schemas/OrganisationIdentificationCode'
        schemeNameProprietary:
          description: |
            A scheme name defined in a proprietary way.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        issuer:
          description: |
            Issuer of the identification
          allOf:
            - $ref: '#/components/schemas/Max35Text'
    privateIdentification:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Private Identification\" for more details.
      type: object
      properties:
        birthDate:
          description: |
          allOf:
            - $ref: '#/components/schemas/ISODate'
        provinceOfBirth:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        cityOfBirth:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        countryOfBirth:
          description: |
          allOf:
            - $ref: '#/components/schemas/CountryCode'
        others:
          description: |
            Unique identification of a person, as assigned by an institution, using an identification scheme. 
            Shall be used if none of the above attributes is used.
          type: array
          items:
            $ref: '#/components/schemas/personIdentification'
    sourceOfPrice:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Source of Price\" for more details.
      type: object
      required:
        - type
      properties:
        type:
          description: |
            Type of the market that constitutes the source of the price.
          allOf:
            - $ref: '#/components/schemas/MarketTypeCode'
        mic:
          description: |
            MIC of the market that constitutes the source of the price.
            If the \"type\" indicates local Market (Code: \"LMAR\"), the identification of the market should additionally be included 
            in either attribute \"mic\" or attribute \"marketIdentifierProprietary\".
          allOf:
            - $ref: '#/components/schemas/Max4Text'
        marketIdentifierProprietary:
          description: |
            Proprietary identifier of the market that constitutes the source of the price.
            If the \"type\" indicates local Market (Code: \"LMAR\"), the identification of the market should 
            additionally be included in either attribute \"mic\" or attribute \"marketIdentifierProprietary\".
          allOf:
            - $ref: '#/components/schemas/Max35Text'
    taxRecord:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Tax Record\" for more details.
      type: object
      properties:
        type:
          description: |
            High level code to identify the type of the tax details. 
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        category:
          description: |
            Specifies the tax code as published by the tax authority.
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        categoryDetails:
          description: |
            Provides further details on the tax category code.
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        debtorStatus:
          description: |
            Code provided by local authority to identify the status of the party that has drawn up the settlement document.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        certificateId:
          description: |
            Identification number of the tax report as assigned by the taxing authority.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        formsCode:
          description: |
            Identifies on which template the tax report to be provided in a coded form.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        period:
          description: |
            Provides details on the period of time of the related tax payment.
          allOf:
            - $ref: '#/components/schemas/taxPeriod'
        taxAmount:
          description: |
            Provides information of the amount of the tax record.
          allOf:
            - $ref: '#/components/schemas/taxAmount'
        additionalInformation:
          description: |
            Further details of the tax record.
          allOf:
            - $ref: '#/components/schemas/Max140Text'
    Max8Text:
      type: string
      maxLength: 8
      example: '8CHR8CHR'
    GeoLocation:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Geo Location\" for more details.
      type: string
      pattern: 'GEO:-?[0-9]{1,2}\.[0-9]{6};-?[0-9]{1,3}\.[0-9]{6}'
      example: 'GEO:52.506931;13.144558'
    MethodCode:
      description: |
         See document \"openFinance API Framework Data Dictionary\", section \"Method Code\" for more details.
      type: string
      enum:
        - FAXI
        - EDIC
        - URID
        - EMAL
        - POST
        - SMSM
      example: 'FAXI'
    EventFrequencyCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Event Frequency Code\" for more details.
      type: string
      enum:
        - Daily
        - Weekly
        - EveryTwoWeeks
        - Monthly
        - EveryTwoMonths
        - Quarterly
        - SemiAnnual
        - Annual
        - MonthlyVariable
      example: 'Monthly'
    cardTransactions:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Card Transactions\" for more details.
      type: object
      required:
        - transactionAmount
      properties:
        cardTransactionId:
          description: |
            Unique end to end identity.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        terminalId:
          description: |
            Identification of the Terminal, where the card has been used.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        transactionDate:
          description: |
            date of the actual card transaction
          allOf:
            - $ref: '#/components/schemas/ISODate'
        acceptorTransactionDateTime:
          description: |
            Timestamp of the actual card transaction within the acceptance system
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        bookingDate:
          description: |
            booking date of the related booking on the card account
          allOf:
            - $ref: '#/components/schemas/ISODate'
        valueDate:
          description: |
            Date 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.
            For card transactions this is the payment due date of related booked transactions of a card.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        transactionAmount:
          description: |
            The amount of the transaction as billed to the card account.
          allOf:
            - $ref: '#/components/schemas/amount'
        grandTotalAmount:
          description: |
            Total amount of the instalment including charges, insurance and taxes in addition to the funded amount.
          allOf:
            - $ref: '#/components/schemas/amount'
        currencyExchange:
          description: |
            For card accounts, this often is restricted by the ASPSP to use only one exchange rate. 
          type: array
          items:
            $ref: '#/components/schemas/reportExchangeRate'
        originalAmount:
          description: |
            Original amount of the transaction at the Point of Interaction in orginal currency
          allOf:
            - $ref: '#/components/schemas/amount'
        markupFee:
          description: |
            Any fee related to the transaction in billing currency.
          allOf:
            - $ref: '#/components/schemas/amount'
        markupFeePercentage:
          description: |
            Percentage of the involved transaction fee in relation to the billing amount, e.g. \"0.3\" for 0,3%
          type: string
        cardAcceptorId:
          description: |
            Identification of the Card Acceptor (e.g. merchant) as given in the related card transaction.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        cardAcceptorName:
          description: |
            Name of the Card Acceptor (e.g. merchant) as provided in the related card transaction
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        cardAcceptorAddress:
          description: |
            Address of the Card Acceptor as given in the related card transaction.
          allOf:
            - $ref: '#/components/schemas/address'
        cardAcceptorPhone:
          description: |
            Merchant phone number
          allOf:
            - $ref: '#/components/schemas/PhoneNumber'
        merchantCategoryCode:
          description: |
            Merchant Category Code of the Card Acceptor as given in the related card transaction. 
          allOf:
            - $ref: '#/components/schemas/MerchantCategoryCode'
        maskedPAN:
          description: |
            The masked PAN of the card used in the transaction.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        transactionDetails:
          description: |
            Additional details given for the related card transactions.
          allOf:
            - $ref: '#/components/schemas/Max1000Text'
        invoiced:
          description: |
            Flag indicating whether the underlying card transaction is already invoiced.
          type: boolean
        proprietaryBankTransactionCode:
          description: |
            proprietary bank transaction code as used within a community or within an ASPSP e.g. for MT94x based transaction reports
          allOf:
            - $ref: '#/components/schemas/Max35Text'
    organisationIdentification:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Organisation Identification\" for more details.
      type: object
      properties:
        anyBIC:
          description: |
            A code allocated to a business entity or to a financial institution by a Registration Authority under an international identification scheme.
          allOf:
            - $ref: '#/components/schemas/BICFI'
        lei:
          description: |
            Legal Entity Identifier.
          allOf:
            - $ref: '#/components/schemas/LEI'
        others:
          description: |
            Unique identification of an organisation, as assigned by an institution, using an identification scheme.
          type: array
          items:
            $ref: '#/components/schemas/genericOrganisationIdentification'
    ChargeTypeCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - BRKF
        - BTCH
        - COMM
        - SUMM
        - AMND
        - CFEE
        - CLEF
        - INVS
        - INTE
        - NSTP
        - DEBT
        - TELE
        - ACCM
        - RECH
      example: 'TELE'
    BalanceCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - CLAV
        - CLBD
        - FWAV
        - INFO
        - ITAV
        - ITBD
        - OPAV
        - OPBD
        - PRCD
        - XPCD
      example: 'INFO'
    MarketTypeCode:
      description: |
         See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - FUND
        - LMAR
        - THEO
        - VEND
      example: 'LMAR'
    error_NG_403_AIS: 
      type: object
      properties:
        apiClientMessages:
          type: array
          items:
            $ref: '#/components/schemas/clientMessageInformation_403_AIS'
        _links:
          $ref: '#/components/schemas/links'
    relatedAgents:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Related Agents\" for more details.
      type: object
      properties:
        instructingAgent:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        instructedAgent:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        debtorAgent:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        creditorAgent:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        intermediaryAgent1:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        intermediaryAgent2:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        intermediaryAgent3:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        receivingAgent:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        deliveringAgent:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        issuingAgent:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        settlementPlace:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
    standingOrderDetails:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Standing Order Details\" for more details.
      type: object
      required:
        - frequency
      properties:
        startDate:
          description: |
            The first applicable day of execution starting from this date the first payment was/will be executed.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        startDateTime:
          description: |
            The first applicable day and time of execution starting from this timestamp. This attribute is only applicable to instant payments. Seconds and milli seconds might be ignored by the ASPSP.
            The ASPSP might restrict the implementation to startDate. This restriction will be part of the ASPSP documentation.
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        endDate:
          description: |
            The last applicable day of execution
            If not given, it is an infinite standing order.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        endDateTime:
          description: |
            The last applicable day and time of requested execution. This attribute is only applicable to instant payments.
            If none of the attributes is given, it is an infinite standing order.
            The ASPSP might restrict the implementation to endDate. This restriction will be part of the ASPSP documentation.
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        executionRule:
          description: |
            \"following\" or \"preceding\" supported as values.
            This data attribute defines the behavior when a transaction date resulting from a standing order falls on a weekend or bank holiday.
            The payment is then executed either the \"preceding\" or \"following\" working day.
          type: string
        withinAMonthFlag:
          description: |
            This element is only used in case of frequency equals \"Monthly\".
            If this element equals false it has no effect. If this element equals true,
            then the execution rule is overruled if the day of execution would fall into a different month using the execution rule.
            Example: executionRule equals \"preceding\", dayOfExecution equals \"02\" and the second of a month is a Sunday.
            In this case, the transaction date would be on the last day of the month before.
            This would be overruled if withinAMonthFlag equals true and the payment is processed on Monday the third of the Month.
            Remark: This attribute is rarely supported in the market.
          type: boolean
        frequency:
          description: |
            The frequency of the recurring payment resulting from this standing order.
          allOf:
            - $ref: '#/components/schemas/EventFrequencyCode'
        monthsOfExecution:
          description: |
            The format is following the regular expression \d{1,2}. The array is restricted to 11 entries.
            The values contained In the array entries shall all be different and the maximum value of one entry is 12.
            This attribute is contained if and only if the frequency equals \"MonthlyVariable\".
            Example: An execution on January, April and October each year is addressed by [\"1\". \"4\", \"10\"].
          type: array
          items:
            $ref: '#/components/schemas/Max2Text'
        multiplicator:
          description: |
            This is multiplying the given frequency resulting the exact frequency, e.g.
            Frequency=weekly and multiplicator=3 means every 3 weeks.
            Remark: This attribute is rarely supported in the market.
          type: number
        dayOfExecution:
          description: |
            \"31\" is ultimo.
            The format is following the regular expression \d{1,2}.
            Example: The first day is addressed by \"1\".
            The date is referring to the time zone of the ASPSP.
          allOf:
            - $ref: '#/components/schemas/Max2Text'
        limitAmount:
          description: |
            limitAmount
            Amount limit for fund skimming, e.g. skim all funds above this limit to savings account, i.e. typically a specific periodic
            payments with fixed remaining amount rather than fixed transaction amount. Amount may be zero as well as below zero, i.e. negative.
            Constraints: transactionAmount needs to be zero and bankTransactionCode needs to specify \"PMNT-MCOP-OTHR\" for fund skimming.
          allOf:
            - $ref: '#/components/schemas/amount'
    BICFI:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      pattern: '[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}'
      example: 'ECBFDEFFFIM'
    PersonIdentificationCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - ARNU
        - CCPT
        - CUST
        - DRLC
        - EMPL
        - NIDN
        - SOSE
        - TELE
        - TXID
        - POID
      example: 'NIDN'
    PriceValueTypeCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - DISC
        - PEM
        - PARV
      example: 'DISC'
    EntryStatusCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - BOOK
        - FUTR
        - INFO
        - PDNG
      example: 'PDNG'
    ProxyAccountTypeCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - TELE
        - EMAL
        - DNAM
        - CINC
        - COTX
        - COID
        - CUST
        - DRLC
        - EIDN
        - EWAL
        - PVTX
        - LEIC
        - MBNO
        - NIDN
        - CCPT
        - SHID
        - SOSE
        - TOKN
        - UBIL
        - VIPN
        - BIID
      example: 'EMAL'
    MessageCode_ServiceUnspecific_409:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Service Unspecific HTTP Error Codes\" for more details.
      enum: 
          - STATUS_INVALID
          - CHANGE_INVALID
      example: 'STATUS_INVALID'
    SecuritiesFeeTypeCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Securities Fee Type Code\" for more details.
      type: string
      enum:
        - transactionFee
        - brokerageFee
        - managementFee
        - courtage
        - custodyFee
        - exchangeFee
        - thirdPartyFee
        - otherFee
      example: 'otherFee'
    taxCreditor:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Tax Creditor\" for more details.
      type: object
      properties:
        taxId:
          description: |
            Tax identification number of the creditor 
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        registrationId:
          description: |
            Unique identification, assigned by an organization, to identify a party.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        taxType:
          description: |
            Type of the tax payer.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
    clientMessageInformation_401_AIS:
      type: object
      required:
        - category
        - code
      properties:
        category:
          description: |
            Only \"ERROR\" or \"WARNING\" permitted
          type: string
        code:
          $ref: '#/components/schemas/MessageCode_401_AIS'
        path:
          type: string
        text:
          $ref: '#/components/schemas/Max500Text'
    MessageCode_401_AIS: 
      description: Message codes defined for AIS for HTTP Error code 401 (UNAUTHORIZED).
      anyOf:
        - $ref: '#/components/schemas/MessageCode_ServiceUnspecific_401'
        - $ref: '#/components/schemas/MessageCode_AisSpecific_401'
    MessageCode_ServiceUnspecific_405:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Service Unspecific HTTP Error Codes\" for more details.
      type: string
      enum: 
        - SERVICE_INVALID
      example: 'SERVICE_INVALID'
    MessageCode_ServiceUnspecific_404:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Service Unspecific HTTP Error Codes\" for more details.
      type: string
      enum: 
        - RESOURCE_UNKNOWN
      example: 'RESOURCE_UNKNOWN'
    MessageCode_ServiceUnspecific_403:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Service Unspecific HTTP Error Codes\" for more details.
      type: string
      enum: 
        - SERVICE_BLOCKED
        - CONSENT_UNKNOWN
        - RESOURCE_UNKNOWN
        - RESOURCE_EXPIRED
      example: 'SERVICE_BLOCKED'
    MessageCode_ServiceUnspecific_401:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Service Unspecific HTTP Error Codes\" for more details.
      type: string
      enum: 
        - CERTIFICATE_INVALID
        - ROLE_INVALID
        - CERTIFICATE_EXPIRED
        - CERTIFICATE_BLOCKED
        - CERTIFICATE_REVOKED
        - CERTIFICATE_MISSING
        - CLIENT_INVALID
        - CLIENT_INCONSISTENT
        - API_CONTRACT_ID_INVALID
        - SIGNATURE_INVALID
        - SIGNATURE_MISSING
        - ROLE_INVALID
        - PSU_CREDENTIALS_INVALID
        - CORPORATE_ID_INVALID
        - CONSENT_INVALID
        - CONSENT_EXPIRED
        - TOKEN_UNKNOWN
        - TOKEN_INVALID
        - TOKEN_EXPIRED
      example: 'CERTIFICATE_INVALID'
    MessageCode_ServiceUnspecific_400:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Service Unspecific HTTP Error Codes\" for more details.
      type: string
      enum: 
        - FORMAT_ERROR
        - PARAMETER_NOT_CONSISTENT
        - PARAMETER_NOT_SUPPORTED
        - SERVICE_INVALID
        - CONSENT_UNKNOWN
        - RESOURCE_UNKNOWN
        - RESOURCE_EXPIRED
        - RESOURCE_BLOCKED
        - TIMESTAMP_INVALID
        - PERIOD_INVALID
        - SCA_METHOD_UNKNOWN
        - SCA_INVALID
      example: 'FORMAT_ERROR'
    fromToAmountRange:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"From To Amount Range\" for more details.
      type: object
      required:
        - fromAmount
        - toAmount
      properties:
        fromAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/boundaryAmount'
        toAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/boundaryAmount'
    taxAuthorisation:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Tax Authorisation\" for more details.
      type: object
      properties:
        title:
          description: |
            Title of position of the debtor or their representatives.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        name:
          description: |
            Name of the debtor or their representatives.
          allOf:
            - $ref: '#/components/schemas/Max140Text'
    Max4Text:
      type: string
      maxLength: 4
      example: '4CHR'
    referredDocumentInformation:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Referred Document Information\" for more details.
      type: object
      properties:
        typeCode:
          description: |
            Specifies the type of referred document, provided as code.
          allOf:
            - $ref: '#/components/schemas/ReferredDocumentTypeCode'
        typeProprietary:
          description: |
            Specifies the type of referred document, provided in proprietary encoding.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        typeIssuer:
          description: |
            Issuer of the document type.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        number:
          description: |
            Unique and unambiguous identification of the referred document.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        relatedDate:
          description: |
            Date associated with the referred document.
          allOf:
            - $ref: '#/components/schemas/ISODate'
    transactionDetail:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Transaction Detail\" for more details.
      type: object
      required:
        - amount
      properties:
        references:
          description: |
            Might contain the payment identification attributes endToEndId as well as the new UETR field.
            In addition it is including e.g. accountSer-vicerReference, mandateId, checkNumber
          allOf:
            - $ref: '#/components/schemas/referencesStatement'
        amount:
          description: |
            transactionAmount for transactions
          allOf: 
            - $ref: '#/components/schemas/amount'
        amountDetails:
          description: |
          allOf:
            - $ref: '#/components/schemas/amountDetails'
        availability:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/availability'
        bankTransactionCode:
          description: |
          allOf:
            - $ref: '#/components/schemas/BankTransactionCode'
        bankTransactionCodeProprietary:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        bankTransactionCodeIssuer:
          description: |
            Issuer of the proprietary bank transaction code.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        bankTransactionCodeproprietaryIssuer:
          description: |
            Issuer of the proprietary bank transaction code.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        charges:
          description: |
          allOf:
            - $ref: '#/components/schemas/charges'
        interest:
          description: |
          allOf:
            - $ref: '#/components/schemas/transactionInterest'
        relatedParties:
          description: |
          allOf:
            - $ref: '#/components/schemas/relatedParties'
        relatedAgents:
          description: |
          allOf:
            - $ref: '#/components/schemas/relatedAgents'
        localInstrumentCode:
          description: |
          allOf:
            - $ref: '#/components/schemas/ExternalLocalInstrumentCode'
        localInstrumentProprietary:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        purposeCode:
          description: |
          allOf:
            - $ref: '#/components/schemas/PurposeCode'
        relatedRemittanceInformation:
          description: |
            Provides information related to the handling of the remittance information by any of the agents in the transaction processing chain.
          type: array
          items:
            $ref: '#/components/schemas/relatedRemittance'
        remittanceInformationUnstructured:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/Max140Text'
        remittanceInformationStructured:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/remittanceReports'
        relatedDates:
          description: |
          allOf:
            - $ref: '#/components/schemas/relatedDates'
        relatedPrice:
          description: |
          allOf:
            - $ref: '#/components/schemas/relatedPrice'
        relatedQuantities:
          description: |
            Set of elements used to identify the related quantities, such as securities, in the underlying transaction.
          type: array
          items:
            $ref: '#/components/schemas/relatedQuantities'
        financialInstrumentId:
          description: |
          allOf: 
            - $ref: '#/components/schemas/financialInstrumentIdentification'
        tax:
          description: |
          allOf:
            - $ref: '#/components/schemas/detailsTax'
        returnInformation:
          description: |
          allOf:
            - $ref: '#/components/schemas/paymentReturnReason'
        corporateAction:
          description: |
          allOf:
            - $ref: '#/components/schemas/corporateAction'
        safekeepingAccount:
          description: |
          allOf:
            - $ref: '#/components/schemas/safekeepingAccount'
        cashDeposit:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/cashDeposit'
        cardTransaction:
          description: |
          allOf:
            - $ref: '#/components/schemas/cardTransaction'
        additionalTransactionInformation:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max500Text'
    relatedPrice:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Related Price\" for more details.
      type: object
      properties:
        dealPriceTypeYielded:
          description: |
          type: boolean
        dealPriceTypeValueType: 
          description: |
          allOf:
            - $ref: '#/components/schemas/PriceValueTypeCode'
        dealPriceValueRate:
          description: |
          allOf:
            - $ref: '#/components/schemas/PercentageRate'
        dealPriceValueAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
        proprietary:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/proprietaryPrice'
    batchInformation:
      description: 
        See document \"openFinance API Framework Data Dictionary\", section \"Batch Information\" for more details.
      type: object
      properties:
        messageId:
          description: |
            Point to point reference, as assigned by the sending party, to unambiguously identify the batch of transactions.
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        paymentInformationId:
          description: |
            Unique identification, as assigned by a sending party, to unambiguously identify the payment information group within the message.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        numberOfTransactions:
          description:
            Number of individual transactions included in the batch.
          type: integer
        totalAmount:
          description: |
            Total amount of money reported in the batch entry.
          allOf:
            - $ref: '#/components/schemas/amount'
    TradingSessionTypeCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Trading Session Type Code\" for more details.
      type: string
      enum:
        - auctions
        - continuous
      example: 'continuous'
    InputChannelCode: 
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - FAXI
        - PAPR
        - TAPE
        - WEBI
      example: 'FAXI'
    evaluatedAmount:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Evaluated Amount\" for more details.
      type: object
      required:
        - amount
      properties:
        amount:
          description: |
            Amount which is the result of the corresponding evaluation.
          allOf:
            - $ref: '#/components/schemas/amount'
        evaluationDateTime:
          description: |
            Date and time of the evaluation. 
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        evaluationDate:
          description: |
            Date of the evaluation. 
          allOf:
            - $ref: '#/components/schemas/ISODate'
    MessageCode_404_AIS: 
      description: Message codes defined for AIS for HTTP Error code 404 (NOT FOUND).
      anyOf:
        - $ref: '#/components/schemas/MessageCode_ServiceUnspecific_404'
        - $ref: '#/components/schemas/MessageCode_AisSpecific_404'
    _links_200_AISSECURITIESACCOUNTTXLIST: 
      type: object
      additionalProperties: 
        $ref: '#/components/schemas/hrefType'
      properties:
        first:
          $ref: '#/components/schemas/hrefType'
        next:
          $ref: '#/components/schemas/hrefType'
        previous:
          $ref: '#/components/schemas/hrefType'
        last:
          $ref: '#/components/schemas/hrefType'
    totalDebitEntries:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Total Debit Entries\" for more details.
      type: object
      properties:
        numberOfEntries:
          description: |
            Only numeric text is permitted. 
          allOf:
            - $ref: '#/components/schemas/Max15Text'
        sum: 
          description: |
            The sum of total debit entries.
          type: number
          format: double
    BalanceType:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Balance Type\" for more details.
      type: string
      enum:
        - closingBooked
        - expected
        - openingBooked
        - interimAvailable
        - interimBooked
        - forwardAvailable
        - nonInvoiced
      example: 'closingBooked'
    links:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Links\" for more details.
      type: object
      properties:
        scaRedirect:
          description: |
            A link to an ASPSP site where SCA is performed within the Redirect SCA approach.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        scaOAuth:
          description: |
            The link refers to a JSON document specifying the OAuth details of the ASPSP's authorisation server. JSON document follows the definition given in [RFC 8414].
          allOf:
            - $ref: '#/components/schemas/hrefType'
        confirmation:
          description: |
            \"confirmation\": Might be added by the ASPSP if either the \"scaRedirect\" or \"scaOAuth\" hyperlink is returned in the same response message. 
            This hyperlink defines the URL to the resource which needs to be updated with 
            * a confirmation code as retrieved after the plain redirect authentication process with the ASPSP authentication server or
            * an access token as retrieved by submitting an authorization code after the integrated Oauth based authentication process with the ASPSP authentication server.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        creditorNameConfirmation:
          description: |
            A link to an endpoint, where the submitted payment needs to be confirmed explicitly for execution after a verification of payee process has detected a deviation in the creditor account/creditor name pair.
            If this hyperlink is provided, the addressed payment will not be executed without a related confirmation.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        startAuthorisation:
          description: |
            A link to an endpoint, where the authorisation of a transaction or the authorisation of a transaction cancellation shall be started with a POST command. 
            No specific data is needed for this process start.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        startAuthorisationWithPsuIdentification:
          description: |
            The link to an endpoint where the authorisation of a transaction or of a transaction cancellation shall be started, where PSU identification shall be uploaded 
            with the corresponding call.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        updatePsuIdentification:
          description: |
            The link to the payment initiation or account information resource, which needs to be updated by the PSU identification if not delivered yet.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        startAuthorisationWithProprietaryData:
          description: |
            A link to the endpoint, where the authorisation of a transaction or of a transaction cancellation shall be started, and where proprietary data needs to be updated with this call. 
            The TPP can find the scope of missing proprietary data in the ASPSP documentation.
            The usage of this hyperlink is not further specified in the specification but is used analogously to e.g. the startAuthorisation withPsuIdentification hyperlink.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        updateProprietaryData:
          description: |
            The link to the payment initiation or account information resource, which needs to be updated by the proprietary data.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        startAuthorisationWithPsuAuthentication:
          description: |
            The link to an endpoint where the authorisation of a transaction or of a transaction cancellation shall be started, where PSU authentication data shall be uploaded 
            with the corresponding call.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        updatePsuAuthentication:
          description: |
            The link to the payment initiation or account information resource, which needs to be updated by a PSU password and eventually the PSU identification if not delivered yet. 
          allOf:
            - $ref: '#/components/schemas/hrefType'
        startAuthorisationWithEncryptedPsuAuthentication:
          description: |
            The link to an endpoint where the authorisation of a transaction or of a transaction cancellation shall be started, where encrypted PSU authentication data shall be uploaded 
            with the corresponding call.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        updateEncryptedPsuAuthentication:
          description: |
            The link to the payment initiation or account information resource, which needs to be updated by an encrypted PSU password and eventually the PSU identification if not delivered yet. 
          allOf:
            - $ref: '#/components/schemas/hrefType'
        startAuthorisationWithAuthenticationMethodSelection:
          description: |
            This is a link to and endpoint where the authorisation of a transaction or of a transaction cancellation shall be started, 
            where the selected SCA method shall be uploaded  with the corresponding call.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        selectAuthenticationMethod:
          description: |
            This is a link to a resource, where the TPP can select the applicable second factor authentication methods for the PSU, if there were several available authentication methods. 
          allOf:
            - $ref: '#/components/schemas/hrefType'
        startAuthorisationWithTransactionAuthorisation:
          description: |
            A link to an endpoint, where an authorisation of a transaction or a cancellation can be started, and where the response data for the challenge is uploaded in the same call for the 
            transaction authorisation or transaction cancellation at the same time in the Embedded SCA Approach.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        authoriseTransaction:
          description: |
            The link to the payment initiation or consent resource, where the \"Transaction Authorisation\"Request\" is sent to. This is the link to the resource which will authorise the payment or the consent by 
            checking the SCA authentication data within the Embedded SCA approach.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        updateResourceByDebtorAccountResource:
          description: |
            A link to a payment related resource which needs to be updated by an account, referenced by a resource identification.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        self:
          description: |
            The link to the payment initiation resource created by the request itself. 
            This link can be used later to retrieve the transaction status of the payment initiation.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        status:
          description: |
            A link to retrieve the status of the transaction resource.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        transactionfees:
          description: |
            The link is to the status resource.  
            This link is only added within the authorisation process in case fee information is available via the status resource.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        scaStatus:
          description: |
            A link to retrieve the status of the authorisation or cancellation-authorisation sub-resource.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        account:
          description: |
            A link to the resource providing the details of one account
          allOf:
            - $ref: '#/components/schemas/hrefType'
        savingsAccount:
          description: |
            A link to the resource providing the details of a savings account.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        loanAccount:
          description: |
            A link to the resource providing the details of a loan account.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        balances:
          description: |
            A link to the resource providing the balance of a dedicated account.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        transactions:
          description: |
            A link to the resource providing the transaction history of a dedicated account.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        cardAccount:
          description: |
            A link to the resource providing the details of one card account.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        cardTransactions:
          description: |
            A link to the resource providing the transaction history of a dedicated card account.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        transactionDetails:
          description: |
            A link to the resource providing details of a dedicated transaction.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        ibanCheck:
          description: |
            A link to the endpoint offering the addressed iban check result.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        paymentInitiation:
          description: |
            A link to an initiation related to a payment resource.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        securitiesAccount:
          description: |
            A link to the resource providing the details of one securitiesAccount.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        positions:
          description: |
            A link to the resource providing the list of positions of one securitiesAccount.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        orders:
          description: |
            A link to the resource providing the list of orders of one securitiesAccount.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        orderDetails:
          description: |
            A link to the resource providing details of one specific order.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        relatedOrders:
          description: |
            An array of links to request order details of related orders related to the order that is represented by the data structure containing this element 
            (e.g. other orders that originated from the same order split as this order). 
          type: array
          items:
            $ref: '#/components/schemas/hrefType'
        relatedTransactions:
          description: |
            An array of links to request securities transaction details of transactions that resulted from this order.
          type: array
          items:
            $ref: '#/components/schemas/hrefType'
        subscription:
          description: |
            A link to the resource providing the details of a subscription for Push AIS Services.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        entryStatusRevoked:
          description: |
            Links to entry endpoints where the entry status is revoked.
          type: array
          items:
            $ref: '#/components/schemas/hrefType'
        first:
          description: |
            Navigation link for paginated account reports.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        next:
          description: |
            Navigation link for paginated account reports.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        previous:
          description: |
            Navigation link for paginated account reports.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        last:
          description: |
            Navigation link for paginated account reports.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        download:
          description: |
            Download link for huge AIS data packages.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        confirmInitiation:
          description: |
            link to a confirmation endpoint, where a payment initiation needs to be confirmed explicitly by the API Client for execution.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        aspspParameters:
          description: |
          allOf:
            - $ref: '#/components/schemas/hrefType'
        aspspContacts:
          description: |
          allOf:
            - $ref: '#/components/schemas/hrefType'
        aspspDowntimes:
          description: |
          allOf:
            - $ref: '#/components/schemas/hrefType'
        onboardings:
          description: |
            A link to commercially onboard to the related API, see openFinance, Admin Services for more details.
          allOf:
            - $ref: '#/components/schemas/hrefType'
        readConditions:
          description: |
          allOf:
            - $ref: '#/components/schemas/hrefType'
        confirmConditions:
          description: |
          allOf:
            - $ref: '#/components/schemas/hrefType'
    UUID:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      format: uuid
      example: '99435c7e-ad88-49ec-a2ad-99ddcb1f5555'
    error_RFC7807_404_AIS: 
      description: |
        Standardised definition of reporting error information according to [RFC7807].
      type: object
      required:
        - type
        - code
      properties:
        type: 
          description: |
            A URI reference [RFC3986] that identifies the problem type. 
            Remark For Future: These URI will be provided by openFinance API Framework in future.
          type: string
          format: uri
          maxLength: 70
        title:
          description: |
            Short human readable description of error type. Could be in local language. To be provided by ASPSPs.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        status:
          description: |
            HTTP response code generated by the server.
            If contained, this is more relevant as the actual http response code in the actual response, because it is introduced by the application server.            
          type: integer
        detail:
          description: |
            Detailed human readable text specific to this instance of the error. 
          allOf:
            - $ref: '#/components/schemas/Max500Text'
        instance:
          description: |
            This attribute is containing a JSON pointer (as defined in [RFC6901]) or XPath expression to indicate the path to an issue generating the error in the related request.
          allOf:
            - $ref: '#/components/schemas/Max256Text'
        code:
          $ref: '#/components/schemas/MessageCode_404_AIS'
        additionalErrors:
          description: |
            Array of Error Information Blocks.
            Might be used if more than one error is to be communicated
          type: array
          items: #ErrorInformation
            description: This is a data element to support the declaration of additional errors in the context of [RFC7807]. 
            type: object
            required:
              - code
            properties:
              title:
                $ref: '#/components/schemas/Max70Text'
              detail:
                $ref: '#/components/schemas/Max500Text'
              code:
                $ref: '#/components/schemas/MessageCode_404_AIS'
        _links:
          $ref: '#/components/schemas/links'
    error_RFC7807_400_AIS: 
      description: |
        Standardised definition of reporting error information according to [RFC7807].
      type: object
      required:
        - type
        - code
      properties:
        type: 
          description: |
            A URI reference [RFC3986] that identifies the problem type. 
            Remark For Future: These URI will be provided by openFinance API Framework in future.
          type: string
          format: uri
          maxLength: 70
        title:
          description: |
            Short human readable description of error type. Could be in local language. To be provided by ASPSPs.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        status:
          description: |
            HTTP response code generated by the server.
            If contained, this is more relevant as the actual http response code in the actual response, because it is introduced by the application server.            
          type: integer
        detail:
          description: |
            Detailed human readable text specific to this instance of the error. 
          allOf:
            - $ref: '#/components/schemas/Max500Text'
        instance:
          description: |
            This attribute is containing a JSON pointer (as defined in [RFC6901]) or XPath expression to indicate the path to an issue generating the error in the related request.
          allOf:
            - $ref: '#/components/schemas/Max256Text'
        code:
          $ref: '#/components/schemas/MessageCode_400_AIS'
        additionalErrors:
          description: |
            Array of Error Information Blocks.
            Might be used if more than one error is to be communicated
          type: array
          items: #ErrorInformation
            description: This is a data element to support the declaration of additional errors in the context of [RFC7807]. 
            type: object
            required:
              - code
            properties:
              title:
                $ref: '#/components/schemas/Max70Text'
              detail:
                $ref: '#/components/schemas/Max500Text'
              code:
                $ref: '#/components/schemas/MessageCode_400_AIS'
        _links:
          $ref: '#/components/schemas/links'
    proprietaryQuantity:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Proprietary Quantity\" for more details.
      type: object
      required:
        - type
        - quantity
      properties:
        type:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        quantity:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
    ClearingSystemIdentificationCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more detail
      type: string
      enum:
        - ATBLZ
        - AUBSB
        - CACPA
        - CHBCC
        - CHSIC
        - CNAPS
        - DEBLZ
        - ESNCC
        - GBDSC
        - GRBIC
        - HKNCC
        - IENCC
        - INFSC
        - ITNCC
        - JPZGN
        - NZNCC
        - PLKNR
        - PTNCC
        - RUCBC
        - SESBA
        - SGIBG
        - THCBC
        - TWNCC
        - USABA
        - USPID
        - ZANCC
        - NZRSA
        - MZBMO
        - CNCIP
        - KRBOK
      example: 'DEBLZ'
    tax:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Tax\" for more details.
      type: object
      properties:
        identification:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        rate: 
          description: |
          allOf:
            - $ref: '#/components/schemas/PercentageRate'
        amount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
    securitiesAccountFeeRule:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Securities Account Fee Rule\" for more details.
      type: object
      properties:
        amount:
          description: |
            Amount of the fee.
          allOf:
            - $ref: '#/components/schemas/amount'
        percentage:
          description: |
            Percentage of the fee. Up to 20 significant figures. The decimal separator is a dot.
            Trailing zeroes must be truncated.Fee as a percentage.
          type: string
          pattern: '-?[0-9]{1,20}(\.[0-9]{0,19})?'
        fromBaseAmount:
          description: |
            To be used for fees where a tiered percentage is used to calculate the fee relative to an implicitly defined base amount (such as a transaction's volume being the base amount for a courtage).
            The range of one tier is defined as all applicable entities with base amounts X and 
            fromBaseAmount \u2264 X \u2264 toBaseAmount.
            In any array of fee rules, only one of these entries may be missing the \"fromBaseAmount\" element (indicating that the rule represented by this entry is used without 
            a lower bound to the base amount) and only one entry may be missing the \"toBaseAmount\" element (indicating that the rule represented by this entry is applied without an 
            upper limit to the base amount). In cases, where the fee is not calculated as a tiered percentage, only one entry in array \"feeRules\" is included. 
            This entry must be missing both subelements \"fromBaseAmount\" and \"toBaseAmount\".
          allOf:
            - $ref: '#/components/schemas/amount'
        toBaseAmount:
          description: |
            To be used for fees where a tiered percentage is used to calculate the fee relative to an implicitly defined base amount (such as a transaction's volume being the base amount for a courtage).
            The range of one tier is defined as all applicable entities with base amounts X and 
            fromBaseAmount \u2264 X \u2264 toBaseAmount.
            In any array of fee rules, only one of these entries may be missing the \"fromBaseAmount\" element (indicating that the rule represented by this entry is used without 
            a lower bound to the base amount) and only one entry may be missing the \"toBaseAmount\" element (indicating that the rule represented by this entry is applied without an 
            upper limit to the base amount). In cases, where the fee is not calculated as a tiered percentage, only one entry in array \"feeRules\" is included. 
            This entry must be missing both subelements \"fromBaseAmount\" and \"toBaseAmount\".
          allOf:
            - $ref: '#/components/schemas/amount'
        minimumAmount:
          description: |
            Minimum amount of the fee in each billing period / for each billed event if applicable.
          allOf:
            - $ref: '#/components/schemas/amount'
        maximumAmount:
          description: |
            Maximum amount of the fee in each billing / for each billed event period if applicable.
          allOf:
            - $ref: '#/components/schemas/amount'
    userEntry:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"User Entry\" for more details.
      type: object
      required:
        - user
        - dateTime
      properties:
        user:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        dateTime:
          description: |
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
    entry:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Entry\" for more details.
      type: object
      required:
        - amount
        - statusCode
      properties:
        entryReference:
          description: |
            Unicque reference for the entry.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        amount: 
          description: |
            transactionAmount for transactions
          allOf:
            - $ref: '#/components/schemas/amount'
        reversalIndicator: 
          description: |
            Idicates whether or not the entry is the result of a reversal.
          type: boolean
        statusCode:
          description: |
            Status of an entry on the books of the account servicer.
          allOf: 
            - $ref: '#/components/schemas/EntryStatusCode'
        bookingDate: 
          description: |
            Date when an entry is posted to an account on the account servicer's books.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        bookingDateTime: 
          description: |
            Date and time when an entry is posted to an account on the account servicer's books.
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        valueDate: 
          description: |
            Date 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.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        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.
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        accountServicerReference:
          description: |
            Unique reference as assigned by the account servicing institution to unambiguously identify the entry.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        availability:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/availability'
        bankTransactionCode:
          description: |
            Set of elements used to fully identify the type of underlying transaction resulting in an entry.
          allOf:
            - $ref: '#/components/schemas/BankTransactionCode'
        bankTransactionCodeProprietary:
          description: |
            Set of proprietarily defined elements used to fully identify the type of underlying transaction resulting in an entry.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        bankTransactionCodeIssuer:
          description: |
            Issuer of the proprietary bank transaction code.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        commisionWaverIndicator:
          description: |
            Indicates whether the transaction is exempt from commission.
          type: boolean
        additionalInformationIndicator:
          description: |
            Indicates whether the underlying transaction details are provided through a separate message, as in the case of aggregate bookings.
          allOf: 
            - $ref: '#/components/schemas/additionalInformationIndicator'
        amountDetails:
          description: |
            Provides information on the original amount.
          allOf:
            - $ref: '#/components/schemas/amountDetails'
        charges:
          description: |
            Provides information on the charges, pre-advised or included in the entry amount.
          allOf: 
            - $ref: '#/components/schemas/charges'
        technicalInputChannelCode:
          description: |
            Channel used to technically input the instruction related to the entry.
          allOf: 
            - $ref: '#/components/schemas/InputChannelCode'
        interest:
          description: |
            Provides details of the interest amount included in the entry amount.
          allOf:
            - $ref: '#/components/schemas/transactionInterest'
        cardTransaction:
          description: |
            Provides details of the card transaction included in the entry amount, when globalised by the account servicer.
          allOf:
            - $ref: '#/components/schemas/cardTransaction'
        additionalEntryInformation:
          description: |
            gibt es nicht bei Transactions
          allOf: 
            - $ref: '#/components/schemas/Max500Text'
        entryDetails:
          description: |
            Deviation from ISO20022, since Array is never used.
          allOf: 
            - $ref: '#/components/schemas/entryDetails1'
    amountAndExchangeDetails:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Amount and Exchange Details\" for more details.
      type: object
      required:
        - currency
        - amount
      properties:
        currency:
          description: |
            ISO 4217 Alpha 3 currency code
          allOf:
            - $ref: '#/components/schemas/CurrencyCode'
        amount:
          description: |
            The amount given with fractional digits, where fractions must be compliant to the currency definition. Up to 14 significant figures. Negative amounts are signed by minus.
            The decimal separator is a dot.
            Example: Valid representations for EUR with up to two decimals are:
            * 1056
            * 5768.2
            * -1.50
            * 5877.78
          type: string
          pattern: '-?[0-9]{1,14}(\.[0-9]{1,3})?'
        sourceCurrency:
          description: |
            Currency from which an amount is to be converted in a currency conversion.
          allOf:
            - $ref: '#/components/schemas/CurrencyCode'
        exchangeRate:
          description: |
            Factor used to convert an amount from one currency into another. This reflects the price at which one currency was bought with another currency. 
            Note: If this field is present, then also the field sourceCurrency must be provided.
          type: string
        unitCurrency:
          description: |
            Currency in which the rate of exchange is expressed in a currency exchange. In the example 1EUR = xxxCUR, the unit currency is EUR.
          allOf:
            - $ref: '#/components/schemas/CurrencyCode'
        targetCurrency:
          description: |
            Currency into which an amount is to be converted in a currency conversion.
          allOf:
            - $ref: '#/components/schemas/CurrencyCode'
        quotationDate:
          description: |
            Date at which an exchange rate is quoted.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        contractId:
          description: |
            Unique identification to unambiguously identify the foreign exchange contract.
          type: string
    postalAddress:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Postal Address (Either Structured or Unstructured Address)\" for more details.
      type: object
      properties:
        addressLines:
          description: |
            At most seven entries are permitted. May only be used, if none of the structured address elements \"streetName\", \"buildingNumber\", \"postcode\" or \"townName\" is used.
            *Remark:* For SEPA transactions this is further restricted to a maximum of 1 entry.
          type: array
          maxItems: 7
          items:
            $ref: '#/components/schemas/Max140Text'
        department:
          description: |
            Identification of a division of a large organisation or building.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        subDepartment:
          description: |
            Identification of a sub-division of a large organisation or building.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        streetName:
          description: |
            Name of a street or thoroughfare.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        buildingNumber:
          description: |
            Number that identifies the position of a building on a street.
          allOf:
            - $ref: '#/components/schemas/Max16Text'
        buildingName:
          description: |
            Name of the building or house.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        floor:
          description: |
            Floor or storey within a building.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        postBox:
          description: |
            Numbered box in a post office, assigned to a person or organisation, where letters are kept until called for.
          allOf:
            - $ref: '#/components/schemas/Max16Text'
        room:
          description: |
            Building room number.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        postCode:
          description: |
            Identifier consisting of a group of letters and/or numbers that is added to a postal address to assist the sorting of mail.
          allOf:
            - $ref: '#/components/schemas/Max16Text'
        townName:
          description: |
            Name of a built-up area, with defined boundaries, and a local government. 
            *Usage Rule:* If address lines are not used, this attribute is mandatrory.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        townLocationName:
          description: |
            Specific location name within the town.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        districtName:
          description: |
            Identifies a subdivision within a country sub-division.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        countrySubDivision:
          description: |
            Identifies a subdivision of a country such as state, region, county.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        country:
          description: |
            Nation with its own government.
            *Usage Rule:* If address lines are not used, this attribute is mandatrory.
          allOf:
            - $ref: '#/components/schemas/CountryCode'
    financialInstrumentIdentification:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Financial Instrument\" for more details.
      type: object
      properties:
        isin:
          description: |
            ISIN of the financial Instrument. 
            The primitive ISIN type is defined as in ISO20022.
          allOf:
            - $ref: '#/components/schemas/ISIN'
        otherId:
          description: |
            If an ISIN is not available, the ASPSP may instead include an identification by other means.
          allOf:
            - $ref: '#/components/schemas/genericFinancialInstrumentIdentification'
        name:
          description: |
            Name of the financial instrument.
          allOf:
             - $ref: '#/components/schemas/Max70Text'
        normalisedPrice:
          description: |
            Price per unit of the financial instrument in case of a price amount. Percentage price otherwise.
            If used in the context of a securities transaction, the price here shall indicate the applied price (without fees) for the trade.
            Note: Not applicable to account statement
          allOf:
            - $ref: '#/components/schemas/evaluatedPrice'
        description: 
          description: |
            Textual description of the financial instrument. 
            Usage rule: description is considered to be the last choice to describe the financial instrument, in case neither isin nor at least one instance of otherId is present.
          allOf:
             - $ref: '#/components/schemas/Max140Text'
    cashDeposit:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Cash Deposit\" for more details.
      type: object
      required:
        - noteDenomination
        - numberNotes
        - amount
      properties:
        noteDenomination:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
        numberNotes:
          description: |
            Only numeric text.
          allOf: 
            - $ref: '#/components/schemas/Max15Text'
        amount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
    safekeepingAccount:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Safekeeping Account\" for more details.
      type: object
      required:
        - identification
      properties:
        identification:
          description: |
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        typeId:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max4Text'
        typeIssuer:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        typeSchemeName:
          description: |
            - $ref: '#/components/schemas/Max35Text'
        name: 
          description: |
          allOf:
            - $ref: '#/components/schemas/Max70Text'
    taxAmount:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Tax Amount\" for more details.
      type: object
      properties:
        rate: 
          description: |
            Rate used to calculate the tax.
          allOf: 
            - $ref: '#/components/schemas/rate'
        taxableBaseAmount: 
          description: |
            Amount of money on which the tax is based.
          allOf:
            - $ref: '#/components/schemas/amount'
        totalAmount:
          description: |
            Total amount as a result of the calculation of the tax record.
        details:
          description: |
            Provides details on the tax period and amount
          allOf:
            - $ref: '#/components/schemas/amount'
          type: array
          items:
            $ref: '#/components/schemas/taxDetails'
    relatedQuantities:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Related Quantities\" for more details.
      type: object
      properties:
        quantity:
          description: |
          allOf: 
            - $ref: '#/components/schemas/quantity'
        originalAndCurrentFaceAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/originalAndCurrentFaceAmount'
        proprietary: 
          description: |
          allOf:
            - $ref: '#/components/schemas/proprietaryQuantity'
    rtpDetails:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"RTP Details\" for more details.
      type: object
      required:
        - requestedExpiryDateTime
      properties:
        paymentConditions:
          description: |
            Conditions for the execution of the payment.
          allOf:
            - $ref: '#/components/schemas/paymentConditions'
        creationDateTime:
          description: |
            creationDateTime of the originator
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        requestedExpiryDateTime:
          description: |
            Date and Time at which this request expires.
          allOf:
            - $ref: '#/components/schemas/ISODateTime'
        originatorPspId:
          description: |
            Originator payment service provider in case of indirect participation regarding a related API Access Scheme or bilateral contract
          allOf:
            - $ref: '#/components/schemas/financialInstitutionIdentification'
    originalAndCurrentFaceAmount:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Original and Current Face Amount\" for more details.
      type: object
      required:
        - faceAmount
        - amortisedValue
      properties:
        faceAmount:
          description: |
            Quantity expressed as an amount representing the face amount, that is, the principal of a debt instrument.
          allOf:
            - $ref: '#/components/schemas/amount'
        amortisedValue:
          description: |
            Quantity expressed as an amount representing the current amortised face amount of a bond, for example, a periodic reduction/increase of a bond's principal amount.
          allOf:
            - $ref: '#/components/schemas/amount'
    relatedRemittance:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Related Remittance\" for more details.
      type: object
      properties:
        remittanceIdentification:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        remittanceLocationDetails:
          description: |
            Set of elements used to provide information on the location and/or delivery of the remittance information
          type: array
          items:
            $ref: '#/components/schemas/remittanceLocation'
    clearingSystemMemberIdentification:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Clearing System Member Identification\" for more details.
      type: object
      properties:
        memberId:
          description: |
            Identification of a member of a clearing system.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        clearingSystemIdentificationCode:
          description: |
            Identification of a clearing system, in a coded form as published in an external list.
          allOf:
            - $ref: '#/components/schemas/ClearingSystemIdentificationCode'
        clearingSystemIdentificationProprietary:
          description: |
            Identification code for a clearing system, that has not yet been identified in the list of clearing systems.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
    Max30Text:
      type: string
      maxLength: 30
      example: 'Text, 30 characters maximum.'
    MessageCode_409_AIS: 
      description: |
        Message codes defined for AIS for HTTP Error code 409 (CONFLICT).
      anyOf:
        - $ref: '#/components/schemas/MessageCode_ServiceUnspecific_409'
    additionalPartyInformation:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Additional Party Information\" for more details.
      type: object
      properties:
        tradeName:
          description: |
            Trade name of the related party. For display to the PSU only.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        merchantCategoryCode:
          description: |
            Merchant Category Code as assigned by ISO:
          allOf:
            - $ref: '#/components/schemas/MerchantCategoryCode'
        logoURL:
          description: |
            A hyperlink to the logo of the party.
          allOf:
            - $ref: '#/components/schemas/Max2048Text'
        geoLocation:
          description: |
          allOf:
            - $ref: '#/components/schemas/GeoLocation'
    transactionInterest:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Transaction Interest\" for more details.
      type: object
      properties:
        totalInterestAndTaxAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
        record:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/interestRecord'
    MessageCode_400_AIS: 
      description: Message codes defined for AIS for HTTP Error code 400 (BAD_REQUEST).
      anyOf:
        - $ref: '#/components/schemas/MessageCode_ServiceUnspecific_400'
        - $ref: '#/components/schemas/MessageCode_AisSpecific_400'
    PurposeCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - BKDF
        - BKFE
        - BKFM
        - BKIP
        - BKPP
        - CBLK
        - CDCB
        - CDCD
        - CDCS
        - CDDP
        - CDOC
        - CDQC
        - ETUP
        - FCOL
        - MTUP
        - ACCT
        - CASH
        - COLL
        - CSDB
        - DEPT
        - INTC
        - INTP
        - LIMA
        - NETT
        - BFWD
        - CCIR
        - CCPC
        - CCPM
        - CCSM
        - CRDS
        - CRPR
        - CRSP
        - CRTL
        - EQPT
        - EQUS
        - EXPT
        - EXTD
        - FIXI
        - FWBC
        - FWCC
        - FWSB
        - FWSC
        - MARG
        - MBSB
        - MBSC
        - MGCC
        - MGSC
        - OCCC
        - OPBC
        - OPCC
        - OPSB
        - OPSC
        - OPTN
        - OTCD
        - REPO
        - RPBC
        - RPCC
        - RPSB
        - RPSC
        - RVPO
        - SBSC
        - SCIE
        - SCIR
        - SCRP
        - SHBC
        - SHCC
        - SHSL
        - SLEB
        - SLOA
        - SWBC
        - SWCC
        - SWPT
        - SWSB
        - SWSC
        - TBAS
        - TBBC
        - TBCC
        - TRCP
        - AGRT
        - AREN
        - BEXP
        - BOCE
        - COMC
        - CPYR
        - GDDS
        - GDSV
        - GSCB
        - LICF
        - MP2B
        - POPE
        - ROYA
        - SCVE
        - SERV
        - SUBS
        - SUPP
        - TRAD
        - CHAR
        - COMT
        - MP2P
        - ECPG
        - ECPR
        - ECPU
        - EPAY
        - CLPR
        - COMP
        - DBTC
        - GOVI
        - HLRP
        - HLST
        - INPC
        - INPR
        - INSC
        - INSU
        - INTE
        - LBRI
        - LIFI
        - LOAN
        - LOAR
        - PENO
        - PPTI
        - RELG
        - RINP
        - TRFD
        - FORW
        - FXNT
        - ADMG
        - ADVA
        - BCDM
        - BCFG
        - BLDM
        - BNET
        - CBFF
        - CBFR
        - CCRD
        - CDBL
        - CFEE
        - CGDD
        - CORT
        - COST
        - CPKC
        - DCRD
        - DSMT
        - DVPM
        - EDUC
        - FACT
        - FAND
        - FCPM
        - FEES
        - GIFT
        - GOVT
        - ICCP
        - IDCP
        - IHRP
        - INSM
        - IVPT
        - MCDM
        - MCFG
        - MSVC
        - NOWS
        - OCDM
        - OCFG
        - OFEE
        - OTHR
        - PADD
        - PTSP
        - RCKE
        - RCPT
        - REBT
        - REFU
        - RENT
        - REOD
        - RIMB
        - RPNT
        - RRBN
        - RRCT
        - RRTP
        - RVPM
        - SLPI
        - SPLT
        - STDY
        - TBAN
        - TBIL
        - TCSC
        - TELI
        - TMPG
        - TPRI
        - TPRP
        - TRNC
        - TRVC
        - WEBI
        - IPAY
        - IPCA
        - IPDO
        - IPEA
        - IPEC
        - IPEW
        - IPPS
        - IPRT
        - IPU2
        - IPUW
        - ANNI
        - CAFI
        - CFDI
        - CMDT
        - DERI
        - DIVD
        - FREX
        - HEDG
        - INVS
        - PRME
        - SAVG
        - SECU
        - SEPI
        - TREA
        - UNIT
        - FNET
        - FUTR
        - ANTS
        - CVCF
        - DMEQ
        - DNTS
        - HLTC
        - HLTI
        - HSPC
        - ICRF
        - LTCF
        - MAFC
        - MARF
        - MDCS
        - VIEW
        - CDEP
        - SWFP
        - SWPP
        - SWRS
        - SWUF
        - ADCS
        - AEMP
        - ALLW
        - ALMY
        - BBSC
        - BECH
        - BENE
        - BONU
        - CCHD
        - COMM
        - CSLP
        - GFRP
        - GVEA
        - GVEB
        - GVEC
        - GVED
        - GWLT
        - HREC
        - PAYR
        - PEFC
        - PENS
        - PRCP
        - RHBS
        - SALA
        - SPSP
        - SSBE
        - LBIN
        - LCOL
        - LFEE
        - LMEQ
        - LMFI
        - LMRK
        - LREB
        - LREV
        - LSFL
        - ESTX
        - FWLV
        - GSTX
        - HSTX
        - INTX
        - NITX
        - PTXP
        - RDTX
        - TAXS
        - VATX
        - WHLD
        - TAXR
        - B112
        - BR12
        - TLRF
        - TLRR
        - AIRB
        - BUSB
        - FERB
        - RLWY
        - TRPT
        - CBTV
        - ELEC
        - ENRG
        - GASB
        - NWCH
        - NWCM
        - OTLC
        - PHON
        - UBIL
        - WTER
        - BOND
        - CABD
        - CAEQ
        - CBCR
        - DBCR
        - DICL
        - EQTS
        - FLCR
        - EFTC
        - EFTD
        - MOMA
        - RAPI
        - GAMB
        - LOTT
        - AMEX
        - SASW
        - AUCO
        - PCOM
        - PDEP
        - PLDS
        - PLRF
        - GAFA
        - GAHO
        - CPEN
        - DEPD
        - RETL
        - DEBT
      example: 'OTHR'
    TypeOfPriceCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - BIDE
        - OFFR
        - NAVL
        - CREA
        - CANC
        - INTE
        - SWNG
        - MIDD
        - RINV
        - SWIC
        - MRKT
        - INDC
        - DDVR
        - ACTU
      example: 'ACTU'
    error_RFC7807_409_AIS: 
      description: |
        Standardised definition of reporting error information according to [RFC7807].
      type: object
      required:
        - type
        - code
      properties:
        type: 
          description: |
            A URI reference [RFC3986] that identifies the problem type. 
            Remark For Future: These URI will be provided by openFinance API Framework in future.
          type: string
          format: uri
          maxLength: 70
        title:
          description: |
            Short human readable description of error type. Could be in local language. To be provided by ASPSPs.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        status:
          description: |
            HTTP response code generated by the server.
            If contained, this is more relevant as the actual http response code in the actual response, because it is introduced by the application server.            
          type: integer
        detail:
          description: |
            Detailed human readable text specific to this instance of the error. 
          allOf:
            - $ref: '#/components/schemas/Max500Text'
        instance:
          description: |
            This attribute is containing a JSON pointer (as defined in [RFC6901]) or XPath expression to indicate the path to an issue generating the error in the related request.
          allOf:
            - $ref: '#/components/schemas/Max256Text'
        code:
          $ref: '#/components/schemas/MessageCode_409_AIS'
        additionalErrors:
          description: |
            Array of Error Information Blocks.
            Might be used if more than one error is to be communicated
          type: array
          items: #ErrorInformation
            description: This is a data element to support the declaration of additional errors in the context of [RFC7807]. 
            type: object
            required:
              - code
            properties:
              title:
                $ref: '#/components/schemas/Max70Text'
              detail:
                $ref: '#/components/schemas/Max500Text'
              code:
                $ref: '#/components/schemas/MessageCode_409_AIS'
        _links:
          $ref: '#/components/schemas/links'
    cardAccountDetails:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Card Account Details\" for more details.
      type: object
      required:
        - resourceId
        - maskedPan
        - currency
      properties:
        resourceId:
          description: |
            This is the data element to be used in the path when retrieving data from a dedicated account.
          type: string
        maskedPan:
          description: |
            Primary Account Number (PAN) of the main card in masked form..
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        currency:
          description: |
            Account currency
          allOf:
            - $ref: '#/components/schemas/CurrencyCode'
        ownerName:
          description: |
            Name of the legal account owner. If there is more than one owner, then e.g. two names might be noted here.
            For a corporate account, the corporate name is used for this attribute.
            Even if supported by the ASPSP, the provision of this field might depend on the fact whether an explicit consent to 
            this specific additional account information has been given by the PSU.
          allOf:
            - $ref: '#/components/schemas/Max140Text'
        name:
          description: |
            Name of the account, as assigned by the ASPSP, in agreement with the account owner in order to provide an additional means of identification of the account.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        displayName:
          description: |
            Name of the account as defined by the PSU within online channels.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        product:
          description: |
            Product Name of the Bank for this account, proprietary definition
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        debitAccounting:
          description: |
            If true, the amounts of debits on the reports are quoted positive with the related consequence for balances.
            If false, the amount of debits on the reports are quoted negative.
          type: boolean
        status:
          description: |
            Account status. The value is one of the following:
            * \"enabled\": account is available
            * \"deleted\": account is terminated
            * \"blocked\": account is blocked e.g. for legal reasons
            If this field is not used, than the account is available in the sense of this specification.
          type: string
        usage:
          description: |
            Specifies the usage of the account
            - PRIV: private personal account
            - ORGA: professional account
          allOf:
            - $ref: '#/components/schemas/Max140Text'
        details:
          description: |
            Specifications that might be provided by the ASPSP
            - characteristics of the account
            - characteristics of the relevant card
          allOf:
            - $ref: '#/components/schemas/Max1000Text'
        creditLimit:
          description: |
            Defines the credit limit of the PSU aggregated for all cards related to this card account in total.
          allOf:
            - $ref: '#/components/schemas/amount'
        balances:
          description: |
            The specific card account balances associated to this card accounts.
          type: array
          items:
            $ref: '#/components/schemas/balance'
        _links:
          description: |
            Links to the cardAccount, which can be directly used for retrieving account information from this dedicated account.
            Links to \"balances\" and/or \"cardTransactions\"
            These links are only supported, when the corresponding consent has been already granted.
          allOf:
            - $ref: '#/components/schemas/links'
    MerchantCategoryCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      maxLength: 4
      minLength: 4
    CreditorReferenceTypeCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Creditor Reference Type Code\" for more details.
      type: string
      enum:
        - RADM
        - RPIN
        - FXDR
        - DISP
        - PUOR
        - SCOR
      example: 'PUOR'
    chargesRecord:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Charges Record\" for more details.
      type: object
      required:
        - amount
      properties:
        amount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
        chargesIncludedIndicator:
          description: |
            Indicates whether the charge should be included in the amount or is added as pre-advice.
          type: boolean
        typeCode:
          description: |
            ExternalChargeType1code
          allOf:
            - $ref: '#/components/schemas/ChargeTypeCode'
        rate:
          description: |
          allOf:
            - $ref: '#/components/schemas/PercentageRate'
        bearer:
          description: |
            ChargeBearerType1Code
          allOf:
            - $ref: '#/components/schemas/BearerCode'
        agent:
          description: |
          allOf: 
            - $ref: '#/components/schemas/agentDescription'
        tax:
          description: |
          allOf:
            - $ref: '#/components/schemas/tax'
    Max1000Text:
      type: string
      maxLength: 1000
      example: 'Text, maximum of 1000 characters.'
    CardDataEntryMode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Card Data Entry Mode\" for more details.
      type: string
      enum:
        - CICC
        - ECTL
        - MGST
        - PHYS
        - BRCD
      example: 'ECTL'
    CountryCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      pattern: '[A-Z]{2}'
      example: 'SE'
    error_RFC7807_405_AIS: 
      description: |
        Standardised definition of reporting error information according to [RFC7807].
      type: object
      required:
        - type
        - code
      properties:
        type: 
          description: |
            A URI reference [RFC3986] that identifies the problem type. 
            Remark For Future: These URI will be provided by openFinance API Framework in future.
          type: string
          format: uri
          maxLength: 70
        title:
          description: |
            Short human readable description of error type. Could be in local language. To be provided by ASPSPs.
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        status:
          description: |
            HTTP response code generated by the server.
            If contained, this is more relevant as the actual http response code in the actual response, because it is introduced by the application server.            
          type: integer
        detail:
          description: |
            Detailed human readable text specific to this instance of the error. 
          allOf:
            - $ref: '#/components/schemas/Max500Text'
        instance:
          description: |
            This attribute is containing a JSON pointer (as defined in [RFC6901]) or XPath expression to indicate the path to an issue generating the error in the related request.
          allOf:
            - $ref: '#/components/schemas/Max256Text'
        code:
          $ref: '#/components/schemas/MessageCode_405_AIS'
        additionalErrors:
          description: |
            Array of Error Information Blocks.
            Might be used if more than one error is to be communicated
          type: array
          items: #ErrorInformation
            description: This is a data element to support the declaration of additional errors in the context of [RFC7807]. 
            type: object
            required:
              - code
            properties:
              title:
                $ref: '#/components/schemas/Max70Text'
              detail:
                $ref: '#/components/schemas/Max500Text'
              code:
                $ref: '#/components/schemas/MessageCode_405_AIS'
        _links:
          $ref: '#/components/schemas/links'
    marketIdentification:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Market Identification\" for more details.
      type: object
      properties:
        mic:
          description: |
            ISO 10383 code of the market place.
          allOf:
            - $ref: '#/components/schemas/Max4Text'
        marketIdentifierProprietary:
          description: |
            Proprietary identifier of the market place.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
    amount:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Amount\" for more details.
      type: object
      required:
        - currency
        - amount
      properties:
        currency:
          description: |
            ISO 4217 Alpha 3 currency code
          allOf:
            - $ref: '#/components/schemas/CurrencyCode'
        amount:
          description: |
            The amount given with fractional digits, where fractions must be compliant to the currency definition. Up to 14 significant figures. Negative amounts are signed by minus.
            The decimal separator is a dot.
            Example: Valid representations for EUR with up to two decimals are:
            * 1056
            * 5768.2
            * -1.50
            * 5877.78
          type: string
          pattern: '-?[0-9]{1,14}(\.[0-9]{1,3})?'
    reportExchangeRate:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Report Exchange Rate\" for more details.
      type: object
      required:
        - sourceCurrency
        - exchangeRate
        - unitCurrency
        - targetCurrency
        - quotationDate
      properties:
        sourceCurrency:
          description: |
            Currency from which an amount is to be converted in a currency conversion.
          allOf:
            - $ref: '#/components/schemas/CurrencyCode'
        exchangeRate:
          description: |
            Factor used to convert an amount from one currency into another. This reflects the price at which one currency was bought with another currency.
          type: string
        unitCurrency:
          description: |
            Currency in which the rate of exchange is expressed in a currency exchange. In the example 1EUR = xxxCUR, the unit currency is EUR.
          allOf:
            - $ref: '#/components/schemas/CurrencyCode'
        targetCurrency:
          description: |
            Currency into which an amount is to be converted in a currency conversion.
          allOf:
            - $ref: '#/components/schemas/CurrencyCode'
        quotationDate:
          description: |
            Date at which an exchange rate is quoted.
          allOf:
            - $ref: '#/components/schemas/ISODate'
        contractIdentification:
          description: |
            Unique identification to unambiguously identify the foreign exchange contract.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
    structuredAdditionalInformation:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Structured Additional Information\" for more details.
      type: object
      properties:
        standingOrderDetails:
          description: |
            Details of underlying standing orders.
          allOf:
            - $ref: '#/components/schemas/standingOrderDetails'
        rtpDetails:
          description: |
            Details of underlying incoming RTPs
          allOf:
            - $ref: '#/components/schemas/rtpDetails'
    quantity:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Quantity\" for more details.
      type: object
      properties:
        unit:
          description: |
          type: number
          format: double
        faceAmount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
        amortisedValue: 
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
    totalEntriesPerBankTransactionCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Total Entries per Bank Transaction Code\" for more details.
      type: object
      required:
        - bankTransactionCode
      properties:
        numberOfEntries:
          description: |
            Only numeric text is permitted. 
          allOf:
            - $ref: '#/components/schemas/Max15Text'
        sum: 
          description: |
            The sum of total individual entries.
          type: number
          format: double
        totalNetEntry:
          description: |
            The debit or credit amount of the netted amounts of all credit and debit entries. 
          allOf:
            - $ref: '#/components/schemas/totalNetEntry'
        creditEntries:
          description: |
            Number of individual credit entries for the bank transaction code
          allOf:
            - $ref: '#/components/schemas/creditEntries'
        debitEntries:
          description: |
            Number of individual debit entries for the bank transaction code
          allOf:
            - $ref: '#/components/schemas/debitEntries'
        forecastIndicator:
          description: |
            Indicated whether the bank transaction code is related to booked or forcast items.
          type: boolean
        bankTransactionCode:
          description: |
            Set of elements used to fully identify the type of transaction resulting in an entry.
          allOf:
            - $ref: '#/components/schemas/BankTransactionCode'
        availability:
          description: |
            Indicated when the booked amount of money will be available
          type: array
          items: 
            $ref: '#/components/schemas/availability'
        date:
          description: |
            Date of the transaction summary
          allOf: 
            - $ref: '#/components/schemas/ISODate'
        dateTime:
          description: |
            Date and time of the transaction summary
          allOf: 
            - $ref: '#/components/schemas/ISODateTime'
    OrderStatusCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Order Status Code\" for more details.
      type: string
      enum:
        - unknown
        - new
        - partiallyFilled
        - filled
        - doneForDay
        - canceled
        - replaced
        - pendingCancel
        - stopped
        - rejected
        - suspended
        - pendingNew
        - calculated
        - expired
        - acceptedForBidding
        - pendingReplace
      example: 'new'
    cardType:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Card Type\" for more details.
      type: object
      properties:
        cardBrand:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        maskedPAN:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max30Text'
        cardHolderName:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max45Text'
    balanceStatement:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Balance Statement\" for more details.
      type: object
      required:
        - typeCode
        - amount
      properties:
        typeCode:
          description: |
            short ISO Code
          allOf:
            - $ref: '#/components/schemas/BalanceCode'
        subTypeCode:
          description: |
            ExternalBalanceSubtype1Code
          allOf:
            - $ref: '#/components/schemas/BalanceSubCode'
        creditLine:
          description: |
          allOf:
            - $ref: '#/components/schemas/creditLine'
        amount:
          description: |
          allOf:
            - $ref: '#/components/schemas/amount'
        date:
          description: |
            indicates the date of the balance
          allOf:
            - $ref: '#/components/schemas/ISODate'
        dateTime:
          description: |
          allOf: 
            - $ref: '#/components/schemas/ISODateTime'
        availability:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/availability'
    entryDetails:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Entry Details\" for more details.
      type: object
      required:
        - transactionAmount
      properties:
        references:
          description: |
            might contain the endToEndId as well as the new UETR field
          allOf:
            - $ref: '#/components/schemas/references'
        creditor:
          description: |
            Name and potentially an identification of the creditor if a \"Debited\" transaction.
          allOf:
            - $ref: '#/components/schemas/partyDescription'
        transactionAmount:
          description: |
            The amount of the transaction as billed to the account.
          allOf:
            - $ref: '#/components/schemas/amount'
        currencyExchange:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/reportExchangeRate'
        creditorAccount:
          description: |
          allOf:
            - $ref: '#/components/schemas/accountReference'
        creditorAgent:
          description: |
            Proprietary identifications might be provided under financialInstitutionId/other
          allOf:
            - $ref: '#/components/schemas/agentDescription1'
        ultimateCreditor:
          description: |
          allOf:
            - $ref: '#/components/schemas/partyDescription4'
        debtor:
          description: |
            Name and potentially identification of the debtor if a \"Credited\" transaction
          allOf:
            - $ref: '#/components/schemas/partyDescription'
        debtorAccount:
          description: |
          allOf:
            - $ref: '#/components/schemas/accountReference'
        debtorAgent:
          description: |
            Proprietary identifications might be provided under financialInstitutionId/other
          allOf:
            - $ref: '#/components/schemas/agentDescription1'
        ultimateDebtor:
          description: |
          allOf:
            - $ref: '#/components/schemas/partyDescription4'
        remittanceInformationUnstructured:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/Max140Text'
        remittanceInformationStructured:
          description: |
          type: array
          items:
            $ref: '#/components/schemas/remittance'
        purposeCode:
          description: |
          allOf:
            - $ref: '#/components/schemas/PurposeCode'
    BalanceSubCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      enum:
        - ADJT
        - BCUR
        - BLCK
        - BLKD
        - DLOD
        - EAST
        - FCOL
        - FCOU
        - FORC
        - FUND
        - INTM
        - LCUR
        - LRLD
        - NOTE
        - PDNG
        - PIPO
        - PRAV
        - RESV
        - SCOL
        - SCOU
        - THRE
      example: 'PIPO'
    contactDetails:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Contact Details\" for more details.
      type: object
      properties:
        namePrefix:
          description: |
            Specifies the terms used to formally address a person.
          allOf:
            - $ref: '#/components/schemas/NamePrefixCode'
        name:
          description: |
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        phoneNumber:
          description: |
            pattern \+[0-9]{1,3}-[0-9()+\-]{1,30}
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        mobileNumber:
          description: |
            pattern \+[0-9]{1,3}-[0-9()+\-]{1,30}
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        faxNumber:
          description: |
            pattern \+[0-9]{1,3}-[0-9()+\-]{1,30}
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        emailAddress:
          description: |
            Address for electronic mail (e-mail).
          allOf:
            - $ref: '#/components/schemas/Max70Text'
        emailPurpose:
          description: |
            Purpose for which an email address may be used.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        jobTitle:
          description: |
            Title of the function.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        responsibility:
          description: |
            Role of a person in an organisation.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        department:
          description: |
            Identification of a division of a large organisation or building.
          allOf:
            - $ref: '#/components/schemas/Max35Text'
        preferredMethod:
          description: |
            Preferred method used to reach the contact.
          allOf:
            - $ref: '#/components/schemas/PreferredMethod'
    ISIN:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      pattern: '[A-Z]{2,2}[A-Z0-9]{9,9}[0-9]{1,1}'
      example: 'EU000A2X2A25'
    MessageCode_AisSpecific_401:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"AIS Specific HTTP Error Codes\" for more details.
      type: string
      pattern: '^(?!(CONSENT_INVALID|^(?!(CONSENT_INVALID))))'
    LEI:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      pattern: '[A-Z0-9]{18,18}[0-9]{2,2}'
      example: '549300DTUYXVMJXZNY75'
    MessageCode_AisSpecific_404:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"AIS Specific HTTP Error Codes\" for more details.
      type: string
      enum: 
        - CONTENT_TEMPORARILY_NOT_AVAILABLE
      example: 'CONTENT_TEMPORARILY_NOT_AVAILABLE'
    InterestTypeCode3:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Interest Type Code\" for more details.
      type: string
      enum:
        - FIXD
        - INDE
      example: 'FIXD'
    referencesStatement:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"References Statement\" for more details.
      type: object
      properties:
        messageId:
          description: |
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        accountServicerReference:
          description: |
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        paymentInformationId:
          description: |
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        instructionId:
          description: |
            Unique identification as assigned by an instructing party for an instructed party to unambiguously identify the instruction.
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        endToEndId:
          description: |
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        uetr:
          description: |
            Universally unique identifier to provide an end-to-end reference of a payment transaction.
            It is recommended to use time-based version (version 1) and variant 8,9,a or b of the UUID as defined in [RFC4122] for UUID fields such as uetr.
          allOf:
            - $ref: '#/components/schemas/UUID'
        transactionId:
          description: |
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        mandateId:
          description: |
            direct debit related mandate.
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        checkNumber:
          description: |
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        clearingSystemReference:
          description: |
            Unique reference as defined by clearing system.
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        accountOwnerTransactionId:
          description: |
            Unambiguous identification of the securities transaction as known by the securities account owner (or the instructing party managing the account).
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        accountServicerTransactionId:
          description: |
            Unambiguous identification of the securities transaction as known by the securities account servicer.
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        marketInfrastructureTransactionId:
          description: |
            Identification of a securities transaction assigned by a market infrastructure other than a central securities depository, for example, Target2-Securities.
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
        processingId:
          description: |
            Identification of the securities transaction assigned by the processor of the instruction other than the securities account owner, the securities account servicer and the market infrastructure.
          allOf: 
            - $ref: '#/components/schemas/Max35Text'
    ISODateTime:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Other ISO-related basic Types\" for more details.
      type: string
      format: date-time
      example: '2020-01-01T13:00:00.999-01:00'
    partyIdentification:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Party Identification\" for more details.
      type: object
      properties:
        organisationId:
          description: |
            An entry provided by an external ISO code list
          allOf:
            - $ref: '#/components/schemas/organisationIdentification'
        privateId:
          description: |
            A scheme name defined in a proprietary way.
          allOf:
            - $ref: '#/components/schemas/privateIdentification'
    OrderTimeLimitCode:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"Order Time Limit Code\" for more details.
      type: string
      enum:
        - day
        - goodTillCancel
        - atTheOpening
        - immediateOrCancel
        - fillOrKill
        - fillAndKill
        - goodTillCrossing
        - goodTillDate
        - atTheClose
        - goodThroughCrossing
        - atCrossing
        - goodForTime
        - goodForAuction
        - goodForMonth
      example: 'day'
    MessageCode_AisSpecific_400:
      description: |
        See document \"openFinance API Framework Data Dictionary\", section \"AIS Specific HTTP Error Codes\" for more details.
      type: string
      enum: 
        - CONSENT_TYPE_NOT_SUPPORTED
        - SESSIONS_NOT_SUPPORTED
      example: 'SESSIONS_NOT_SUPPORTED'
  parameters:
    PATH_accountId:
      name: account-id
      in: path
      description: |
        This identification is denoting the addressed (card) account. 
        The account-id is retrieved by using a \"Read Account List\" or \"Read Card Account list\" call. 
        The account-id is the \"resourceId\" attribute of the account structure. 
        Its value is constant at least throughout the lifecycle of a given consent.
      required: true
      schema:
        $ref: '#/components/schemas/Max70Text'
    HEADER_psuIpAddress_optional:
      name: PSU-IP-Address
      in: header
      description: |
         The forwarded IP Address header field consists of the corresponding HTTP request IP Address field between PSU and TPP. Conditions will be defined within service specifications, If applicable. 
      schema:
        type: string
        format: ipv4
      required: false
      example: '192.168.8.78'
    PATH_orderId:
      name: orderId
      in: path
      description: |
        This identification is given by the attribute orderId of the corresponding entry of a securities order list.
      required: true
      schema:
        $ref: '#/components/schemas/Max70Text'
      example: '3dc3d5b3-7023-4848-9853-f5400a64e80f'
    QUERY_dateTo:
      name: dateTo
      in: query
      description: |
        End date (inclusive the data dateTo) of the transaction list, default is \"now\" if not given. 
        Might be ignored if a delta function is used.
        For booked transactions, the relevant date is the booking date. 
        For pending transactions, the relevant date is the entry date, which may not be transparent 
        neither in this API nor other channels of the ASPSP.
      required: false
      schema:
        $ref: '#/components/schemas/ISODate'
    HEADER_apiContractId:
      name: API-Contract-ID
      in: header
      description: |
        Might be mandated by the ASPSP, if a commercial agreement is needed for the usage of the service.
      schema:
        type: string
        format: uuid
      required: false
      example: '99435d7f-ad87-4aec-a2ae-99ddcb1f6555'
    QUERY_evaluationCurrency:
      name: evaluationCurrency
      in: query
      description: 
        ISO Alpha-3 currency code to request evaluation of the balances in a specific currency.
        This query parameter might be ignored by the ASPSP, if evaluation is not supported for variable currencies or does not support evaluation in the requested currency. 
      schema:
        $ref: '#/components/schemas/CurrencyCode'
    QUERY_toDateTime:
      name: toDateTime
      in: query
      description: |
        Date and time at which the period of account statement ends.
        The ASPSP is not mandated to interpret the time fraction of the timestamp. In this case, the validation would use only the presented date and provide statements accordingly.
        If the API Client wants to retrieve the statements for the whole day, the value 24:00:00 shall be used as time fraction in the timestamp.
        In case no ending period has been specified, the retrieved account statement shall contain the statement from the starting point of time till the date/time of the request.
      required: false
      schema:
        $ref: '#/components/schemas/ISODateTime'
    QUERY_bookingStatusCard:
      name: bookingStatus
      in: query
      description: |
        Permitted codes are 
          * \"booked\",
          * \"pending\",
          * \"both\",
        \"booked\" shall be supported by the ASPSP.
        To support the \"pending\" and \"both\" feature is optional for the ASPSP, 
        Error code if not supported in the online banking frontend.
        If supported, \"both\" means to request transaction reports of transaction of bookingStatus either \"pending\" or \"booked\".
      required: true
      schema:
        type: string
        enum:
          - booked
          - pending
          - both
      example: 'booked'
    QUERY_entryReferenceFrom:
      name: entryReferenceFrom
      in: query
      description: |
        This data attribute is indicating that the AISP is in favour to get all transactions after 
        the transaction with identification entryReferenceFrom alternatively to the above defined period. 
        This is a implementation of a delta access. 
        If this data element is contained, the entries \"dateFrom\" and \"dateTo\" might be ignored by the ASPSP 
        if a delta report is supported.
        Optional if supported by API provider.
      required: false
      schema:
        $ref: '#/components/schemas/Max35Text'
    HEADER_xRequestId:
      name: X-Request-ID
      in: header
      description: ID of the request, unique to the call, as determined by the initiating party.
      required: true
      schema:
        type: string
        format: uuid
      example: '99391c7e-ad88-49ec-a2ad-99ddcb1f7721'
    QUERY_fromDateTime:
      name: fromDateTime
      in: query
      description: |
        Date and time at which the period of the account statement starts. 
        The ASPSP is not mandated to interpret the time fraction of the timestamp. In this case, the validation would use only the presented date and provide statements accordingly.
        If the API Client wants to retrieve the statements for the whole day, the value 00:00:00 shall be used as time fraction in the timestamp.
        In case no starting period has been specified, the retrieved account statement shall contain the statement of the current period, where the chosen period is implementation specific.
        Furthermore, the ASPSP may mandate the usage of this query parameter.
      required: false
      schema:
        $ref: '#/components/schemas/ISODateTime'
    PATH_transactionId:
      name: transactionId
      in: path
      description: |
        This identification is given by the attribute transactionId of the corresponding entry of a transaction list.
      required: true
      schema:
        $ref: '#/components/schemas/Max70Text'
      example: '3dc3d5b3-7023-4848-9853-f5400a64e80f'
    QUERY_bookingStatusGeneric:
      name: bookingStatus
      in: query
      description: |
        Permitted codes are 
          * \"booked\",
          * \"pending\",  
          * \"both\",
          * \"information\" and
          * \"all\"
        \"booked\" shall be supported by the ASPSP.
        To support the \"pending\" and \"both\" feature is optional for the ASPSP, 
        Error code if not supported in the online banking frontend.
        If supported, \"both\" means to request transaction reports of transaction of bookingStatus either \"pending\" or \"booked\".
        To support the \"information\" feature is optional for the ASPSP. Currently the booking status \"information\" only covers standing orders. Error code if not supported.
        To support the \"all\" feature is optional for the ASPSP, Error code if not supported. If supported, \"all\" means to request transaction reports of transaction of any bookingStatus (\"pending\", \"booked\" or \"information\").
      required: true
      schema:
        type: string
        enum:
          - information
          - booked
          - pending
          - both
          - all
      example: 'booked'
    QUERY_valueDateFrom:
      name: valueDateFrom
      in: query
      description: |
        Requests in addition to the balances of the current accounting period all balances at the end of previous accounting periods (e.g. monthly periods) with payment due date starting from the provided date on if still retrievable under the given consent. 
        Note: The accounting period is the invoicing period of the related card.
      required: false
      schema:
        $ref: '#/components/schemas/ISODate'
    QUERY_deltaList:
      name: deltaList
      in: query
      description: 
        This data attribute is indicating that the AISP is in favour to get all transactions after the last report access 
        for this PSU on the addressed account. 
        This is another implementation of a delta access-report.
        This delta indicator might be rejected by the ASPSP if this function is not supported.
        Optional if supported by API provider
      schema:
        type: boolean
      example: true
    QUERY_cardBrand:
      name: cardBrand
      in: query
      description: |
        This attribute filters transactions according to their corresponding card brand.
        Only to be supported in a scenario, where this is used as statements e.g. of card acquirers towards merchants..
      required: false
      schema:
        $ref: '#/components/schemas/Max35Text'
    PATH_cardId:
      name: card-id
      in: path
      description: |
        This identification is denoting the addressed card. 
        The card-id is retrieved by using a "Read Card List" call. 
        The card-id is the "resourceId" attribute of the card structure. 
        Its value is constant at least throughout the lifecycle of a given consent.
      required: true
      schema:
        $ref: '#/components/schemas/Max70Text'
    QUERY_orderStatus:
      name: orderStatus
      in: query
      description: |
        Comma separated list of Order Status Codes.
        Restricts the result to orders that are currently assigned to one of the status values provided in this query parameter.
        If the parameter is not provided, orders are provided without restriction to their respective status.
      required: false
      schema:
        type: string
      example: 'filled,partiallyFilled'
    HEADER_consentId_mandatory:
      name: Consent-ID
      in: header
      description: |
        This then contains the consentId of the related AIS consent, which was performed prior to this payment initiation.
      required: true
      schema:
        $ref: '#/components/schemas/Max70Text'
      example: '123cons456'
    HEADER_xJwsSignature:
      name: x-jws-signature
      in: header
      description: |
        The attribute x-jws-signature contains the JSON Web Signature.
      schema:
        type: string
      required: false # conditional
      example: 'eyJiNjQiOmZhbHNlLCJ4NXQjUzI1NiI6ImR5dFBwU2tKWXpoVGRQWFNXUDdqaFhnRzRrQ09XSVdHaWVzZHprdk5MelkiLCJjcml0IjpbInNpZ1QiLCJzaWdEIiwiYjY0Il0sInNpZ1QiOiIyMDIwLTEwLTI2VDExOjI2OjU3WiIsInNpZ0QiOnsicGFycyI6WyJ4LXJlcXVlc3QtaWQiLCJkaWdlc3QiXSwibUlkIjoiaHR0cDovL3VyaS5ldHNpLm9yZy8xOTE4Mi9IdHRwSGVhZGVycyJ9LCJhbGciOiJSUzI1NiJ9..NuGglWBtHcXavob2ZmW-PoSpMmhJS9U6z8zPqHFoE97vHI3z8wtaVdbwsj5WzgPjtVWUUnk8cxP4JjLXdwzwhhHB2uJ5FI4ZZGdSQQw-9pXPUx3cCJSzHmrgkJ-di-A4'
    HEADER_digest:
      name: Digest
      in: header
      description: |
        When API Client include a signature according to this signature profile, they also must include a \"Digest\" header as defined in [RFC3230]. 
        The \"Digest\" Header contains a Hash of the message body. If the message does not contain a body, the \"Digest\" header must contain the hash of an empty byte list.
        The only hash algorithms that may be used to calculate the Digest within the context of this specification are SHA-256 and SHA-512 as defined in [RFC5843]. 
      schema:
        type: string
      required: false # conditional
      example: 'SHA-256=hl1/Eps8BEQW58FJhDApwJXjGY4nr1ArGDHIT25vq6A='
    QUERY_dateFrom:
      name: dateFrom
      in: query
      description: |
        Conditional: Starting date (inclusive the date dateFrom) of the transaction list, mandated if no delta access is required
        and if bookingStatus does not equal \"information\".
        For booked transactions, the relevant date is the booking date. 
        For pending transactions, the relevant date is the entry date, which may not be transparent 
        neither in this API nor other channels of the ASPSP.
      required: false
      schema:
        $ref: '#/components/schemas/ISODate'
    QUERY_pageSize:
      name: pageSize
      in: query
      description: |
        This query parameter defines the transaction entries per call to be retrieved for extended services. 
        If not supported, then the call is rejected.
        If supported by the ASPSP and if the value is higher than maxPageSize as defined by the ASPSP in its documentation, then the call is rejected.
      required: false
      schema:
        type: integer
      example: 3
  requestBodies: {}
  headers:
    ASPSP-Notification-Support:
      description: |
        true if the ASPSP supports resource status notification services.
        false if the ASPSP supports resource status notification in general, but not for the current request.
        Not used, if resource status notification services are generally not supported by the ASPSP.
        Shall be supported if the ASPSP supports resource status notification services.
      schema:
        type: boolean       
      required: false
      example: true
    X-Reference-API-Version:
      description: ID of the request, unique to the call, as determined by the initiating party.
      required: true
      schema:
        type: string
      example: '2.1.3'
    X-Reference-API-Document:
      description: |
        The name of the Implementation Guideline document, where the service is based on, e.g. \"Extended Payment Initiation Services\". 
      required: false
      schema:
        type: string
      example: 'Extended Payment Initiation Services'
    X-Request-ID:
      description: |
        ID of the request, unique to the call, as determined by the initiating party.
      required: true
      schema:
        type: string
        format: uuid
      example: '99391c7e-ad88-49ec-a2ad-99ddcb1f7721'
    X-Reference-API-Name:
      description: |
        \"Berlin Group openFinance API\" 
      required: false
      schema:
        type: string
      example: 'Berlin Group openFinance API'
    Location:
      description: |
        Location of the created resource.
      schema:
        type: string
        format: url
      required: false
      example: 'https://testbank.com/xs2a/v2/consents/account-access/123cons456'
  responses:
    Ok_200_AISCARDDETAILS:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - card
            properties:
              card:
                description: |
                  Description of the addressed card.
                allOf:
                  - $ref: '#/components/schemas/cardAccountDetails'
    Ok_200_AISSECURITIESACCOUNTORDERLIST:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - account
            properties:
              account:
                description: |
                  Identifier of the addressed account.
                allOf:
                  - $ref: '#/components/schemas/accountReference'
              orders:
                description: |
                  List of orders placed for this securities account.
                type: array
                items:
                  $ref: '#/components/schemas/securitiesOrder'
              _links:
                description: |
                  A list of hyperlinks to be recognised by the TPP. 
                  Type of links admitted in this response:
                    \"first\": Navigation link for paginated transaction lists.
                    \"next:\" Navigation link for paginated transaction lists.
                    \"previous\": Navigation link for paginated transaction lists.
                    \"last\": Navigation link for paginated transaction lists
                allOf:
                  - $ref: '#/components/schemas/_links_200_AISSECURITIESACCOUNTORDERLIST'
    Ok_200_AISCARDTXLIST:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - card
            properties:
              card:
                description: |
                  Identifier of the addressed card account.
                allOf:
                  - $ref: '#/components/schemas/accountReference'
              debitAccounting:
                description: |
                  If true, the amounts of debits on the reports are quoted positive with the related consequence for balances.
                  If false, the amount of debits on the reports are quoted negative.
                type: boolean
              cardTransactions:
                description: |
                  JSON based account report.
                allOf:
                  - $ref: '#/components/schemas/cardAccountReport'
              balances:
                description: |
                  A list of balances regarding this account, which might be restricted to the current balance.
                type: array
                items:
                  $ref: '#/components/schemas/balance'
              _links:
                description: |
                  A list of hyperlinks to be recognised by the TPP.Type of links admitted in this response:
                  \"download\": a link to a resource, where the transaction list might be downloaded from in case where transaction lists have a huge size.
                allOf:
                  - $ref: '#/components/schemas/_links_200_AISCARDTXLIST'
    decline_503:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        Location:
          $ref: '#/components/headers/Location'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
        ASPSP-Notification-Support :
          $ref: '#/components/headers/ASPSP-Notification-Support'
      description: Service Unavailable
    decline_500:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        Location:
          $ref: '#/components/headers/Location'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
        ASPSP-Notification-Support :
          $ref: '#/components/headers/ASPSP-Notification-Support'
      description: Internal Server Error
    decline_408:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        Location:
          $ref: '#/components/headers/Location'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
        ASPSP-Notification-Support :
          $ref: '#/components/headers/ASPSP-Notification-Support'
      description: Request Timeout
    Ok_200_AISSAVINGSACCOUNTBALANCE:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - account
              - balances
            properties:
              account:
                description: |
                  Identifier of the addressed account.
                allOf:
                  - $ref: '#/components/schemas/accountReference'
              balances:
                description: |
                  A list of balances regarding this account.
                type: array
                items:
                  $ref: '#/components/schemas/balance'
    decline_401_AIS:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        Location:
          $ref: '#/components/headers/Location'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
        ASPSP-Notification-Support:
          $ref: '#/components/headers/ASPSP-Notification-Support'
      description: Unauthorised
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error_NG_401_AIS'
        application/problem+json:
          schema:
            $ref: '#/components/schemas/error_RFC7807_401_AIS'
    decline_406:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        Location:
          $ref: '#/components/headers/Location'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
        ASPSP-Notification-Support :
          $ref: '#/components/headers/ASPSP-Notification-Support'
      description: Not Acceptable
    Ok_200_AISSINGLEACCOUNTSTATEMENT:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - messageId
              - creationDateTime
              - statement
            properties:              
              messageId:
                description: |
                  Point to point reference, as assigned by the sending party, to unambiguously identify the batch of transactions.
                allOf:
                  - $ref: '#/components/schemas/Max35Text'
              creationDateTime:
                description: |
                  Date and time at which the message was created.
                allOf:
                  - $ref: '#/components/schemas/ISODateTime'
              messageRecipient:
                description: |
                  Party authorised by the account owner to receive information about movements on the account.
                allOf:
                  - $ref: '#/components/schemas/partyIdentification'
              pageNumber:
                description: |
                  Page number.
                type: integer
              lastPageIndicator:
                description: |
                  Indicates the last page.
                type: boolean
              statement:
                description: |
                  Usage Rule:
                  For /accounts/{account-id}/statements only a single statement element will be provided.
                  For /account-statements there will be one statement element for each account which is addressable by the PSU under the related consent.
                type: array
                items:
                  $ref: '#/components/schemas/statement'
    Ok_200_AISLOANACCOUNTLIST:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - accounts
            properties:
              accounts:
                description: |
                  In case, no account is accessible, the ASPSP shall return an empty array.As this is also considered a positive response, the Response code must still be 200.
                type: array
                items:
                  $ref: '#/components/schemas/accountDetails'
    Ok_200_AISSECURITIESACCOUNTORDERDETAILS:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - orderDetails
            properties:
              orderDetails:
                description: |
                  Details of the requested securities order.
                allOf:
                  - $ref: '#/components/schemas/securitiesOrder'
    decline_409_AIS:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        Location:
          $ref: '#/components/headers/Location'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
        ASPSP-Notification-Support:
          $ref: '#/components/headers/ASPSP-Notification-Support'
      description: Conflict
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error_NG_409_AIS'
        application/problem+json:
          schema:
            $ref: '#/components/schemas/error_RFC7807_409_AIS'
    Ok_200_AISSAVINGSACCOUNTDETAILS:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - account
            properties:
              account:
                description: |
                allOf:
                  - $ref: '#/components/schemas/accountDetails'
    decline_405_AIS:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        Location:
          $ref: '#/components/headers/Location'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
        ASPSP-Notification-Support:
          $ref: '#/components/headers/ASPSP-Notification-Support'
      description: Method not allowed
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error_NG_405_AIS'
        application/problem+json:
          schema:
            $ref: '#/components/schemas/error_RFC7807_405_AIS'
    Ok_200_AISALLACCOUNTSTATEMENTS:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - messageId
              - creationDateTime
              - statement
            properties:              
              messageId:
                description: |
                  Point to point reference, as assigned by the sending party, to unambiguously identify the batch of transactions.
                allOf:
                  - $ref: '#/components/schemas/Max35Text'
              creationDateTime:
                description: |
                  Date and time at which the message was created.
                allOf:
                  - $ref: '#/components/schemas/ISODateTime'
              messageRecipient:
                description: |
                  Party authorised by the account owner to receive information about movements on the account.
                allOf:
                  - $ref: '#/components/schemas/partyIdentification'
              pageNumber:
                description: |
                  Page number.
                type: integer
              lastPageIndicator:
                description: |
                  Indicates the last page.
                type: boolean
              statement:
                description: |
                  Usage Rule:
                  For /accounts/{account-id}/statements only a single statement element will be provided.
                  For /account-statements there will be one statement element for each account which is addressable by the PSU under the related consent.
                type: array
                items:
                  $ref: '#/components/schemas/statement'
    Ok_200_AISLOANACCOUNTTXLIST:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - account
            properties:
              account:
                description: |
                  Identifier of the addressed account.
                allOf:
                  - $ref: '#/components/schemas/accountReference'
              transactions:
                description: |
                  JSON based account report. This account report contains transactions resulting from the query parameters.
                allOf:
                  - $ref: '#/components/schemas/accountReport'
              balances:
                description: |
                  A list of balances regarding this account, which might be restricted to the current balance.
                type: array
                items:
                  $ref: '#/components/schemas/balance'
              _links:
                description: |
                  A list of hyperlinks to be recognised by the TPP. 
                  Type of links admitted in this response:
                  \"download\": a link to a resource, where the transaction list might be downloaded from in case where transaction lists have a huge size.
                  Remark: This feature shall only be used where camt-data is requested which has a huge size.
                allOf:
                  - $ref: '#/components/schemas/_links_200_AISLOANACCOUNTTXLIST'
        application/xml:
          schema:
            description: 
              In case the ASPSP returns a camt.05x XML structure, the response body consists of either a camt.052 or camt.053 format.
              The camt.052 may include pending payments which are not yet finally booked. 
              The ASPSP will decide on the format due to the chosen parameters, specifically on the chosen dates relative to the time of the request. 
              In addition the ASPSP might offer camt.054x structure e.g. in a corporate setting.
            type: string
        text/plain:
          schema:
            description: 
              In case the ASPSP returns a MT94x content, the response body consists of an MT940 or MT942 format in a text structure. 
              The MT942 may include pending payments which are not yet finally booked. 
              The ASPSP will decide on the format due to the chosen parameters, specifically on the chosen dates relative to the time of the request.
            type: string
    Ok_200_AISSAVINGSACCOUNTLIST:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - accounts
            properties:
              accounts:
                description: |
                  In case, no account is accessible, the ASPSP shall return an empty array.As this is also considered a positive response, the Response code must still be 200.
                type: array
                items:
                  $ref: '#/components/schemas/accountDetails'
    Ok_200_AISSECURITIESACCOUNTTXLIST:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - account
            properties:
              account:
                description: |
                  Identifier of the addressed account.
                allOf:
                  - $ref: '#/components/schemas/accountReference'
              transactions:
                description: |
                  List of securities transactions of the addresed account.
                type: array
                items:
                  $ref: '#/components/schemas/securitiesTransaction'
              _links:
                description: |
                  A list of hyperlinks to be recognised by the TPP. 
                  Type of links admitted in this response:
                    \"first\": Navigation link for paginated transaction lists.
                    \"next:\" Navigation link for paginated transaction lists.
                    \"previous\": Navigation link for paginated transaction lists.
                    \"last\": Navigation link for paginated transaction lists.
                allOf:
                  - $ref: '#/components/schemas/_links_200_AISSECURITIESACCOUNTTXLIST'
    decline_400_AIS:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        Location:
          $ref: '#/components/headers/Location'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
        ASPSP-Notification-Support:
          $ref: '#/components/headers/ASPSP-Notification-Support'
      description: Bad Request
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error_NG_400_AIS'
        application/problem+json:
          schema:
            $ref: '#/components/schemas/error_RFC7807_400_AIS'
    decline_415:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        Location:
          $ref: '#/components/headers/Location'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
        ASPSP-Notification-Support :
          $ref: '#/components/headers/ASPSP-Notification-Support'
      description: Unsupported Media Type
    Ok_200_AISSECURITIESACCOUNTDETAILS:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - account
            properties:
              account:
                description: |
                allOf:
                  - $ref: '#/components/schemas/accountDetails'
    decline_404_AIS:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        Location:
          $ref: '#/components/headers/Location'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
        ASPSP-Notification-Support:
          $ref: '#/components/headers/ASPSP-Notification-Support'
      description: Not Found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error_NG_404_AIS'
        application/problem+json:
          schema:
            $ref: '#/components/schemas/error_RFC7807_404_AIS'
    Ok_200_AISCARDLIST:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - cards
            properties:
              cards:
                description: |
                  In case, no card-account is accessible, the ASPSP shall return an empty array. As this is also considered a positive response, the Response Code must still be 200.
                type: array
                items:
                  $ref: '#/components/schemas/cardAccountDetails'
    Ok_200_AISSAVINGSACCOUNTTXLIST:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - account
            properties:
              account:
                description: |
                  Identifier of the addressed account.
                allOf:
                  - $ref: '#/components/schemas/accountReference'
              transactions:
                description: |
                  JSON based account report. This account report contains transactions resulting from the query parameters.
                allOf:
                  - $ref: '#/components/schemas/accountReport'
              balances:
                description: |
                  A list of balances regarding this account, which might be restricted to the current balance.
                type: array
                items:
                  $ref: '#/components/schemas/balance'
              _links:
                description: |
                  A list of hyperlinks to be recognised by the TPP. 
                  Type of links admitted in this response:
                  \"download\": a link to a resource, where the transaction list might be downloaded from in case where transaction lists have a huge size.
                  Remark: This feature shall only be used where camt-data is requested which has a huge size.
                allOf:
                  - $ref: '#/components/schemas/_links_200_AISSAVINGSACCOUNTTXLIST'
        application/xml:
          schema:
            description: 
              In case the ASPSP returns a camt.05x XML structure, the response body consists of either a camt.052 or camt.053 format.
              The camt.052 may include pending payments which are not yet finally booked. 
              The ASPSP will decide on the format due to the chosen parameters, specifically on the chosen dates relative to the time of the request. 
              In addition the ASPSP might offer camt.054x structure e.g. in a corporate setting.
            type: string
        text/plain:
          schema:
            description: 
              In case the ASPSP returns a MT94x content, the response body consists of an MT940 or MT942 format in a text structure. 
              The MT942 may include pending payments which are not yet finally booked. 
              The ASPSP will decide on the format due to the chosen parameters, specifically on the chosen dates relative to the time of the request.
            type: string
    Ok_200_AISSECURITIESACCOUNTLIST:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - accounts
            properties:
              accounts:
                description: |
                  In case, no account is accessible, the ASPSP shall return an empty array.As this is also considered a positive response, the Response code must still be 200.
                type: array
                items:
                  $ref: '#/components/schemas/accountDetails'
    Ok_200_AISCARDBALANCE:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - card
              - balances
            properties:
              card:
                description: |
                  Identifier of the addressed card.
                allOf:
                  - $ref: '#/components/schemas/accountReference'
              debitAccounting:
                description: |
                  If true, the amounts of debits on the reports are quoted positive with the related consequence for balances.
                  If false, the amount of debits on the reports are quoted negative.
                type: boolean
              balances:
                description: |
                  A list of balances regarding this card.
                type: array
                items:
                  $ref: '#/components/schemas/balance'
    Ok_200_AISLOANACCOUNTDETAILS:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - account
            properties:
              account:
                description: |
                allOf:
                  - $ref: '#/components/schemas/accountDetails'
    Ok_200_AISSECURITIESACCOUNTTXDETAILS:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - transactionDetails
            properties:
              transactionDetails:
                description: |
                  Details of the requested securities transaction.
                allOf:
                  - $ref: '#/components/schemas/securitiesTransaction'
    decline_403_AIS:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        Location:
          $ref: '#/components/headers/Location'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
        ASPSP-Notification-Support:
          $ref: '#/components/headers/ASPSP-Notification-Support'
      description: Forbidden
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error_NG_403_AIS'
        application/problem+json:
          schema:
            $ref: '#/components/schemas/error_RFC7807_403_AIS'
    Ok_200_AISLOANACCOUNTBALANCE:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - account
              - balances
            properties:
              account:
                description: |
                  Identifier of the addressed account.
                allOf:
                  - $ref: '#/components/schemas/accountReference'
              balances:
                description: |
                  A list of balances regarding this account.
                  Remark: The historic balance of the loan can be provided by returning a balance of any type together with the respective referenceDate. 
                  This applies specifically to the original loan amount by using the starting date as reference.
                type: array
                items:
                  $ref: '#/components/schemas/balance'
    Ok_200_AISSECURITIESACCOUNTPOSITIONS:
      headers:
        X-Reference-API-Name:
          $ref: '#/components/headers/X-Reference-API-Name'
        X-Reference-API-Document:
          $ref: '#/components/headers/X-Reference-API-Document'
        X-Reference-API-Version:
          $ref: '#/components/headers/X-Reference-API-Version'
        X-Request-ID:
          $ref: '#/components/headers/X-Request-ID'
      description: OK
      content:
        application/json:
          schema:
            type: object
            required:
              - account
              - reportDateTime
              - positionList
            properties:
              account:
                description: |
                  Identifier of the addressed (securities) account.
                allOf:
                  - $ref: '#/components/schemas/accountReference'
              reportDateTime:
                description: |
                  Date and time of the report. That is, all listed positions are provided in their quantity within the account as reflected by the ASPSP at the reportDateTime.
                  Might differ from the current date and time in situations where a real time information of the deposit's positions is not available.
                allOf:
                  - $ref: '#/components/schemas/ISODateTime'
              balances:
                description: |
                  Calculated value of all securities in account currency.
                type: array
                items:
                  $ref: '#/components/schemas/balance'
              positionList:
                description:
                  List of securities positions of the addresed account.
                  If the deposit does not contain any positions, the "positionList" element must contain an empty array.
                type: array
                items:
                  $ref: '#/components/schemas/securitiesPosition'
  examples: {}

