Webhooks

Contrairement aux emails conçus pour les humains, les Webhooks envoient des alertes automatiques à vos machines en temps réel (ex. : valider une commande 1 seconde après le paiement).

Configuration URL (Test)
Saisissez l'adresse de votre serveur (Endpoint) qui réceptionnera nos messages automatiques de TEST.
📋 Événements à écouter (Test)
Sélectionnez les déclencheurs qui enverront une requête vers votre Endpoint de Test.
🔑 Secret de signature (Test)
Utilisé pour vérifier la signature HMAC des webhooks entrants. Le secret complet n'est affiché qu'une seule fois à la création ou à la régénération.
Sera généré automatiquement lors du premier enregistrement.
💻 Vérification côté serveur (Node.js)
Exemple minimal pour valider la signature HMAC avec le SDK Spirit Pay.
import express from 'express';
import { createClient } from '@spiritpay/node';

const app = express();
const spiritpay = createClient({ apiKey: process.env.SPIRITPAY_API_KEY });

// URL dashboard : https://votre-api.com/hooks → Spirit Pay appellera …/hooks/spirit_pay/webhook
app.post(
  '/spirit_pay/webhook',
  express.raw({ type: 'application/json' }),
  (req, res) => {
    const ok = spiritpay.webhooks.verifySignature({
      secret: process.env.SPIRITPAY_WEBHOOK_SECRET, // whsec_… (copié à la création)
      headers: req.headers,
      rawBody: req.body
    });
    if (!ok) return res.status(401).send('Invalid signature');

    const payload = JSON.parse(req.body.toString('utf8'));
    switch (payload.event) {
      case 'payment.executed':
        // Paiement réussi (payload.payment_id, payload.invoice_ref, payload.amount)
        break;
      case 'payment.failed':
        break;
      case 'payment.scheduled':
        break;
    }
    res.status(200).json({ received: true });
  }
);
Logs webhooks (Test)
100%
Taux succès 24 h
0
Envois aujourd'hui
0
Historique des envois (24 h)
DateÉvénementStatutHTTP
Aucun envoi récent