flowspag / tutoriels / stripe-sheets-brevo
№ 003 12 min · intermédiaire 4 287 lectures

Stripe Google Sheets → Brevo en 12 minutes

Encaisse un paiement Stripe, log automatiquement dans Google Sheets, déclenche un email Brevo personnalisé. 3 modules Make. 0€/mois. Testé sur mes vrais comptes.

makestripebrevogoogle-sheets

Ce qu’on va construire

Un client paie sur ton site Stripe → Make capte l’événement → la ligne apparaît dans ton Google Sheets → Brevo envoie un email transactionnel personnalisé. Tout ça sans serveur, sans code, sans prise de tête.

Le workflow complet tourne depuis 47 jours sur mes comptes de prod. Zéro erreur. 0 € de coûts mensuels sur le free tier Make.

Prérequis

Avant de démarrer, vérifie que tu as :

💡
Pas encore de template Brevo ?

Va dans Brevo → Transactionnel → Templates et crée un template simple avec les variables PRENOM, MONTANT, PRODUIT. Note son ID (ex : 42).

Configurer le webhook Stripe

01
Activer le mode test Stripe

Dans ton dashboard Stripe, bascule en mode Test (switch en haut à gauche). Tu travailleras avec de fausses cartes jusqu’au test final.

02
Créer le webhook dans Make

Dans Make, crée un nouveau scénario. Ajoute un module Webhooks → Custom Webhook. Copie l’URL générée — elle ressemble à https://hook.eu1.make.com/abc123...

03
Enregistrer le webhook dans Stripe

Dans Stripe → Développeurs → Webhooks → Ajouter un endpoint. Colle ton URL Make. Pour l’événement, sélectionne uniquement checkout.session.completed.

Le payload que Make recevra à chaque paiement réussi :

stripe-webhook-payload.json
{
  "type": "checkout.session.completed",
  "data": {
    "object": {
      "id": "cs_test_a1B2c3...",
      "customer_email": "client@email.com",
      "amount_total": 4900,
      "currency": "eur",
      "metadata": { "product_name": "Starter Kit" }
    }
  }
}
⚠️
Le piège du montant

Stripe envoie amount_total en centimes. Tu dois diviser par 100 dans Make pour avoir des euros. J’ai oublié ça la première fois — j’avais des prix ×100 dans mon Sheets. 😅

Construire le scénario Make

04
Chaîner les modules

Depuis le webhook, ajoute deux branches en parallèle :

  • Google Sheets → Add a Row : log la transaction
  • Brevo → Send a Transactional Email : déclenche l’email client
05
Configurer le filtre (optionnel)

Pour n’envoyer l’email que pour les montants > 50 €, ajoute un module Filter entre le webhook et Brevo :

  • Condition : {{divide(1.data.object.amount_total; 100)}}Greater than50

Logger dans Google Sheets

06
Mapper les champs

Dans le module Sheets → Add a Row, mappe :

ColonneValeur Make
Date{{now}}
Email{{1.data.object.customer_email}}
Montant (€){{divide(1.data.object.amount_total; 100)}}
Produit{{1.data.object.metadata.product_name}}
Stripe ID{{1.data.object.id}}

Envoyer l’email Brevo

07
Configurer le module Brevo

Dans Brevo → Send a Transactional Email, remplis :

brevo-mapping.json
{
  "to": "{{1.data.object.customer_email}}",
  "templateId": 42,
  "params": {
    "PRENOM": "{{1.data.object.metadata.first_name}}",
    "MONTANT": "{{divide(1.data.object.amount_total; 100)}} €",
    "PRODUIT": "{{1.data.object.metadata.product_name}}"
  }
}

Tester en conditions réelles

08
Déclencher un paiement test

Dans Stripe mode Test, utilise la carte 4242 4242 4242 4242 (n’importe quelle date future, CVC quelconque). Complète le checkout — Make doit recevoir le webhook dans les 2 secondes.

09
Vérifier les logs Make

Dans Make → Historique des exécutions, tu verras chaque run avec le statut (✓ ou ✗) et le détail de chaque bundle. Si l’exécution échoue, les logs te montrent exactement quel module a planté et pourquoi.

💡
Activer le mode temps réel

Pendant les tests, active Run once dans Make (bouton en bas à gauche). Make attend un déclenchement en direct et te montre les données en temps réel — beaucoup plus pratique que de deviner.

Les 4 pièges à éviter

  1. Le montant en centimes — divise toujours amount_total par 100.
  2. Les métadonnées Stripe — elles ne sont pas automatiques. Tu dois les passer dans ton checkout.session.create : metadata: { product_name: "Starter Kit", first_name: "Adrien" }.
  3. Le rate limiting Brevo — sur le free tier, max 300 emails/jour. Pour les volumes plus élevés, passe sur le plan Starter (25 €/mois).
  4. L’idempotence — Stripe peut envoyer le même webhook plusieurs fois (retry sur timeout). Pour éviter les doublons, vérifie dans Sheets si l’id Stripe existe déjà avant d’ajouter la ligne.
Dans la même veine

Tutos connexes.

La newsletter

Un workflow utile
chaque semaine.

Pas de spam. Pas de théorie. Un workflow testé, une explication claire, un template à copier.

№ 048 · Sort dans 3 jours
Automatise ton onboarding client
avec Make + Notion + Brevo
Désabonnement en 1 clic. Aucune pub. Aucun sponsor.