Stripe + Brevo-integrasjon
Stripe + Brevo
Koble Stripes betalingsdata til Brevos engasjementslag. Hver betalingshendelse, abonnement opprettet, betaling mislyktes, refusjon utstedt, blir en utløser for målrettet meldingsutsendelse.
MCP-servere som brukes
| Server | Pakke | Autentisering | Formål |
|---|---|---|---|
| Stripe MCP | @stripe/mcp | API-nøkkel | Betalinger, abonnementer, kunder, fakturaer, produkter, kunnskapsbase |
| Brevo MCP | mcp.brevo.com/v1/brevo/mcp | Token | Kontakter, e-post, SMS, WhatsApp, kampanjer, hendelsessporing |
Oppsett
Trinn 1: Koble til begge MCP-servere
{ "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" } } }}Trinn 2: Bekreft
> Vis meg Stripe-abonnementene mine opprettet denne uken> List opp mine Brevo-e-postmalerBrukstilfelle 1: Betalingshendelseskampanjeagent
Kartlegg Stripe-hendelser til Brevo-engasjement:
---name: stripe-payment-campaignsdescription: Trigger Brevo campaigns from Stripe payment eventsversion: 1.0.0temperature: 0.2tools: - stripe - brevo_contacts - brevo_email_campaign_management - brevo_templates - brevo_sms_campaignstriggers: - 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 appropriateBrevo 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" CTA2. **+24 hours**: SMS with direct link to billing portal3. **+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 succeedsBrukstilfelle 2: Abonnementslivssyklusagent
Administrer hele abonnementsreisen:
---name: stripe-subscription-lifecycledescription: Manage subscription engagement from signup through renewalversion: 1.0.0temperature: 0.3tools: - stripe - brevo_contacts - brevo_email_campaign_management - brevo_segments - brevo_templatestriggers: - 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 reportingEksempel: Sanntidsorkestrering
Du: "Jeg ser at vi hadde 5 mislykkede betalinger i dag. Sjekk hvilke som er abonnementskunder og start gjenopprettingssekvensen."
Claude: Sjekker Stripe for mislykkede betalinger i dag...[Bruker stripe MCP for å liste opp nylige mislykkede fakturaer]
Fant 5 mislykkede betalinger:- 3 er abonnementskunder (månedlige planer)- 2 er engangbetalinger
For de 3 abonnementskundene:[Bruker brevo_contacts for å bekrefte at kontakter eksisterer][Bruker brevo_email_campaign_management for å sende e-post om mislykket betaling][Bruker brevo_sms_campaigns for å sette opp SMS-oppfølginger for +24t]
Gjenopprettingssekvens startet for 3 kunder:- [email protected], Pro-plan ($49/mnd), e-post sendt- [email protected], Business-plan ($99/mnd), e-post sendt- [email protected], Pro-plan ($49/mnd), e-post sendt- SMS-oppfølginger planlagt til i morgen hvis ikke løst
For de 2 engangbetalingene:[Bruker brevo_email_campaign_management for å sende e-post om betalingsforsøk]- Enkle gjenforsøk-e-poster sendtNeste steg
- Shopify + Brevo, E-handelsintegrasjon
- HubSpot + Brevo, CRM-integrasjon
- Egendefinert API + Brevo, Bygg din egen koblingsfunksjon