token-io Requests - for Payments v1 or AIS API

These endpoints allow you to initiate a Payments v1 request or an AIS request, and retrieve the status of the request.

Operations 4

POST /token-requests Initiate a token request #
GET /token-requests/{requestId} Get a token request #
GET /token-requests/{tokenRequestId}/result Get a token request result #
POST /token-requests/{tokenRequestId}/authorization Initiate bank authorization #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/token-io-requests-for-payments-v1-or-ais-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

token-io-requests-for-payments-v1-or-ais-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: '1.0'
  title: Token.io's Open Banking API for TPPs Account on File Requests - for Payments v1 or AIS API
  description: '<b>Token.io''s Open Banking API</b><br/><br/>Token.io Support: <a href="https://support.token.io" target="_blank">support.token.io</a><br/><br/>The Token.io Open Banking API enables you to connect securely with banks for a range of services.<br/><br/> Using our API you can: <ul><li>provide authorized access to an authenticated user''s account information</li><li>get information on specific banks</li><li>initiate authorization with a user-selected bank</li><li>initate and track single immediate payments and future dated payments</li><li>use variable recurring payments (VRP) to grant long-held consents to Payment Initiation Service Providers (PISPs) to initiate series of payments from users'' bank accounts</li><li>carry out settlements, payments and refunds using our settlement accounts</li></ul><br/>For more information see our <a href="https://developer.token.io/token_rest_api_doc/content/e-rest/dashboard-intro.htm" target="_blank">developer documentation</a>.'
servers:
- url: https://api.token.io
tags:
- name: Requests - for Payments v1 or AIS
  description: These endpoints allow you to initiate a Payments v1 request or an AIS request, and retrieve the status of the request.
