Passer au contenu principal
L’intégration Webhooks s’adresse aux développeurs. Elle envoie un événement JSON vers l’adresse HTTPS de votre choix chaque fois qu’il se passe quelque chose dans Foliant. Votre propre système peut ainsi réagir, par exemple en archivant chaque facture PDF ou en récupérant un export terminé. Webhooks est en bêta. Si vous ne le voyez pas dans Paramètres › Intégrations, il n’est pas encore proposé à votre boutique. Contactez le support pour demander l’accès.

Événements

Connecter les webhooks

  1. Dans Foliant, allez dans Paramètres › Intégrations.
  2. Sur Webhooks, cliquez sur Connecter.
  3. Renseignez les paramètres :
  4. Cliquez sur Connecter.
Vous pouvez modifier l’URL, le secret et les événements plus tard dans Paramètres sur la page de l’intégration.

Contenu de chaque requête

Foliant envoie une requête POST avec un corps JSON :

Données de document.generated

  • template : l’uuid et le name du modèle.
  • document_type : invoice, credit_note, quote, ou vide pour les autres documents.
  • order : son id, son name et son type (commandes ou commandes provisoires).
  • refund_id et fulfillment_id, quand le document concerne un remboursement ou une expédition.
  • document_number et issued_at, pour les documents numérotés.
  • source : la façon dont il a été créé, par exemple download, admin_download, export ou email.
  • export : l’ID de l’export, quand le document fait partie d’un export.
  • generated_at.

Données de export.completed

  • export : son uuid, order_type, template_uuids, le nombre de commandes (orders), orders_skipped (supprimées après avoir été choisies) et documents, requested_by (merchant ou customer) et completed_at.
  • download_url : un lien pour télécharger l’export, et download_url_expires_at, le moment où ce lien cesse de fonctionner.
  • download_expires_at : le moment où l’export lui-même expire.
Les événements contiennent des ID et des nombres, pas d’adresses e-mail de clients.

En-têtes

Vérifier la signature

La signature est un HMAC-SHA256 hexadécimal du timestamp, d’un point et du corps brut de la requête (<timestamp>.<body>), avec votre secret de signature comme clé. Calculez-la de votre côté et comparez-la à la valeur qui suit sha256= dans X-Foliant-Signature. Utilisez le corps brut exactement tel que reçu.

Réponses et nouvelles tentatives

  • Toute réponse 2xx compte comme livrée.
  • Si votre endpoint renvoie une erreur 5xx, 408 ou 429, ou ne répond pas dans les 10 secondes, Foliant réessaie plus tard, en attendant plus longtemps à chaque fois, jusqu’à 5 tentatives.
  • Les autres réponses 4xx sont définitives : Foliant ne réessaie pas.
  • Chaque événement est envoyé une fois par document ou par export. Les nouvelles tentatives ne l’envoient jamais deux fois après un succès.
Chaque envoi apparaît dans Activité sur la page de l’intégration, où vous pouvez cliquer sur Réessayer pour un envoi en échec. Consultez Activité des intégrations.

Articles associés