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
É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 refusee
- Échec de resolution DNS
- Code de statut HTTP < 500 (y compris les erreurs 4xx)
- Certificat SSL invalide
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
Repondre rapidement
Repondre rapidement
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.
Gérer l'idempotence
Gérer l'idempotence
Les webhooks peuvent être livres plus d’une fois. Stockez les ID d’événements et vérifiez les doublons avant le traitement.
Vérifier les signatures
Vérifier les signatures
Vérifiez toujours l’en-tête
x-smartbills-signature avant de traiter toute charge utile de webhook.Utiliser HTTPS
Utiliser HTTPS
Votre point d’accès webhook doit utiliser HTTPS en production pour protéger la charge utile en transit.
Tout journaliser
Tout journaliser
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