Obj - Notifier l'atteinte d'un objectif mensuel en temps réel
Ce use case illustre une utilisation concrète du plugin Biron dans Zapier. Si vous n’êtes pas encore familier avec son fonctionnement (authentification, structure d’une requête, gestion des variables), consultez d’abord le guide Biron × Zapier avant de continuer.
Ce qu’on construit
Section intitulée « Ce qu’on construit »Deux Zaps complémentaires :
- Zap principal — se déclenche chaque matin de semaine, détecte les boutiques ayant atteint leur objectif mensuel depuis la veille, et envoie une notification Slack. Un système de mémoire garantit qu’une boutique ne reçoit l’alerte qu’une seule fois par mois.
- Zap de réinitialisation — s’exécute le 1er de chaque mois pour effacer la mémoire et remettre le système à zéro.
Architecture
Section intitulée « Architecture »Zap principal
Schedule → Calcul des dates → Requête boutiques → Boucle (Check stockage → Filtre → Slack → Écriture stockage)Zap de réinitialisation
Schedule → Nettoyage du stockageZap principal
Section intitulée « Zap principal »Trigger — Schedule by Zapier
Section intitulée « Trigger — Schedule by Zapier »Configurez un bloc Schedule by Zapier :
- Frequency : Every Week
- Days : Monday, Tuesday, Wednesday, Thursday, Friday
- Time : 9:00 AM
Calcul des dates
Section intitulée « Calcul des dates »Les requêtes Biron nécessitent des dates explicites. Ce bloc les génère dynamiquement à chaque exécution.
Ajoutez un bloc Code by Zapier (Python). Utilisez le prompt suivant pour générer le code, puis collez le résultat dans le bloc :
Rôle : Expert Python pour Zapier.Objectif : Créer un script de calcul de dates relatives.
Calculer les dates suivantes en gérant les spécificités du calendrier(années bissextiles, fins de mois) :- Hier- Début du mois- Fin du mois
Sortie : retourner un dictionnaire "output" avec toutes les dates au format YYYY-MM-DD.Requête boutiques — objectif mensuel
Section intitulée « Requête boutiques — objectif mensuel »Créez dans Biron un chart par boutique récupérant le CA du mois en cours et l’objectif mensuel. Copiez le NexusQL généré, collez-le dans le bloc Biron Query de Zapier, puis remplacez les dates statiques par les variables produites à l’étape précédente.
Ajouter la condition suivant à la requête pour filtrer automatiquement et ne retourner que les boutiques ayant dépassé leur objectif. (A adapter aux noms de vos métriques dans la requête)
WHERE `CA HT Mois En Cours` >= `Objectif CA HT`Boucle — Looping by Zapier
Section intitulée « Boucle — Looping by Zapier »Ajoutez un bloc Looping by Zapier en lui passant uniquement les noms de boutiques issus de la requête précédente.
La boucle itère sur chaque boutique ayant dépassé son objectif et exécute les quatre étapes suivantes pour chacune d’elles.
Check stockage — Storage by Zapier
Section intitulée « Check stockage — Storage by Zapier »Pour chaque boutique, récupérez la valeur shop_reached_target_[Nom Boutique] dans le Zapier Storage.
Si cette clé existe, la boutique a déjà été notifiée ce mois-ci. Si elle est absente, la boutique vient d’atteindre son objectif.
Filtre — Filter by Zapier
Section intitulée « Filtre — Filter by Zapier »Ajoutez un bloc Filter avec la condition suivante :
- Continuer uniquement si
shop_reached_target_[Nom Boutique]n’existe pas dans le stockage
Les boutiques déjà notifiées sont stoppées ici. Les nouvelles passent à l’étape suivante.
Notification — Slack
Section intitulée « Notification — Slack »Ajoutez un bloc Slack et configurez :
- Channel : le canal où envoyer la célébration
- Message Text : message indiquant que la boutique a atteint son objectif mensuel, avec les variables CA et objectif issues de la requête Biron
Écriture stockage — Storage by Zapier
Section intitulée « Écriture stockage — Storage by Zapier »Une fois le message envoyé, écrivez la clé shop_reached_target_[Nom Boutique] dans le Zapier Storage pour bloquer les notifications suivantes jusqu’à la réinitialisation mensuelle.
Zap de réinitialisation
Section intitulée « Zap de réinitialisation »Ce Zap efface chaque mois toutes les clés de mémoire pour permettre au Zap principal de repartir à zéro.
Trigger — Schedule by Zapier
Section intitulée « Trigger — Schedule by Zapier »Configurez un bloc Schedule by Zapier :
- Frequency : Every Month
- Day : 1
- Time : 2:00 AM
Nettoyage du stockage — Code by Zapier
Section intitulée « Nettoyage du stockage — Code by Zapier »Ajoutez un bloc Code by Zapier (Python). Utilisez le prompt suivant pour générer le code, puis collez le résultat dans le bloc :
Je veux nettoyer des données stockées dans le Zapier Storage.J'ai des entrées dont le nom commence par shop_reached_target_ et je veuxtoutes les supprimer automatiquement.
Écris-moi le code Python pour une étape "Code by Zapier" qui :1. Se connecte au Zapier Storage avec une clé secrète que j'ajouterai dans le code2. Récupère toutes les entrées stockées3. Supprime uniquement celles dont le nom commence par shop_reached_target_Résultat attendu
Section intitulée « Résultat attendu »Dès qu’une boutique franchit son objectif mensuel, votre équipe reçoit une notification Slack — une seule fois par mois, quelle que soit la fréquence d’exécution du Zap. Le 1er de chaque mois, la mémoire est effacée et le cycle recommence.