Aller au contenu principal
API REST

La API de Novadesko

Conecta tus herramientas a Novadesko: cifras clave, facturas, clientes, productos e impagos de todas tus empresas, tanto en lectura como en escritura.

JSON / REST Claves API revocables Conector Claude (MCP)
20+
Endpoints
REST
Formato JSON
nvk_ / nvt_
Claves revocables
MCP
Conector Claude

Autenticación

Genera tus credenciales desde tu espacio de Novadesko en web.novadesko.com/integrations/api. Dos tipos de credenciales, revocables en cualquier momento:

  • nvk_… — Clave de usuario: cubre todas las empresas de tu cuenta.
  • nvt_… — Token de empresa: limitado a una sola empresa.
URL base
https://web.novadesko.com/api/v1

Se aceptan tres formatos de autenticación:

// 1. Bearer
Authorization: Bearer CLE.SECRET

// 2. Basic
Authorization: Basic base64(CLE:SECRET)

// 3. Cabeceras específicas
X-Api-Key: CLE
X-Api-Secret: SECRET

El secreto solo se muestra una vez, al crearlo. La revocación es inmediata desde la misma página. Los antiguos tokens Sanctum y las claves nsk_ se siguen aceptando.

Ejemplo

curl https://web.novadesko.com/api/v1/me \
  -H "Authorization: Bearer nvk_xxx.SECRET"

Perfil y empresas

Identifica a quien realiza la llamada y lista las empresas accesibles con tu credencial.

GET/api/v1/mePerfil + empresas accesibles
GET/api/v1/companiesLista de empresas (id, nombre, IVA, datos de contacto)
curl https://web.novadesko.com/api/v1/me \
  -H "Authorization: Bearer nvk_xxx.SECRET"
Respuesta
{
  "user": { "id": 1, "name": "John Doe", "email": "john@doe.com" },
  "credential": { "kind": "user_key", "name": "Zapier", "shop_id": null },
  "companies": [
    {
      "id": 1,
      "name": "Demo SPRL",
      "vat_number": "BE0123456789",
      "email": "info@demo.com",
      "phone": "+32 2 123 45 67",
      "city": "Bruxelles",
      "country": "Belgique"
    }
  ]
}

Estadísticas

Cifras clave de una empresa en un periodo: facturación con IVA, notas de crédito, compras, resultado bruto, impagos de clientes y proveedores, contadores.

GET/api/v1/companies/{id}/stats?from=&to=

Fechas en formato YYYY-MM-DD. Por defecto: año en curso.

curl "https://web.novadesko.com/api/v1/companies/1/stats?from=2026-01-01" \
  -H "Authorization: Bearer nvk_xxx.SECRET"
Respuesta
{
  "company": { "id": 1, "name": "Demo SPRL" },
  "period": { "from": "2026-01-01", "to": "2026-08-17" },
  "revenue_ttc": 17077.46,
  "credit_notes_ttc": 250.00,
  "net_revenue_ttc": 16827.46,
  "purchases_ttc": 6420.35,
  "gross_result_ttc": 10407.11,
  "invoices_count": 34,
  "purchases_count": 21,
  "estimates_count": 8,
  "unpaid_invoices": { "count": 6, "total_ttc": 11769.28, "overdue_count": 6 },
  "unpaid_purchases": { "count": 2, "total_ttc": 840.50 },
  "customers_count": 57,
  "products_count": 112
}

Documentos (lectura)

Busca y consulta los documentos de cada empresa, de todos los tipos.

GET/api/v1/companies/{id}/documentsListar / filtrar
GET/api/v1/companies/{id}/documents/{docId}Detalle + líneas + cliente

Filtros disponibles:

?type=&paid=&from=&to=&q=&page=&per_page=

Tipos de documentos:

invoice · purchase · estimate · order · credit_note · proforma · receipt
Respuesta (extracto)
{
  "data": [
    {
      "id": 123,
      "number": "FAC-2026-0042",
      "type": "invoice",
      "date": "2026-06-12",
      "due_date": "2026-07-12",
      "customer": "ACME SRL",
      "amount_ttc": 1200.00,
      "is_paid": false
    }
  ],
  "meta": { "page": 1, "per_page": 25, "total": 34 }
}
Detalle (extracto)
{
  "id": 123,
  "number": "FAC-2026-0042",
  "type": "invoice",
  "amount_ttc": 1200.00,
  "is_paid": false,
  "customer": {
    "id": 7,
    "name": "ACME SRL",
    "vat_number": "BE0987654321"
  },
  "lines": [
    {
      "product_name": "Abonnement Pro",
      "quantity": 2,
      "unit_amount": 495.87,
      "tax_rate": 21
    }
  ]
}

Clientes y productos

Consulta las fichas de clientes y el catálogo de productos de cada empresa, con búsqueda y paginación.

GET/api/v1/companies/{id}/customers?q=&page=
GET/api/v1/companies/{id}/products?q=&page=
Clientes (extracto)
{
  "data": [
    {
      "id": 7,
      "name": "ACME SRL",
      "email": "contact@acme.be",
      "phone": "+32 2 555 12 34",
      "city": "Bruxelles"
    }
  ],
  "meta": { "page": 1, "per_page": 25, "total": 57 }
}
Productos (extracto)
{
  "data": [
    {
      "id": 42,
      "name": "Abonnement Pro",
      "reference": "ABO-PRO",
      "sale_price": 49.99,
      "tax_included": true,
      "stock_quantity": 0
    }
  ],
  "meta": { "page": 1, "per_page": 25, "total": 112 }
}

Impagos

Facturas pendientes de pago de una empresa, agrupadas por cliente, con retrasos y total.