paths:
  /token-requests:
    post:
      tags:
      - Requests - for Payments v1 or AIS
      summary: Initiate a token request
      description: The `POST /token-requests` endpoint persists the required information used by AIS requests and PIS requests using the API and the Token.io Hosted Pages.
      operationId: GatewayService.StoreTokenRequest
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StoreTokenRequestRequest'
        required: true
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StoreTokenRequestResponse'
        '400':
          description: The client specified an invalid argument
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_400'
        '401':
          description: The authorization information is missing or invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_401'
        '403':
          description: Permission to access this endpoint is denied
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_403'
        '404':
          description: The requested entity, such as a payment, was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_404'
        '429':
          description: Too many requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_429'
        '500':
          description: An unexpected or internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_500'
        '501':
          description: The operation was not implemented
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_501'
        '503':
          description: Service is unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_503'
        '504':
          description: Gateway has timed out
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_504'
      deprecated: false
      security:
      - Bearer: []
      - BasicAuth: []
      x-hideTryItPanel: true
  /token-requests/{requestId}:
    get:
      tags:
      - Requests - for Payments v1 or AIS
      summary: Get a token request
      description: The `GET /token-requests/{requestId}` endpoint retrieves a specific token request by its id.
      operationId: GatewayService.RetrieveTokenRequest
      parameters:
      - name: requestId
        in: path
        description: The request id received in response to the original token request.
        required: true
        style: simple
        explode: false
        schema:
          type: string
          example: rq:ej5ACWNwi1EcqBeuDPc4Z8C4Bgc:5zKtXEAq
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RetrieveTokenRequestResponse'
        '400':
          description: The client specified an invalid argument
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_400'
        '401':
          description: The authorization information is missing or invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_401'
        '403':
          description: Permission to access this endpoint is denied
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_403'
        '404':
          description: The requested entity, such as a token request, was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_404'
        '429':
          description: Too many requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_429'
        '500':
          description: An unexpected or internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_500'
        '501':
          description: The operation was not implemented
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_501'
        '503':
          description: Service is unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_503'
        '504':
          description: Gateway has timed out
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_504'
      deprecated: false
      security:
      - Bearer: []
      - BasicAuth: []
      x-hideTryItPanel: true
  /token-requests/{tokenRequestId}/result:
    get:
      tags:
      - Requests - for Payments v1 or AIS
      summary: Get a token request result
      description: The `GET /token-requests/{tokenRequestId}/result` endpoint checks whether a token request result is available. This endpoint will return a `PENDING` status while the result is not available. The status will become `PROCESSED` once the result is available. If the request is rejected by the bank, the status will become `REJECTED`. The status will become `EXPIRED` if the request is not processed or rejected before the token request expiration.
      operationId: GatewayService.GetTokenRequestResultWithStatus
      parameters:
      - name: tokenRequestId
        in: path
        description: The token request id received in response to the original token request.
        required: true
        style: simple
        explode: false
        schema:
          type: string
          example: rq:ej5ACWNwi1EcqBeuDPc4Z8C4Bgc:5zKtXEAq
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetTokenRequestResultWithStatusResponse'
        '400':
          description: The client specified an invalid argument
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_400'
        '401':
          description: The authorization information is missing or invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_401'
        '403':
          description: Permission to access this endpoint is denied
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_403'
        '404':
          description: The requested entity, such as a token request, was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_404'
        '429':
          description: Too many requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_429'
        '500':
          description: An unexpected or internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_500'
        '501':
          description: The operation was not implemented
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_501'
        '503':
          description: Service is unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_503'
        '504':
          description: Gateway has timed out
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_504'
      deprecated: false
      security:
      - Bearer: []
      - BasicAuth: []
      x-hideTryItPanel: true
  /token-requests/{tokenRequestId}/authorization:
    post:
      tags:
      - Requests - for Payments v1 or AIS
      summary: Initiate bank authorization
      description: The `POST /token-requests/{tokenRequestId}/authorization` endpoint initiates the bank authorization process with a given bank id and token request id.
      operationId: GatewayService.InitiateBankAuthorization
      x-internal: true
      parameters:
      - name: tokenRequestId
        in: path
        description: The token request id received in response to the original token request.
        required: true
        style: simple
        explode: false
        schema:
          type: string
          example: rq:ej5ACWNwi1EcqBeuDPc4Z8C4Bgc:5zKtXEAq
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InitiateBankAuthorizationRequest'
        required: true
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InitiateBankAuthorizationResponse'
        '400':
          description: The client specified an invalid argument
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_400'
        '401':
          description: The authorization information is missing or invalid
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_401'
        '403':
          description: Permission to access this endpoint is denied
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_403'
        '404':
          description: The requested entity, such as a payment, was not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_404'
        '429':
          description: Too many requests
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_429'
        '500':
          description: An unexpected or internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_500'
        '501':
          description: The operation was not implemented
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_501'
        '503':
          description: Service is unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_503'
        '504':
          description: Gateway has timed out
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/inline_response_504'
      deprecated: false
      security:
      - Bearer: []
      - BasicAuth: []
      x-hideTryItPanel: true
