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

# Create a loan proceed

> Adds a proceed to a loan. A proceed is either a cash `DISBURSEMENT` or an `ASSET` the loan financed.



## OpenAPI

````yaml post /v1/businesses/{businessId}/loans/{loanId}/proceeds
openapi: 3.0.1
info:
  title: API
  version: latest
servers: []
security:
  - BearerAuth: []
tags: []
externalDocs:
  url: /
paths:
  /v1/businesses/{businessId}/loans/{loanId}/proceeds:
    post:
      tags: []
      summary: Create a loan proceed
      description: >-
        Adds a proceed to a loan. A proceed is either a cash `DISBURSEMENT` or
        an `ASSET` the loan financed.
      operationId: business.loans.loanId.proceeds.post
      parameters:
        - name: businessId
          in: path
          description: The UUID of the business.
          required: true
          schema:
            type: string
            format: uuid
        - name: loanId
          in: path
          required: true
          description: The UUID of the loan.
          schema:
            type: string
            format: uuid
      requestBody:
        description: The proceed to create.
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateLoanProceedParams'
            examples:
              disbursement:
                summary: Cash disbursement proceed
                value:
                  loan_proceed_type: DISBURSEMENT
                  external_id: mca-001-proceed-1
                  amount: 2000000
                  date: '2024-03-01'
                  method: ACH
              asset_existing:
                summary: Asset-funded proceed (existing asset)
                value:
                  loan_proceed_type: ASSET
                  amount: 5000000
                  date: '2024-01-15'
                  asset:
                    id: 550e8400-e29b-41d4-a716-446655440000
      responses:
        '201':
          description: Loan proceed created successfully.
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                properties:
                  data:
                    $ref: '#/components/schemas/ApiLoanProceed'
