> ## Documentation Index
> Fetch the complete documentation index at: https://docs.skortorent.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Initiate Bank

> Initiates the bank connection flow for a tenant.

### Asynchronous Operation

This endpoint initiates an **Asynchronous process**. The API response
confirms that the bank flow has been started, while bank connectivity and
financial analysis are processed in the background. 

After the bank connection is completed, the system receives the user's bank
data. Based on the received bank data, financial analysis is performed in the
background.

Completion or failure
of the bank connectivity must be determined using iframe events and webhook
notifications.

### Iframe Events

- `BANK_SUCCESS`  
  Triggered when the Bank flow is completed successfully and banking data
  has been submitted for analysis.

- `BANK_FAILURE`  
  Triggered when the Bank flow fails or an error occurs at any stage of the
  bank connection process.

### Post-Analysis Webhooks

After bank analysis is completed, following webhook events will be
sent:

- `FINANCIAL_ANALYSIS_SUCCESS`  
  Indicates that banking analysis has completed successfully.

- `FINANCIAL_ANALYSIS_FAILURE`  
  Indicates that banking analysis has failed.

  In case of failure, detailed error information can be retrieved by
  calling **Get Tenant** API and inspecting the
  `financial_info_errors` field in the tenant data.

  Based on the reported error, clients may retry the banking analysis by
  re-initiating the bank flow once the issue has been addressed.




## OpenAPI

````yaml /api-reference/openapi.yaml get /tenants/initiate-bank/{tenantId}
openapi: 3.1.0
info:
  title: SKOR Modular API
  version: 1.0.0
  description: >
    ## Overview

    This is the SKOR Modular API v1. It provides access to tenant

    workflows, API keys, webhooks, document processing, identity

    verification, banking connectivity, and forensic analysis.


    ## Error Statuses


    The API uses standard HTTP status codes to indicate the success

    or failure of requests. Each error response provides guidance

    to help identify the issue and take corrective action.


    ### Success — `200 OK`

    The request was processed successfully and the expected response

    data is returned.


    ### Validation Error — `400 Bad Request`

    The request is invalid due to missing, malformed, or incorrect

    parameters.


    **Common causes:**

    - Required fields are missing from the request.

    - Invalid data formats or unsupported values are provided.

    - File size or payload limits are exceeded.


    **How to resolve:**

    - Verify all required parameters are present.

    - Ensure the request payload matches the documented schema.

    - Validate data formats and constraints before retrying.


    ### Unauthorized — `401 Unauthorized`

    Authentication failed or the provided token is missing or invalid.


    **Common causes:**

    - The `Authorization` header is missing.

    - An invalid or expired bearer token is provided.


    **How to resolve:**

    - Ensure the token is included in the request as an `Authorization: Bearer
    <token>` header.

    - Verify the token is valid and has not expired.

    - Generate a new token if required.


    ### Not Found — `404 Not Found`

    The requested resource does not exist or is not accessible.


    **Common causes:**

    - An invalid or non-existent resource identifier.

    - The resource has not been created or has been deleted.


    **How to resolve:**

    - Confirm the resource identifier is correct.

    - Ensure the resource exists before accessing it.


    ### Server Error — `500 Internal Server Error`

    An unexpected error occurred on the server while processing the request.


    **How to resolve:**

    - Retry the request after a short delay.

    - If the issue persists, **[contact us](mailto:info@skortorent.com)** with
    relevant request details.


    ### Need Help?

    If you encounter unexpected behavior,

    please **[contact us](mailto:info@skortorent.com)** for assistance.
servers:
  - url: https://api.skortorent.com/api/v1
    description: Live
  - url: https://dev-api.skortorent.com/api/v1
    description: Sandbox
security:
  - BearerAuth: []
paths:
  /tenants/initiate-bank/{tenantId}:
    get:
      tags:
        - Tenants
      summary: Initiate Bank
      description: >
        Initiates the bank connection flow for a tenant.


        ### Asynchronous Operation


        This endpoint initiates an **Asynchronous process**. The API response

        confirms that the bank flow has been started, while bank connectivity
        and

        financial analysis are processed in the background. 


        After the bank connection is completed, the system receives the user's
        bank

        data. Based on the received bank data, financial analysis is performed
        in the

        background.


        Completion or failure

        of the bank connectivity must be determined using iframe events and
        webhook

        notifications.


        ### Iframe Events


        - `BANK_SUCCESS`  
          Triggered when the Bank flow is completed successfully and banking data
          has been submitted for analysis.

        - `BANK_FAILURE`  
          Triggered when the Bank flow fails or an error occurs at any stage of the
          bank connection process.

        ### Post-Analysis Webhooks


        After bank analysis is completed, following webhook events will be

        sent:


        - `FINANCIAL_ANALYSIS_SUCCESS`  
          Indicates that banking analysis has completed successfully.

        - `FINANCIAL_ANALYSIS_FAILURE`  
          Indicates that banking analysis has failed.

          In case of failure, detailed error information can be retrieved by
          calling **Get Tenant** API and inspecting the
          `financial_info_errors` field in the tenant data.

          Based on the reported error, clients may retry the banking analysis by
          re-initiating the bank flow once the issue has been addressed.
      parameters:
        - $ref: '#/components/parameters/TenantIdParam'
        - name: country
          in: query
          required: true
          description: Supported country for Bank connection.
          schema:
            type: string
            enum:
              - belgium
              - germany
              - denmark
              - estonia
              - spain
              - finland
              - france
              - unitedKingdom
              - italy
              - lithuania
              - latvia
              - netherlands
              - norway
              - poland
              - portugal
              - sweden
      responses:
        '200':
          $ref: '#/components/responses/SuccessResponse'
        '400':
          $ref: '#/components/responses/ErrorResponse'
        '401':
          $ref: '#/components/responses/ErrorResponse'
        '500':
          $ref: '#/components/responses/ErrorResponse'
components:
  parameters:
    TenantIdParam:
      name: tenantId
      in: path
      required: true
      schema:
        type: string
  responses:
    SuccessResponse:
      description: Successful response
      content:
        application/json:
          schema:
            type: object
            properties:
              status:
                type: string
                enum:
                  - success
              message:
                type: string
              data:
                type: object
    ErrorResponse:
      description: Error response
      content:
        application/json:
          schema:
            type: object
            properties:
              status:
                type: string
                enum:
                  - error
              message:
                type: string
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: |
        HTTP Bearer Authentication. Pass the token generated via
        `/keys/generate-token` as `Authorization: Bearer <token>`.

````