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

# Find vendors for accruals

> Finds vendors by name and legal entity, with the expense account mapping and readiness needed to create accruals.

Use the returned vendor ID when you create an accrual. Vendors with missing mappings are included, so that you can see what needs setup. Change vendor setup and mappings in the dashboard.


## OpenAPI

````yaml openapi-public-preview.json GET /v1/vault/vendors
openapi: 3.1.0
info:
  title: Entendre API
  version: 1.0.0
  description: Programmatic access to crypto-native accounting and treasury operations.
servers:
  - url: https://api.entendre.finance
    description: Production API.
security:
  - ApiKey: []
tags:
  - name: Organization
    description: Read your organization profile and find members for agent assignments.
  - name: Transactions
    description: Find transactions, inspect their details and create manual records.
  - name: Sources
    description: >-
      Manage wallets, exchange accounts, bank accounts and other transaction
      sources.
  - name: Assets
    description: Inspect asset acquisitions, remaining quantities and cost basis.
  - name: Journals
    description: >-
      Create and post journal entries, correct eligible entries and sync posted
      journals to a connected general ledger.
  - name: Documents
    description: >-
      Upload documents, check processing status and link supporting evidence to
      transactions.
  - name: Legal Entities
    description: Manage the legal entities used in your accounting records.
  - name: Ledger Accounts
    description: Manage your chart of accounts and find accounts for journal entries.
  - name: Tags
    description: Create and manage tags to classify your records.
  - name: Accruals
    description: >-
      Create and post accruals, inspect their status and reverse eligible
      entries.
  - name: Cash Application
    description: Match deposits to invoices and manage the resulting cash applications.
  - name: Classification
    description: >-
      Classify transactions in a batch, post eligible entries and inspect the
      results.
  - name: Revaluation
    description: Run asset revaluations for an accounting period and check their results.
  - name: Accounting Periods
    description: Check whether a period is ready to close, then close or reopen it.
  - name: Income Statement
    description: View revenue, expenses and net income for a reporting period.
  - name: Balance Sheet
    description: View assets, liabilities and equity as of a reporting date.
  - name: Trial Balance
    description: Review ledger account balances and debit and credit totals.
  - name: Closing Positions
    description: View asset positions at the end of a reporting period.
  - name: Treasury Balances
    description: Review treasury balances by asset and source.
  - name: Realized Gains & Losses
    description: Review realized gains and losses from asset dispositions.
  - name: Asset Tax Lots
    description: Inspect asset tax lots, remaining quantities and cost basis.
  - name: Schedule of Dispositions
    description: >-
      Review asset dispositions and their proceeds, cost basis and gains or
      losses.
  - name: Financial Insights
    description: Review financial insights for your selected reporting context.
  - name: Agents
    description: Create agents, schedule their work and inspect their runs.
  - name: Memory
    description: Read, search and maintain the memory files your agents use.
  - name: Connections
    description: Connect providers, manage authorization and disconnect.
  - name: GL Mapping
    description: >-
      Map ledger accounts and legal entities to your ERP. Import legal entities,
      tags and chart of accounts.
  - name: Request
    description: Request information, documents or connections from a client.
  - name: Client
    description: Manage your firm’s client relationships.
  - name: Team
    description: Invite team members and manage their access to your firm.
  - name: Settings
    description: Read and update your firm settings.
