openapi: 3.0.0
info:
  title: Marketplace
  version: 1.0.0
  description: >-
    # Overview

    The Capitalise Marketplace API allows developers access to Capitalise
    matching services and intelligent scoring & insight services.


    With this API you can:


    - Integrate a questionnaire flow directly into your platform

    - Use your data to deliver targeted product matching

    - Enhance your application with business scoring intelligence


    Marketplace V2 can be found [here](/api/marketplace/v2).
  contact:
    name: Capitalise
    email: engineering@capitalise.com
    url: https://capitalise.com
paths:
  /auth/authorize:
    post:
      x-controller-name: AuthenticationController
      x-operation-name: authorize
      tags:
        - Auth
      description: >-
        This endpoint allows you to get a marketplace token from a marketplace
        api key.
      summary: Get marketplace access token
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SignInResponseDto'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      parameters:
        - name: api_key
          in: query
          schema:
            type: string
          example: 161c04f04289f442f8b9b91fdd39c554597639876e9bda4d16bed31a787b5c5d
          description: Capitalise API key.
          required: true
      operationId: AuthenticationController.authorize
  /auth/refresh-token:
    post:
      x-controller-name: AuthenticationController
      x-operation-name: refreshToken
      tags:
        - Auth
      description: >-
        This endpoint allows you to get a refresh access token from a refresh
        token.
      summary: Refresh marketplace access token.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SignInResponseDto'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RefreshTokenRequestDto'
      operationId: AuthenticationController.refreshToken
  /companies/search/{searchTerm}:
    get:
      x-controller-name: CompanyController
      x-operation-name: lookupByRegistrationNumberOrName
      tags:
        - Companies
      description: >-
        Support for searching for a company by its name or company registration
        number. By default, this search returns 10 results at a time, but you
        can override this by passing a custom limit.
      summary: Lookup companies by name or registration number
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CompanySearchResultDto'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      parameters:
        - name: searchTerm
          in: path
          schema:
            type: string
          example: Capitalise
          description: Registration reference or name
          required: true
        - name: countryCode
          in: query
          schema:
            type: string
          example: GB
          description: Country code.
          required: false
        - name: limit
          in: query
          schema:
            type: number
          example: 10
          description: Limit results.
          required: false
      operationId: CompanyController.lookupByRegistrationNumberOrName
  /companies/{registrationNumber}:
    get:
      x-controller-name: CompanyController
      x-operation-name: getByRegistrationNumber
      tags:
        - Companies
      description: Get companies data by registration number.
      summary: Get company data by registration number.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CompanyInformationDto'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      parameters:
        - name: registrationNumber
          in: path
          schema:
            type: string
          example: '09256446'
          description: Company registration number
          required: true
        - name: countryCode
          in: query
          schema:
            type: string
          example: GB
          description: Country code.
          required: false
      operationId: CompanyController.getByRegistrationNumber
  /profiles/anonymous:
    post:
      x-controller-name: ProfileController
      x-operation-name: createAnonymous
      tags:
        - Profiles
      description: >-
        This endpoint generates a new blank anonymous profile which can be used
        to store data submitted through questionnaires.
      summary: /profiles/anonymous
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicProfileResponseDto'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AnonymousOwnerDto'
      operationId: ProfileController.createAnonymous
  /profiles/blank:
    post:
      x-controller-name: ProfileController
      x-operation-name: createBlank
      tags:
        - Profiles
      description: >-
        This endpoint generates a new blank profile which can be used to store
        data submitted through questionnaires (or directly) in order to be
        applied into a product search.
      summary: Generate a new blank profile
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicProfileResponseDto'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      operationId: ProfileController.createBlank
  /profiles/{uuid}/cases/apply:
    post:
      x-controller-name: ProfileCasesController
      x-operation-name: createCase
      tags:
        - Cases
      description: >-
        This endpoint allows you to apply a profile into a non-funding case (ex:
        Recovery, Grants, Credit Improvement).
      summary: Create a non-funding case.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CaseResponseDto'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      parameters:
        - name: uuid
          in: path
          schema:
            type: string
          example: b1a9d07f-5546-461e-a8c4-7f41d977fd45
          description: Profile UUID.
          required: true
      operationId: ProfileCasesController.createCase
  /profiles/{uuid}/company:
    patch:
      x-controller-name: ProfileCompanyController
      x-operation-name: patch
      tags:
        - Profiles
      description: >-
        This endpoint allows you to directly patch company data on a profile
        without going through a questionnaire.
      summary: Patch company data on a profile by UUID.
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      parameters:
        - name: uuid
          in: path
          schema:
            type: string
          example: b1a9d07f-5546-461e-a8c4-7f41d977fd45
          description: Profile UUID.
          required: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CompanyInformationDto'
        x-parameter-index: 1
      operationId: ProfileCompanyController.patch
  /profiles/{uuid}/financials:
    patch:
      x-controller-name: ProfileFinancialsController
      x-operation-name: patch
      tags:
        - Profiles
      description: >-
        This endpoint allows you to directly patch financial data on a profile
        without going through a questionnaire.
      summary: Patch financial data on a profile by UUID.
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      parameters:
        - name: uuid
          in: path
          schema:
            type: string
          example: b1a9d07f-5546-461e-a8c4-7f41d977fd45
          description: Profile UUID.
          required: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FinancialsDto'
        x-parameter-index: 1
      operationId: ProfileFinancialsController.patch
  /profiles/{uuid}/funding/apply:
    post:
      x-controller-name: ProfileFundingController
      x-operation-name: applyMatches
      tags:
        - Funding
      description: >-
        Preferred lender and matches will be submitted to Capitalise and a
        Funding Specialist will pick up and work with the business to review the
        information. No information will be sent to lender nor will credit check
        be perform with this endpoint.


        Allow only the first 4 matches identified to be added to the
        application, any additional matches will throw a BAD REQUEST error.
      summary: Send the preferred lenders to Capitalise
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FundingSearchDto'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      parameters:
        - name: uuid
          in: path
          schema:
            type: string
          example: b1a9d07f-5546-461e-a8c4-7f41d977fd45
          description: Profile UUID.
          required: true
      requestBody:
        content:
          application/json:
            schema:
              type: array
              minItems: 1
              maxItems: 4
              items:
                $ref: '#/components/schemas/SelectedLenderDto'
        x-parameter-index: 1
      operationId: ProfileFundingController.applyMatches
  /profiles/{uuid}/funding/matches/count:
    get:
      x-controller-name: ProfileFundingController
      x-operation-name: getAmountOfMatchingLenders
      tags:
        - Funding
      description: Get the total amount of matched lenders for the given profile.
      summary: Get the amount of matched lenders.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                example: 4
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      parameters:
        - name: uuid
          in: path
          schema:
            type: string
          example: b1a9d07f-5546-461e-a8c4-7f41d977fd45
          description: Profile UUID.
          required: true
        - name: productTypes
          in: query
          schema:
            type: array
            items:
              example:
                - TERM_LOAN
                - COMMERCIAL_PROPERTY
              description: Product types
      operationId: ProfileFundingController.getAmountOfMatchingLenders
  /profiles/{uuid}/funding/matches/results:
    get:
      x-controller-name: ProfileFundingController
      x-operation-name: getMatchesResults
      tags:
        - Funding
      description: >-
        Retrieves all the available funding matches currently matched with the
        given profile.
      summary: Get funding matches.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FundingSearchDto'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      parameters:
        - name: uuid
          in: path
          schema:
            type: string
          example: b1a9d07f-5546-461e-a8c4-7f41d977fd45
          description: Profile UUID.
          required: true
        - name: productTypes
          in: query
          schema:
            type: array
            items:
              example:
                - TERM_LOAN
                - COMMERCIAL_PROPERTY
              description: Product types
      operationId: ProfileFundingController.getMatchesResults
  /profiles/{uuid}/move/{targetApiKey}:
    put:
      x-controller-name: ProfileController
      x-operation-name: move
      tags:
        - Profiles
      description: >-
        Move the given profile object to another Capitalise API key.


        This is helpful when you create profiles under your master Capitalise
        API key, before asking a user to sign into or create their Capitalise
        account.
      summary: Move the given profile object to another Capitalise API key.
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      parameters:
        - name: uuid
          in: path
          schema:
            type: string
          example: b1a9d07f-5546-461e-a8c4-7f41d977fd45
          description: Profile UUID.
          required: true
        - name: targetApiKey
          in: path
          schema:
            type: string
          required: true
          description: The target API key to move the profile to.
      operationId: ProfileController.move
  /profiles/{uuid}/set-ownership:
    patch:
      x-controller-name: ProfileController
      x-operation-name: setOwnership
      tags:
        - Profiles
      description: Set yourself as the owner of an anonymous profile.
      summary: Set yourself as the owner of an anonymous profile.
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      parameters:
        - name: uuid
          in: path
          schema:
            type: string
          example: b1a9d07f-5546-461e-a8c4-7f41d977fd45
          description: Profile UUID.
          required: true
      operationId: ProfileController.setOwnership
  /profiles/{uuid}/url-schemas/{type}:
    get:
      x-controller-name: ProfileUrlsController
      x-operation-name: getByType
      tags:
        - Helpers
      description: >-
        Returns a URL to travel to a particular part of business logic on our
        application.


        Redirect query parameter controls if redirect happens automatically or
        not.
      summary: >-
        Returns a URL to travel to a particular part of business logic on our
        application.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProfileUrlDto'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      parameters:
        - name: uuid
          in: path
          schema:
            type: string
          example: b1a9d07f-5546-461e-a8c4-7f41d977fd45
          description: Profile UUID.
          required: true
        - name: type
          in: path
          schema:
            enum:
              - funding-search
            type: string
          description: Type of url.
          required: true
        - name: redirect
          in: query
          schema:
            default: false
            type: boolean
          required: false
          description: Redirect option
      operationId: ProfileUrlsController.getByType
  /profiles/{uuid}:
    get:
      x-controller-name: ProfileController
      x-operation-name: getByUUID
      tags:
        - Profiles
      description: This endpoint allows you to retrieve your full profile object.
      summary: Get profile.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PublicProfileResponseDto'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      parameters:
        - name: uuid
          in: path
          schema:
            type: string
          example: b1a9d07f-5546-461e-a8c4-7f41d977fd45
          description: Profile UUID.
          required: true
      operationId: ProfileController.getByUUID
  /questionnaires/{questionnaireId}/json-schema:
    get:
      x-controller-name: QuestionnaireSchemasController
      x-operation-name: getJSONSchema
      tags:
        - Questionnaires
      description: The response payload includes the fields type hint and validations.
      summary: Get full questionnaire JSON schema by ID
      responses:
        '200':
          description: Successful
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      operationId: QuestionnaireSchemasController.getJSONSchema
    parameters:
      - schema:
          type: string
        name: questionnaireId
        in: path
        required: true
  /questionnaires/{questionnaireId}/profiles/{profileId}/answers:
    put:
      x-controller-name: QuestionnaireAnswersController
      x-operation-name: put
      tags:
        - Questionnaires
      description: >-
        This endpoint allows you to put profile questionnaire answers by UUID.
        Please bear in mind that you will have to submit all the required
        answers by the questionnaire. For partial updates please use the patch
        endpoint.
      summary: Create or update questionnaire answers in full
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      requestBody:
        content:
          application/json:
            schema:
              oneOf:
                - $ref: >-
                    #/components/schemas/AnswerKeyIntroducerAllFundingProductsDto
                - $ref: '#/components/schemas/AnswerKeyBusinessAllFundingProductsDto'
                - $ref: '#/components/schemas/AnswerKeyBusinessWorkingCapitalDto'
                - $ref: >-
                    #/components/schemas/AnswerKeyBusinessAnonymousWorkingCapitalDto
        x-parameter-index: 2
      operationId: QuestionnaireAnswersController.put
    patch:
      x-controller-name: QuestionnaireAnswersController
      x-operation-name: patch
      tags:
        - Questionnaires
      description: This endpoint allows you to patch profile questionnaire answers by UUID.
      summary: Update a selection of questionnaire answers
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      requestBody:
        content:
          application/json:
            schema:
              oneOf:
                - $ref: >-
                    #/components/schemas/AnswerKeyIntroducerAllFundingProductsDto
                - $ref: '#/components/schemas/AnswerKeyBusinessAllFundingProductsDto'
                - $ref: '#/components/schemas/AnswerKeyBusinessWorkingCapitalDto'
                - $ref: >-
                    #/components/schemas/AnswerKeyBusinessAnonymousWorkingCapitalDto
        x-parameter-index: 2
        description: ''
      operationId: QuestionnaireAnswersController.patch
      parameters: []
    get:
      x-controller-name: QuestionnaireAnswersController
      x-operation-name: get
      tags:
        - Questionnaires
      description: >-
        This endpoint allows you to get the questionnaire answers you have
        submitted by UUID.
      summary: Get questionnaire answers.
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: >-
                      #/components/schemas/AnswerKeyIntroducerAllFundingProductsDto
                  - $ref: >-
                      #/components/schemas/AnswerKeyBusinessAllFundingProductsDto
                  - $ref: '#/components/schemas/AnswerKeyBusinessWorkingCapitalDto'
                  - $ref: >-
                      #/components/schemas/AnswerKeyBusinessAnonymousWorkingCapitalDto
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      operationId: QuestionnaireAnswersController.get
    delete:
      x-controller-name: QuestionnaireAnswersController
      x-operation-name: delete
      tags:
        - Questionnaires
      description: >-
        This endpoint allows you to delete profile questionnaire answers by
        UUID.
      summary: Delete questionnaire answers.
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      parameters:
        - name: answerKey
          in: query
          schema:
            type: array
            items:
              type: string
      operationId: QuestionnaireAnswersController.delete
    parameters:
      - schema:
          type: string
          enum:
            - business-all-funding-products
            - business-anonymous-working-capital
            - business-working-capital
            - introducer-grants
            - introducer-rd-tax-claim
            - introducer-recovery-loan-scheme
            - introducer-working-capital
            - introducer-commercial-property
            - introducer-credit-improvement
            - introducer-debt-recovery
            - introducer-all-funding-products
        name: questionnaireId
        in: path
        required: true
        description: Questionnaire ID
      - schema:
          type: string
          example: b1a9d07f-5546-461e-a8c4-7f41d977fd45
          format: uuid
        name: profileId
        in: path
        required: true
        description: Profile ID
  /questionnaires/{questionnaireId}/profiles/{profileId}/json-schema:
    get:
      x-controller-name: QuestionnaireSchemasController
      x-operation-name: getJSONSchemaWithDefaults
      tags:
        - Questionnaires
      description: |-
        Allows getting profile questionnaire JSON schema by UUID.

        The response payload includes the fields type hint and validations.
      summary: Allows getting profile questionnaire JSON schema by UUID.
      parameters:
        - schema:
            type: string
            enum:
              - business-all-funding-products
              - business-anonymous-working-capital
              - business-working-capital
              - introducer-grants
              - introducer-rd-tax-claim
              - introducer-recovery-loan-scheme
              - introducer-working-capital
              - introducer-commercial-property
              - introducer-credit-improvement
              - introducer-debt-recovery
              - introducer-all-funding-products
          name: questionnaireId
          in: path
          required: true
          description: Questionnaire ID
        - schema:
            type: string
            example: b1a9d07f-5546-461e-a8c4-7f41d977fd45
            format: uuid
          name: profileId
          in: path
          required: true
          description: Profile ID
      responses:
        '200':
          description: >
            Questionnaire Submission JSON schema.


            Please see the section <a
            href="https://json-schema.org/understanding-json-schema/reference/type.html">Type-specific
            keywords</a> for type hint details


            Please see <a href="https://json-schema.org/">JSON schema
            documentation</a> for more details
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      operationId: QuestionnaireSchemasController.getJSONSchemaWithDefaults
  /questionnaires/{id}:
    get:
      x-controller-name: QuestionnaireController
      x-operation-name: getById
      tags:
        - Questionnaires
      description: >-
        Fetch a list of questions required to begin product matching. You can
        optionally prime the questionnaire responses by using the profile
        endpoints and then fetch all questions.
      summary: Allows getting the entire questionnaire by ID.
      responses:
        '200':
          description: Full questionnaire and its questions
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuestionnaireDto'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      parameters:
        - name: id
          in: path
          schema:
            type: string
          example: introducer-working-capital
          description: Questionnaire ID.
          required: true
      operationId: QuestionnaireController.getById
  /questionnaires:
    get:
      x-controller-name: QuestionnaireController
      x-operation-name: getAll
      tags:
        - Questionnaires
      description: Fetch a list of questionnaires required to begin product matching.
      summary: Allows getting a set of questionnaire objects.
      responses:
        '200':
          description: Questionnaires
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/QuestionnaireDto'
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '404':
          description: Not Found
        '422':
          description: Unprocessable Entity
        '500':
          description: Internal Server Error
      operationId: QuestionnaireController.getAll
