Facturas

Listar las líneas de una factura

Devuelve lo que se facturó, línea por línea, con su cantidad y su precio.

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

Ejemplos de petición

curl https://app.filmo.io/api/v1/invoices/invo_8f2a1c/lines \
  --header "Authorization: Bearer $FILMO_API_KEY"
{
  "data": [
    {
      "id": "document_line_9f3a2b",
      "resourceType": "item",
      "transactionType": "rental",
      "position": 1,
      "itemId": "item_9f3a2b",
      "itemName": "Example item name",
      "variantId": "variant_9f3a2b",
      "variantName": "Example variant name",
      "quantity": 1,
      "orderId": "order_9f3a2b",
      "orderNumber": "2026-0001",
      "startDate": "2026-09-01T08:00:00.000Z",
      "endDate": "2026-09-01T08:00:00.000Z",
      "rentalDays": 1,
      "unitPrice": "120.00",
      "linePrice": "120.00",
      "free": true,
      "notes": "Example text."
    }
  ],
  "pagination": {
    "nextCursor": "eyJvIjoyMH0",
    "hasMore": true,
    "total": 1
  }
}

Generado a partir del esquema

Los nombres son los CONGELADOS cuando se emitió la factura y pueden diferir del catálogo actual: el documento es una instantánea. No emite la configuración de impuestos por línea; los totales de la factura ya incluyen los impuestos calculados. Las líneas vienen en el orden del documento.

Autorizaciones

Clave de API como Bearer, con el permiso de abajo. invoices:read

Parámetros de ruta

invoiceIdstringObligatorio

Identificador de la factura.

Límites: longitud mín. 1

Parámetros de consulta

limitintegerpredeterminado:50

Tamaño de página (1-500). Por defecto es 50.

Límites: mín. 1, máx. 500

cursorstring

Cursor opaco de la página que se devuelve. Pasa el valor de pagination.nextCursor de la respuesta anterior; trátalo como opaco.

Límites: longitud máx. 200

sortstring

Orden: hasta 3 campos separados por comas, cada uno con un "-" inicial para descendente (p. ej. "-updatedAt,name"). Campos ordenables: position, itemName, quantity, startDate, endDate, rentalDays, unitPrice, linePrice, resourceType, transactionType. Por defecto, "position". Los empates se resuelven por id, así que el orden es estable entre páginas, y un cursor queda ligado al orden con el que se emitió.

Límites: longitud máx. 200

includeTotalbooleanpredeterminado:false

Ponlo en true para incluir pagination.total, el número de resultados que coinciden con los filtros en todas las páginas. Desactivado por defecto.

Respuesta

application/json

Respuesta correcta.

Esquema de la respuesta: DocumentLineDto

Sobre: DocumentLineList. meta.warnings solo aparece cuando la operación está obsoleta.

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

dataobject[]

Mostrar atributos hijos
data.idstring

Identificador único de la línea dentro del documento.

data.resourceTypestring

Tipo de recurso de la línea. Las líneas de tipo section y type_group son agrupaciones de presentación sin recurso asociado.

Opciones disponibles: item, kit, space, vehicle, personnel, service, custom, section, type_group

data.transactionTypestring

Naturaleza de la línea: rental o sale.

Opciones disponibles: rental, sale

data.positioninteger

Posición de visualización de la línea dentro del documento, empezando en 0.

data.itemIdstring | null

Identificador del artículo del catálogo; null si la línea no es de tipo artículo.

data.itemNamestring | null

Nombre del artículo tal como era CUANDO SE EMITIÓ EL DOCUMENTO. Puede diferir del nombre actual del artículo en el catálogo: el documento es una instantánea.

data.variantIdstring | null

Identificador de la variante; null si no aplica.

data.variantNamestring | null

Nombre de la variante congelado en la instantánea; null si no aplica.

data.quantitynumber

Unidades facturadas o presupuestadas en la línea.

data.orderIdstring | null

Pedido del que procede la línea; null si se añadió directamente al documento.

data.orderNumberstring | null

Número de ese pedido; null si la línea no procede de uno.

data.startDatestring<date-time> | null

Inicio del periodo facturado en ISO 8601 UTC; null si la línea no tiene periodo.

data.endDatestring<date-time> | null

Fin del periodo facturado en ISO 8601 UTC; null si la línea no tiene periodo.

data.rentalDaysnumber | null

Días de alquiler facturados; null si no aplica.

data.unitPricestring | null

Precio unitario neto como cadena decimal "1234.50"; null si la línea no tiene precio propio.

Límites: patrón ^-?\d+\.\d{2}$

data.linePricestring | null

Importe neto de la línea como cadena decimal "1234.50"; null si no se ha calculado.

Límites: patrón ^-?\d+\.\d{2}$

data.freeboolean

true si la línea se factura explícitamente a cero.

data.notesstring | null

Notas de la línea; null si no hay.

paginationobject

Metadatos de paginación por cursor opaco.

Mostrar atributos hijos
pagination.nextCursorstring | null

Cursor opaco de la página siguiente; null cuando no hay más resultados. Pásalo como cursor en la siguiente petición.

pagination.hasMoreboolean

Si existen más resultados después de esta página.

pagination.totalinteger

Número de resultados que coinciden con los filtros en todas las páginas. Solo aparece cuando la petición establece includeTotal=true.

Límites: mín. 0

metaobject

Información adicional sobre la respuesta.

Mostrar atributos hijos
meta.warningsobject[]

Avisos del ciclo de vida; solo aparecen cuando la operación está obsoleta.

Mostrar atributos hijos
meta.warnings.codestring

Código de aviso estable.

Opciones disponibles: deprecated

meta.warnings.messagestring

Para personas: qué está obsoleto, hasta cuándo y qué usar.

meta.warnings.sunsetstring

Día (YYYY-MM-DD) en que la operación deja de estar disponible.

meta.warnings.replacementstring | null

operationId de la operación que hay que usar en su lugar, o null si no hay ninguna.

Errores

EstadoCódigosSignificado
400validation_errorConsulta o cuerpo mal formados. errors[] enumera cada campo erróneo con su código estable.
404not_foundNo existe o queda fuera del alcance de la clave de API.

401, 403, 429, 500 los puede devolver cualquier operación. Errores

Obsolescencia

Esta operación no está obsoleta. Las obsolescencias se anuncian con la cabecera Deprecation y una fecha de retirada. Política de versiones

  • Finanzas

    Línea de documento

    Línea de documento de venta: qué se facturó, cuánto y a qué precio.