Webhooks & API · Kostenpflichtige Pläne

Jede verarbeitete Rechnung, direkt in deinen Systemen.

Tailride schickt einen signierten JSON-Webhook, sobald eine Rechnung verarbeitet oder bearbeitet wird — mit Lieferant, Beträgen, USt., Positionen und einem Link zum PDF. Durchsuche Rechnungen per REST-API oder verbinde Zapier und Make, ganz ohne Code.

Was ist der Rechnungs-Webhook von Tailride?

Ein Webhook ist ein HTTP-POST, den Tailride an eine URL deiner Wahl sendet. Es gibt zwei Ereignisse: invoice.processed, wenn eine neue Rechnung ausgelesen wurde, und invoice.updated, wenn jemand sie bearbeitet, ein Dokument anhängt oder sie als bezahlt markiert. Jede Anfrage ist mit HMAC-SHA256 signiert, wird wiederholt, wenn dein Server nicht erreichbar ist, und im Aktivitätsprotokoll der Rechnung festgehalten — so bekommen dein ERP, dein Data Warehouse oder dein Freigabeprozess genau die Daten, die du im Dashboard siehst.

Was dein Endpunkt empfängt

Die echte Anfrage, samt Headern

So sendet Tailride eine invoice.processed-Zustellung. invoice.updated enthält dieselbe Rechnung plus eine Liste der Änderungen.

Einstellungen → Webhooks
ERP-Synchttps://erp.example.com/hooks/tailride
Aktiv
Ereignis
Rechnung verarbeitet invoice.processed
Signatur-Secret
whsec_••••••••••••3f9aSignatur-Secret kopierenSignatur-Secret erneuern
Eigene Header
Authorization: Bearer ••••••
Signatur prüfen (Node.js)
import crypto from "node:crypto";

export function isFromTailride(req, rawBody, secret) {
  const ts = req.headers["x-tailride-timestamp"];
  const sig = req.headers["x-tailride-signature"]?.replace("v1=", "") ?? "";
  if (Math.abs(Date.now() / 1000 - Number(ts)) > 300) return false;
  const expected = crypto.createHmac("sha256", secret)
    .update(`${ts}.${rawBody}`).digest("hex");
  return sig.length === expected.length &&
    crypto.timingSafeEqual(Buffer.from(sig), Buffer.from(expected));
}
Rechnungen per REST-API durchsuchen
curl "https://tailride.so/api/v1/invoices?search=northwind&limit=20" \
  -H "X-Api-Key: trapi_…"
Anfrage
POST /hooks/tailride HTTP/1.1
Content-Type: application/json
User-Agent: Tailride-Webhooks/1.0
X-Tailride-Event: invoice.processed
X-Tailride-Timestamp: 1792574400
X-Tailride-Signature: v1=5f2c8e…b41d

{
  "event": "invoice.processed",
  "timestamp": "2026-10-21T09:20:00.000Z",
  "data": {
    "invoice": {
      "id": "6716f0c2e4b09a35d8f11a42",
      "from": "billing@northwind.example",
      "invoiceId": "INV-4471",
      "invoiceDate": "2026-10-20T00:00:00.000Z",
      "documentType": "invoice",
      "amount": 1249,
      "currency": "EUR",
      "payment": { "status": "unpaid" },
      "vendor": { "name": "Northwind Supplies GmbH", "countryCode": "DE", "taxId": "DE811234567" },
      "items": [
        { "description": "Office chairs", "quantity": 2, "unitPrice": 524.79,
          "taxRate": 19, "taxAmount": 199.42, "subtotal": 1049.58, "total": 1249 }
      ],
      "tags": ["office"],
      "attachment": { "url": "https://…/INV-4471.pdf", "expiresAt": "2026-10-22T09:20:00.000Z" }
    }
  }
}

So funktioniert es

Fünf Minuten in den Einstellungen, danach kommt jede Rechnung von selbst.

01Endpunkt hinzufügen

Gib unter Einstellungen → Webhooks einen Namen und eine URL ein, wähle das Ereignis und füge bei Bedarf bis zu fünf eigene Header hinzu — etwa einen API-Schlüssel, den dein Endpunkt erwartet.

02Signatur-Secret kopieren

Jeder Webhook erhält sein eigenes whsec_-Secret. Damit prüfst du den Header X-Tailride-Signature. Erneuere es, wann immer du willst; das alte funktioniert dann sofort nicht mehr.

03Rechnungen empfangen

Wird eine Rechnung verarbeitet oder geändert, sendet Tailride per POST ein JSON mit der vollständigen Rechnung. Antworte innerhalb von 10 Sekunden mit einem beliebigen 2xx-Status.

04Den Rest automatisieren

Schreib die Daten in dein ERP, eine Datenbank oder einen Freigabeprozess — oder überlass das ohne Code den Tailride-Apps für Zapier und Make.

Gebaut für den Produktivbetrieb

Signierte Anfragen

HMAC-SHA256 über Zeitstempel und unveränderten Body, gesendet als X-Tailride-Signature: v1=…, mit dem Zeitstempel in X-Tailride-Timestamp, damit du alte oder wiederholt eingespielte Anfragen abweisen kannst.

