Webhooks
Recevez des notifications en temps réel lors d'événements dans votre compte Paymavo. La gestion des webhooks se fait dans Paramètres → Développeur.
Format du payload
JSON
{
"event": "invoice.paid",
"timestamp": "2026-03-10T15:30:00.000Z",
"data": {
"id": "clx...",
"invoiceNumber": "INV-2026-0042",
"status": "PAID",
"totalWithTax": 574750
}
}Vérification de la signature
Chaque requête inclut l'en-tête X-Signature : HMAC-SHA256 du corps brut signé avec votre secret webhook.
TYPESCRIPT
import crypto from "crypto";
function verifyWebhook(body: string, signature: string, secret: string) {
const expected = crypto
.createHmac("sha256", secret)
.update(body)
.digest("hex");
return crypto.timingSafeEqual(
Buffer.from(signature),
Buffer.from(expected)
);
}Événements
| Événement | Déclenché quand |
|---|---|
| invoice.created | Une nouvelle facture est créée via l'API ou le tableau de bord |
| invoice.sent | Une facture est envoyée au client par courriel |
| invoice.paid | Une facture est marquée comme payée |
| invoice.deleted | Une facture est supprimée |
| customer.created | Un nouveau client est créé |
| customer.updated | Les informations d'un client sont mises à jour |
| customer.deleted | Un client est supprimé |
| quote.created | Un nouveau devis est créé |
Politique de nouvelle tentative
Si votre endpoint renvoie un code non 2xx, Paymavo réessaie jusqu'à 3 fois avec des délais progressifs (immédiatement, puis après 5s, puis 30s). Les logs de livraison sont visibles dans Paramètres → Développeur → Webhooks.