API Reference
Hallo, ich bin Sophie! 👋 Hier finden Sie die vollständige Referenz aller API-Endpunkte. Jede Seite enthält Beispiele in cURL und JavaScript, damit Sie schnell loslegen kannst.
Die BuchhaltGenie REST API bietet Ihnen programmatischen Zugriff auf alle Funktionen der Plattform. Alle Endpunkte sind RESTful aufgebaut und liefern JSON-Antworten.
Basis-Informationen
| Eigenschaft | Wert |
|---|---|
| Basis-URL (Produktion) | https://buchhaltgenie.at/api/v1 |
| Basis-URL (Sandbox) | https://api-sandbox.buchhaltgenie.at/v1 |
| Authentifizierung | Bearer Token (API-Key) |
| Content-Type | application/json |
| Encoding | UTF-8 |
Verfügbare Endpunkte
Rechnungen erstellen, abrufen, versenden und verwalten. UStG §11 konform.
Rechnungen APIKundenstammdaten verwalten mit UID-Validierung und DSGVO-Compliance.
Kunden APIBuchungen und Finanztransaktionen nach dem Prinzip der doppelten Buchführung.
Transaktionen APIKI-gestützte Buchhaltungshilfe in Ihre Anwendung integrieren.
Sophie AI APIEndpunkt-Übersicht
Rechnungen /v1/invoices
| Methode | Endpunkt | Beschreibung |
|---|---|---|
GET | /v1/invoices | Alle Rechnungen auflisten |
GET | /v1/invoices/:id | Einzelne Rechnung abrufen |
POST | /v1/invoices | Neue Rechnung erstellen |
PATCH | /v1/invoices/:id | Rechnung aktualisieren |
DELETE | /v1/invoices/:id | Rechnung stornieren |
POST | /v1/invoices/:id/send | Rechnung per E-Mail versenden |
GET | /v1/invoices/:id/pdf | PDF herunterladen |
Kunden /v1/customers
| Methode | Endpunkt | Beschreibung |
|---|---|---|
GET | /v1/customers | Alle Kunden auflisten |
GET | /v1/customers/:id | Einzelnen Kunden abrufen |
POST | /v1/customers | Neuen Kunden anlegen |
PATCH | /v1/customers/:id | Kunden aktualisieren |
DELETE | /v1/customers/:id | Kunden archivieren |
GET | /v1/customers/:id/invoices | Rechnungen eines Kunden |
Transaktionen /v1/transactions
| Methode | Endpunkt | Beschreibung |
|---|---|---|
GET | /v1/transactions | Alle Transaktionen auflisten |
GET | /v1/transactions/:id | Einzelne Transaktion abrufen |
POST | /v1/transactions | Neue Transaktion erstellen |
POST | /v1/transactions/:id/reverse | Transaktion stornieren |
GET | /v1/transactions/summary | Zusammenfassung abrufen |
Sophie AI /v1/sophie
| Methode | Endpunkt | Beschreibung |
|---|---|---|
POST | /v1/sophie/chat | Chat-Nachricht senden |
POST | /v1/sophie/analyze | Beleg/Dokument analysieren |
GET | /v1/sophie/conversations | Gesprächsverlauf abrufen |
DELETE | /v1/sophie/conversations/:id | Gespräch löschen |
Schnellstart
Verbindung testen
cURL
curl -X GET "https://buchhaltgenie.at/api/v1/me" \
-H "Authorization: Bearer sk_test_xxxxxxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json"Erfolgreiche Antwort
{
"data": {
"id": "usr_abc123",
"email": "max@musterfirma.at",
"business": {
"id": "biz_xyz789",
"name": "Musterfirma GmbH",
"uid_number": "ATU12345678"
},
"subscription": {
"plan": "pro",
"status": "active"
}
}
}Standard-Antwortformat
Alle API-Antworten folgen einem einheitlichen Format:
Erfolg (2xx)
{
"data": {
// Die angeforderten Daten
},
"pagination": {
// Bei Listen: Paginierungsinformationen
"page": 1,
"per_page": 20,
"total_pages": 5,
"total_count": 100
}
}Fehler (4xx/5xx)
{
"error": {
"code": "VALIDATION_ERROR",
"message": "Die Anfrage enthält ungültige Daten.",
"details": {
"field": "uid_number",
"reason": "Ungültiges Format für österreichische UID"
}
}
}HTTP-Statuscodes
| Code | Bedeutung | Beschreibung |
|---|---|---|
200 | OK | Anfrage erfolgreich |
201 | Created | Ressource erfolgreich erstellt |
204 | No Content | Erfolgreich, keine Rückgabe |
400 | Bad Request | Ungültige Parameter |
401 | Unauthorized | Authentifizierung fehlgeschlagen |
403 | Forbidden | Keine Berechtigung |
404 | Not Found | Ressource nicht gefunden |
422 | Unprocessable Entity | Validierungsfehler |
429 | Too Many Requests | Rate Limit erreicht |
500 | Internal Server Error | Serverfehler |
Paginierung
Listen-Endpunkte unterstützen Paginierung:
GET /v1/invoices?page=2&per_page=50| Parameter | Typ | Standard | Maximum | Beschreibung |
|---|---|---|---|---|
page | number | 1 | - | Aktuelle Seite |
per_page | number | 20 | 100 | Einträge pro Seite |
Filterung und Sortierung
Die meisten Listen-Endpunkte unterstützen Filter:
# Rechnungen filtern
GET /v1/invoices?status=sent&from_date=2026-01-01
# Kunden suchen
GET /v1/customers?search=Muster&type=business
# Transaktionen nach Betrag
GET /v1/transactions?min_amount=100&max_amount=1000Sortierung:
# Aufsteigend nach Datum
GET /v1/invoices?sort=created_at&order=asc
# Absteigend nach Betrag
GET /v1/transactions?sort=amount&order=descRate Limits
| Tarif | Anfragen/Minute | Anfragen/Tag |
|---|---|---|
| Starter | 60 | 1.000 |
| Pro | 300 | 10.000 |
| Business | 600 | 50.000 |
| Enterprise | Individuell | Individuell |
Bei Überschreitung erhältst Sie HTTP 429 mit Retry-After Header.
Compliance-Hinweise
DSGVO & BAO: Alle API-Zugriffe werden protokolliert und 7 Jahre aufbewahrt (BAO §132). Sie sind als API-Nutzer für die DSGVO-konforme Verarbeitung der abgerufenen Daten verantwortlich.