Light v1 - Invoice Payables API

The v1 - Invoice Payables API from Light — 17 operation(s) for v1 - invoice payables.

Operations 20

GET /v1/bff/invoice-payables List invoice payables #
POST /v1/invoice-payables/{invoicePayableId}/approve Approve invoice payable #
POST /v1/invoice-payables/{invoicePayableId}/cancel Cancel invoice payable #
POST /v1/invoice-payables Create invoice payable #
POST /v1/invoice-payables/{invoicePayableId}/document/upload-url Generate document upload URL #
POST /v1/invoice-payables/{invoicePayableId}/line-items Create invoice payable line item #
POST /v1/invoice-payables/{invoicePayableId}/decline Decline invoice payable #
GET /v1/invoice-payables/{invoicePayableId}/line-items/{lineItemId} Get invoice payable line item #
PUT /v1/invoice-payables/{invoicePayableId}/line-items/{lineItemId} Update invoice payable line item #
DELETE /v1/invoice-payables/{invoicePayableId}/line-items/{lineItemId} Delete invoice payable line item #
GET /v1/invoice-payables/{invoicePayableId} Get invoice payable #
PATCH /v1/invoice-payables/{invoicePayableId} Update invoice payable #
GET /v1/invoice-payables/{invoicePayableId}/document Get invoice document #
GET /v1/invoice-payables/{invoicePayableId}/credit-notes Get linked credit notes #
GET /v1/invoice-payables/{invoicePayableId}/payments List invoice payable payments #
POST /v1/invoice-payables/{invoicePayableId}/mark-as-paid Mark invoice payable as paid #
POST /v1/invoice-payables/{invoicePayableId}/post Post invoice payable without approval #
POST /v1/invoice-payables/{invoicePayableId}/reverse-clearing Reverse invoice payable payment #
POST /v1/invoice-payables/{invoicePayableId}/submit-for-approval Submit for approval #
PATCH /v1/invoice-payables/{invoicePayableId}/custom-properties Update the custom properties of a posted invoice payable #

Work with this as data

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

MCP server

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

https://apis.io/mcp

Tools for apis

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

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/light-v1-invoice-payables-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

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

Get an API key

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

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

OpenAPI Specification

light-v1-invoice-payables-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Light v1 - Invoice Payables API
  version: 1.0.0