components:
  schemas:
    EUIbanAccount:
      title: EUIbanAccount
      required:
      - iban
      type: object
      properties:
        iban:
          type: string
          description: The International Bank Account Number, used when sending interbank transfers or wiring money from one bank to another, especially across international borders. It consists of a two-letter country code followed by two check digits and up to thirty-five alphanumeric characters.
          example: GB29NWBK60161331926819
        bic:
          type: string
          description: The Business Identifier Code (BIC), <a href="https://www.iso.org/standard/84108.html" target="_blank">ISO 9362</a>, is the SWIFT Address assigned to a bank in order to send automated payments quickly and accurately to the banks concerned. It uniquely identifies the name and country, (and sometimes the branch) of the bank involved. BICs are often called SWIFT Codes and can be either 8 or 11 characters long."
          example: BOFIIE2D
      description: Account details where the iban is required and the bic is optional.
    TokenRequestOptionsTokenInternal:
      required:
      - redirecturl
      type: object
      properties:
        redirectUrl:
          type: string
          description: This URL redirects the user after bank authentication.
          example: http://psu-redirect.com
        usingWebApp:
          type: boolean
          description: If true, this launches the Hosted Pages credentials URL instead of the bank authorization URL.
          format: boolean
          example: false
          default: false
      description: Contains information about the redirect url and Hosted Pages.
    refId:
      type: string
      description: The TPP-generated reference identifier for the token. This is not to be confused with the `requestId`. The `refId` maps to the `tppRefId` in the bank's `consentRequest`. This is needed to match/verify the originating token request with the bank's consent request. <br/>We recommend that the `refId` should not contain special characters (the allowed characters are the 26-letter Latin alphabet, the numerical digits from 0-9 and the hyphen '-'). This field should not exceed 18 characters in length.
      example: 9htio4a1sp2akdr1aa
    FasterPaymentsAccount:
      title: FasterPaymentsAccount
      required:
      - accountNumber
      - sortCode
      type: object
      properties:
        accountNumber:
          type: string
          description: The unique identifier for the bank account in the UK or Ireland.
          example: '12345678'
        sortCode:
          type: string
          description: The number assigned to a branch of a bank, typically containing six digits and most commonly used in the UK and Ireland.
          example: '123456'
      description: A UK or Irish account where the sort code and account number are required.
    StetAccountIdentification:
      type: object
      properties:
        currency:
          type: string
          description: The <a href="https://www.iso.org/iso-4217-currency-codes.html" target="_blank">ISO 4217</a> three letter currency code.
          example: EUR
        other:
          $ref: '#/components/schemas/StetGenericIdentification'
      description: Bank-defined account identifiers.
    TransferDestinationToken:
      title: token
      type: object
      properties:
        accountId:
          type: string
          description: The bank account identifier for a linked account used by Token.io's Bank Integration Account Linking Service.
        memberId:
          type: string
          description: The Token.io-generated member id for the user/account holder.
          example: m:nP4w3u5y8ddrxDJkjimgSX9e4fZ:5zKtXEAq
      description: The primary account number. The cCard identifier found on payment cards, such as credit and debit cards, as well as stored-value cards, gift cards and other similar cards, somtimes referred to as a bank card number.
    inline_response_429:
      required:
      - error
      type: object
      properties:
        error:
          $ref: '#/components/schemas/ResourceExhaustedError'
    InitiateBankAuthorizationResponse:
      type: object
      oneOf:
      - title: Fields
        properties:
          fields:
            $ref: '#/components/schemas/CredentialFields'
      - title: Redirect url
        properties:
          redirectUrl:
            type: string
            description: This URL redirects the user after bank authentication.
            example: http://psu-redirect.com
      - title: SCA status
        properties:
          status:
            $ref: '#/components/schemas/ScaStatus'
      properties:
        oauthState:
          type: string
          description: The authorization state parameter generated within Token.io in the response. It is an optional field.
          example: 71b624cf-af3a-4f78-9420-d6e4248a9efe
    AccountIdentifierPlusgiro:
      type: object
      properties:
        plusgiroNumber:
          type: string
          description: The account number (minimum 2 and maximum 8 digits) for a PlusGiro account. The clearing code is not used.
          example: '987654'
      description: The domestic transaction clearing system in Sweden. The credit transfer function, which is part of <a href="https://www.nordea.com" target="blank">Nordea</a>, and used for mediating payments between accounts held by companies and individuals.
    Signature:
      type: object
      properties:
        keyId:
          type: string
          description: The id of the public key used to verify the signature. This is only present if a `tokenId` is present. It can be used to validate that the provided `tokenId` corresponds to the token request (this is needed for Hosted Pages flows only).
          example: CqSTHPvWY_dgVh-f
        memberId:
          type: string
          description: The Token.io member id of the signing member.
          example: m:nP4w3u5y8ddrxDJkjimgSX9e4fZ:5zKtXEAq
        signature:
          type: string
          description: The Base64url-encoded ciphertext signature.
          example: ODRWmM0xMRM7CKmK3bNl4e2Kb2btavTbZssCsrHsu8yopoKxBzouBrD9q5-E63tgdV1DpB7i31vwNDKywA0CAE
      description: Contains information about the signing party. This is only present if a `tokenId` is present. It can be used to validate that the provided `tokenId` corresponds to the token request (this is needed for the Hosted Pages flows only).
    GatewayTimeoutError:
      required:
      - paymentId
      type: object
      properties:
        errorCode:
          example: DEADLINE_EXCEEDED
        paymentId:
          type: string
          description: The deadline expired before the operation could complete.
          example: Deadline exceeded.
      description: The deadline expired before the operation could complete.
      allOf:
      - $ref: '#/components/schemas/ErrorWithCode'
    inline_response_403:
      required:
      - error
      type: object
      properties:
        error:
          $ref: '#/components/schemas/PermissionDeniedError'
    inline_response_503:
      required:
      - error
      type: object
      properties:
        error:
          $ref: '#/components/schemas/ServiceUnavailableError'
    TokenRequestPayloadTransferBody:
      type: object
      required:
      - currency
      - lifetimeAmount
      - instructions
      properties:
        confirmFunds:
          type: boolean
          description: If true, sufficient funds available for transfer are confirmed.
          format: boolean
          example: false
          default: false
        currency:
          type: string
          description: The <a href="https://www.iso.org/iso-4217-currency-codes.html" target="_blank">ISO 4217</a> three letter currency code.
          example: EUR
        executionDate:
          type: string
          description: Specifies the execution date for the transfer (in <a href="https://www.iso.org/iso-8601-date-and-time-format.html" target="_blank">ISO 8601</a> format).
          example: '2023-02-28'
        instructions:
          $ref: '#/components/schemas/TransferInstructions'
        lifetimeAmount:
          type: string
          description: The total amount, with up to four digits after the decimal point, transferred over the life of the token.
          example: '10000.00'
        remittanceReference:
          type: string
          description: The creditor's reference for matching an entry with the items that the transfer is intended to settle, such as commercial invoices in an accounts receivable system.
          example: MFt6s64vn6aDyMiwBA3
        returnRefundAccount:
          type: boolean
          description: Requests that a refund account be returned in the response of `GET transfers` for any amounts refunded.
          format: boolean
          example: false
          default: false
        setTransferDestinationsUrl:
          type: string
          description: destination.url.com
      description: Contains the financial details of the transfer.
    TransferDebtorEndpoint:
      type: object
      required:
      - accountIdentifier
      properties:
        accountIdentifier:
          $ref: '#/components/schemas/AccountIdentifier'
        bankId:
          $ref: '#/components/schemas/bankId'
        bic:
          type: string
          description: The Business Identifier Code (BIC), <a href="https://www.iso.org/standard/84108.html" target="_blank">ISO 9362</a>, is the SWIFT Address assigned to a bank in order to send automated payments quickly and accurately to the banks concerned. It uniquely identifies the name and country, (and sometimes the branch) of the bank involved. BICs are often called SWIFT Codes and can be either 8 or 11 characters long.
          example: BOFIIE2D
        customerData:
          $ref: '#/components/schemas/CustomerDataDebtor'
      description: Contains information about the payer account.
    TokenRequestPayloadAccessBodyResourceTypeList:
      type: object
      required:
      - resources
      properties:
        resources:
          type: array
          description: Specifies the account resources included in the request. When `resourceTypeList` is used, the `resources` array is required and can’t be empty.
          items:
            $ref: '#/components/schemas/TokenRequestPayloadAccessBodyResourceType'
        source:
          $ref: '#/components/schemas/TokenRequestPayloadAccessBodyResourceTypeListSourceAccount'
      description: Contains the account resources being requested for access related to multiple accounts.
    PermissionDeniedError:
      type: object
      properties:
        errorCode:
          example: PermissionDenied
      description: 'The error returned when the member is not authorized to perform the given operation: PermissionDenied. <br/>This error message will be accompanied by the reason from the bank. Typically this means the access token has expired and the user must re-authenticate with the bank.'
      allOf:
      - $ref: '#/components/schemas/ErrorWithCode'
    SENoBankIdAccount:
      title: SENoBankIdAccount
      required:
      - iban
      - bban
      type: object
      properties:
        iban:
          type: string
          description: The International Bank Account Number, used when sending interbank transfers or wiring money from one bank to another, especially across international borders. It consists of a two-letter country code followed by two check digits and up to thirty-five alphanumeric characters.
          example: GB29NWBK60161331926819
        bban:
          type: string
          description: Represents a country-specific bank account number. The BBAN is the last part of the IBAN when used for international funds transfers. Every country has its own specific BBAN format and length. At present, there is no common EU or other standard unifying the BBAN. This is why IBAN was introduced to standardise international bank transfers.
          example: NWBK60161331926819
        bic:
          type: string
          description: The Business Identifier Code (BIC), <a href="https://www.iso.org/standard/84108.html" target="_blank">ISO 9362</a>, is the SWIFT Address assigned to a bank in order to send automated payments quickly and accurately to the banks concerned. It uniquely identifies the name and country, (and sometimes the branch) of the bank involved. BICs are often called SWIFT Codes and can be either 8 or 11 characters long."
          example: BOFIIE2D
        clearingNumber:
          type: string
          description: The bank clearing number or BC number is a number used for the identification of financial institutions in Switzerland and Liechtenstein. Bank clearing numbers are connected to the Swiss Interbank Clearing and the EuroSIC system.
          example: 87654321
      description: Account details where the iban and bban are required and the bic and clearing number are optional. This is ONLY allowed for an HP flow if there is no `bankId` provided in the initiation AND the currency is SEK or NOK.
    AccountIdentifierBban:
      type: object
      properties:
        bban:
          type: string
          description: Represents a country-specific bank account number. The BBAN is the last part of the IBAN when used for international funds transfers. Every country has its own specific BBAN format and length. At present, there is no common EU or other standard unifying the BBAN. This is why IBAN was introduced to standardise international bank transfers.
          example: NWBK60161331926819
        clearingNumber:
          type: string
          description: The bank clearing number or BC number is a number used for the identification of financial institutions in Switzerland and Liechtenstein. Bank clearing numbers are connected to the Swiss Interbank Clearing and the EuroSIC system.
          example: 87654321
    AccountIdentifierMsisdn:
      type: object
      properties:
        msisdn:
          type: string
          description: The MSISDN is composed of the country code and the national destination code. Ensure you remove the + sign and any 0 before the mobile number.
          example: '447949123456'
      description: The Mobile Station International Subscriber Director Number (MSISDN) is the user's mobile phone number, used as a unique identifier to enable routing of voice and SMS traffic to and from a specific subscription/device on a wireless/mobile network.
    StetRegulatoryReportingCodes:
      type: object
      properties:
        regulatoryReportingCode:
          type: array
          description: Regulatory and statutory codes provided by the NCA.
          items:
            type: string
      description: Contains the list of needed regulatory reporting codes for international payments.
    Cma9Risk:
      type: object
      properties:
        deliveryAddress:
          $ref: '#/components/schemas/DeliveryAddress'
        merchantCustomerIdentification:
          type: string
          description: The unique customer identifier for the user with the merchant (maximum 70 characters).
          example: 0000789123
        paymentContextCode:
          $ref: '#/components/schemas/PaymentContextCode'
        paymentPurposeCode:
          type: string
          description: The category code conforming to the Recommended UK Purpose Code in the <a href="https://www.iso.org/standard/55005.html" target="_blank">ISO 20022</a> Payment Messaging List, related to the type of services or goods corresponding to the underlying purpose of the payment. <ul><li><b>CASH</b> - CashManagementTransfer</li><li><b>CORT</b> - TradeSettlementPayment</li><li><b>DVPM</b> - DeliveryAgainstPayment</li><li><b>INTC</b> - IntraCompanyPayment</li><li><b>TREA</b> - TreasuryPayment</li><li><b>SUPP</b> - SupplierPayment</li></ul>
          default: CASH
          example: DVPM
          enum:
          - CASH
          - CORT
          - DVPM
          - INTC
          - TREA
          - SUPP
        beneficiaryAccountType:
          $ref: '#/components/schemas/Cma9BeneficiaryAccountType'
        contractPresentIndicator:
          type: string
          description: 'This field indicates whether the Payment Service Provider (PSP) has a contract with the payee and has undertaken some form of validation or due diligence on the payee; values: true or false. This field can be pre-populated by Token.io, for PSPs using Token.io''s license.'
          example: 'true'
        beneficiaryPrepopulatedIndicator:
          type: string
          description: 'This field indicates whether the PSP, rather than the user, has generated the TRI fields and that the user can''t change them during the transaction journey; values: true or false. This field can be pre-populated by the PSP.'
          example: 'true'
      description: This object specifies additional details for risk scoring of payments.
    TokenRequestPayloadAccessBodyResourceTypeListSourceAccount:
      type: object
      properties:
        accountIdentifier:
          $ref: '#/components/schemas/AccountIdentifier'
        currency:
          type: string
          description: The <a href="https://www.iso.org/iso-4217-currency-codes.html" target="_blank">ISO 4217</a> three letter currency code.
          example: EUR
    inline_response_504:
      required:
      - error
      type: object
      properties:
        error:
          $ref: '#/components/schemas/GatewayTimeoutError'
    TransferInstructions:
      type: object
      required:
      - transferDestinations
      properties:
        metadata:
          $ref: '#/components/schemas/Metadata'
        source:
          $ref: '#/components/schemas/TransferDebtorEndpoint'
        transferDestinations:
          type: array
          minItems: 1
          description: The beneficiary account specifying the transfer destination, <i>i.e.</i>, TPP/merchant/creditor bank account.
          items:
            $ref: '#/components/schemas/TransferDestination'
      description: Contains the transfer instructions for each payment.
    TransferDestinationSepa:
      title: sepa
      allOf:
      - description: The Single Euro Payments Area (SEPA), for bank transfers denominated in Euro. This consists of the 27 member states of the European Union, the four member states of the European Free Trade Association (Iceland, Liechtenstein, Norway and Switzerland) and the UK.
      - $ref: '#/components/schemas/SepaAccount'
    TransferDestinationType:
      title: type
      type: string
      description: Specifies the type of transfer destination.
      example: BUSINESS
      default: UNKNOWN
      enum:
      - UNKNOWN
      - BUSINESS
      - PERSONAL
    StoreTokenRequestRequest:
      type: object
      required:
      - requestPayload
      properties:
        requestOptions:
          $ref: '#/components/schemas/TokenRequestOptions'
        requestPayload:
          $ref: '#/components/schemas/TokenRequestPayload'
      description: Specifies the information needed to request a transfer, standing order or access token.
    ChargeBearer:
      type: string
      description: The bearer of the charge, if any, for international transfers. <ul><li><b>CRED</b> - all charges are borne by the creditor.</li> <li><b>DEBT</b> - all charges are borne by the debtor.</li> <li><b>SHAR</b> - the parties share 

# --- truncated at 32 KB (94 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/token-io/refs/heads/main/openapi/token-io-requests-for-payments-v1-or-ais-api-openapi.yml