Aller au contenu principal
REST-API

Die Novadesko-API

Verbinden Sie Ihre Tools mit Novadesko: Kennzahlen, Rechnungen, Kunden, Produkte und offene Posten all Ihrer Unternehmen, lesend wie schreibend.

JSON / REST Widerrufbare API-Schlüssel Claude-Connector (MCP)
20+
Endpoints
REST
JSON-Format
nvk_ / nvt_
Widerrufbare Schlüssel
MCP
Claude-Connector

Authentifizierung

Erzeugen Sie Ihre Zugangsdaten in Ihrem Novadesko-Bereich unter web.novadesko.com/integrations/api. Zwei Arten von Zugangsdaten, jederzeit widerrufbar:

  • nvk_… — Benutzerschlüssel: deckt alle Unternehmen Ihres Kontos ab.
  • nvt_… — Unternehmens-Token: auf ein einziges Unternehmen beschränkt.
Basis-URL
https://web.novadesko.com/api/v1

Drei Authentifizierungsformate werden akzeptiert:

// 1. Bearer
Authorization: Bearer CLE.SECRET

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

// 3. Dedizierte Header
X-Api-Key: CLE
X-Api-Secret: SECRET

Das Secret wird nur ein einziges Mal bei der Erstellung angezeigt. Der Widerruf erfolgt sofort auf derselben Seite. Alte Sanctum-Token und nsk_-Schlüssel werden weiterhin akzeptiert.

Beispiel

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

Profil & Unternehmen

Identifizieren Sie den Aufrufer und listen Sie die mit Ihren Zugangsdaten erreichbaren Unternehmen auf.

GET/api/v1/meProfil + erreichbare Unternehmen
GET/api/v1/companiesListe der Unternehmen (ID, Name, MwSt., Kontaktdaten)
curl https://web.novadesko.com/api/v1/me \
  -H "Authorization: Bearer nvk_xxx.SECRET"
Antwort
{
  "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"
    }
  ]
}

Statistiken

Kennzahlen eines Unternehmens für einen Zeitraum: Umsatz brutto, Gutschriften, Einkäufe, Rohergebnis, offene Posten von Kunden und Lieferanten, Zähler.

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

Daten im Format YYYY-MM-DD. Standard: laufendes Jahr.

curl "https://web.novadesko.com/api/v1/companies/1/stats?from=2026-01-01" \
  -H "Authorization: Bearer nvk_xxx.SECRET"
Antwort
{
  "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
}

Dokumente (Lesen)

Suchen und rufen Sie die Dokumente jedes Unternehmens ab, über alle Typen hinweg.

GET/api/v1/companies/{id}/documentsAuflisten / filtern
GET/api/v1/companies/{id}/documents/{docId}Details + Zeilen + Kunde

Verfügbare Filter:

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

Dokumenttypen:

invoice · purchase · estimate · order · credit_note · proforma · receipt
Antwort (Auszug)
{
  "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 }
}
Details (Auszug)
{
  "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
    }
  ]
}

Kunden & Produkte

Rufen Sie die Kundenstammdaten und den Produktkatalog jedes Unternehmens ab, mit Suche und Seitennummerierung.

GET/api/v1/companies/{id}/customers?q=&page=
GET/api/v1/companies/{id}/products?q=&page=
Kunden (Auszug)
{
  "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 }
}
Produkte (Auszug)
{
  "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 }
}

Offene Posten

Unbezahlte Rechnungen eines Unternehmens, nach Kunde gruppiert, mit Verzug und Gesamtsumme.

GET/api/v1/companies/{id}/unpaid-invoices
Antwort
{
  "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
    }
  ]
}

Transaktionen

Zahlungen und Kassenbewegungen eines Unternehmens für einen Zeitraum (max. 500).

GET/api/v1/companies/{id}/transactions?from=&to=&limit=
Antwort
{
  "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"
    }
  ]
}

Dokumente (Schreiben)

Klassische Endpoints pro Unternehmen: Erstellen und bearbeiten Sie Dokumente aller Typen (Slugs: invoices, quotes, orders…). Die Nummerierung erfolgt bei der Erstellung automatisch.

GET/api/v1/documents/{slug}Dokumente auflisten
POST/api/v1/documents/{slug}Erstellen (automatische Nummerierung)
GET/api/v1/documents/{slug}/{id}Details eines Dokuments
PUT/api/v1/documents/{slug}/{id}Bearbeiten

Beispiel: Rechnungen

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

Kunden

Verwalten Sie Ihren Kundenstamm: Erstellen, Abrufen und Aktualisieren.

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
Erstellung (POST)
{
  "name": "Société Demo",
  "email": "contact@demo.com",
  "phone": "+32 2 123 45 67"
}
Antwort
{
  "id": 2,
  "name": "Société Demo",
  "email": "contact@demo.com",
  "created_at": "2026-06-12T16:10:00Z"
}

Lieferanten

Verwalten Sie Ihre Lieferanten und deren Informationen.

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
Erstellung (POST)
{
  "company": "Fournisseur SARL",
  "vat_number": "FR123456789",
  "email": "info@fournisseur.com"
}
Antwort
{
  "id": 5,
  "company": "Fournisseur SARL",
  "created_at": "2026-06-12T16:22:00Z"
}

Produkte

Verwalten Sie Ihren Produktkatalog.

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
Erstellung (POST)
{
  "name": "Abonnement Pro",
  "price": 49.99,
  "category_id": 1
}
Antwort
{
  "id": 42,
  "name": "Abonnement Pro",
  "price": 49.99
}

Dokumenttypen

Liste der aktiven Dokumenttypen und ihrer Slugs, die in den Endpoints /documents/{slug} zu verwenden sind.

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

Claude-Connector (MCP)

Nur Lesezugriff

Verbinden Sie Claude mit Ihren Novadesko-Daten: Stellen Sie Ihre Fragen in natürlicher Sprache, Claude greift lesend auf Ihre Unternehmen zu (Kennzahlen, Dokumente, Kunden, offene Posten).

  1. 1 Erzeugen Sie eine geheime URL in Ihrem Novadesko-Bereich unter web.novadesko.com/integrations/claude.
  2. 2 In claude.ai: Einstellungen › Connectors › Benutzerdefinierten Connector hinzufügen, dann die URL einfügen.
  3. 3 Claude kann Ihre Unternehmen dann direkt in Ihren Unterhaltungen nur lesend abfragen.
Unter der Haube
POSThttps://web.novadesko.com/api/mcp/claude/{token}

MCP-Protokoll (JSON-RPC: initialize, tools/list, tools/call) · 9 verfügbare Tools, darunter 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

Bereit, Novadesko zu integrieren?

Erzeugen Sie Ihren API-Schlüssel in Sekunden in Ihrem Novadesko-Bereich und automatisieren Sie Ihre Abläufe: Rechnungsstellung, Kunden, Statistiken und offene Posten.

JSON / REST Widerrufbare API-Schlüssel Claude-Connector (MCP)

Novadesko Support

…

Hallo!

Wie können wir Ihnen helfen?

Haben Sie ein Schreiben erhalten?

Novadesko Support