components:
  schemas:
    CreateLoanProceedParams:
      description: 'A loan proceed: funds (or an asset) received from the loan.'
      oneOf:
        - $ref: '#/components/schemas/CreateLoanAssetProceedParams'
        - $ref: '#/components/schemas/CreateLoanDisbursementProceedParams'
      discriminator:
        propertyName: loan_proceed_type
        mapping:
          ASSET:
            $ref: '#/components/schemas/CreateLoanAssetProceedParams'
          DISBURSEMENT:
            $ref: '#/components/schemas/CreateLoanDisbursementProceedParams'
    ApiLoanProceed:
      type: object
      description: >-
        A loan proceed: funds (or an asset) received when a loan is drawn. See
        the [Loan Proceed object](/api-reference/loan/loan#loan-proceed-object).
      required:
        - id
        - business_id
        - loan_id
        - loan_proceed_type
        - method
        - amount
        - date
        - transaction_tags
      properties:
        id:
          type: string
          format: uuid
          description: Unique identifier for the loan proceed.
        business_id:
          type: string
          format: uuid
          description: ID of the business that holds the loan.
        external_id:
          type: string
          nullable: true
          description: Unique ID of the proceed in your system for linking purposes.
        loan_id:
          type: string
          format: uuid
          description: ID of the loan this proceed belongs to.
        loan_proceed_type:
          $ref: '#/components/schemas/LoanProceedType'
        method:
          $ref: '#/components/schemas/PaymentMethod'
        amount:
          type: integer
          format: int64
          description: Proceed amount, in cents.
        asset_id:
          type: string
          format: uuid
          nullable: true
          description: >-
            ID of the asset funded by this proceed. Present for `ASSET`
            proceeds.
        date:
          type: string
          format: date
          description: Date the proceed was received.
        archived_at:
          type: string
          format: date-time
          nullable: true
          description: When the proceed was archived, if applicable.
        memo:
          type: string
          nullable: true
          description: Internal note about the proceed.
        metadata:
          type: object
          additionalProperties: true
          nullable: true
          description: >-
            Arbitrary JSON object you can attach for your own use. Layer stores
            and returns it unchanged.
        reference_number:
          type: string
          nullable: true
          description: Reference number for the proceed.
        transaction_tags:
          type: array
          items:
            $ref: '#/components/schemas/ApiTag'
          description: Tags applied to this record.
    CreateLoanAssetProceedParams:
      type: object
      title: Asset proceed
      required:
        - loan_proceed_type
        - amount
        - date
        - asset
      properties:
        loan_proceed_type:
          type: string
          enum:
            - ASSET
          description: Discriminator. Must be `ASSET`.
        external_id:
          type: string
          nullable: true
          description: Unique ID of the proceed in your system for linking purposes.
        amount:
          type: integer
          format: int64
          description: Proceed amount, in cents.
        date:
          type: string
          format: date
          description: Date the proceed was received.
        asset:
          $ref: '#/components/schemas/CreateLoanProceedAssetRef'
    CreateLoanDisbursementProceedParams:
      type: object
      title: Disbursement proceed
      required:
        - loan_proceed_type
        - amount
        - date
      properties:
        loan_proceed_type:
          type: string
          enum:
            - DISBURSEMENT
          description: Discriminator. Must be `DISBURSEMENT`.
        external_id:
          type: string
          nullable: true
          description: Unique ID of the proceed in your system for linking purposes.
        amount:
          type: integer
          format: int64
          description: Proceed amount, in cents.
        date:
          type: string
          format: date
          description: Date the proceed was received.
        method:
          allOf:
            - $ref: '#/components/schemas/PaymentMethod'
          default: OTHER
          description: Payment method used for the cash disbursement. Defaults to `OTHER`.
    LoanProceedType:
      type: string
      description: >-
        How the loan proceeds were received. `DISBURSEMENT` is a cash
        disbursement; `ASSET` means the proceeds funded an asset (e.g. financed
        equipment).
      enum:
        - ASSET
        - DISBURSEMENT
    PaymentMethod:
      type: string
      enum:
        - CASH
        - CHECK
        - CREDIT_CARD
        - ACH
        - CREDIT_BALANCE
        - OTHER
    ApiTag:
      type: object
      properties:
        id:
          type: string
          format: uuid
          description: ID for the tag.
        key:
          type: string
          description: Key for the tag.
          example: ExampleTagKey
        dimension_display_name:
          type: string
          nullable: true
          description: Display name for the tag dimension.
        value:
          type: string
          description: Value for the tag.
          example: ExampleTagValue
        value_display_name:
          type: string
          nullable: true
          description: Display name for the tag value definition.
        dimension_id:
          type: string
          format: uuid
          description: ID of the tag dimension this tag belongs to.
        definition_id:
          type: string
          format: uuid
          description: ID of the tag value definition.
        archived_at:
          type: string
          format: date-time
          nullable: true
          description: When the tag was archived.
      required:
        - id
        - key
        - value
        - dimension_id
        - definition_id
    CreateLoanProceedAssetRef:
      description: >-
        Reference to the asset funded by an `ASSET` proceed. Either link an
        existing asset by `id` or `external_id`, or create a new asset inline
        with `new_asset`.
      oneOf:
        - type: object
          title: Existing asset
          description: Link an existing asset. Provide either `id` or `external_id`.
          properties:
            id:
              type: string
              format: uuid
              nullable: true
              description: ID of an existing asset to link to this proceed.
            external_id:
              type: string
              nullable: true
              description: External ID of an existing asset to link to this proceed.
        - type: object
          title: New asset
          required:
            - new_asset
          properties:
            new_asset:
              $ref: '#/components/schemas/CreateAssetParams'
    CreateAssetParams:
      type: object
      description: >-
        Parameters for creating a fixed asset. Creates a dedicated ledger
        account for the asset under the parent account (defaults to Fixed
        Assets).
      required:
        - name
        - asset_type
      properties:
        name:
          type: string
          description: Name of the asset.
        external_id:
          type: string
          nullable: true
          description: >-
            Unique ID of the asset in your system for linking purposes. Creating
            an asset with an `external_id` that already exists upserts the
            existing asset.
        asset_type:
          $ref: '#/components/schemas/AssetType'
        parent_ledger_account_identifier:
          allOf:
            - $ref: '#/components/schemas/AccountIdentifier'
          nullable: true
          description: >-
            Parent ledger account under which the asset's dedicated account is
            created. Defaults to Fixed Assets.
        accumulated_depreciation_account:
          allOf:
            - $ref: '#/components/schemas/AccountIdentifier'
          nullable: true
          description: >-
            Accumulated depreciation account for the asset. Required before
            recording `DEPRECIATION_AMORTIZATION` value updates.
        original_value:
          type: integer
          format: int64
          nullable: true
          description: Original purchase value, in cents.
        salvage_value:
          type: integer
          format: int64
          nullable: true
          description: Estimated salvage (residual) value, in cents.
        useful_life_months:
          type: integer
          format: int32
          nullable: true
          description: Useful life of the asset, in months.
        memo:
          type: string
          nullable: true
          description: Internal note about the asset.
        metadata:
          type: object
          additionalProperties: true
          nullable: true
          description: >-
            Arbitrary JSON object you can attach for your own use. Layer stores
            and returns it unchanged.
        reference_number:
          type: string
          nullable: true
          description: Reference number for the asset.
    AssetType:
      type: string
      description: The type of fixed asset.
      enum:
        - RIGHT_OF_USE_ASSET
        - VEHICLE
        - EQUIPMENT
        - GOODWILL
    AccountIdentifier:
      oneOf:
        - $ref: '#/components/schemas/AccountId'
          description: ID of the account.
          title: Account ID
        - $ref: '#/components/schemas/AccountStableName'
          description: Stable name associated with the account.
          title: Account Stable Name
    AccountId:
      type: object
      required:
        - type
        - id
      properties:
        type:
          type: string
          enum:
            - AccountId
          description: Resource type. Value will be `AccountId`.
          example: AccountId
        id:
          type: string
          format: uuid
          description: ID of the account.
    AccountStableName:
      type: object
      required:
        - type
        - stable_name
      properties:
        type:
          type: string
          enum:
            - StableName
          description: Resource type. Value will be `StableName`.
          example: StableName
        stable_name:
          type: string
          example: CURRENT_ASSETS
          description: Stable name of the account.
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````