Skip to content

💼 sevDesk Integration

Übersicht

Integration mit sevDesk für Buchhaltung und Rechnungswesen.

Features

  • ✅ Kontakte verwalten
  • ✅ Rechnungen erstellen & abrufen
  • ✅ PDF Export
  • ✅ E-Mail Versand
  • ✅ Zahlungsstatus
  • ✅ Belege (Vouchers)

Setup

1. API Token generieren

  1. Login auf my.sevdesk.de
  2. Einstellungen → API
  3. "Token generieren"
  4. Token kopieren

2. Environment konfigurieren

SEVDESK_API_TOKEN=your_token_here

3. Verbindung testen

curl http://localhost:3000/api/integrations/sevdesk/test

API Referenz

SevdeskClient

import { SevdeskClient } from '@integrations/sevdesk';

const client = new SevdeskClient(process.env.SEVDESK_API_TOKEN);

// Kontakte
const contacts = await client.getContacts();
const contact = await client.createContact({ name: 'Firma XYZ' });

// Rechnungen
const invoices = await client.getInvoices({ status: 200 });
const invoice = await client.createInvoice({
  contact: { id: 123, objectName: 'Contact' },
  invoiceDate: '2024-12-30',
  status: 100,
});

// PDF
const pdf = await client.getInvoicePdf(invoiceId);

// E-Mail
await client.sendInvoiceByEmail(invoiceId, 'kunde@example.com', 'Rechnung', 'Text...');

Invoice Status Codes

Code Status Description
100 Draft Entwurf
200 Open Versendet/Offen
1000 Paid Bezahlt

Datenmodell

Contact

interface SevdeskContact {
  id?: number;
  name: string;
  customerNumber?: string;
  email?: string;
  phone?: string;
}

Invoice

interface SevdeskInvoice {
  id?: number;
  invoiceNumber?: string;
  contact: { id: number; objectName: 'Contact' };
  invoiceDate: string;
  status: number;
  // ...
}

Best Practices

Rate Limits

sevDesk hat API Rate Limits. Der Cache (10min TTL) hilft, diese einzuhalten.

Token Sicherheit

API Token niemals im Code committen! Immer über Environment Variables.