Developer
Test ModeTest Mode Sign In Get started
Developer / Loyalty / Webhooks

Loyalty Webhooks

Erhalte Echtzeit-Benachrichtigungen über Loyalty-Events wie Punkte-Vergabe, Einlösungen und Tier-Upgrades direkt an deine Server.

Receive real-time notifications about loyalty events like points earned, redemptions, and tier upgrades directly to your servers.

Basis-Loyalty-Webhooks (loyalty.points_earned, loyalty.points_redeemed etc.) erfordern mindestens das GO-Paket. Tier-Events (loyalty.tier_changed) erfordern PRIME.Basic loyalty webhooks (loyalty.points_earned, loyalty.points_redeemed etc.) require at least the GO package. Tier events (loyalty.tier_changed) require PRIME.

Webhook registrierenRegister Webhook

cURL
curl -X POST \ ".../apiGateway/api/v1/getLoyaltyWebhookEvents" \ -H "Authorization: Bearer $SK" \ -d '{ "storeId": "store_a", "url": "https://yourserver.com/webhooks/loyalty", "events": [ "loyalty.points_earned", "loyalty.points_redeemed", "loyalty.tier_changed", "loyalty.enrollment", "loyalty.reward_unlocked" ], "secret": "whsec_your_hmac_secret" }'

Event-TypenEvent Types

Event BeschreibungDescription Wann ausgelöstTrigger
loyalty.points_earned Punkte wurden vergebenPoints were awarded Nach jedem Einkauf via addLoyaltyPointsAfter every purchase via addLoyaltyPoints
loyalty.points_redeemed Punkte wurden eingelöstPoints were redeemed Bei Einlösung via redeemLoyaltyPointsOn redemption via redeemLoyaltyPoints
loyalty.tier_changed Stufe geändert (Auf- oder Abstieg)Tier changed (upgrade or downgrade) Wenn Punkte die Schwelle einer neuen Stufe erreichenWhen points reach a new tier threshold
loyalty.enrollment Neuer TeilnehmerNew enrollment Wenn ein Nutzer dem Programm beitrittWhen a user joins the program
loyalty.reward_unlocked Belohnung freigeschaltetReward unlocked Wenn ein Nutzer genug Punkte für eine Belohnung hatWhen a user has enough points for a reward

Webhook Payload

JSON
{ "event": "loyalty.points_earned", "timestamp": "2026-03-03T12:30:00.000Z", "data": { "userId": "user_xyz", "programId": "lp_abc123", "storeId": "store_a", "amount": 15, "newBalance": 235, "transactionId": "txn_789" } }

Signatur-VerifizierungSignature Verification

Jeder Webhook enthält einen X-BEEP-Signature-Header. Verifiziere die Signatur mit deinem HMAC-Secret:

Every webhook includes an X-BEEP-Signature header. Verify the signature with your HMAC secret:

Node.js
const crypto = require('crypto'); function verifyWebhookSignature(payload, signature, secret) { const expected = crypto .createHmac('sha256', secret) .update(payload) .digest('hex'); return crypto.timingSafeEqual( Buffer.from(signature), Buffer.from(expected) ); }
Webhooks werden maximal 3x wiederholt (nach 1, 5, 30 Minuten). Antworte mit 200 OK innerhalb von 10 Sekunden. Webhooks are retried up to 3x (after 1, 5, 30 minutes). Respond with 200 OK within 10 seconds.