Ihr System erfährt sofort von jedem Verkauf.

Die Webhooks von Cord benachrichtigen Ihren Server, sobald in Ihrem Verkaufszyklus etwas passiert: ein Angebot wird gesendet, angesehen, bestätigt oder bezahlt, eine Rechnung ausgestellt, ein neuer Kunde angelegt. Jede Benachrichtigung ist ein mit HMAC-SHA256 signierter JSON-POST, mit automatischen Wiederholungen und einem Verlauf, den Sie in der Workbench prüfen können.

In allen Tarifen: 16 Endpoints im kostenlosen Tarif, in Starter und Professional, 32 in Scale und 100 in Developer.

POST https://erp.mdvalle-usa.com/webhooks/cord200 OK
User-Agent: Cord-Webhooks/1.0
X-Cord-Event: quote.paid
X-Cord-Event-Id: evt_9c1f4be07a2d4e61b3f8a05c7d92e1aa
X-Cord-Attempt: 1
X-Cord-Signature-V1: t=1790786728,v1=5f2c09d1e4a7b38c…
{
  "id": "evt_9c1f4be07a2d4e61b3f8a05c7d92e1aa",
  "event": "quote.paid",
  "created_at": "2026-09-30T22:45:28.114Z",
  "data": {
    "id": "c2f9a1d4-7b3e-4c1a-9e55-01a6c3d8f2b7",
    "folio": "COT-0149",
    "status": "paid",
    "moneda": "USD",
    "total": 4123.4,
    "cliente": "Ridgeline Builders LLC",
    "cliente_id": "9b41c2e0-3d7a-4f12-8c55-6e0b1a2d4f90",
    "link_publico": "https://cordhq.app/q/q8Fz2LkP"
  }
}
signiert · HMAC-SHA256Timeout 5 s · bis zu 11 Versuche

SIGNATUR

Prüfen Sie, ob die Benachrichtigung von Cord stammt.

Jede Zustellung enthält X-Cord-Signature-V1 mit einem Zeitstempel und dem HMAC-SHA256 des unverarbeiteten Bodys, signiert mit dem Secret Ihres Endpoints. Sie prüfen die Signatur mit wenigen Zeilen, bevor Sie das Ereignis verarbeiten, und der Zeitstempel schützt Sie davor, dass jemand eine alte Zustellung erneut einspielt.

  • X-Cord-Event-Id zum Deduplizieren, ohne den Body zu lesen
  • X-Cord-Attempt gibt an, um welchen Zustellversuch es sich handelt
  • Während einer Rotation wird mit dem neuen und dem bisherigen Secret signiert
verify-cord.jsNode.js
import crypto from 'node:crypto';

// header = req.headers['x-cord-signature-v1'], rawBody = roher, ungeparster Body
export function verifyCord(rawBody, header, secret) {
  const parts = header.split(',');
  const t = parts.find((p) => p.startsWith('t='))?.slice(2);
  if (!t || Math.abs(Date.now() / 1000 - Number(t)) > 300) return false;
  const expected = crypto.createHmac('sha256', secret)
    .update(`${t}.${rawBody}`).digest();
  // während einer Rotation kommen zwei v1: Ein Treffer genügt
  return parts.filter((p) => p.startsWith('v1=')).some((p) => {
    const got = Buffer.from(p.slice(3), 'hex');
    return got.length === expected.length && crypto.timingSafeEqual(got, expected);
  });
}

KATALOG

41 Ereignisse für den gesamten Verkaufszyklus.

Nicht nur Angebote. Erhalten Sie Benachrichtigungen zu ausgestellten, versendeten, bezahlten oder überfälligen Rechnungen, zu Teilzahlungen und fehlgeschlagenen Zahlungen, Rückerstattungen, Rückbuchungen, Auszahlungen, Kunden, Produkten, Aufgaben und Zahlungszusagen. Abonnieren Sie für jeden Endpoint nur, was er braucht.

  • quote.* · invoice.* · payment.* · refund.* · payout.*
  • client.* · product.* · task.* · promise.* · dispute.*
  • Dieselben Typen, die GET /api/v1/events zurückgibt
ÜbersichtProtokolleFehlerEreignisseWebhooksShellSchlüsselZustand
Alle TypenAlleFehlgeschlagenAusstehendZugestelltObjekt-ID…Live
invoice.paidRechnung bezahltf3a8d1c4…2a61System9. Okt., 16:52:08
quote.createdAngebot erstelltc2f9a1d4…f2b7API9. Okt., 16:43:29
quote.approvedAngebot bestätigt8a3e5d17…2e85System9. Okt., 16:31:40
client.updatedKunde aktualisiert9b41c2e0…4f90API9. Okt., 16:29:52
payment.partialTeilzahlung erhaltena72c19e4…d4b3System9. Okt., 16:12:05
task.completedAufgabe erledigt4e0c7b2a…9a27Dashboard9. Okt., 15:58:17
refund.succeededRückerstattung abgeschlossene6b1d904…1f63System9. Okt., 15:40:51
promise.createdZahlungszusage erfasst0d5f8c3e…d635Dashboard9. Okt., 15:21:33
payout.paidAuszahlung erfolgtSystem9. Okt., 14:05:00
dispute.createdRückbuchung eingeleitet7b9e2a41…2a59System9. Okt., 11:20:46
invoice.overdueRechnung überfällig5d0e7c31…1b88System9. Okt., 09:00:02
quote.expiring3c7a1e90…7f30System9. Okt., 08:00:01
product.updatedProdukt aktualisiert61f2a8d0…7f48Dashboard9. Okt., 07:12:44