servers:
  - url: https://demo.capitalise.com/api/marketplace/v1
    description: Demo
  - url: https://capitalise.com/api/marketplace/v1
    description: Production
components:
  schemas:
    RefreshTokenRequestDto:
      title: RefreshTokenRequestDto
      type: object
      properties:
        refreshToken:
          type: string
      required:
        - refreshToken
      additionalProperties: false
      example:
        refreshToken: 161c04f04289f442f8b9b91fdd39c554597639876e9bda4d16bed31a787b5c5d
    CompanyScoreDto:
      title: CompanyScoreDto
      type: object
      description: The credit score and band of the company
      additionalProperties: false
      properties:
        grade:
          type: string
          title: Grade
          enum:
            - A
            - B
            - C
            - D
            - E
          description: >
            The credit band/grade of the company.

            | Grade                 | title              |
            description                                                              
            | Grade minimum score | Grade maximum score |

            |--------------------|--------------------|---------------------------------------------------------------------------|:------------------:|--------------------|

            | F       | Maximum risk       | Challenging to access finance and a
            personal guaranteed might be required | 2                  |
            15                 |

            | E          | High risk          | Challenging to access finance
            and a personal guaranteed might be required | 16                 |
            25                 |

            | D | Above average risk | Likely to access high value finance but a
            guarantee may be required       | 26                 |
            50                 |

            | C | Below average risk | Likely to access high value finance but a
            guarantee may be required       | 51                 |
            80                 |

            | B           | Low risk           | Highly likely to access finance
            at favourable rates                       | 81                 |
            90                 |

            | A       | Minimum risk       | Highly likely to access finance at
            favourable rates                       | 91                 |
            100                |
        value:
          type: number
          description: The credit score
          minimum: 0
          maximum: 100
    AnswerCurrencyDto:
      title: AnswerCurrencyDto
      type: object
      description: '(tsType: AnswerCurrencyDto, schemaOptions: { exclude: undefined })'
      properties:
        code:
          type: string
          enum:
            - GBP
            - EUR
            - ZAR
        value:
          type: number
      required:
        - code
        - value
      additionalProperties: false
      example:
        code: GBP
        value: 150000
    AddressDto:
      title: AddressDto
      type: object
      description: '(tsType: AddressDto, schemaOptions: { exclude: undefined })'
      properties:
        simpleValue:
          type: string
          description: Address in UK format
        street:
          type: string
          title: Address line 1
          description: Street
        houseNumber:
          type: string
          title: Address line 2
          description: House number
        city:
          type: string
          title: Town
          description: City
        province:
          type: string
          title: Region
          description: Province
        postalCode:
          type: string
          title: Post code
          description: Postal code
      additionalProperties: false
    PrimaryContactInformationDto:
      title: PrimaryContactInformationDto
      type: object
      description: >-
        (tsType: PrimaryContactInformationDto, schemaOptions: { exclude:
        undefined })
      properties:
        email:
          type: string
          title: Email address
        name:
          type: string
          title: Full name
        number:
          type: string
          title: Contact number
        inviteClient:
          type: boolean
        legalRequirements:
          type: boolean
        address:
          $ref: '#/components/schemas/AddressDto'
      additionalProperties: false
    UnencumberedAssetsDto:
      title: UnencumberedAssetsDto
      type: object
      description: '(tsType: UnencumberedAssetsDto, schemaOptions: { exclude: undefined })'
      properties:
        guarantees:
          type: string
          enum:
            - NONE
            - BUSINESS
            - PERSONAL
            - BOTH
        isHomeOwnership:
          type: boolean
        personalGuarantee:
          type: boolean
        businessOwnsAssets:
          type: boolean
      additionalProperties: false
    CompanyInformationDto:
      title: CompanyInformationDto
      type: object
      properties:
        name:
          type: string
          title: Company name
        type:
          type: string
          title: Company type
          enum:
            - SOLE_TRADER
            - LIMITED_LIABILITY_PARTNERSHIP
            - LIMITED_COMPANY
            - STARTUP
        registrationNumber:
          type: string
          title: Company Number
        incorporatedAt:
          type: string
          format: date-time
          title: Incorporation date
        tradingFromDate:
          type: string
          format: date-time
          title: Trading from date
        sector:
          type: string
          title: Sector
          enum:
            - AGRICULTURE
            - AUTOMOTIVE
            - BUSINESS_SERVICES
            - CONSTRUCTION
            - COURIER
            - DISTRIBUTION
            - FINANCIAL_SERVICES
            - HAULAGE
            - HEALTHCARE_CARE
            - HOTELS_HOUSE
            - IMPORT_EXPORT
            - IT_RELATED
            - MANUFACTURING
            - PRINT_PUBLISHING
            - PROFESSIONAL_SERVICES
            - PROPERTY
            - RECRUITMENT
            - RETAIL
            - SECURITY_SERVICES
            - TRADE
            - TRANSPORTATION
            - WHOLESALE
            - OTHER
            - NONE
            - EDUCATION
            - CHARITIES
            - MEDIA_AND_ENTERTAINMENT
        vatStatus:
          type: string
          title: VAT status
          enum:
            - REGISTERED
            - NOT_REGISTERED
            - UNKNOWN
        score:
          $ref: '#/components/schemas/CompanyScoreDto'
        creditLimit:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        contactAddress:
          $ref: '#/components/schemas/AddressDto'
        primaryContactInformation:
          $ref: '#/components/schemas/PrimaryContactInformationDto'
        unencumberedAssets:
          $ref: '#/components/schemas/UnencumberedAssetsDto'
        isGovernmentBacked:
          type: boolean
        hasGovernmentBackedLoans:
          type: boolean
        employeesNumber:
          type: number
          title: No. of employees
        percentageSalesOnline:
          type: number
          title: '% of sales online'
        website:
          type: string
      additionalProperties: false
      minProperties: 1
    TradingHistoryDto:
      title: TradingHistoryDto
      type: object
      description: '(tsType: TradingHistoryDto, schemaOptions: { exclude: undefined })'
      properties:
        debtorsInvoicesDue:
          type: number
        debtorsOutstanding:
          type: number
          title: Trade debtors
        fixedAssets:
          type: number
          title: Fixed assets
        netAssets:
          type: number
          title: Net assets
        profitNet:
          type: number
          title: Net profit/loss before tax
        dividends:
          type: number
        revenue:
          type: number
          title: Turnover
        year:
          type: number
        yearEnd:
          type: number
          title: End of trading year
      required:
        - profitNet
        - revenue
        - yearEnd
      additionalProperties: false
      x-typescript-type: TradingHistoryDto
    DebtorDto:
      title: DebtorDto
      type: object
      description: '(tsType: DebtorDto, schemaOptions: { exclude: undefined })'
      properties:
        id:
          type: string
        contactId:
          type: string
        name:
          type: string
        firstName:
          type: string
        lastName:
          type: string
        emailAddress:
          type: string
        outstandingAmount:
          type: number
        outstandingAmountMonthlyAverage:
          type: number
        outstandingInvoicesCount:
          type: number
        contactNumber:
          type: string
        debtorDays:
          type: number
        revenue:
          type: number
      required:
        - id
      additionalProperties: false
      x-typescript-type: DebtorDto
    FinancialsDto:
      title: FinancialsDto
      type: object
      properties:
        netProfit:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        tradeDebtors:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        revenue:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        bankInterest:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        depreciation:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        amortisation:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        tradingHistory:
          type: array
          items:
            $ref: '#/components/schemas/TradingHistoryDto'
        debtors:
          type: array
          items:
            $ref: '#/components/schemas/DebtorDto'
        primaryBank:
          type: number
      additionalProperties: false
      example:
        revenue:
          code: GBP
          value: 100000
      minProperties: 1
    PersonDto:
      title: PersonDto
      type: object
      description: '(tsType: PersonDto, schemaOptions: { exclude: undefined })'
      properties:
        type:
          type: string
        title:
          type: string
        name:
          type: string
        address:
          $ref: '#/components/schemas/AddressDto'
        dateOfBirth:
          type: string
          format: date-time
      additionalProperties: false
    PropertyDataDto:
      title: PropertyDataDto
      type: object
      description: '(tsType: PropertyDataDto, schemaOptions: { exclude: undefined })'
      properties:
        type:
          type: string
          enum:
            - HOTEL
            - OFFICES
            - LEISURE_FACILITY
            - RETAIL
            - FLATS
            - HMO
            - OTHER
            - RESIDENTIAL_HOUSING
            - STUDENT_HOUSING
            - HOLIDAY_LETS
          title: Type
        location:
          type: string
          enum:
            - UK_MAINLAND
            - UK_ISLES
            - SCOTTISH_MAINLAND
            - SCOTTISH_ISLES
            - NORTHERN_IRELAND
            - EUROPE
            - OTHER
          title: Location
        setting:
          type: string
          enum:
            - RURAL
            - INDUSTRIAL
            - TOWN
            - CITY
          title: Setting
        classification:
          type: string
          enum:
            - COMMERCIAL
            - RESIDENTIAL
            - MIXED_USE
          title: Classification
        address:
          $ref: '#/components/schemas/AddressDto'
        value:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        outstandingDebt:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        depositAvailable:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        additionalDetails:
          type: string
          title: Additional Details
      additionalProperties: false
    AssetDataDto:
      title: AssetDataDto
      type: object
      description: '(tsType: AssetDataDto, schemaOptions: { exclude: undefined })'
      properties:
        name:
          type: string
          title: Make/model/URL
        offeredAsGuarantee:
          type: boolean
        type:
          type: string
          enum:
            - TRANSPORTATION
            - OFFICE
            - STOCK
            - MANUFACTURING
            - BUSINESS
          title: Asset type
        netCost:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        depositAvailable:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        existingAgreement:
          type: boolean
      additionalProperties: false
    AssetSecurityDataDto:
      title: AssetSecurityDataDto
      type: object
      description: '(tsType: AssetSecurityDataDto, schemaOptions: { exclude: undefined })'
      properties:
        type:
          type: string
          enum:
            - MAIN_PROPERTY
            - OTHER_PROPERTY
            - OTHER_FIXED_ASSETS
          title: Asset type
        owner:
          type: string
          title: Asset owner
        address:
          $ref: '#/components/schemas/AddressDto'
        value:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        totalDebt:
          $ref: '#/components/schemas/AnswerCurrencyDto'
      additionalProperties: false
    MerchantCashAdvanceDataDto:
      title: MerchantCashAdvanceDataDto
      type: object
      description: >-
        (tsType: MerchantCashAdvanceDataDto, schemaOptions: { exclude: undefined
        })
      properties:
        averageMonthlyTransactions:
          type: number
      additionalProperties: false
    EligibilityRequestSharedDataDto:
      title: EligibilityRequestSharedDataDto
      type: object
      description: >-
        (tsType: EligibilityRequestSharedDataDto, schemaOptions: { exclude:
        undefined })
      properties:
        fundingUrgency:
          type: string
        useOfFunds:
          type: string
        fundingAmount:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        fundingPeriod:
          type: number
        previousLoanApplication:
          type: boolean
        previousLoanDeclined:
          type: boolean
        tradingImpacted:
          type: boolean
        declaredForBusinessPurposes:
          type: boolean
        backgroundPurpose:
          type: string
          title: Background and purpose
          description: What is the business background and the purpose of funds?
      required:
        - backgroundPurpose
      additionalProperties: false
    RecoveryDto:
      title: RecoveryDto
      type: object
      description: '(tsType: RecoveryDto, schemaOptions: { exclude: undefined })'
      properties:
        defendant:
          $ref: '#/components/schemas/CompanyInformationDto'
        claimAmount:
          $ref: '#/components/schemas/AnswerCurrencyDto'
      additionalProperties: false
      minProperties: 1
    GrantsDto:
      title: GrantsDto
      type: object
      description: '(tsType: GrantsDto, schemaOptions: { exclude: undefined })'
      properties:
        uniqueIp:
          type: boolean
        previousGrantApplication:
          type: boolean
      additionalProperties: false
      minProperties: 1
    RdTaxClaimDto:
      title: RdTaxClaimDto
      type: object
      description: '(tsType: RdTaxClaimDto, schemaOptions: { exclude: undefined })'
      properties:
        isInnovating:
          type: boolean
        hasTaxRelief:
          type: boolean
      additionalProperties: false
      minProperties: 1
    InnovationRequirementsDto:
      title: InnovationRequirementsDto
      type: object
      description: >-
        (tsType: InnovationRequirementsDto, schemaOptions: { exclude: undefined
        })
      properties:
        tradingDifficulty:
          type: boolean
        grants:
          $ref: '#/components/schemas/GrantsDto'
        rdTaxClaim:
          $ref: '#/components/schemas/RdTaxClaimDto'
      additionalProperties: false
      minProperties: 1
    CommercialPropertyDto:
      title: CommercialPropertyDto
      type: object
      description: '(tsType: CommercialPropertyDto, schemaOptions: { exclude: undefined })'
      properties:
        refinancing:
          type: boolean
        portfolioSize:
          type: string
        repaymentMethod:
          type: string
        annualIncome:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        productPropertyType:
          type: string
        depositOrEquity:
          $ref: '#/components/schemas/AnswerCurrencyDto'
        outstandingDebt:
          $ref: '#/components/schemas/AnswerCurrencyDto'
      additionalProperties: false
    TermLoanDto:
      title: TermLoanDto
      type: object
      description: '(tsType: TermLoanDto, schemaOptions: { exclude: undefined })'
      properties:
        hasTermLoan:
          type: boolean
        preferredCreditFacility:
          type: array
          items:
            type: string
      additionalProperties: false
    InvoiceFinanceDto:
      title: InvoiceFinanceDto
      type: object
      description: '(tsType: InvoiceFinanceDto, schemaOptions: { exclude: undefined })'
      properties:
        raisesInvoices:
          type: boolean
        customerType:
          type: number
      additionalProperties: false
    MerchantCashDto:
      title: MerchantCashDto
      type: object
      description: '(tsType: MerchantCashDto, schemaOptions: { exclude: undefined })'
      properties:
        acceptsCommercePayments:
          type: boolean
      additionalProperties: false
    AssetFinanceDto:
      title: AssetFinanceDto
      type: object
      description: '(tsType: AssetFinanceDto, schemaOptions: { exclude: undefined })'
      properties:
        ownsAssets:
          type: boolean
      additionalProperties: false
    TradeFinanceDto:
      title: TradeFinanceDto
      type: object
      description: '(tsType: TradeFinanceDto, schemaOptions: { exclude: undefined })'
      properties:
        hasPurchaseOrders:
          type: boolean
      additionalProperties: false
    EligibilityRequestResponseDto:
      title: EligibilityRequestResponseDto
      type: object
      description: >-
        (tsType: EligibilityRequestResponseDto, schemaOptions: { exclude:
        undefined })
      properties:
        sourceQuestionnaireId:
          type: string
        shared:
          $ref: '#/components/schemas/EligibilityRequestSharedDataDto'
        recovery:
          $ref: '#/components/schemas/RecoveryDto'
        innovationRequirements:
          $ref: '#/components/schemas/InnovationRequirementsDto'
        commercialProperty:
          $ref: '#/components/schemas/CommercialPropertyDto'
        termLoan:
          $ref: '#/components/schemas/TermLoanDto'
        invoiceFinance:
          $ref: '#/components/schemas/InvoiceFinanceDto'
        merchantCash:
          $ref: '#/components/schemas/MerchantCashDto'
        assetFinance:
          $ref: '#/components/schemas/AssetFinanceDto'
        tradeFinance:
          $ref: '#/components/schemas/TradeFinanceDto'
        requestedProducts:
          type: array
          items:
            type: string
        appliedProducts:
          type: array
          items:
            type: string
      additionalProperties: false
    ProfileCoreApiLegacyDto:
      title: ProfileCoreApiLegacyDto
      type: object
      description: '(tsType: ProfileCoreApiLegacyDto, schemaOptions: { exclude: undefined })'
      properties:
        entityBusinessId:
          type: number
        fundingSearchId:
          type: number
      additionalProperties: false
    AnonymousOwnerDto:
      title: AnonymousOwnerDto
      type: object
      properties:
        countryCode:
          type: string
          enum:
            - ZA
            - GB
      additionalProperties: false
    NoteDto:
      title: NoteDto
      type: object
      description: '(tsType: NoteDto, schemaOptions: { exclude: undefined })'
      properties:
        value:
          type: string
        updatedBy:
          type: string
        updatedAt:
          type: string
          format: date-time
      additionalProperties: false
    PeriodDto:
      title: PeriodDto
      type: object
      description: '(tsType: PeriodDto, schemaOptions: { exclude: undefined })'
      properties:
        minimum:
          type: number
        maximum:
          type: number
      additionalProperties: false
    LenderDto:
      title: LenderDto
      type: object
      description: '(tsType: LenderDto, schemaOptions: { exclude: undefined })'
      properties:
        id:
          type: number
        entityType:
          type: string
          enum:
            - BUSINESS
            - INTRODUCER
            - LENDER
        note:
          $ref: '#/components/schemas/NoteDto'
        countryCode:
          type: string
          enum:
            - ZA
            - GB
        name:
          type: string
        description:
          type: string
        type:
          type: string
        average:
          type: string
        responseTime:
          type: number
        documents:
          type: array
          items:
            type: string
        features:
          type: array
          items:
            type: string
        icon:
          type: string
        logo:
          type: string
        period:
          $ref: '#/components/schemas/PeriodDto'
        governmentBacked:
          type: boolean
      additionalProperties: true
    FeesDto:
      title: FeesDto
      type: object
      description: '(tsType: FeesDto, schemaOptions: { exclude: undefined })'
      properties:
        arrangementFees:
          type: number
        earlyRepaymentFees:
          type: number
        exitFees:
          type: number
        hasArrangementFees:
          type: object
        hasEarlyRepaymentFees:
          type: object
        hasExitFees:
          type: object
      additionalProperties: false
    RevenueDto:
      title: RevenueDto
      type: object
      description: '(tsType: RevenueDto, schemaOptions: { exclude: undefined })'
      properties:
        minimum:
          type: number
        maximum:
          type: number
      additionalProperties: false
    LikelihoodDto:
      title: LikelihoodDto
      type: object
      description: '(tsType: LikelihoodDto, schemaOptions: { exclude: undefined })'
      properties:
        description:
          type: string
        value:
          type: number
      additionalProperties: false
    FundingMatchDto:
      type: object
      title: FundingMatchDto
      description: '(tsType: FundingMatchDto, schemaOptions: { exclude: undefined })'
      additionalProperties: false
      properties:
        id:
          type: number
        product:
          type: string
          enum:
            - TERM_LOAN
            - FIXED_LOAN_TERMS
            - ASSET_BACKED_FINANCE
            - MERCHANT_CASH_ADVANCE
            - INVOICE_FINANCE
            - E_COMMERCE_FUNDING
            - TRADE_FINANCE
            - COMMERCIAL_PROPERTY
        lender:
          $ref: '#/components/schemas/LenderDto'
        fees:
          $ref: '#/components/schemas/FeesDto'
        revenue:
          $ref: '#/components/schemas/RevenueDto'
        likelihood:
          $ref: '#/components/schemas/LikelihoodDto'
        governmentBacked:
          type: boolean
        applicationTypes:
          type: array
          items:
            type: string
            enum:
              - INSTANT_APPLICATION
              - INSTANT_OFFER
    SelectedLenderDto:
      type: object
      title: SelectedLenderDto
      additionalProperties: false
      example:
        lenderId: 1
        products:
          - TERM_LOAN
      properties:
        lenderId:
          type: number
        products:
          type: array
          items:
            type: string
            enum:
              - TERM_LOAN
              - FIXED_LOAN_TERMS
              - ASSET_BACKED_FINANCE
              - MERCHANT_CASH_ADVANCE
              - INVOICE_FINANCE
              - E_COMMERCE_FUNDING
              - TRADE_FINANCE
              - COMMERCIAL_PROPERTY
    QuestionKeysDto:
      title: QuestionKeysDto
      type: object
      description: '(tsType: QuestionKeysDto, schemaOptions: { exclude: undefined })'
      additionalProperties: false
    AnswerKeysDto:
      title: AnswerKeysDto
      type: object
      description: Set of questionnaire answers keys
      additionalProperties: true
      example:
        companyType: SOLE_TRADER
        companyName: CAPITALISE.COM PLATFORM LTD
        companyNumber: '09256446'
      minProperties: 1
    CaseDetailsDto:
      title: CaseDetailsDto
      type: object
      description: '(tsType: CaseDetailsDto, schemaOptions: { exclude: undefined })'
      properties:
        title:
          type: string
        description:
          type: string
        amount:
          type: object
      additionalProperties: false
    CaseOwnerDto:
      title: CaseOwnerDto
      type: object
      description: '(tsType: CaseOwnerDto, schemaOptions: { exclude: undefined })'
      properties:
        id:
          type: number
        name:
          type: string
        email:
          type: string
        team:
          type: number
      additionalProperties: false
    CaseManagerDto:
      title: CaseManagerDto
      type: object
      description: '(tsType: CaseManagerDto, schemaOptions: { exclude: undefined })'
      properties:
        id:
          type: number
      additionalProperties: false
    CaseLatestActvityDto:
      title: CaseLatestActvityDto
      type: object
      description: '(tsType: CaseLatestActvityDto, schemaOptions: { exclude: undefined })'
      properties:
        id:
          type: string
        title:
          type: string
        createdAt:
          type: string
          format: date-time
      additionalProperties: false
    CaseIntegrationDto:
      title: CaseIntegrationDto
      type: object
      description: '(tsType: CaseIntegrationDto, schemaOptions: { exclude: undefined })'
      properties:
        name:
          type: string
        generatedAt:
          type: string
          format: date-time
      additionalProperties: false
    SignInResponseDto:
      title: SignInResponseDto
      type: object
      description: SignInResponseDto
      properties:
        jwt:
          type: string
          description: Marketplace API OAuth2 Token (JWT)
        refreshToken:
          type: string
          description: Marketplace API OAuth2 Refresh Token
      additionalProperties: false
      example:
        refreshToken: 161c04f04289f442f8b9b91fdd39c554597639876e9bda4d16bed31a787b5c5d
        jwt: >-
          eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkNhcGl0YWxpc2UgQVBJIE1ha2V0cGxhY2UiLCJpYXQiOjE1MTYyMzkwMjJ9.6MDnQOI3PM6Srg0qpWtefAjNOkAhminw1xokO-03Tzs
    CompanySearchResultDto:
      title: CompanySearchResultDto
      type: object
      description: CompanySearchResultDto
      properties:
        name:
          type: string
        number:
          type: string
      additionalProperties: false
    PublicProfileResponseDto:
      title: PublicProfileResponseDto
      type: object
      description: PublicProfileResponseDto
      properties:
        companyInformation:
          $ref: '#/components/schemas/CompanyInformationDto'
        financials:
          $ref: '#/components/schemas/FinancialsDto'
        persons:
          type: array
          items:
            $ref: '#/components/schemas/PersonDto'
        properties:
          type: array
          items:
            $ref: '#/components/schemas/PropertyDataDto'
        assets:
          type: array
          items:
            $ref: '#/components/schemas/AssetDataDto'
        assetsForSecurity:
          type: array
          items:
            $ref: '#/components/schemas/AssetSecurityDataDto'
        merchantCashAdvance:
          type: array
          items:
            $ref: '#/components/schemas/MerchantCashAdvanceDataDto'
        uuid:
          type: string
        eligibilityRequest:
          $ref: '#/components/schemas/EligibilityRequestResponseDto'
        legacy:
          $ref: '#/components/schemas/ProfileCoreApiLegacyDto'
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
      additionalProperties: false
    CaseResponseDto:
      title: CaseResponseDto
      type: object
      description: CaseResponseDto
      properties:
        id:
          type: string
        profile:
          type: string
        businessId:
          type: number
        type:
          type: string
        private:
          type: boolean
        offersAwaitingReview:
          type: boolean
        followers:
          type: array
          items:
            type: string
        product:
          type: string
        products:
          type: array
          items:
            type: string
        productName:
          type: string
        productNames:
          type: array
          items:
            type: string
        caseState:
          type: string
        caseStateName:
          type: string
        state:
          type: string
        stateName:
          type: string
        stateType:
          type: string
        stateUpdatedAt:
          type: string
          format: date-time
        details:
          $ref: '#/components/schemas/CaseDetailsDto'
        owner:
          $ref: '#/components/schemas/CaseOwnerDto'
        manager:
          $ref: '#/components/schemas/CaseManagerDto'
        latestActivity:
          $ref: '#/components/schemas/CaseLatestActvityDto'
        integration:
          $ref: '#/components/schemas/CaseIntegrationDto'
      additionalProperties: false
    FundingSearchDto:
      type: object
      title: FundingSearchDto
      description: FundingSearchDto
      additionalProperties: false
      example:
        amount: 150000
        matches:
          - lender:
              id: 1
            product: TERM_LOAN
      properties:
        id:
          type: number
        amount:
          type: number
        matches:
          type: array
          items:
            $ref: '#/components/schemas/FundingMatchDto'
    ProfileUrlDto:
      title: ProfileUrlDto
      type: object
      description: ProfileUrlDto
      properties:
        url:
          type: string
      additionalProperties: false
      example:
        url: https://capitalise.com/app/ui/funding/search/99999999/profile
    SubmissionDto:
      title: SubmissionDto
      type: object
      description: SubmissionDto
      properties:
        id:
          type: string
        questionnaireId:
          type: string
        answers:
          $ref: '#/components/schemas/AnswerKeysDto'
      additionalProperties: false
    QuestionnaireDto:
      title: QuestionnaireDto
      type: object
      description: QuestionnaireDto
      properties:
        id:
          type: string
        title:
          type: string
        questions:
          $ref: '#/components/schemas/QuestionKeysDto'
      additionalProperties: false
    AnswerKeyBusinessAnonymousWorkingCapitalDto:
      additionalProperties: false
      type: object
      properties:
        companyType:
          type: string
          enum:
            - LIMITED_COMPANY
            - LIMITED_LIABILITY_PARTNERSHIP
            - SOLE_TRADER
            - STARTUP
          description: What is your type of business?
        businessPurposes:
          type: boolean
          description: >-
            Is this sole trader loan for business purposes? _Required when
            `companyType` = `SOLE_TRADER`. Our lenders will accept applications
            for business purposes only._
        companyNumber:
          type: string
          minLength: 1
          description: >-
            What is the registered company number? _Required when `companyType`
            = `LIMITED_COMPANY` or `LIMITED_LIABILITY_PARTNERSHIP`._
        companyName:
          type: string
          minLength: 1
          description: What is your business name?
        fundingUrgency:
          type: string
          enum:
            - ASAP
            - ONE_WEEK
            - ONE_MONTH
            - REFINANCING
            - JUST_BROWSING
          description: How soon do you need the funding?
        useOfFunds:
          type: string
          enum:
            - CASH_FLOW
            - BUSINESS_EXPANSION
            - EQUIPMENT_ASSET_FINANCE
            - REFINANCING_DEBT
            - IMPORT_EXPORT
            - TAX_BILL_DUE
            - ACQUIRING_BUSINESS
            - STARTING_BUSINESS
            - PURCHASING_PROPERTY
            - PURCHASING_STOCK
          description: What will the funds be used for?
          example: CASH_FLOW
        fundingAmount:
          type: object
          description: How much are you searching for?
          required:
            - code
            - value
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
              multipleOf: 1
              maximum: 1000000
              minimum: 25000
        fundingPeriod:
          type: number
          enum:
            - 6
            - 12
            - 24
            - 36
            - 48
            - 60
          description: How long does your business need the funding?
        personalGuarantee:
          type: boolean
          default: false
          description: >-
            Directors offer a limited personal guarantee... Most lenders will
            require directors to offer this.
        homeOwnership:
          type: boolean
          default: false
          description: Are any of the directors UK homeowners?
        businessOwnsAssets:
          type: boolean
          default: false
          description: Your business owns assets or property
        sector:
          type: string
          minLength: 1
          enum:
            - AGRICULTURE
            - AUTOMOTIVE
            - BUSINESS_SERVICES
            - CONSTRUCTION
            - COURIER
            - CHARITIES
            - DISTRIBUTION
            - EDUCATION
            - FINANCIAL_SERVICES
            - HAULAGE
            - HEALTHCARE_CARE
            - HOTELS_HOUSE
            - IMPORT_EXPORT
            - IT_RELATED
            - MANUFACTURING
            - MEDIA_AND_ENTERTAINMENT
            - PRINT_PUBLISHING
            - PROFESSIONAL_SERVICES
            - PROPERTY
            - RECRUITMENT
            - RETAIL
            - SECURITY_SERVICES
            - TRADE
            - TRANSPORTATION
            - WHOLESALE
            - OTHER
          description: What sector is your business in?
        tradingAddress:
          type: string
          minLength: 1
          description: What is your trading address?
        incorporationDate:
          type: string
          description: When did you start trading?
        netProfit:
          type: object
          additionalProperties: false
          description: What is your last reported annual net profit?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        tradeDebtors:
          type: object
          additionalProperties: false
          description: What are your current trade debtors?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        revenue:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is your last reported annual revenue?
          required:
            - code
            - value
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
        bankInterest:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is your last reported annual bank interest?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        depreciation:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is your last reported annual depreciation?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        amortisation:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is your last reported annual amortisation?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
      required:
        - companyType
        - companyName
        - useOfFunds
        - fundingAmount
        - fundingPeriod
        - sector
        - incorporationDate
        - revenue
      title: business-anonymous-working-capital
      description: 'Questionnaire Request Body: Business Anonymous Working Capital'
    AnswerKeyBusinessWorkingCapitalDto:
      additionalProperties: false
      type: object
      properties:
        companyType:
          type: string
          enum:
            - LIMITED_COMPANY
            - LIMITED_LIABILITY_PARTNERSHIP
            - SOLE_TRADER
            - STARTUP
          description: What is your type of business?
        businessPurposes:
          type: boolean
          description: >-
            Is this sole trader loan for business purposes? _Required when
            `companyType` = `SOLE_TRADER`. Our lenders will accept applications
            for business purposes only._
        companyNumber:
          type: string
          minLength: 1
          description: >-
            What is the registered company number? _Required when `companyType`
            = `LIMITED_COMPANY` or `LIMITED_LIABILITY_PARTNERSHIP`._
        companyName:
          type: string
          minLength: 1
          description: What is your business name?
        fundingUrgency:
          type: string
          enum:
            - ASAP
            - ONE_WEEK
            - ONE_MONTH
            - REFINANCING
            - JUST_BROWSING
          description: How soon do you need the funding?
        useOfFunds:
          type: string
          enum:
            - CASH_FLOW
            - BUSINESS_EXPANSION
            - EQUIPMENT_ASSET_FINANCE
            - REFINANCING_DEBT
            - IMPORT_EXPORT
            - TAX_BILL_DUE
            - ACQUIRING_BUSINESS
            - STARTING_BUSINESS
            - PURCHASING_PROPERTY
            - PURCHASING_STOCK
          description: What will the funds be used for?
          example: CASH_FLOW
        fundingAmount:
          type: object
          description: How much are you searching for?
          required:
            - code
            - value
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
              multipleOf: 1
              maximum: 1000000
              minimum: 25000
        fundingPeriod:
          type: number
          enum:
            - 6
            - 12
            - 24
            - 36
            - 48
            - 60
          description: How long does your business need the funding?
        personalGuarantee:
          type: boolean
          default: false
          description: >-
            Directors offer a limited personal guarantee... Most lenders will
            require directors to offer this.
        homeOwnership:
          type: boolean
          default: false
          description: Are any of the directors UK homeowners?
        businessOwnsAssets:
          type: boolean
          default: false
          description: Your business owns assets or property
        sector:
          type: string
          minLength: 1
          enum:
            - AGRICULTURE
            - AUTOMOTIVE
            - BUSINESS_SERVICES
            - CONSTRUCTION
            - COURIER
            - CHARITIES
            - DISTRIBUTION
            - EDUCATION
            - FINANCIAL_SERVICES
            - HAULAGE
            - HEALTHCARE_CARE
            - HOTELS_HOUSE
            - IMPORT_EXPORT
            - IT_RELATED
            - MANUFACTURING
            - MEDIA_AND_ENTERTAINMENT
            - PRINT_PUBLISHING
            - PROFESSIONAL_SERVICES
            - PROPERTY
            - RECRUITMENT
            - RETAIL
            - SECURITY_SERVICES
            - TRADE
            - TRANSPORTATION
            - WHOLESALE
            - OTHER
          description: What sector is your business in?
        tradingAddress:
          type: string
          minLength: 1
          description: What is your trading address?
        incorporationDate:
          type: string
          description: When did you start trading?
        netProfit:
          type: object
          additionalProperties: false
          description: What is your last reported annual net profit?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        tradeDebtors:
          type: object
          additionalProperties: false
          description: What are your current trade debtors?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        revenue:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is your last reported annual revenue?
          required:
            - code
            - value
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
        bankInterest:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is your last reported annual bank interest?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        depreciation:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is your last reported annual depreciation?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        amortisation:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is your last reported annual amortisation?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
      required:
        - companyType
        - companyName
        - useOfFunds
        - fundingAmount
        - fundingPeriod
        - sector
        - incorporationDate
        - revenue
      title: business-working-capital
      description: 'Questionnaire Request Body: Business Working Capital'
    AnswerKeyBusinessAllFundingProductsDto:
      additionalProperties: false
      type: object
      title: business-all-funding-products
      description: 'Questionnaire Request Body: Business All Funding Products'
      x-examples:
        example-1:
          clientName: string
          clientEmail: user@example.com
          clientNumber: string
          legalRequirements: true
          companyType: LIMITED_COMPANY
          businessPurposes: true
          companyNumber: string
          companyName: string
          fundingUrgency: ASAP
          useOfFunds: CASH_FLOW
          fundingAmount:
            code: GBP
            value: 25000
          fundingPeriod: 0
          personalGuarantee: false
          homeOwnership: false
          businessOwnsAssets: false
          sector: AGRICULTURE
          tradingAddress: Number, Street, Postcode
          incorporationDate: '2019-08-24'
          netProfit:
            code: GBP
            value: 0
          tradeDebtors:
            code: GBP
            value: 0
          revenue:
            code: GBP
            value: 0
          bankInterest:
            code: GBP
            value: 0
          depreciation:
            code: GBP
            value: 0
          amortisation:
            code: GBP
            value: 0
          raiseInvoices: false
          cardPayments: false
          averageCardSales: 0
          fundingAsset: false
          assetType: TRANSPORTATION
          assetExistingAgreement: false
          purchaseOrders: false
          governmentBacked: false
          governmentBackedLoansExist: false
      properties:
        clientName:
          type: string
          description: What is the full name of the applicant?
        clientEmail:
          type: string
          description: What is your e-mail to contact the applicant?
          format: email
        clientNumber:
          type: string
          description: What is the contact number of the applicant? E.g. +449328291829
          pattern: ^\+?[0-9\s]{11,30}$
        legalRequirements:
          type: boolean
          description: >-
            Allow Capitalise to contact the client to collect consent required
            by lenders and ensure your commission disclosure requirements are
            met.
          default: true
        companyType:
          type: string
          enum:
            - LIMITED_COMPANY
            - LIMITED_LIABILITY_PARTNERSHIP
            - SOLE_TRADER
            - STARTUP
          description: What is your type of business?
        businessPurposes:
          type: boolean
          description: >-
            Is this sole trader loan for business purposes? _Required when
            `companyType` = `SOLE_TRADER`. Our lenders will accept applications
            for business purposes only._
        companyNumber:
          type: string
          minLength: 1
          description: >-
            What is the registered company number? _Required when `companyType`
            = `LIMITED_COMPANY` or `LIMITED_LIABILITY_PARTNERSHIP`._
        companyName:
          type: string
          minLength: 1
          description: What is your business name?
        fundingUrgency:
          type: string
          enum:
            - ASAP
            - ONE_WEEK
            - ONE_MONTH
            - REFINANCING
            - JUST_BROWSING
          description: How soon do you need the funding?
        useOfFunds:
          type: string
          enum:
            - CASH_FLOW
            - BUSINESS_EXPANSION
            - EQUIPMENT_ASSET_FINANCE
            - REFINANCING_DEBT
            - IMPORT_EXPORT
            - TAX_BILL_DUE
            - ACQUIRING_BUSINESS
            - STARTING_BUSINESS
            - PURCHASING_PROPERTY
            - PURCHASING_STOCK
          description: What will the funds be used for?
          example: CASH_FLOW
        fundingAmount:
          type: object
          description: How much are you searching for?
          required:
            - code
            - value
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
              multipleOf: 1
              maximum: 1000000
              minimum: 25000
        fundingPeriod:
          type: number
          description: |-
            How long (in months) does your business need the funding?
            - `6` - 6 months or less
            - `12` - Up to 1 year
            - `24` - Up to 2 years
            - `36` - Up to 3 years
            - `48` - Up to 4 years
            - `60` - 5 years or more
          minimum: 0
          enum:
            - 6
            - 12
            - 24
            - 36
            - 48
            - 60
        personalGuarantee:
          type: boolean
          default: false
          description: >-
            Directors offer a limited personal guarantee... Most lenders will
            require directors to offer this.
        homeOwnership:
          type: boolean
          default: false
          description: Are any of the directors UK homeowners?
        businessOwnsAssets:
          type: boolean
          default: false
          description: Your business owns assets or property
        sector:
          type: string
          minLength: 1
          enum:
            - AGRICULTURE
            - AUTOMOTIVE
            - BUSINESS_SERVICES
            - CONSTRUCTION
            - COURIER
            - CHARITIES
            - DISTRIBUTION
            - EDUCATION
            - FINANCIAL_SERVICES
            - HAULAGE
            - HEALTHCARE_CARE
            - HOTELS_HOUSE
            - IMPORT_EXPORT
            - IT_RELATED
            - MANUFACTURING
            - MEDIA_AND_ENTERTAINMENT
            - PRINT_PUBLISHING
            - PROFESSIONAL_SERVICES
            - PROPERTY
            - RECRUITMENT
            - RETAIL
            - SECURITY_SERVICES
            - TRADE
            - TRANSPORTATION
            - WHOLESALE
            - OTHER
          description: What sector is your business in?
        tradingAddress:
          type: string
          minLength: 1
          description: What is your trading address? Format \:Street, no, postcode
          example: Number, Street, Postcode
        incorporationDate:
          type: string
          description: When did you start trading?
          format: date
        netProfit:
          type: object
          additionalProperties: false
          description: What is your last reported annual net profit?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        tradeDebtors:
          type: object
          additionalProperties: false
          description: What are your current trade debtors?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        revenue:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is your last reported annual revenue?
          required:
            - code
            - value
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
        bankInterest:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is your last reported annual bank interest?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        depreciation:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is your last reported annual depreciation?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        amortisation:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is your last reported annual amortisation?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        raiseInvoices:
          type: boolean
          default: false
          description: >-
            Does your business raise invoices to clients? Invoices should have
            payment terms of 14 days or more.
        cardPayments:
          type: boolean
          default: false
          description: >-
            Does your business accept card payments? Credit/Debit card terminal,
            online payments or any other e-commerce payments.
        averageCardSales:
          type: number
          description: >-
            What are the average monthly card sales? Include all payments
            through any terminal or commerce provider. Only required when
            `cardPayments` is `True`.

            - `2500` - up to £2,500

            - `7500` - up to £7,500

            - `15000` - up to £15,000

            - `35000` - up to £35,000

            - `55000` - up to £55,000

            - `75000` - up to £75,000
          enum:
            - 2500
            - 7500
            - 15000
            - 35000
            - 55000
            - 75000
        fundingAsset:
          type: boolean
          description: >-
            Is the funding for an asset? Let us know if funding will be used to
            purchase or refinance an asset.
          default: false
        assetType:
          type: string
          enum:
            - TRANSPORTATION
            - OFFICE
            - STOCK
            - MANUFACTURING
            - BUSINESS
          description: >-
            What kind of asset is it? Let us know the category of asset.
            Required only when `fundingAsset` is `True`.
        assetExistingAgreement:
          type: boolean
          description: >-
            Is there an existing agreement for this asset? Optional to fill in
            when `fundingAsset` is `True`.
          default: false
        purchaseOrders:
          type: boolean
          description: >-
            Does your business receive purchase orders? Or if your company
            imports good from outside the UK.
          default: false
        governmentBacked:
          type: boolean
          description: Are you only interested in a Recovery Loan?
          default: false
        governmentBackedLoansExist:
          type: boolean
          description: >-
            Do you have any existing government backed loans? Let us know if
            your business has a CBILS, BBLS or similar product.
          default: false
      required:
        - clientName
        - clientEmail
        - clientNumber
        - legalRequirements
        - companyType
        - companyName
        - useOfFunds
        - fundingAmount
        - fundingPeriod
        - sector
        - incorporationDate
        - revenue
        - raiseInvoices
        - cardPayments
        - fundingAsset
        - purchaseOrders
        - governmentBacked
        - governmentBackedLoansExist
    AnswerKeyIntroducerAllFundingProductsDto:
      additionalProperties: false
      type: object
      title: introducer-all-funding-products
      description: 'Questionnaire Request Body: Introducer All Funding Products'
      x-examples:
        example-1:
          clientName: string
          clientEmail: user@example.com
          clientNumber: string
          legalRequirements: true
          companyType: LIMITED_COMPANY
          businessPurposes: true
          companyNumber: string
          companyName: string
          fundingUrgency: ASAP
          useOfFunds: CASH_FLOW
          fundingAmount:
            code: GBP
            value: 25000
          fundingPeriod: 0
          personalGuarantee: false
          homeOwnership: false
          businessOwnsAssets: false
          sector: AGRICULTURE
          tradingAddress: Number, Street, Postcode
          incorporationDate: '2019-08-24'
          netProfit:
            code: GBP
            value: 0
          tradeDebtors:
            code: GBP
            value: 0
          revenue:
            code: GBP
            value: 0
          bankInterest:
            code: GBP
            value: 0
          depreciation:
            code: GBP
            value: 0
          amortisation:
            code: GBP
            value: 0
          raiseInvoices: false
          cardPayments: false
          averageCardSales: 0
          fundingAsset: false
          assetType: TRANSPORTATION
          assetExistingAgreement: false
          purchaseOrders: false
          governmentBacked: false
          governmentBackedLoansExist: false
      properties:
        clientName:
          type: string
          description: What is the full name of the applicant?
        clientEmail:
          type: string
          description: What is your e-mail to contact the applicant?
          format: email
        clientNumber:
          type: string
          description: What is the contact number of the applicant? E.g. +449328291829
          pattern: ^\+?[0-9\s]{11,30}$
        inviteClient:
          type: boolean
          description: >-
            Automatically invite the client to the view and track application at
            Capitalise.com? Highly recommend to set it as `true`. We will send
            the client an email with a link to the fudning search once it is
            submitted to us (upon 200 response of request to [`POST
            /apply`](/api/marketplace/v1#operation/ProfileFundingController.applyMatches)).
          default: false
        companyType:
          type: string
          enum:
            - LIMITED_COMPANY
            - LIMITED_LIABILITY_PARTNERSHIP
            - SOLE_TRADER
            - STARTUP
          description: What is your type of business?
        companyNumber:
          type: string
          minLength: 1
          description: >-
            What is the registered company number? _Required when `companyType`
            = `LIMITED_COMPANY` or `LIMITED_LIABILITY_PARTNERSHIP`._
        companyName:
          type: string
          minLength: 1
          description: What is the name of the company?
        businessPurposes:
          type: boolean
          default: null
          description: >-
            _Required when `companyType` = `SOLE_TRADER`. Our lenders will
            accept applications for business purposes only._ Is this sole trader
            loan for business purposes?
        fundingUrgency:
          type: string
          enum:
            - ASAP
            - ONE_WEEK
            - ONE_MONTH
            - REFINANCING
            - JUST_BROWSING
          description: How soon does the business need the funding?
        useOfFunds:
          type: string
          enum:
            - CASH_FLOW
            - BUSINESS_EXPANSION
            - EQUIPMENT_ASSET_FINANCE
            - REFINANCING_DEBT
            - IMPORT_EXPORT
            - TAX_BILL_DUE
            - ACQUIRING_BUSINESS
            - STARTING_BUSINESS
            - PURCHASING_PROPERTY
            - PURCHASING_STOCK
          description: What will the funds be used for?
          example: CASH_FLOW
        fundingAmount:
          type: object
          description: How much funding the business is searching for?
          required:
            - code
            - value
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
              multipleOf: 1
              maximum: 1000000
              minimum: 25000
        fundingPeriod:
          type: number
          description: |-
            How long (in months) does the business need the funding?
            - `6` - 6 months or less
            - `12` - Up to 1 year
            - `24` - Up to 2 years
            - `36` - Up to 3 years
            - `48` - Up to 4 years
            - `60` - 5 years or more
          minimum: 0
          enum:
            - 6
            - 12
            - 24
            - 36
            - 48
            - 60
        personalGuarantee:
          type: boolean
          default: false
          description: >-
            Director(s) of the business can offer a limited personal
            guarantee... Most lenders will require directors to offer this.
        homeOwnership:
          type: boolean
          default: false
          description: Is any of the directors UK homeowner?
        businessOwnsAssets:
          type: boolean
          default: false
          description: Does the business own assets or property?
        sector:
          type: string
          minLength: 1
          enum:
            - AGRICULTURE
            - AUTOMOTIVE
            - BUSINESS_SERVICES
            - CONSTRUCTION
            - COURIER
            - CHARITIES
            - DISTRIBUTION
            - EDUCATION
            - FINANCIAL_SERVICES
            - HAULAGE
            - HEALTHCARE_CARE
            - HOTELS_HOUSE
            - IMPORT_EXPORT
            - IT_RELATED
            - MANUFACTURING
            - MEDIA_AND_ENTERTAINMENT
            - PRINT_PUBLISHING
            - PROFESSIONAL_SERVICES
            - PROPERTY
            - RECRUITMENT
            - RETAIL
            - SECURITY_SERVICES
            - TRADE
            - TRANSPORTATION
            - WHOLESALE
            - OTHER
          description: What sector is the business in?
        tradingAddress:
          type: string
          minLength: 1
          description: What is the business trading address? Format \:Street, no, postcode
          example: Number, Street, Postcode
        incorporationDate:
          type: string
          description: When did the business start trading?
          format: date
        netProfit:
          type: object
          additionalProperties: false
          description: What is the business last reported annual net profit?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        tradeDebtors:
          type: object
          additionalProperties: false
          description: What are the business current trade debtors?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        revenue:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is the business last reported annual revenue?
          required:
            - code
            - value
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
        bankInterest:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is the business last reported annual bank interest?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        depreciation:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is the business last reported annual depreciation?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        amortisation:
          type: object
          additionalProperties: false
          minProperties: 1
          description: What is the business last reported annual amortisation?
          properties:
            code:
              type: string
              enum:
                - GBP
                - ZAR
            value:
              type: number
          required:
            - code
            - value
        raiseInvoices:
          type: boolean
          default: false
          description: >-
            Does The business raise invoices to clients? Invoices should have
            payment terms of 14 days or more.
        cardPayments:
          type: boolean
          default: false
          description: >-
            Does the business accept card payments? Credit/Debit card terminal,
            online payments or any other e-commerce payments.
        averageCardSales:
          type: number
          description: >-
            What are the average monthly card sales? Include all payments
            through any terminal or commerce provider. Only required when
            `cardPayments` is `True`.

            - `2500` - up to £2,500

            - `7500` - up to £7,500

            - `15000` - up to £15,000

            - `35000` - up to £35,000

            - `55000` - up to £55,000

            - `75000` - up to £75,000
          enum:
            - 2500
            - 7500
            - 15000
            - 35000
            - 55000
            - 75000
        fundingAsset:
          type: boolean
          description: >-
            Is the funding for an asset? Let us know if funding will be used to
            purchase or refinance an asset.
          default: false
        assetType:
          type: string
          enum:
            - TRANSPORTATION
            - OFFICE
            - STOCK
            - MANUFACTURING
            - BUSINESS
          description: >-
            What kind of asset is it? Let us know the category of asset.
            Required only when `fundingAsset` is `True`.
        assetExistingAgreement:
          type: boolean
          description: >-
            Is there an existing agreement for this asset? Optional to fill in
            when `fundingAsset` is `True`.
          default: false
        purchaseOrders:
          type: boolean
          description: >-
            Does the business receive purchase orders? Or if your company
            imports good from outside the UK.
          default: false
        governmentBacked:
          type: boolean
          description: Is the business only interested in a Recovery Loan?
          default: false
        governmentBackedLoansExist:
          type: boolean
          description: >-
            Does the business have any existing government backed loans? Let us
            know if the business has a CBILS, BBLS or similar product.
          default: false
        legalRequirements:
          type: boolean
          description: >-
            Allow Capitalise to contact the client to collect consent required
            by lenders and ensure your commission disclosure requirements are
            met.
          default: true
      required:
        - clientName
        - clientEmail
        - clientNumber
        - legalRequirements
        - companyType
        - companyName
        - useOfFunds
        - fundingAmount
        - fundingPeriod
        - sector
        - incorporationDate
        - revenue
        - raiseInvoices
        - cardPayments
        - fundingAsset
        - purchaseOrders
        - governmentBacked
        - governmentBackedLoansExist
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
security:
  - bearerAuth: []
