Stripe + Brevo-integration

Stripe + Brevo

Anslut Stripes betalningsdata till Brevos engagemangslager. Varje betalningshändelse – prenumeration skapad, betalning misslyckad, återbetalning utfärdad – blir en utlösare för riktade meddelanden.

Använda MCP-servrar

ServerPaketAuthSyfte
Stripe MCP@stripe/mcpAPI-nyckelBetalningar, prenumerationer, kunder, fakturor, produkter, kunskapsbas
Brevo MCPmcp.brevo.com/v1/brevo/mcpTokenKontakter, e-post, SMS, WhatsApp, kampanjer, händelsespårning

Inställning

Steg 1: Anslut båda MCP-servrarna

{
"mcpServers": {
"stripe": {
"command": "npx",
"args": ["-y", "@stripe/mcp"],
"env": {
"STRIPE_SECRET_KEY": "sk_live_your-stripe-key"
}
},
"brevo": {
"command": "npx",
"args": [
"mcp-remote",
"https://mcp.brevo.com/v1/brevo/mcp",
"--header",
"Authorization: Bearer ${BREVO_MCP_TOKEN}"
],
"env": {
"BREVO_MCP_TOKEN": "your-brevo-mcp-token"
}
}
}
}

Steg 2: Verifiera

> Visa mina Stripe-prenumerationer skapade den här veckan
> Lista mina Brevo-e-postmallar

Användningsfall 1: Betalningshändelsekampanjagent

Mappa Stripe-händelser till Brevo-engagemang:

---
name: stripe-payment-campaigns
description: Trigger Brevo campaigns from Stripe payment events
version: 1.0.0
temperature: 0.2
tools:
- stripe
- brevo_contacts
- brevo_email_campaign_management
- brevo_templates
- brevo_sms_campaigns
triggers:
- event: payment_intent.succeeded
- event: invoice.payment_failed
- event: customer.subscription.created
- event: customer.subscription.deleted
- event: charge.refunded
---
# Payment Event Campaign Agent
Listen for Stripe payment events and trigger the appropriate
Brevo engagement campaign.
## Event-to-Campaign Mapping
| Stripe Event | Brevo Action | Timing |
|-------------|-------------|--------|
| `payment_intent.succeeded` | Send receipt + thank you email | Immediate |
| `invoice.payment_failed` | Send payment failed email + SMS | Immediate |
| `invoice.payment_failed` (2nd attempt) | Send urgent SMS with update link | +24h |
| `customer.subscription.created` | Welcome sequence (3 emails over 7 days) | Immediate |
| `customer.subscription.updated` | Plan change confirmation email | Immediate |
| `customer.subscription.deleted` | Cancellation survey + win-back sequence | Immediate + 7 days |
| `charge.refunded` | Refund confirmation + feedback request | Immediate |
| `invoice.upcoming` | Renewal reminder with usage summary | 3 days before |
## Failed Payment Recovery
Critical revenue recovery flow:
1. **Attempt 1 fails**: Email with "Update payment method" CTA
2. **+24 hours**: SMS with direct link to billing portal
3. **+72 hours**: Email from founder: "We don't want to lose you"
4. **+7 days (final)**: Last chance email with grace period deadline
## Rules
- ALWAYS sync Stripe customer email to Brevo before sending
- NEVER expose full payment details in emails (last 4 digits only)
- Track events: stripe_payment_email_sent, stripe_recovery_success
- For failed payments, stop sequence immediately if payment succeeds

Användningsfall 2: Prenumerationslivscykelagent

Hantera hela prenumerationsresan:

---
name: stripe-subscription-lifecycle
description: Manage subscription engagement from signup through renewal
version: 1.0.0
temperature: 0.3
tools:
- stripe
- brevo_contacts
- brevo_email_campaign_management
- brevo_segments
- brevo_templates
triggers:
- schedule: "0 8 * * *"
---
# Subscription Lifecycle Agent
Daily check of subscription states to drive engagement:
## Daily Tasks
1. **New subscriptions (last 24h)**
- Create/update Brevo contact with plan details
- Add to plan-specific segment
- Trigger onboarding sequence
2. **Renewals coming (next 7 days)**
- Send renewal reminder with usage summary
- For annual plans: send "year in review" email
3. **Trials expiring (next 3 days)**
- Send trial-to-paid conversion email
- SMS reminder on last day
4. **Recently churned (last 7 days)**
- Add to win-back segment
- Schedule win-back sequence (day 7, 14, 30)
## Brevo Attributes from Stripe
| Stripe Data | Brevo Attribute |
|------------|-----------------|
| subscription.plan.name | PLAN_NAME |
| subscription.current_period_end | RENEWAL_DATE |
| subscription.status | SUBSCRIPTION_STATUS |
| customer.currency | CURRENCY |
| invoice.amount_paid (sum) | LIFETIME_REVENUE |
| subscription.created | SUBSCRIPTION_START |
## Rules
- ALWAYS use customer's currency when displaying amounts
- Segment by plan tier for differentiated messaging
- Track MRR impact of each campaign for ROI reporting

Exempel: Orkestrering i realtid

Du: "Jag ser att vi hade 5 misslyckade betalningar idag. Kontrollera vilka
som är prenumerationskunder och starta återvinningssekvensen."
Claude: Kontrollerar Stripe för misslyckade betalningar idag...
[Använder stripe MCP för att lista nyliga misslyckade fakturor]
Hittade 5 misslyckade betalningar:
- 3 är prenumerationskunder (månadsplaner)
- 2 är engångsbetalningar
För de 3 prenumerationskunderna:
[Använder brevo_contacts för att verifiera att kontakter finns]
[Använder brevo_email_campaign_management för att skicka e-post om misslyckad betalning]
[Använder brevo_sms_campaigns för att köa SMS-uppföljningar för +24h]
Återvinningssekvens startad för 3 kunder:
- [email protected], Pro-plan ($49/mån), e-post skickat
- [email protected], Business-plan ($99/mån), e-post skickat
- [email protected], Pro-plan ($49/mån), e-post skickat
- SMS-uppföljningar schemalagda till imorgon om inte löst
För de 2 engångsbetalningarna:
[Använder brevo_email_campaign_management för att skicka e-post om nytt försök]
- Enkla e-post för nytt försök skickade

Nästa steg

AI-assistent

Hej! Fråga mig om dokumentationen.

Börja gratis med Brevo