Documentation / Webhooks : réception et signature HMAC
Documentation technique

Webhooks : réception et signature HMAC

MisterBookingHub émet des webhooks pour vous notifier d'événements sur vos modules. Cette documentation couvre le format des payloads et la vérification des signatures.

Événements disponibles

module.activated, module.deactivated, review.received, review.rating_low (note < 3/5), rate_shopper.report_ready, widget.rule_triggered, invoice.issued, invoice.paid, invoice.failed.

Format du payload

Payload JSON POST vers votre URL de webhook (configurée dans Paramètres → Webhooks). En-têtes : X-MMS-Event, X-MMS-Timestamp, X-MMS-Signature (HMAC-SHA256 hexadécimal du body avec la clé partagée). Corps : {event, timestamp, module_id, data: {...}}.

Vérification de signature

Recalculez HMAC-SHA256(secret, timestamp + '.' + body) et comparez avec X-MMS-Signature. Refusez la requête si signature invalide ou si timestamp > 5 minutes de dérive. Cela protège contre le rejeu.

Retry policy

En cas de non-réponse 2xx dans les 30 secondes, MisterBookingHub retente 5 fois avec backoff exponentiel (1min, 5min, 30min, 2h, 12h). Après 5 échecs, le webhook est marqué en échec et une notification email est envoyée à l'administrateur du compte.

Plages IP source

Les webhooks sont émis depuis un jeu d'adresses IP fixes publiées dans notre espace client (Paramètres → Webhooks → Sécurité). Vous pouvez restreindre votre pare-feu à ces IPs.