paths:
  /v1/vault/vendors:
    get:
      tags:
        - Accruals
      summary: Find vendors for accruals
      description: >-
        Find organization vendors by name and legal entity. Return the IDs,
        expense account mapping and readiness needed to create accruals. Vendor
        setup and mapping changes are managed in the dashboard.
      operationId: list_accrual_vendors
      parameters:
        - name: vendor_ids
          in: query
          required: false
          description: >-
            Vendor IDs to return, separated by commas. The other filters also
            apply.
          style: form
          explode: false
          schema:
            type: array
            items:
              type: string
              minLength: 1
            minItems: 1
            maxItems: 100
            uniqueItems: true
          example:
            - vnd_507f1f77bcf86cd799439011
        - name: limit
          in: query
          required: false
          description: Maximum number of records to return.
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: 25
        - name: cursor
          in: query
          required: false
          description: >-
            The `next_cursor` value from the previous page. Keep the other
            filters unchanged.
          schema:
            type: string
        - name: search
          in: query
          required: false
          description: Search by vendor name.
          schema:
            type: string
        - name: mapping_status
          in: query
          required: false
          description: Required default expense mapping.
          schema:
            type: string
            enum:
              - mapped
              - unmapped
      responses:
        '200':
          description: The request succeeded.
          headers:
            X-Request-Id:
              description: Support correlation ID.
              schema:
                type: string
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/VaultVendor'
                    description: The records.
                  has_more:
                    type: boolean
                    description: Whether another page is available.
                  next_cursor:
                    type:
                      - string
                      - 'null'
                    description: Cursor for the next page, or `null` on the last page.
                required:
                  - data
                  - has_more
                  - next_cursor
                additionalProperties: false
              example:
                data:
                  - id: vnd_507f1f77bcf86cd799439011
                    organization_id: org_507f1f77bcf86cd799439011
                    name: Example Software
                    website_url: null
                    is_ramp_managed: false
                    is_ap_vendor: true
                    default_gl_account: null
                    payment_terms: null
                    external_vendor_id: null
                    gl_type: null
                    realm_id: null
                    default_expense_account_id: null
                    last_gl_sync: null
                    gl_sync_status: null
                    created_at: '2026-08-31T12:00:00Z'
                    files_count: 2
                    total_bills_amount: '1200.00'
                has_more: false
                next_cursor: null
        '400':
          description: >-
            The request is invalid. `error.fields` lists the fields to correct.
            Nothing was changed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: VALIDATION_ERROR
                  message: Invalid path, query or request body.
                  request_id: req_example
        '401':
          description: The API key is missing, invalid or expired.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: UNAUTHORIZED
                  message: Authentication is required.
                  request_id: req_example
        '403':
          description: >-
            The API key does not have the required scope or is not associated
            with a user, or the action needs a review in the dashboard.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: FORBIDDEN
                  message: Insufficient access to organization
                  request_id: req_example
        '404':
          description: The resource does not exist, or your organization cannot access it.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: RESOURCE_NOT_FOUND
                  message: Resource not found
                  request_id: req_example
        '429':
          description: >-
            Too many requests. If the response has a `Retry-After` header, wait
            that many seconds before you retry. Otherwise, read `error.message`.
          headers:
            Retry-After:
              description: Seconds to wait before retrying.
              schema:
                type: integer
                minimum: 1
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: RATE_LIMITED
                  message: Rate limit exceeded. Retry after 30s.
                  request_id: req_example
        '500':
          description: >-
            An unexpected error occurred. A write can still have taken effect;
            check the resource before you retry. Give the `request_id` to
            support.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: INTERNAL_ERROR
                  message: Internal server error
                  request_id: req_example
        '503':
          description: >-
            A service that this operation needs is unavailable. If the response
            has a `Retry-After` header, wait that many seconds. Check for
            earlier accepted work before you send the request again.
          headers:
            Retry-After:
              description: Seconds to wait before retrying.
              schema:
                type: integer
                minimum: 1
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                error:
                  code: SERVICE_UNAVAILABLE
                  message: Service unavailable.
                  request_id: req_example
components:
  schemas:
    VaultVendor:
      type: object
      description: >-
        A vendor. `id` is `vnd_<uuid>`. List responses add `files_count` and
        `total_bills_amount`.
      properties:
        id:
          type: string
          example: vnd_abc123
          description: Vendor ID (`vnd_…`).
        organization_id:
          type:
            - string
            - 'null'
          description: Organization ID (`org_…`).
        name:
          type: string
          description: Vendor name.
        website_url:
          type:
            - string
            - 'null'
          description: Vendor website.
        is_ramp_managed:
          type: boolean
          description: '`true` when Ramp manages the vendor.'
        is_ap_vendor:
          type: boolean
          description: '`true` for an accounts-payable vendor.'
        default_gl_account:
          type:
            - string
            - 'null'
          description: Default account in the general ledger.
        payment_terms:
          type:
            - string
            - 'null'
          description: Payment terms.
        external_vendor_id:
          type:
            - string
            - 'null'
          description: Vendor ID in the general ledger.
        gl_type:
          type:
            - string
            - 'null'
          description: General-ledger provider.
        realm_id:
          type:
            - string
            - 'null'
          description: Company ID in the general ledger.
        default_expense_account_id:
          type:
            - string
            - 'null'
          description: Default expense ledger account (`lac_…`).
        last_gl_sync:
          type:
            - string
            - 'null'
          description: Last sync with the general ledger.
        gl_sync_status:
          type:
            - string
            - 'null'
          description: Sync status with the general ledger.
        created_at:
          type:
            - string
            - 'null'
          description: Time the vendor was created (ISO 8601).
        files_count:
          type: integer
          description: In list responses only.
        total_bills_amount:
          type:
            - string
            - 'null'
          description: Total of the vendor bills (decimal string). In list responses only.
    ErrorResponse:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - code
            - message
            - request_id
          properties:
            code:
              type: string
              description: Machine-readable error code.
            message:
              type: string
              description: Technical description for developers.
            fields:
              type: object
              additionalProperties:
                type: string
              description: >-
                Present only on VALIDATION_ERROR. Maps failing field paths to
                reason strings.
            details:
              type: object
              additionalProperties: true
              description: >-
                Optional redacted diagnostic details. Request validation uses
                fields or field_errors.
            suggested_action:
              type: string
              description: A suggested next step.
            documentation_url:
              type: string
              format: uri
              description: Link to documentation about this error.
            request_id:
              type: string
              description: Unique request ID for support escalation.
          description: Error details.
  securitySchemes:
    ApiKey:
      type: apiKey
      in: header
      name: X-API-Key
      description: >-
        Your organization API key. Some operations also need a key that is
        associated with a user; their pages say so.

````