Skip to main content

Aperçu

Les webhooks vous permettent de recevoir des notifications HTTP lorsque des événements spécifiques se produisent dans votre compte Smartbills. Au lieu d’interroger l’API pour des changements, Smartbills envoie des notifications à votre serveur en temps réel.
Mises à jour en temps réel : Les webhooks sont livres dans les secondes suivant l’événement, ce qui les rend ideaux pour l’automatisation et les intégrations.

Fonctionnement des webhooks

1

Un événement se produit

Une action se produit dans Smartbills (ex. : dépense créée, rapport approuvé)
2

Webhook declenche

Smartbills prepare une charge utile de webhook avec les détails de l’événement
3

Envoi HTTP POST

Smartbills envoie une requête HTTP POST à votre point d’accès configure
4

Votre serveur repond

Votre serveur traite le webhook et retourné une réponse 200 OK

Configuration des webhooks

Enregistrer votre webhook

Enregistrez votre point d’accès avec Smartbills via l’API :

Réponse

Sauvegardez le secret : Le secret du webhook n’est affiché qu’une seule fois. Stockez-le en sécurité, vous en avez besoin pour vérifier les signatures des webhooks.

Événements disponibles

Événements de dépenses

Événements de rapports de dépenses

Événements de factures

Événements d’entreprise

Structure de la charge utile

Tous les webhooks suivent cette structure :

Champs de la charge utile

Sécurité des webhooks

Vérifier les signatures

Vérifiez toujours les signatures des webhooks pour vous assurer que les requêtes proviennent de Smartbills. Smartbills signe chaque charge utile avec HMAC-SHA256 en utilisant votre secret de webhook :

Politique de réessai

Smartbills retente automatiquement les livraisons de webhooks échouées : Conditions de réessai :
  • Code de statut HTTP >= 500
  • Délai d’expiration de connexion
  • Connexion refusée
  • Échec de résolution DNS
Pas de réessai pour :
  • Code de statut HTTP < 500 (y compris les erreurs 4xx)
  • Certificat SSL invalide
Retournez 200 OK : Retournez toujours un code de statut 200 lorsque vous recevez le webhook avec succès, même si le traitement échoué. Gérez les erreurs de traitement en interne pour eviter les réessais inutiles.

Gérer les webhooks

Lister les webhooks

Mettre à jour un webhook

Supprimer un webhook

Tester un webhook

Envoyez un événement de test pour vérifier que votre point d’accès fonctionne :

Bonnes pratiques

Retournez une réponse 200 OK dans les 5 secondes. Accusez réception immédiatement et traitez l’événement de manière asynchrone avec une file d’attente de travaux.
Les webhooks peuvent être livres plus d’une fois. Stockez les ID d’événements et vérifiez les doublons avant le traitement.
Vérifiez toujours l’en-tête x-smartbills-signature avant de traiter toute charge utile de webhook.
Votre point d’accès webhook doit utiliser HTTPS en production pour protéger la charge utile en transit.
Journalisez les chargés utiles entrantes, les résultats de vérification de signature et les résultats de traitement pour le débogage.

Tester les webhooks localement

Utilisez des outils comme ngrok pour tester les webhooks pendant le développement local :

Ressources connexes

Clés API

Securiser vos points d’accès webhook

Gestion des erreurs

Gérer les erreurs de webhook

Limites de débit

Limitation de débit de l’API

Environnements

Bac à sable et production