Integración Stripe + Brevo
Stripe + Brevo
Conecta los datos de pago de Stripe a la capa de engagement de Brevo. Cada evento de pago, suscripción creada, pago fallido, reembolso emitido, se convierte en un disparador para mensajes dirigidos.
Servidores MCP Utilizados
| Servidor | Paquete | Autenticación | Propósito |
|---|---|---|---|
| Stripe MCP | @stripe/mcp | Clave de API | Pagos, suscripciones, clientes, facturas, productos, base de conocimiento |
| Brevo MCP | mcp.brevo.com/v1/brevo/mcp | Token | Contactos, email, SMS, WhatsApp, campañas, seguimiento de eventos |
Configuración
Paso 1: Conectar Ambos Servidores MCP
{ "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" } } }}Paso 2: Verificar
> Muéstrame las suscripciones de Stripe creadas esta semana> Lista mis plantillas de email de BrevoCaso de Uso 1: Agente de Campaña por Evento de Pago
Mapea eventos de Stripe a engagement de Brevo:
---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 succeedsCaso de Uso 2: Agente de Ciclo de Vida de Suscripciones
Gestiona el recorrido completo de la suscripción:
---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 reportingEjemplo: Orquestación en Tiempo Real
Tú: "Veo que tuvimos 5 pagos fallidos hoy. Verifica cuáles son clientes de suscripción e inicia la secuencia de recuperación."
Claude: Verificando Stripe por pagos fallidos de hoy...[Usa Stripe MCP para listar facturas fallidas recientes]
Encontré 5 pagos fallidos:- 3 son clientes de suscripción (planes mensuales)- 2 son pagos únicos
Para los 3 clientes de suscripción:[Usa brevo_contacts para verificar que los contactos existen][Usa brevo_email_campaign_management para enviar email de pago fallido][Usa brevo_sms_campaigns para programar seguimientos SMS a +24h]
Secuencia de recuperación iniciada para 3 clientes:- [email protected], Plan Pro ($49/mes), email enviado- [email protected], Plan Business ($99/mes), email enviado- [email protected], Plan Pro ($49/mes), email enviado- Seguimientos SMS programados para mañana si no se resuelvenPróximos Pasos
- Shopify + Brevo, Integración de comercio electrónico
- HubSpot + Brevo, Integración CRM
- API Personalizada + Brevo, Construye tu propio conector