Disponible dans :
Post Affiliate Pro
, Post Affiliate Pro Ultimate
, Post Affiliate Network
Que sont les webhooks et callbacks ?
Les webhooks (également appelés Application Callbacks ou URL de postback) sont des notifications HTTP automatisées que Post Affiliate Pro envoie aux systèmes externes lorsque des événements spécifiques se produisent. Au lieu de constamment interroger pour obtenir des mises à jour, vos systèmes connectés reçoivent des notifications instantanées au moment où quelque chose se passe dans votre programme d’affiliation.
Cette fonctionnalité est essentielle pour :
- Intégration CRM - Mettre à jour automatiquement votre base de données clients lorsque des ventes se produisent
- Automatisation email - Déclencher des séquences d’emails basées sur les actions des affiliés
- Systèmes comptables - Synchroniser les données de transaction avec votre logiciel financier
- Tableaux de bord personnalisés - Construire des tableaux de bord de reporting en temps réel
- Suivi tiers - Notifier les plateformes de suivi externes des conversions
Types de webhooks
Post Affiliate Pro prend en charge deux types principaux de webhooks :
Webhooks de suivi des ventes
Ces webhooks sont déclenchés par des événements liés aux transactions :
| Événement déclencheur | Description |
|---|
| À la création | Se déclenche immédiatement lorsqu’une nouvelle transaction (vente, action, prospect) est enregistrée |
| À l’approbation | Se déclenche lorsqu’une transaction en attente est approuvée |
| Au refus | Se déclenche lorsqu’une transaction est refusée |
| Au remboursement/rétrofacturation | Se déclenche lorsqu’un remboursement ou une rétrofacturation est traité |
Vous pouvez configurer un seul webhook pour se déclencher sur plusieurs événements, ou créer des webhooks séparés pour chaque type d’événement.
Webhooks d’inscription d’affilié
Ces webhooks sont déclenchés par des événements d’inscription d’affiliés :
| Événement déclencheur | Description |
|---|
| À l’inscription | Se déclenche immédiatement lorsqu’un nouvel affilié complète le formulaire d’inscription |
| À l’approbation | Se déclenche lorsqu’un affilié en attente est approuvé par un marchand |
Types de requêtes
Post Affiliate Pro prend en charge trois types de requêtes HTTP pour les webhooks :
Requête GET
Les paramètres sont ajoutés à l’URL sous forme de paramètres de chaîne de requête.
https://votre-systeme.com/webhook?transactionid=abc123&commission=50.00&orderid=ORD-456
Requête POST (Form-Urlencoded)
Les paramètres sont envoyés dans le corps de la requête en utilisant l’encodage de formulaire standard.
Content-Type: application/x-www-form-urlencoded
transactionid=abc123&commission=50.00&orderid=ORD-456
Requête POST JSON
Les paramètres sont envoyés sous forme d’objet JSON dans le corps de la requête.
Content-Type: application/json
{"transactionid": "abc123", "commission": "50.00", "orderid": "ORD-456"}
Variables disponibles pour les webhooks de ventes
Vous pouvez utiliser des variables dynamiques dans vos URL de webhook qui sont automatiquement remplacées par les valeurs réelles. Utilisez le format ${#nomvariable#} pour inclure une variable.
Données de transaction
| Variable | Description |
|---|
${#transactionid#} | Identifiant unique de transaction |
${#visitorid#} | ID du visiteur (cookie de suivi) |
${#commission#} | Montant de la commission |
${#totalcost#} | Valeur totale de la commande |
${#fixedcost#} | Montant du coût fixe |
${#orderid#} | ID de commande de votre système e-commerce |
${#productid#} | ID du produit |
${#dateinserted#} | Date et heure de création de la transaction |
${#dateapproved#} | Date et heure d’approbation de la transaction |
${#tier#} | Niveau de palier de commission |
${#status#} | Statut de la transaction (Approuvé, En attente, Refusé) |
${#statuscode#} | Code de statut (A, P, D) |
${#type#} | Type de transaction (Vente, Action, etc.) |
Données de campagne et bannière
| Variable | Description |
|---|
${#campaignid#} | Identifiant de campagne |
${#campaignname#} | Nom de la campagne |
${#bannerid#} | Identifiant de bannière |
${#channel#} | Nom du canal |
${#channel_code#} | Code du canal |
${#coupon_code#} | Code promo utilisé |
Données d’affilié
| Variable | Description |
|---|
${#userid#} | ID utilisateur de l’affilié |
${#refid#} | ID de parrainage de l’affilié |
Données de clic
| Variable | Description |
|---|
${#firstclicktime#} | Horodatage du premier clic |
${#firstclickreferer#} | URL référent du premier clic |
${#firstclickip#} | Adresse IP du premier clic |
${#firstclickdata1#} | Données personnalisées 1 du premier clic |
${#firstclickdata2#} | Données personnalisées 2 du premier clic |
${#lastclicktime#} | Horodatage du dernier clic |
${#lastclickreferer#} | URL référent du dernier clic |
${#lastclickip#} | Adresse IP du dernier clic |
${#lastclickdata1#} | Données personnalisées 1 du dernier clic |
${#lastclickdata2#} | Données personnalisées 2 du dernier clic |
Données de transaction personnalisées
| Variable | Description |
|---|
${#saledata1#} | Champ de données personnalisé 1 de la transaction |
${#saledata2#} | Champ de données personnalisé 2 de la transaction |
${#saledata3#} | Champ de données personnalisé 3 de la transaction |
${#saledata4#} | Champ de données personnalisé 4 de la transaction |
${#saledata5#} | Champ de données personnalisé 5 de la transaction |
Données géographiques et techniques
| Variable | Description |
|---|
${#ip#} | Adresse IP du client |
${#countrycode#} | Code pays basé sur l’IP |
${#refererurl#} | URL référent |
Données de devise
| Variable | Description |
|---|
${#originalcurrency#} | Nom de la devise d’origine |
${#originalcurrencyvalue#} | Valeur de la devise d’origine |
${#originalcurrencyrate#} | Taux de change utilisé |
Notes
| Variable | Description |
|---|
${#merchantnote#} | Note visible par l’affilié |
${#systemnote#} | Note visible uniquement par le marchand |
${#actionName#} | Nom du type de commission d’action |
${#actionCode#} | Code du type de commission d’action |
Variables disponibles pour les webhooks d’inscription
Pour les webhooks d’inscription d’affiliés, vous pouvez utiliser les variables de profil d’affilié :
| Variable | Description |
|---|
${#username#} | Email/nom d’utilisateur de l’affilié |
${#firstname#} | Prénom de l’affilié |
${#lastname#} | Nom de famille de l’affilié |
${#name#} | Nom complet (prénom + nom) |
${#userId#} | ID utilisateur de l’affilié |
| Champs personnalisés | Tout champ de profil personnalisé par son code |
Support multi-niveaux
Par défaut, les webhooks sont exécutés uniquement pour les commissions de niveau 1 (directes). Vous pouvez activer l’option “Exécuter pour chaque niveau” pour déclencher les webhooks pour tous les niveaux de palier dans les structures de commission multi-niveaux.
C’est utile lorsque :
- Vous devez suivre les commissions à tous les niveaux de votre hiérarchie d’affiliation
- Votre système externe doit connaître les gains des sous-affiliés
- Vous construisez des rapports complets incluant tous les niveaux de commission
Options de filtrage des webhooks
Vous pouvez configurer les webhooks pour être plus spécifiques :
Par type de commission
Limitez le webhook à un type de commission spécifique (par ex., uniquement pour les commissions d’action “Ventes Premium”).
Par affilié
Créez des webhooks qui ne se déclenchent que pour un affilié spécifique. C’est utile pour :
- Les affiliés qui utilisent leurs propres systèmes de suivi
- Les intégrations spéciales pour les affiliés les plus performants
- Tester les webhooks avec un seul affilié avant le déploiement
Par compte (Mode réseau)
Dans Post Affiliate Network, vous pouvez créer des webhooks spécifiques à un compte.
Journal et surveillance des webhooks
Post Affiliate Pro maintient un journal complet de toutes les exécutions de webhooks, accessible dans le panneau marchand sous Outils > Journal des callbacks.
Le journal affiche :
- ID de journal - Identifiant unique pour chaque exécution de webhook
- ID de callback - Quelle configuration de webhook a été utilisée
- URL de requête - L’URL complète qui a été appelée (avec les variables remplacées)
- Date de création - Quand le webhook a été mis en file d’attente
- Dernière tentative - Quand la dernière tentative d’exécution a été effectuée
- Numéro de tentative - Combien de fois le système a tenté d’exécuter
- Statut - En attente, Envoyé ou Erreur
- Message d’erreur - Détails si le webhook a échoué
Nouvelle tentative automatique
Si un webhook échoue (par ex., votre serveur est temporairement indisponible), Post Affiliate Pro réessaiera automatiquement la requête. Cela garantit une livraison fiable même pendant les pannes temporaires.
Rétention des journaux
Les journaux de webhooks sont automatiquement nettoyés après un nombre de jours configurable (par défaut : 60 jours). Vous pouvez ajuster cela dans Configuration > Fonctionnalités > Application Callbacks.
Gestion des webhooks
Flux d’approbation
Par défaut, les webhooks créés par les affiliés nécessitent l’approbation du marchand avant de devenir actifs. Les marchands peuvent :
- Activer l’approbation automatique - Approuver automatiquement tous les nouveaux webhooks
- Révision manuelle - Approuver ou refuser chaque webhook individuellement
Gestion des statuts
Les webhooks ont trois statuts possibles :
- Approuvé - Actif et sera exécuté lorsqu’il est déclenché
- En attente - En attente d’approbation du marchand
- Refusé - Rejeté et ne sera pas exécuté
Les marchands peuvent modifier le statut du webhook à tout moment depuis l’écran de gestion des webhooks.
Notifications par email
Post Affiliate Pro peut envoyer des notifications par email pour les événements liés aux webhooks :
Notifications marchand
- Nouveau webhook créé par un affilié
Notifications affilié (optionnelles)
- Statut du webhook modifié (approuvé/refusé)
- Webhook modifié par le marchand
- Webhook supprimé par le marchand
Ces notifications peuvent être activées ou désactivées dans Configuration > Notifications par email.
Exemples de cas d’utilisation
1. Intégration CRM
Envoyer les données de nouvelle vente à votre CRM lorsqu’une transaction est approuvée :
https://crm.exemple.com/api/sales?customer_order=${#orderid#}&value=${#totalcost#}&affiliate=${#refid#}
2. Notification Slack
Notifier votre canal d’équipe lorsqu’un nouvel affilié s’inscrit :
https://hooks.slack.com/services/xxx/yyy?text=Nouvel+affilié:+${#firstname#}+${#lastname#}
Ajouter des clients à une séquence email après achat :
POST https://email.exemple.com/api/subscribers
Body: {"email": "${#saledata1#}", "purchase_value": "${#totalcost#}"}
4. Synchronisation logiciel comptable
Enregistrer les paiements de commission dans votre système comptable :
https://compta.exemple.com/webhook?affiliate_id=${#userid#}&commission=${#commission#}&order=${#orderid#}
- Connectez-vous à votre Panneau marchand
- Accédez à Configuration > Fonctionnalités
- Activez la fonctionnalité Application Callbacks
- Allez dans Campagnes > [Sélectionner une campagne] > Callbacks ou le gestionnaire de callbacks global
- Cliquez sur Ajouter un nouveau callback
- Configurez :
- Nom - Un nom descriptif pour le webhook
- Type - Suivi des ventes ou Inscription d’affilié
- Exécution - Quand déclencher (à la création, approbation, refus, remboursement)
- Type de requête - GET, POST ou POST JSON
- URL - Votre point de terminaison avec les variables
- Exécuter pour chaque niveau - Oui/Non
- Enregistrez le webhook
Considérations de sécurité
- Utilisez des points de terminaison HTTPS pour une transmission de données sécurisée
- Envisagez d’ajouter un paramètre secret pour vérifier la source du webhook
- Implémentez une limitation de débit sur votre point de terminaison récepteur
- Validez les données entrantes avant le traitement
- Conservez les journaux de webhooks à des fins d’audit
Fonctionnalités connexes
- Suivi S2S
- Suivi serveur à serveur pour des conversions précises
- API
- Accès programmatique complet à Post Affiliate Pro
- API v3
- API RESTful moderne avec OAuth 2.0