OHNE CODE

Zapier, Make und n8n, ohne Schlüssel zu kopieren.

Zapier und Make verbinden sich per OAuth mit Cord: Sie autorisieren die App einmal, und sie erscheint in der Workbench als autorisierte Verbindung, die Sie jederzeit widerrufen können. n8n verwendet einen API-Schlüssel. Alle drei legen eigene Webhook-Abonnements an, mit einem separaten Kontingent von 100, das die Endpoints Ihres Teams nicht belastet.

  • OAuth-Autorisierung für Zapier und Make
  • Widerrufen Sie eine App, ohne Ihre Schlüssel anzufassen
  • HubSpot, Slack und Microsoft Teams verbinden sich direkt über die Einstellungen
ÜbersichtProtokolleFehlerEreignisseWebhooksShellSchlüsselZustand
API-Nutzung diesen Monat3.486 / 5.000Nur Aufrufe mit Live-Schlüsseln zählen; Test- und Workbench-Aufrufe nicht.
API-Version2026-10-01Jeder Schlüssel und jeder Webhook bleibt an die bei der Erstellung gültige Version gebunden; der Header Cord-Version ändert sie pro Anfrage.

API-Schlüssel

Damit verbinden Sie Ihr eigenes System oder n8n mit Cord. Zapier und Make brauchen keine: Beide erscheinen hier als autorisierte Verbindungen. Behandeln Sie jeden Schlüssel wie ein Passwort.

TestLiveTarif Professional: 5/20+ Schlüssel erstellen
NameTokenRechteZuletzt genutztErstellt
ZapierOAuthAutorisierte VerbindungSchreibenheute, 16:3124. Sept. 2026ProtokolleWiderrufen
MakeOAuthAutorisierte VerbindungSchreibengestern, 18:0218. Sept. 2026ProtokolleWiderrufen
Claude · FinanzenLiveEingeschränktrk_live_••••••••••••••••••••7c3d3 Ressourcenheute, 16:3710. Sept. 2026ProtokolleBearbeitenRotierenWiderrufen
n8n · AutomatisierungenLiveGeheim1 IPsk_live_••••••••••••••••••••c71eSchreibenheute, 15:121. Sept. 2026ProtokolleBearbeitenRotierenWiderrufen
KundenportalLiveÖffentlichpk_live_••••••••••••••••••••41c9Lesenheute, 16:4128. Aug. 2026ProtokolleBearbeitenRotierenWiderrufen
ERP · Nächtlicher SyncLiveGeheim2 IPLäuft ab am 14. Okt. 2026sk_live_••••••••••••••••••••8f2aSchreibenheute, 16:4321. Aug. 2026ProtokolleBearbeitenRotierenWiderrufen
Lokale TestsTestGeheimsk_test_••••••••••••••••••••d77eSchreibenheute, 15:3119. Aug. 2026ProtokolleBearbeitenRotierenWiderrufen
BerichtsskriptLiveGeheimsk_live_••••••••••••••••••••b0e3Lesen10. Sept., 11:001. Aug. 2026Widerrufen

HÄUFIGE FRAGEN

Webhooks und Integrationen: Was Entwickler wissen wollen.

Eine automatische Benachrichtigung: Tritt in Ihrem Konto ein Ereignis ein, etwa ein bestätigtes Angebot oder eine bezahlte Rechnung, sendet Cord einen JSON-POST an die von Ihnen registrierte URL, signiert mit HMAC-SHA256, damit Sie die Herkunft prüfen können.

Cord versucht es bis zu 11-mal mit wachsenden Abständen über fast vier Tage, mit einem Timeout von 5 Sekunden pro Versuch. Nach 3 Fehlschlägen in Folge erhalten Sie eine Warnung, nach 5 wird der Endpoint deaktiviert, bis Sie ihn wieder aktivieren.

Nutzen Sie X-Cord-Event-Id, die auch als Feld id im Body mitkommt. Sie bleibt bei allen Zustellversuchen eines Ereignisses gleich; es genügt also, die bereits verarbeiteten zu speichern.

Nein. Direkte Verbindungen gibt es unter anderem für HubSpot, Slack und Microsoft Teams. Für SAP, Salesforce oder Oracle richten Sie einen Webhook auf Ihr Backend oder auf Zapier, Make oder n8n und schreiben über die REST-API zurück in Cord.

16 im kostenlosen Tarif, in Starter und Professional, 32 in Scale und 100 in Developer. Abonnements, die Zapier, Make oder n8n anlegen, haben ein separates Kontingent von 100 pro Organisation.

Entdecken Sie den Rest der Entwicklerplattform.

Empfangen Sie Ihr erstes Testereignis.

Registrieren Sie einen Endpoint in der Workbench und sehen Sie mit Testen, wie die Zustellung ankommt.

Sie sehen, was Sie zahlen

Veröffentlichte Preise, bei denen die Gebühr für jede Zahlung klar ausgewiesen ist.

Mehr zu den Preisen →

Legen Sie los

Starten Sie im kostenlosen Tarif und versenden Sie Ihre Angebote.

Integrationsoptionen →