Durchdachte Wiederholungen

Bis zu drei Versuche mit 10 Sekunden Timeout. Netzwerkfehler, Timeouts sowie 408-, 429- und 5xx-Antworten werden wiederholt; andere 4xx-Antworten gelten als Ablehnung. Mit data.invoice.id erkennst du Wiederholungen.

Die ganze Rechnung

Lieferant und USt-IdNr., Rechnungsnummer und Daten, Betrag, Währung, Zahlungsstatus, Abo-Details, Tags und jede Position mit ihrem Steuersatz — dazu Download-Links für das PDF und die zugehörigen Dokumente.

Änderungen, nicht nur neue Rechnungen

invoice.updated wird bei Bearbeitungen, bei hinzugefügten oder entfernten zugehörigen Dokumenten und bei Änderungen des Zahlungsstatus ausgelöst — mit altem und neuem Wert jedes geänderten Felds.

Abgesichert

Private und interne Adressen werden blockiert, Weiterleitungen nie verfolgt, und das Signatur-Secret sowie die Werte eigener Header werden verschlüsselt gespeichert.

Sichtbar an jeder Rechnung

Jede Zustellung — auch jede fehlgeschlagene — erscheint im Aktivitätsprotokoll der Rechnung. So siehst du, was wann wohin gesendet wurde.

Was Teams damit bauen

  • Jede verarbeitete Rechnung in ein ERP oder ein internes Tool übertragen, für das es keine fertige Tailride-Integration gibt.
  • Rechnungs- und Positionsdaten für Ausgabenauswertungen in ein Data Warehouse laden.
  • Über Zapier oder Make eine Freigabe in Slack oder Microsoft Teams starten, sobald eine Rechnung über einem festgelegten Betrag eingeht.
  • Ein CRM oder Projekttool aktualisieren, sobald eine Rechnung als bezahlt markiert ist.

Häufige Fragen

Welche Ereignisse kann ich abonnieren?

invoice.processed wird ausgelöst, wenn ein neues Dokument ausgelesen und als Rechnung erkannt wurde. invoice.updated wird ausgelöst, wenn sich eine verarbeitete Rechnung danach ändert: bearbeitete Felder, angehängte oder entfernte zugehörige Dokumente, ein neuer Zahlungsstatus. Jeder Webhook abonniert ein Ereignis — für beide legst du einen zweiten Webhook an.

Wie prüfe ich, ob eine Anfrage wirklich von Tailride kommt?

Berechne mit dem whsec_-Secret des Webhooks einen HMAC-SHA256 über den Wert von X-Tailride-Timestamp, einen Punkt und den unveränderten Request-Body. Vergleiche das Hex-Ergebnis mit dem Wert nach v1= in X-Tailride-Signature und weise Anfragen ab, deren Zeitstempel älter als ein paar Minuten ist.

Was passiert, wenn mein Endpunkt nicht erreichbar ist?

Tailride versucht es bis zu dreimal im Abstand weniger Sekunden. Netzwerkfehler, Timeouts und 408-, 429- oder 5xx-Antworten werden wiederholt; jede andere 4xx-Antwort gilt als Ablehnung. Scheitern alle Versuche, steht der Fehler im Aktivitätsprotokoll der Rechnung — Verpasstes holst du dir über die API.

Was kann die REST-API?

Mit einem trapi_-API-Schlüssel kannst du das Konto abfragen (GET /api/v1/me), verarbeitete Rechnungen mit GET /api/v1/invoices durchsuchen und seitenweise abrufen — bis zu 100 pro Seite — und Zapier oder Make für Rechnungsereignisse anmelden. Die Basis-URL ist https://tailride.so/api/v1; sende den Schlüssel als X-Api-Key oder als Bearer-Token.

Gibt es eine App für Zapier oder Make?

Ja. Die Zapier-App ist öffentlich: Trigger für New Invoice und Updated Invoice sowie die Suche Find Invoice. Die Make-App — neue oder aktualisierte Rechnungen beobachten, Rechnungen suchen, einen API-Aufruf ausführen — gibt es auf Einladung; frag den Support nach dem Link.

Welche Pläne enthalten Webhooks und die API?

Alle kostenpflichtigen Pläne, für Unternehmenskonten. Der Kontoinhaber verwaltet sie unter Einstellungen → Webhooks: bis zu 10 Webhooks und 10 API-Schlüssel, dazu die Webhooks, die Zapier und Make für dich anlegen.

Wie lange sind die Datei-Links gültig?

Download-Links in einem Webhook funktionieren 24 Stunden, Links aus der API eine Stunde. Speichere die Datei bei dir, wenn du sie behalten möchtest.

Schick deine Rechnungen dorthin, wo du arbeitest

Webhooks, API-Schlüssel und die Zapier-App sind in jedem kostenpflichtigen Plan enthalten.

Tailride
Rechnungs-Webhooks & REST-API — jede Rechnung in deine Systeme | Tailride