Factuarea API
Purchase invoices

List overdue purchase invoices

Return purchase invoices whose due date has passed and are still unpaid.

GET
/purchase_invoices/overdue
AuthorizationBearer <token>

In: header

Query Parameters

per_page?string
Default"25"
limit?string

Default '25' (string) por consistencia OpenAPI: Scramble infiere schema.type=string para request->input() y el default debe ser string (Spectral rechaza default: 25 int con type: string).

cursor?string

Response Body

application/json

application/json

application/json

application/json

application/json

import { Factuarea } from "@factuarea/sdk";const factuarea = new Factuarea({ apiKey: process.env.FACTUAREA_API_KEY! });const result = await factuarea.purchaseInvoices.overdue();
{
  "has_more": true,
  "next_cursor": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8a0c",
  "data": [
    {
      "id": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8a07",
      "object": "purchase_invoice",
      "external_invoice_number": "INV-2026-001-DI",
      "external_id": "ERP-COMPRA-2026-0007",
      "internal_code": "GASTO-2026-0007",
      "supplier": {
        "id": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8a02",
        "name": "Distribuciones Ibéricas, S.L."
      },
      "status": "paid",
      "issued_on": "2026-01-05",
      "received_on": "2026-04-18",
      "due_on": "2026-02-04",
      "subtotal": 350,
      "taxes_total": 73.5,
      "total_retention": 0,
      "total": 423.5,
      "currency": "EUR",
      "paid_amount": 423.5,
      "pending_amount": 0,
      "payment_status": "paid",
      "paid_at": "2026-01-10",
      "payment_method": "transferencia",
      "payment_terms_days": 30,
      "bank_account": null,
      "expense_account": "6280001",
      "expense_category_id": "01931b3e-7c4a-7f2e-9a8b-3c5d6e7f8c01",
      "deductible_percentage": 100,
      "operation_class": "corriente",
      "exclude_347": false,
      "tax_period": "2026-Q2",
      "is_reverse_charge": false,
      "tags": [
        "suministros",
        "oficina"
      ],
      "custom_fields": [
        {
          "field": "centro_coste",
          "value": "CC-OFICINA"
        }
      ],
      "internal_notes": "Revisar con contabilidad antes del cierre trimestral.",
      "attachment": {
        "filename": "factura-suministros-abril-2026.pdf",
        "mime_type": "application/pdf",
        "size_bytes": 241,
        "download_url": "/v1/purchase_invoices/019e822c-555a-709d-99d7-2cfeac9fc920/file"
      },
      "lines": [
        {
          "object": "purchase_invoice_line",
          "description": "Material oficina pedido Q1",
          "quantity": 1,
          "unit_price": 350,
          "tax_rate": 21,
          "retention_rate": 0,
          "subtotal": 350,
          "taxes": 73.5,
          "retention_amount": 0,
          "vat_deductible": true,
          "total": 423.5
        }
      ],
      "metadata": {
        "erp_code": "IVA-GEN",
        "ledger_account": "477000"
      },
      "notes": "Pedido material oficina Q1.",
      "created_at": "2026-01-08T10:00:00Z",
      "updated_at": "2026-01-10T12:00:00Z"
    }
  ]
}

{
  "error": {
    "type": "authentication_error",
    "code": "missing_api_key",
    "message": "No se ha proporcionado una API key válida en el header Authorization.",
    "param": null,
    "doc_url": "https://docs.factuarea.com/guides/errors#missing_api_key",
    "request_id": "req_01HKQS5N8VR7QXJ9K3T6BWPMZA"
  }
}

{
  "error": {
    "type": "authorization_error",
    "code": "insufficient_scope",
    "message": "Esta API key no tiene el scope requerido para esta operación.",
    "param": null,
    "doc_url": "https://docs.factuarea.com/guides/errors#insufficient_scope",
    "request_id": "req_01HKQS5NBC3P8M1KX4V7SLNHQD"
  }
}

{
  "error": {
    "type": "rate_limit_error",
    "code": "rate_limit_exceeded",
    "message": "Has excedido el rate limit de 60 peticiones por minuto. Reintenta tras 30 segundos.",
    "param": null,
    "doc_url": "https://docs.factuarea.com/guides/errors#rate_limit_exceeded",
    "request_id": "req_01HKQS5NKW1C6W9T4G5H0JBZVL"
  }
}

{
  "error": {
    "type": "api_error",
    "code": "internal_error",
    "message": "Ha ocurrido un error inesperado. Si persiste, contacta con soporte adjuntando el request_id.",
    "param": null,
    "doc_url": "https://docs.factuarea.com/guides/errors#internal_error",
    "request_id": "req_01HKQS5NLX2D7X0U5H6J1KCAWM"
  }
}