---
title: "Listar órdenes de compra"
method: POST
path: "/tools/expenses_list-purchase-orders"
tags: ["Gastos"]
---

# Listar órdenes de compra

`POST /tools/expenses_list-purchase-orders`

## Request

- Base URL: `https://mcp.alegra.com`
- URL: `https://mcp.alegra.com/tools/expenses_list-purchase-orders`
- Auth: HTTP bearer

Herramienta MCP: `expenses_list-purchase-orders`.

Lista órdenes de compra con paginación (`start` por defecto 0, `limit` por defecto 30) y filtros de fechas, estado, nombre del proveedor, ítem, bodega, centro de costos y número.

Úsala para descubrir los `id` de las órdenes de compra antes de consultar una con `expenses_get-purchase-order`, filtrar documentos abiertos o localizar las órdenes de un proveedor. Con `metadata: true` la respuesta envuelve los resultados como `{ metadata: { total }, data: [...] }` en lugar de un arreglo.

Errores relevantes: `start` negativo o `limit` fuera del rango 0–30 → código 903.

Solo lectura.

## Request body

- object
  - `start` integer: Desplazamiento inicial de la paginación (debe ser >= 0).
  - `limit` integer: Tamaño de página 0–30; por defecto 30 (0 = sin límite en el controlador de la API).
  - `metadata` boolean: Si es true, la respuesta es { metadata: { total }, data: [...] }.
  - `order_field` 'name' | 'date' | 'id' | 'deliveryDate' | 'status': Campo por el que se ordenan los resultados.
  - `order_direction` 'ASC' | 'DESC': Dirección del orden: ASC (ascendente) o DESC (descendente).
  - `currency` string: Filtra por código de moneda.
  - `costCenter_id` string: Filtra por ID local del centro de costos; usa "null", "none" o "0" para documentos sin centro de costos.
  - `fullNumber` string: Filtra por el número completo del documento.
  - `number` string: Alias del filtro `fullNumber`.
  - `warehouse_id` string: Filtra por ID local de la bodega.
  - `item_id` integer: Filtra órdenes que contengan un ítem con este ID local.
  - `id` string: Lista separada por comas de IDs locales.
  - `date` string: Fecha exacta de emisión (YYYY-MM-DD).
  - `deliveryDate` string: Fecha exacta de entrega (YYYY-MM-DD).
  - `delivery_date` string: Fecha de entrega (formato alternativo admitido por la API).
  - `status` string: Filtra por estado del documento.
  - `provider_name` string: Filtra por nombre del proveedor.
  - `client_id` integer: Filtra por ID numérico local del proveedor.
  - `date_afterOrNow` string: Filtro: fecha de emisión >= valor (YYYY-MM-DD).
  - `date_beforeOrNow` string: Filtro: fecha de emisión <= valor (YYYY-MM-DD).
  - `date_between` string: Rango de fechas de emisión.
  - `fields` string: Campos adicionales separados por comas: editable, deletable, voidable, comments, companyCurrencyValues, pdf, billType, purchaseIndex, billedQuantity, excludeMaxBilled, calculationTotalMethod, partiallyBilled, uuid.

## Response `200`

Lista de órdenes de compra

## Other responses

- `401`: No autorizado

---

[API](https://skmtc.dev/alegra/apis/mcp-alegra.md) - [All operations](https://skmtc.dev/alegra/apis/mcp-alegra/llms.txt) - [OpenAPI document](https://skmtc.dev/alegra/apis/mcp-alegra/revisions/528447af020b?raw)