GET/api/v1/companies/{id}/unpaid-invoices
Respuesta
{
  "count": 6,
  "total_ttc": 11769.28,
  "invoices": [
    {
      "id": 118,
      "number": "FAC-2026-0031",
      "customer": "ACME SRL",
      "date": "2026-03-02",
      "due_date": "2026-04-01",
      "amount_ttc": 3025.00,
      "overdue": true
    }
  ]
}

Transacciones

Pagos y movimientos de caja de una empresa en un periodo (500 como máximo).

GET/api/v1/companies/{id}/transactions?from=&to=&limit=
Respuesta
{
  "period": { "from": "2026-01-01", "to": "2026-08-17" },
  "count": 1,
  "data": [
    {
      "id": 88,
      "date": "2026-06-12",
      "amount": 1200.00,
      "type": "payment",
      "direction": "in",
      "source": "bank"
    }
  ]
}

Documentos (escritura)

Endpoints históricos vinculados a una empresa: crea y modifica documentos de todos los tipos (slugs: invoices, quotes, orders…). La numeración es automática al crear.

GET/api/v1/documents/{slug}Listar los documentos
POST/api/v1/documents/{slug}Crear (numeración automática)
GET/api/v1/documents/{slug}/{id}Detalle de un documento
PUT/api/v1/documents/{slug}/{id}Editar

Ejemplo: facturas

curl -H "Authorization: Bearer nvk_xxx.SECRET" \
  https://web.novadesko.com/api/v1/documents/invoices
Respuesta (extracto)
[
  {
    "id": 123,
    "number": "FAC-2026-0042",
    "date": "2026-06-12",
    "client": { "id": 1, "name": "ACME Sarl" },
    "total": 1200.00,
    "status": "paid"
  }
]
Creación (POST)
{
  "client_id": 1,
  "date": "2026-06-12",
  "lines": [
    { "product_id": 15, "qty": 2, "price": 100 }
  ]
}

Clientes

Gestiona tu base de clientes: creación, consulta y actualización.

GET/api/v1/customers
POST/api/v1/customers
GET/api/v1/customers/{id}
PUT/api/v1/customers/{id}
curl -H "Authorization: Bearer nvk_xxx.SECRET" \
  https://web.novadesko.com/api/v1/customers
Creación (POST)
{
  "name": "Société Demo",
  "email": "contact@demo.com",
  "phone": "+32 2 123 45 67"
}
Respuesta
{
  "id": 2,
  "name": "Société Demo",
  "email": "contact@demo.com",
  "created_at": "2026-06-12T16:10:00Z"
}

Proveedores

Gestiona tus proveedores y su información.

GET/api/v1/suppliers
POST/api/v1/suppliers
GET/api/v1/suppliers/{id}
PUT/api/v1/suppliers/{id}
curl -H "Authorization: Bearer nvk_xxx.SECRET" \
  https://web.novadesko.com/api/v1/suppliers
Creación (POST)
{
  "company": "Fournisseur SARL",
  "vat_number": "FR123456789",
  "email": "info@fournisseur.com"
}
Respuesta
{
  "id": 5,
  "company": "Fournisseur SARL",
  "created_at": "2026-06-12T16:22:00Z"
}

Productos

Gestiona tu catálogo de productos.

GET/api/v1/products
POST/api/v1/products
GET/api/v1/products/{id}
PUT/api/v1/products/{id}
curl -H "Authorization: Bearer nvk_xxx.SECRET" \
  https://web.novadesko.com/api/v1/products
Creación (POST)
{
  "name": "Abonnement Pro",
  "price": 49.99,
  "category_id": 1
}
Respuesta
{
  "id": 42,
  "name": "Abonnement Pro",
  "price": 49.99
}

Tipos de documentos

Lista de los tipos de documentos activos y de sus slugs, para usar en los endpoints /documents/{slug}.

GET/api/v1/document-types
curl -H "Authorization: Bearer nvk_xxx.SECRET" \
  https://web.novadesko.com/api/v1/document-types
Respuesta (extracto)
[
  { "id": 2, "name": "Factures", "slug": "invoices", "prefix": "FAC" },
  { "id": 6, "name": "Devis", "slug": "quotes", "prefix": "DEV" }
]

Conector Claude (MCP)

Solo lectura

Conecta Claude a tus datos de Novadesko: haz tus preguntas en lenguaje natural y Claude accede en modo lectura a tus empresas (cifras, documentos, clientes, impagos).

  1. 1 Genera una URL secreta desde tu espacio de Novadesko en web.novadesko.com/integrations/claude.
  2. 2 En claude.ai: Ajustes › Conectores › Añadir conector personalizado, y pega la URL.
  3. 3 Claude podrá entonces consultar tus empresas en modo solo lectura, directamente en tus conversaciones.
Bajo el capó
POSThttps://web.novadesko.com/api/mcp/claude/{token}

Protocolo MCP (JSON-RPC: initialize, tools/list, tools/call) · 9 herramientas disponibles, entre ellas get_company_overview.

// JSON-RPC (MCP)
{ "jsonrpc": "2.0", "method": "tools/call",
  "params": { "name": "get_company_overview", "arguments": { "company_id": 1 } },
  "id": 1 }
API REST

¿Listo para integrar Novadesko?

Genera tu clave API en unos segundos desde tu espacio de Novadesko y automatiza tus flujos: facturación, clientes, estadísticas e impagos.

JSON / REST Claves API revocables Conector Claude (MCP)

Soporte Novadesko

…

¡Hola!

¿Cómo podemos ayudarte?

¿Has recibido una carta?

Soporte Novadesko