Invoices

List the payments of an invoice

Returns the treasury payments assigned to an invoice, newest first, with the same projection as GET /api/v1/treasury/payments/{paymentId}.

GET
/api/v1/invoices/{invoiceId}/payments

Request examples

curl https://app.filmo.io/api/v1/invoices/invo_8f2a1c/payments \
  --header "Authorization: Bearer $FILMO_API_KEY"
{
  "data": [
    {
      "id": "payment_9f3a2b",
      "direction": "Example direction",
      "amount": "120.00",
      "currency": "EUR",
      "date": "2026-09-01T08:00:00.000Z",
      "type": "Example type",
      "treasuryAccountId": "treasury_account_9f3a2b",
      "contactId": "contact_9f3a2b",
      "reference": "2026-0001",
      "linkedDocuments": [
        {
          "type": "invoice",
          "id": "linked_document_9f3a2b",
          "amount": "120.00"
        }
      ],
      "createdAt": "2026-09-01T08:00:00.000Z",
      "updatedAt": "2026-09-01T08:00:00.000Z"
    }
  ],
  "pagination": {
    "nextCursor": "eyJvIjoyMH0",
    "hasMore": true,
    "total": 1
  }
}

Generated from the schema

What it reads are treasury payments, so it takes the treasury scope, not the invoices one. The invoice must belong to the account: an unknown or foreign invoice is a 404, not an empty list.

Authorizations

Bearer API key with the scope below. treasury:read

Path parameters

invoiceIdstringRequired

Invoice identifier.

Limits: min length 1

Query parameters

limitintegerdefault:50

Page size (1-500). Defaults to 50.

Limits: min 1, max 500

cursorstring

Opaque cursor of the page to return. Pass the value of pagination.nextCursor from the previous response; treat it as opaque.

Limits: max length 200

sortstring

Sort order: a single field, with a leading "-" for descending (e.g. "-updatedAt"). Sortable fields: date, amount, createdAt, updatedAt. Defaults to "-date". Ties are broken by id, so the order is stable across pages, and a cursor is bound to the sort it was issued with.

Limits: max length 200

includeTotalbooleandefault:false

Set it to true to include pagination.total, the number of results that match the filters across all pages. Off by default.

Response

application/json

Successful response.

Response schema: PaymentDto

Envelope: PaymentList. meta.warnings is present only when the operation is deprecated.

Headers: X-Request-Id · RateLimit-Limit · RateLimit-Remaining · RateLimit-Reset

dataobject[]

Show child attributes
data.idstring

Payment identifier.

data.directionstring

in when money comes in (a collection) and out when it goes out (a payment).

data.amountstring

Payment amount as a decimal string, in the indicated currency.

Limits: pattern ^-?\d+\.\d{2}$

data.currencystring

Payment currency, as an ISO 4217 code.

data.datestring<date-time>

Payment date in ISO 8601 UTC.

data.typestring

normal, or deposit when it is an advance payment.

data.treasuryAccountIdstring

Treasury account the payment goes through.

data.contactIdstring | null

Customer or supplier of the payment; null if not declared.

data.referencestring | null

External reference of the payment; null if it has none.

data.linkedDocumentsobject[]

Documents the payment is assigned to; empty if it is not linked to any.

Show child attributes
data.linkedDocuments.typestring

Kind of the linked document.

Available options: invoice, creditNote, supplierInvoice, quote, proforma, salesReceipt, simpleCreditNote, purchaseOrder

data.linkedDocuments.idstring

Identifier of the linked document.

data.linkedDocuments.amountstring

Amount of this payment assigned to the document, as a decimal string.

Limits: pattern ^-?\d+\.\d{2}$

data.createdAtstring<date-time>

Creation date in ISO 8601 UTC.

data.updatedAtstring<date-time>

Last modification date in ISO 8601 UTC.

paginationobject

Opaque-cursor pagination metadata.

Show child attributes
pagination.nextCursorstring | null

Opaque cursor of the next page; null when there are no more results. Pass it as cursor in the next request.

pagination.hasMoreboolean

Whether more results exist beyond this page.

pagination.totalinteger

Number of results matching the filters across all pages. Present only when the request sets includeTotal=true.

Limits: min 0

metaobject

Additional information about the response.

Show child attributes
meta.warningsobject[]

Lifecycle warnings; present only when the operation is deprecated.

Show child attributes
meta.warnings.codestring

Stable warning code.

Available options: deprecated

meta.warnings.messagestring

For people: what is deprecated, until when, and what to use.

meta.warnings.sunsetstring

Day (YYYY-MM-DD) the operation stops being served.

meta.warnings.replacementstring | null

operationId of the operation to use instead, or null if there is none.

Errors

StatusCodesMeaning
400validation_errorMalformed query or body. errors[] lists every offending field with its stable code.
404not_foundIt does not exist or is outside the scope of the API key.

401, 403, 429, 500 can be returned by any operation. Errors

Deprecation

This operation is not deprecated. Deprecations are announced with a Deprecation header and a sunset date. Versioning policy

  • Finance

    Payment

    A collection or a payment recorded in treasury.