FAQ
Warum passt meine Webhook-Signatur nicht?
In 9 von 10 Fällen signiert der Code ein neu serialisiertes JSON-Objekt statt des rohen Request-Bodys. Frameworks parsen JSON, und beim erneuten Stringify ändern sich Leerzeichen, Schlüsselreihenfolge und Escaping. Berechne den HMAC immer über die empfangenen Rohbytes. Weitere Ursachen: falsches Secret (Test vs. Live), Hex statt Base64, ein Zeitstempel-Präfix (Stripe signiert timestamp.body) oder der Vergleich von Hex in Groß- und Kleinbuchstaben.
Was macht „Find why it doesn't match“?
Es probiert Hunderte Kombinationen – Algorithmen (SHA-1/256/384/512), Secret-Kodierungen (Text, Hex, Base64, Svix whsec_), Body-Varianten (minifiziert, formatiert, sortierte Schlüssel, abschließender Zeilenumbruch, JSON-Stile von PHP/Python, Zeitstempel-Präfixe) und Ausgabeformate – und sagt dir, welche der Anbieter verwendet hat.
Ist es sicher, mein Secret einzufügen?
Das Signieren passiert lokal mit der Web Crypto API; das Secret verlässt nie deinen Browser. Der KI-Button sendet nur Anbietername, Einstellungen und eine Body-Probe – nie das Secret. Verwende trotzdem lieber Secrets aus der Testumgebung.