---
title: "List invoices"
method: GET
path: "/v1/invoices"
tags: ["Invoice"]
---

# List invoices

`GET /v1/invoices`

Returns a paginated list of invoices ("facturas de venta").

## Access
Access is scoped to the caller: a non-staff user must request their own invoices by
passing their user id as the `user_id` filter (`user_id` must equal the authenticated
user's id). Requests without a matching `user_id` are rejected with `401`. Cardda
staff may query any invoices.

## Filtering, sorting, pagination
Supports `_start`/`_end` pagination, `_field`/`_order` sorting, and per-field filters.
A filter value can be a plain value or a JSON string with an operator, e.g.
`company_id={"$in":[...]}`.

## Response
Each invoice includes `paid_amount` (total paid to date) and its `account`.

## Query parameters

- `user_id` string
- `company_id` string
- `account_id` string

## Parameters

- `#/paths/~1v1~1bills/get/parameters/0` — unresolved $ref
- `#/paths/~1v1~1bills/get/parameters/1` — unresolved $ref
- `#/paths/~1v1~1bills/get/parameters/2` — unresolved $ref
- `#/paths/~1v1~1bills/get/parameters/3` — unresolved $ref
- `#/paths/~1v1~1bills/get/parameters/4` — unresolved $ref

## Response `200`

Paginated list of invoices.

- Invoice[]
  - `id` string, uuid, required
  - `name` string, nullable
  - `account_id` string, uuid, required
  - `company_id` string, uuid, nullable
  - `user_id` string, nullable
  - `amount` object, nullable — Invoice amount as a value/currency pair.
    - `value` string
    - `currency` string
  - `amount_in_clp` integer
  - `conversion_rate` object, nullable
    - `value` string
    - `pair` string
  - `parsed_conversion_rate` string, nullable
  - `paid_amount` string — Total already paid against this invoice, summed from its payment-order allocations. Added via serializer method.
  - `account` object, nullable — The billing account, added via serializer method.
  - `file_url` string, nullable
  - `buy_invoice_url` string, nullable
  - `comments` string
  - `date` string, date, nullable
  - `commission` integer, nullable
  - `tax` integer, nullable
  - `created_at` string, date-time
  - `updated_at` string, date-time

## Other responses

- `401` — Unauthorized - missing/invalid token, or user_id does not match the caller.

---

[API](https://skmtc.dev/cardda/apis/banking-api.md) · [All operations](https://skmtc.dev/cardda/apis/banking-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/cardda/banking-api/revisions/ff1aeb3fda8b/schema)