security:
- apiKeyAuth: []
- bearerAuth: []
tags:
- name: v1 - Invoice Payables
paths:
  /v1/bff/invoice-payables:
    get:
      tags:
      - v1 - Invoice Payables
      summary: List invoice payables
      description: Returns a paginated list of invoice payables
      operationId: listInvoicePayables
      parameters:
      - name: sort
        in: query
        schema:
          type: string
          description: "Sort string in the format `field:direction`. To provide multiple sort fields, separate them with commas.\n\nAvailable directions: `asc`, `desc`. \n\nAvailable fields: `amount`, `canceledAt`, `companyEntityName`, `description`, `dueDate`, `fromAccountName`, `createdAt`, `invoiceNumber`, `issuedDate`, `ocrCompletedAt`, `paymentAt`, `senderEmail`, `state`, `vendorName`, `businessPartnerName`, `nextApproverName`."
          example: amount:desc,createdAt:asc
      - name: filter
        in: query
        schema:
          type: string
          description: "Filter string in the format `field:operator:value`. To provide multiple filters, separate them with commas.\n\nAvailable operators: `eq`, `ne`, `in`, `not_in`, `gt`, `gte`, `lt`, `lte`.\n - For `in` and `not_in` operators, provide multiple values separated by the pipe character (`|`). \n\nAvailable fields: `approverUserId`, `id`, `vendorId`, `userId`, `companyEntityId`, `senderBankAccountId`, `amount`, `description`, `documentNumber`, `dueDate`, `issuedDate`, `paymentAt`, `createdAt`, `updatedAt`, `state`, `vendorName`, `userFirstName`, `userLastName`, `type`."
          example: state:in:IN_DRAFT|SCHEDULED|PAID,amount:gte:500,vendorId:ne:null
      - name: limit
        in: query
        description: Maximum number of items to return. Default is 50, maximum is 200.
        schema:
          maximum: 200
          type: integer
          format: int32
      - name: offset
        in: query
        description: Number of items to skip before starting to collect the result set. Deprecated, use 'cursor' instead.
        deprecated: true
        schema:
          type: integer
          format: int64
      - name: cursor
        in: query
        description: 'The cursor position to start returning results from.

          To opt-in into cursor-based pagination, provide `0` for the initial request.

          For subsequent requests, use `nextCursor` and `prevCursor` from the previous response to navigate.

          Cursor values are opaque and should not be constructed manually.'
        schema:
          type: string
      - name: include
        in: query
        schema:
          uniqueItems: true
          type: array
          items:
            type: string
            description: ⚠️ This enum is not exhaustive; new values may be added in the future.
            enum:
            - REIMBURSEMENT
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalPaginatedResponseV1ModelExternalBffInvoicePayableV1Model'
  /v1/invoice-payables/{invoicePayableId}/approve:
    post:
      tags:
      - v1 - Invoice Payables
      summary: Approve invoice payable
      description: Approves an invoice payable for payment processing
      operationId: approveInvoicePayable
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              $ref: '#/components/schemas/ExternalApproveInvoicePayableRequestV1Model'
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalInvoicePayableV1Model'
  /v1/invoice-payables/{invoicePayableId}/cancel:
    post:
      tags:
      - v1 - Invoice Payables
      summary: Cancel invoice payable
      description: Cancels an invoice payable
      operationId: cancelInvoicePayable
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              $ref: '#/components/schemas/ExternalCancelInvoicePayableRequestV1Model'
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalInvoicePayableV1Model'
  /v1/invoice-payables:
    post:
      tags:
      - v1 - Invoice Payables
      summary: Create invoice payable
      description: Creates a new invoice payable document. Supports inline line items via the `lineItems` field for single-request creation.
      operationId: createInvoicePayableDetails
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              $ref: '#/components/schemas/ExternalCreateInvoicePayableRequestV1Model'
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalInvoicePayableV1Model'
  /v1/invoice-payables/{invoicePayableId}/document/upload-url:
    post:
      tags:
      - v1 - Invoice Payables
      summary: Generate document upload URL
      description: Generates a secure upload URL for invoice payable documents
      operationId: createInvoicePayableDocumentUploadUrl
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              $ref: '#/components/schemas/ExternalUploadInvoicePayableDocumentRequestV1Model'
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalInvoicePayableUploadUrlResponseV1Model'
  /v1/invoice-payables/{invoicePayableId}/line-items:
    post:
      tags:
      - v1 - Invoice Payables
      summary: Create invoice payable line item
      description: Creates an invoice payable line item
      operationId: createInvoicePayableLineItem
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              $ref: '#/components/schemas/ExternalCreateInvoicePayableLineItemRequestV1Model'
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalInvoicePayableLineItemV1Model'
  /v1/invoice-payables/{invoicePayableId}/decline:
    post:
      tags:
      - v1 - Invoice Payables
      summary: Decline invoice payable
      description: Declines an invoice payable
      operationId: declineInvoicePayable
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              $ref: '#/components/schemas/ExternalDeclineInvoicePayableRequestV1Model'
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalInvoicePayableV1Model'
  /v1/invoice-payables/{invoicePayableId}/line-items/{lineItemId}:
    get:
      tags:
      - v1 - Invoice Payables
      summary: Get invoice payable line item
      description: Gets an invoice payable line item
      operationId: getInvoicePayableLineItem
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: lineItemId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalInvoicePayableLineItemV1Model'
    put:
      tags:
      - v1 - Invoice Payables
      summary: Update invoice payable line item
      description: Updates an invoice payable line item
      operationId: updateInvoicePayableLineItem
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: lineItemId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              $ref: '#/components/schemas/ExternalUpdateInvoicePayableLineItemRequestV1Model'
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalInvoicePayableLineItemV1Model'
    delete:
      tags:
      - v1 - Invoice Payables
      summary: Delete invoice payable line item
      description: Deletes an invoice payable line item
      operationId: deleteInvoicePayableLineItem
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: lineItemId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8: {}
  /v1/invoice-payables/{invoicePayableId}:
    get:
      tags:
      - v1 - Invoice Payables
      summary: Get invoice payable
      description: Returns a specific invoice payable by ID
      operationId: getInvoicePayableDetails
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: includeOutstandingBalance
        in: query
        schema:
          type: boolean
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalInvoicePayableV1Model'
    patch:
      tags:
      - v1 - Invoice Payables
      summary: Update invoice payable
      description: Updates an existing invoice payable document header
      operationId: updateInvoicePayable
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              $ref: '#/components/schemas/ExternalUpdateInvoicePayablePatchRequestV1Model'
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalInvoicePayableV1Model'
  /v1/invoice-payables/{invoicePayableId}/document:
    get:
      tags:
      - v1 - Invoice Payables
      summary: Get invoice document
      description: Returns the attached document for an invoice payable
      operationId: getInvoicePayableDocument
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: documentType
        in: query
        schema:
          type: string
          description: ⚠️ This enum is not exhaustive; new values may be added in the future.
          enum:
          - ORIGINAL
          - GENERATED
      responses:
        default:
          description: default response
          content:
            application/pdf: {}
  /v1/invoice-payables/{invoicePayableId}/credit-notes:
    get:
      tags:
      - v1 - Invoice Payables
      summary: Get linked credit notes
      description: Returns all credit notes linked to the invoice payable
      operationId: getLinkedCreditNotes
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ExternalCreditNoteInvoicePayableV1Model'
  /v1/invoice-payables/{invoicePayableId}/payments:
    get:
      tags:
      - v1 - Invoice Payables
      summary: List invoice payable payments
      description: Returns all clearings (bank payments and credit notes) linked to the invoice payable. Each entry carries a `type` discriminator (`BP` for bank payments, `CN` for credit notes) so consumers can filter client-side if only one kind is needed. Reversed clearings are excluded.
      operationId: listInvoicePayablePayments
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ExternalInvoicePayablePaymentV1Model'
  /v1/invoice-payables/{invoicePayableId}/mark-as-paid:
    post:
      tags:
      - v1 - Invoice Payables
      summary: Mark invoice payable as paid
      description: Marks an invoice payable as paid by recording a bank payment that clears it. Use `paymentOption=FULL` to clear the remaining outstanding balance, or `paymentOption=PARTIAL` to record an installment. The invoice transitions to `PAID` (full) or `PARTIALLY_PAID` (partial).
      operationId: markInvoicePayableAsPaid
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              $ref: '#/components/schemas/ExternalMarkInvoicePayableAsPaidRequestV1Model'
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalInvoicePayableV1Model'
  /v1/invoice-payables/{invoicePayableId}/post:
    post:
      tags:
      - v1 - Invoice Payables
      summary: Post invoice payable without approval
      description: Posts an invoice payable directly to the ledger without going through the approval workflow. The invoice must be in `IN_DRAFT` state. After posting, linked credit notes are applied and unlinked credit notes may be auto-allocated. If the invoice is fully cleared by credit notes, it transitions to `COMPLETED`; otherwise it transitions to `UNPAID`.
      operationId: postInvoicePayable
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalInvoicePayableV1Model'
  /v1/invoice-payables/{invoicePayableId}/reverse-clearing:
    post:
      tags:
      - v1 - Invoice Payables
      summary: Reverse invoice payable payment
      description: Reverses a clearing applied to an invoice payable — either a bank payment (`BP`) or a credit note (`CN`) — identified by its accounting document ID. Use the `List invoice payable payments` endpoint to obtain the `accountingDocumentId` and `type` of the clearing to reverse. Reversing removes the clearing's effect from the ledger and transitions the invoice back to `UNPAID` or `PARTIALLY_PAID` depending on the remaining outstanding balance. Optionally set `shouldArchiveClearingDocument` to also archive the underlying bank payment or credit note.
      operationId: reverseInvoicePayableClearing
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              $ref: '#/components/schemas/ExternalReverseInvoicePayableClearingRequestV1Model'
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalInvoicePayableV1Model'
  /v1/invoice-payables/{invoicePayableId}/submit-for-approval:
    post:
      tags:
      - v1 - Invoice Payables
      summary: Submit for approval
      description: Submits an invoice for approval
      operationId: submitInvoicePayableForApproval
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              $ref: '#/components/schemas/ExternalSubmitForApprovalRequestV1Model'
      responses:
        '200':
          description: 'Invoice approval submitted successfully. The invoice state will change to `APPROVAL_REQUESTED`. You must poll the invoice to check when it changes to `APPROVAL_PENDING`.

            If the invoice fails to submit for approval, the state will change back to `IN_DRAFT` and the `failureContext` field will be populated with the error details.'
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalInvoicePayableV1Model'
  /v1/invoice-payables/{invoicePayableId}/custom-properties:
    patch:
      tags:
      - v1 - Invoice Payables
      summary: Update the custom properties of a posted invoice payable
      description: Replaces all custom fields on an invoice payable after it has been posted/approved (e.g. ready for payment release, scheduled, unpaid, partially paid, completed). Any custom property group not included in the request is removed. Use this to set fields such as a reconciliation link once the invoice has left the inbox. Editing is locked while approval is actively pending.
      operationId: updateInvoicePayableCustomProperties
      parameters:
      - name: invoicePayableId
        in: path
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              $ref: '#/components/schemas/ExternalUpdateInvoicePayableCustomPropertiesRequestV1Model'
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ExternalInvoicePayableV1Model'
components:
  schemas:
    ExternalRelatedAccDocV1Model:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier for the object
          format: uuid
        documentNumber:
          type:
          - string
          - 'null'
          description: Document number
        documentDate:
          type:
          - string
          - 'null'
          description: Date the accounting document was issued
          format: date
        status:
          type: string
          description: 'Status of the accounting document


            ⚠️ This enum is not exhaustive; new values may be added in the future.'
          deprecated: false
          enum:
          - DRAFT
          - APPROVAL_PENDING
          - APPROVED
          - POSTED
          - PARTIALLY_CLEARED
          - CLEARED
          - ARCHIVED
        amount:
          type:
          - integer
          - 'null'
          description: The amount of the accounting document in cents
          format: int64
        currency:
          type: string
          example: USD
      description: Invoice payable details
    ExternalUiClientExceptionErrorV1Model:
      type: object
      properties:
        type:
          type: string
          description: A string code identifying the error type
        message:
          type: string
          description: A human-readable message providing more details about the error
        path:
          type:
          - array
          - 'null'
          description: Optional path of the error when the error is for a specific field. Used mostly on BAD_REQUEST errors, that path will match the field name on the request object
          items:
            type:
            - string
            - 'null'
            description: Optional path of the error when the error is for a specific field. Used mostly on BAD_REQUEST errors, that path will match the field name on the request object
        context:
          type:
          - object
          - 'null'
          additionalProperties:
            type:
            - object
            - 'null'
            description: Optional context providing additional information about the error. This can include any relevant data that might help in understanding or resolving the error
          description: Optional context providing additional information about the error. This can include any relevant data that might help in understanding or resolving the error
      description: List of errors providing details about what went wrong
    ExternalInvoicePayablePaymentCreditNoteEntryV1Model:
      title: Credit note
      type: object
      allOf:
      - $ref: '#/components/schemas/ExternalInvoicePayablePaymentEntryV1Model'
      - type: object
        properties:
          accountingDocumentId:
            type: string
            description: ID of the accounting document
            format: uuid
          amount:
            type:
            - integer
            - 'null'
            description: Credit note amount in smallest denomination
            format: int64
          documentNumber:
            type:
            - string
            - 'null'
            description: Document number
    ExternalCreditNoteInvoicePayableV1Model:
      type: object
      properties:
        companyId:
          type: string
          description: ID of the company
          format: uuid
        creditNote:
          $ref: '#/components/schemas/ExternalRelatedAccDocV1Model'
        invoicePayable:
          $ref: '#/components/schemas/ExternalRelatedAccDocV1Model'
        amount:
          type: integer
          description: Clearing amount in cents
          format: int64
        currency:
          type: string
          example: USD
        createdAt:
          type: string
          description: Timestamp when the link was created
          format: date-time
        updatedAt:
          type: string
          description: Timestamp when the link was last updated
          format: date-time
    ExternalAiValueSuggestionV1Model:
      type:
      - object
      - 'null'
      properties:
        field:
          type: string
        fieldValues:
          type: array
          items:
            type: string
        reasoning:
          type: string
      description: AI-generated suggestions for line item values (e.g. account, cost center, tax code).
    ExternalCreateInvoicePayableLineItemRequestV1Model:
      type: object
      properties:
        amount:
          type:
          - integer
          - 'null'
          description: Gross line amount in cents, including tax. Set this when the parent invoice header field `lineItemsIncludeTax` is true. When `lineItemsIncludeTax` is false, prefer using `netAmount` instead and avoid sending both.
          format: int64
        netAmount:
          type:
          - integer
          - 'null'
          description: Net line amount in cents, excluding tax. Set this when the parent invoice header field `lineItemsIncludeTax` is false. When `lineItemsIncludeTax` is true, prefer using `amount` instead and avoid sending both.
          format: int64
        taxAmount:
          type:
          - integer
          - 'null'
          description: Tax amount for this line in cents. If omitted, tax may be derived from the configured tax code and base amount.
          format: int64
        description:
          type:
          - string
          - 'null'
          description: Description for this invoice payable line item.
        taxCodeId:
          type:
          - string
          - 'null'
          description: ID of the tax code to apply to this invoice payable line item.
          format: uuid
        accountId:
          type:
          - string
          - 'null'
          description: ID of the ledger account to book this invoice payable line item against.
          format: uuid
        amortizationStartDate:
          type:
          - string
          - 'null'
          description: Start date for amortization of this invoice payable line item.
          format: date
        amortizationEndDate:
          type:
          - string
          - 'null'
          description: End date for amortization of this invoice payable line item.
          format: date
        amortizationTemplateId:
          type:
          - string
          - 'null'
          description: ID of the amortization template to apply to this line item using Light Ledger.
          format: uuid
        customProperties:
          type:
          - array
          - 'null'
          description: Custom properties to set on this invoice payable line item.
          items:
            $ref: '#/components/schemas/ExternalSetCustomPropertyRequestV1Model'
    ExternalUpdateInvoicePayablePatchRequestV1Model:
      type: object
      properties:
        vendorId:
          type:
          - string
          - 'null'
          description: ID of the vendor.
          format: uuid
        companyEntityId:
          type:
          - string
          - 'null'
          description: ID of the company entity.
          format: uuid
        invoiceNumber:
          type:
          - string
          - 'null'
          description: Invoice number.
        amount:
          type:
          - integer
          - 'null'
          description: Invoice total amount in cents.
          format: int64
        currency:
          type:
          - string
          - 'null'
          example: USD
        description:
          type:
          - string
          - 'null'
          description: Invoice description.
        senderBankAccountId:
          type:
          - string
          - 'null'
          description: ID of the sender bank account from which this invoice payable will be paid.
          format: uuid
        fiNumber:
          type:
          - string
          - 'null'
          description: FI (Finnish reference) number associated with this invoice payable, if applicable.
        norKidReference:
          type:
          - string
          - 'null'
          description: Norwegian KID reference associated with this invoice payable, if applicable.
        swissPaymentReference:
          type:
          - string
          - 'null'
          description: Swiss payment reference (QR-Reference or Creditor Reference/SCOR) associated with this invoice payable, if applicable.
        paymentAt:
          type:
          - string
          - 'null'
          description: Date/time when payment is scheduled or was executed for this invoice payable.
          format: date-time
        issuedDate:
          type:
          - string
          - 'null'
          description: Issue date of the original vendor invoice.
          format: date
        dueDate:
          type:
          - string
          - 'null'
          description: Payment due date of the invoice payable.
          format: date
        approvalNote:
          type:
          - string
          - 'null'
          description: Note used during approval workflow.
        purchaseOrderId:
          type:
          - string
          - 'null'
          description: ID of the purchase order linked to this invoice payable, if any.
          format: uuid
        lineItemsIncludeTax:
          type:
          - boolean
          - 'null'
          description: Whether invoice line item amounts are entered as tax-inclusive. When true, line item `amount` is expected to be the gross amount including tax; when false, line item `netAmount` is expected to be the base amount excluding tax.
        customProperties:
          type:
          - array
          - 'null'
          description: List of custom properties to set on the invoice.
          items:
            $ref: '#/components/schemas/ExternalSetCustomPropertyRequestV1Model'
        localCurrencyFxRateOverride:
          type:
          - number
          - 'null'
          description: Custom FX rate for the ledger's local currency. If not provided, Light uses official ECB rates.
        groupCurrencyFxRateOverride:
          type:
          - number
          - 'null'
          description: Custom FX rate for the ledger's group currency. If not provided, Light uses official ECB rates.
    ExternalInvoicePayableVendorDetailsOcrV1Model:
      type:
      - object
      - 'null'
      properties:
        avatarUrl:
          type:
          - string
          - 'null'
          description: URL of the vendor avatar/logo detected by OCR, if any.
        name:
          type:
          - string
          - 'null'
          description: Vendor name detected by OCR from the uploaded document.
        email:
          type:
          - string
          - 'null'
          description: Vendor email address detected by OCR from the uploaded document.
        phoneNumber:
          $ref: '#/components/schemas/PhoneNumber'
        website:
          type:
          - string
          - 'null'
          description: Vendor website detected by OCR from the uploaded document.
        country:
          type:
          - string
          - 'null'
          description: 'Vendor country detected by OCR from the uploaded document.


            ⚠️ This enum is not exhaustive; new values may be added in the future.'
          deprecated: false
          enum:
          - UNDEFINED
          - AC
          - AD
          - AE
          - AF
          - AG
          - AI
          - AL
          - AM
          - AN
          - AO
          - AQ
          - AR
          - AS
          - AT
          - AU
          - AW
          - AX
          - AZ
          - BA
          - BB
          - BD
          - BE
          - BF
          - BG
          - BH
          - BI
          - BJ
          - BL
          - BM
          - BN
          - BO
          - BQ
          - BR
          - BS
          - BT
          - BU
          - BV
          - BW
          - BY
          - BZ
          - CA
          - CC
          - CD
          - CF
          - CG
          - CH
          - CI
          - CK
          - CL
          - CM
          - CN
          - CO
          - CP
          - CR
          - CS
          - CU
          - CV
          - CW
          - CX
          - CY
          - CZ
          - DE
          - DG
          - DJ
          - DK
          - DM
          - DO
          - DZ
          - EA
          - EC
          - EE
          - EG
          - EH
          - ER
          - ES
          - ET
          - EU
          - EZ
          - FI
          - FJ
          - FK
          - FM
          - FO
          - FR
          - FX
          - GA
          - GB
          - GD
          - GE
          - GF
          - GG
          - GH
          - GI
          - 

# --- truncated at 32 KB (98 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/light/refs/heads/main/openapi/light-v1-invoice-payables-api-openapi.yml