Factuarea APIDevelopers
Contrato

Tope anual de documentos en la API y MCP

El tope anual, las operaciones v1 afectadas (14 en total), los errores MCP y la emisión automática.

30 de septiembre de 2026

Producción mide actualmente el uso de documentos sin bloquear la creación interactiva. Las respuestas de rechazo y los pasos de recuperación descritos a continuación se aplican cuando se activa la aplicación del tope documental.

Qué cambia

La creación interactiva de documentos de venta cuenta para el tope anual de la empresa en la app, la API v1, MCP, el asistente, las importaciones, los duplicados y las conversiones. Con la aplicación del tope activada, al agotarlo v1 responde HTTP 402 con error.type: payment_required_error y error.code: plan_limit_exceeded. MCP responde JSON-RPC -32004 con message: plan_limit_exceeded y data.http_status: 402; no utiliza el cuerpo de error REST.

Las facturas de venta, rectificativas y sustitutivas, los presupuestos, albaranes y facturas proforma cuentan al crearse. Una conversión cuenta la factura nueva, además del documento de origen que ya contó. Emitir, enviar o anular un documento existente no suma ni devuelve una unidad. Eliminar un borrador elegible devuelve una unidad a la ventana anual vigente. Las facturas del proveedor no cuentan.

Las operaciones v1 afectadas (14 en total) y sus tools MCP

Estas operaciones existentes pueden rechazar la creación interactiva al alcanzar el tope. Conservan sus URLs, campos de request y nombres de tools.

Operación v1Tool MCP
POST /v1/invoicescreate_invoice
POST /v1/invoices/{invoice}/duplicateduplicate_invoice
POST /v1/invoices/{invoice}/correctivecreate_corrective_invoice
POST /v1/invoices/substitute-simplifiedsubstitute_simplified_invoice
POST /v1/quotescreate_quote
POST /v1/quotes/{quote}/duplicateduplicate_quote
POST /v1/quotes/{quote}/convertconvert_quote
POST /v1/delivery_notescreate_delivery_note
POST /v1/delivery_notes/{delivery_note}/duplicateduplicate_delivery_note
POST /v1/delivery_notes/{delivery_note}/convertconvert_delivery_note
POST /v1/proformascreate_proforma
POST /v1/proformas/{proforma}/duplicateduplicate_proforma
POST /v1/proformas/{proforma}/convertconvert_proforma
POST /v1/recurring_invoices/{recurring_invoice}/generate—

La operación de generación manual de una factura recurrente actualmente no tiene una tool MCP equivalente.

POST /v1/invoices/bulk-create y bulk_create_invoices informan los rechazos por tope por fila mediante failures[]. El lote REST conserva su response 200/207; no pertenece a ese grupo de 14 con un 402 global.

Lee los detalles del error

El error v1 expone error.details. Ramifica según el error.code estable; error.message es texto en español para personas y puede cambiar. Este ejemplo procede del contrato de response de facturas:

{
  "error": {
    "type": "payment_required_error",
    "code": "plan_limit_exceeded",
    "message": "Has alcanzado el límite anual de documentos de tu plan (7/7). El periodo termina el 2027-03-14; amplía el plan para seguir creando documentos ahora.",
    "param": null,
    "details": {
      "resource": "documents_year",
      "current": 7,
      "limit": 7,
      "period_end": "2027-03-14T23:59:59+01:00"
    },
    "doc_url": "https://docs.factuarea.com/guides/errors#plan_limit_exceeded",
    "request_id": "req_01HKQS5NDOCUMENTQUOTA01"
  }
}
CampoSignificado
resourceEl recurso agotado: documents_year.
currentDocumentos ya contados en la ventana vigente; la creación rechazada no consume una unidad.
limitEl tope anual fijo de documentos aplicado a la empresa.
period_endEl fin real de la ventana anual, como timestamp ISO 8601 completo con su desplazamiento. Espera hasta que haya pasado ese instante, sin asumir un reinicio por año natural.

En MCP, esos mismos cuatro campos están en error.data, junto con http_status, code y el hint en español:

{
  "jsonrpc": "2.0",
  "id": "req-42",
  "error": {
    "code": -32004,
    "message": "plan_limit_exceeded",
    "data": {
      "http_status": 402,
      "code": "plan_limit_exceeded",
      "resource": "documents_year",
      "current": 7,
      "limit": 7,
      "period_end": "2027-03-14T23:59:59+01:00",
      "hint": "Has alcanzado el límite anual de documentos de tu plan (7/7). El periodo termina el 2027-03-14; amplía el plan para seguir creando documentos ahora."
    }
  }
}

Las emisiones automáticas continúan y cuentan

Las facturas recurrentes programadas, las facturas de integraciones de cobros, pedidos de tiendas y ciclos de suscripción, las rectificativas de reembolsos de integraciones y las autofacturas de suscripción siguen emitiéndose al agotar el tope documental. Cuentan y pueden elevar el uso por encima del tope. Pedir manualmente «generar ahora» en una recurrente es interactivo y puede rechazarse. Un rechazo manual por tope no registra un fallo de generación de la recurrente.

El uso documental de Enterprise se rige por tu contrato; este cambio no introduce un tope automático de documentos para ese plan. El uso sigue contándose.

Anticípate al tope

Revisa tu plan con GET /v1/account/billing y consulta el uso de documentos en la app. El titular recibe avisos al cruzar el 80 %, alcanzar el 100 % y superar por primera vez el tope mediante una emisión automática, una vez por ventana anual y umbral. Actúa ante los avisos antes de que se detengan las altas interactivas.

Tras plan_limit_exceeded, amplía tu plan para crear documentos ahora o espera hasta que haya pasado el period_end real. Reintentar inmediatamente no libera cuota documental. Sigue respetando Retry-After para los errores independientes de límite de peticiones.

Documentación relacionada

Endpoints actualizados14

EndpointDescripción
POST/v1/invoicesCrea una factura
POST/v1/invoices/{invoice}/duplicateDuplicar una factura
POST/v1/invoices/{invoice}/correctiveGenerar factura rectificativa
POST/v1/invoices/substitute-simplifiedSustituir facturas simplificadas por factura completa
POST/v1/quotesCrea un presupuesto
POST/v1/quotes/{quote}/duplicateDuplicar un presupuesto
POST/v1/quotes/{quote}/convertConvertir presupuesto en factura
POST/v1/delivery_notesCrear un albarán
POST/v1/delivery_notes/{delivery_note}/duplicateDuplicar un albarán
POST/v1/delivery_notes/{delivery_note}/convertConvertir albarán en factura
POST/v1/proformasCrea una proforma
POST/v1/proformas/{proforma}/duplicateDuplicar una proforma
POST/v1/proformas/{proforma}/convertConvertir proforma en factura
POST/v1/recurring_invoices/{recurring_invoice}/generateGenera una factura a partir de una plantilla recurrente

En esta página

¿Te echamos una mano?Contactar con soporte