Интеграция Stripe + Brevo
Stripe + Brevo
Подключите платёжные данные Stripe к слою вовлечения Brevo. Каждое платёжное событие, создание подписки, неудачный платёж, возврат, становится триггером для целевых сообщений.
Используемые MCP-серверы
| Сервер | Пакет | Аутентификация | Назначение |
|---|---|---|---|
| Stripe MCP | @stripe/mcp | API-ключ | Платежи, подписки, покупатели, счета, товары, база знаний |
| Brevo MCP | mcp.brevo.com/v1/brevo/mcp | Токен | Контакты, email, SMS, WhatsApp, кампании, отслеживание событий |
Настройка
Шаг 1: Подключите оба 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" } } }}Шаг 2: Проверка
> Покажи мне подписки Stripe, созданные на этой неделе> Перечисли мои email-шаблоны BrevoСценарий использования 1: Агент кампании по платёжным событиям
Сопоставьте события Stripe с вовлечением в 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 succeedsСценарий использования 2: Агент жизненного цикла подписки
Управляйте полным путём подписки:
---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 reportingПример: Оркестрация в реальном времени
Вы: "У нас сегодня 5 неудачных платежей. Проверь, кто из них является клиентом по подписке, и запусти последовательность восстановления."
Claude: Проверяю Stripe на неудачные платежи сегодня...[Использует MCP Stripe для получения недавних неудачных счетов]
Найдено 5 неудачных платежей:- 3 клиента по подписке (ежемесячные планы)- 2 разовых платежа
Для 3 клиентов по подписке:[Использует brevo_contacts для проверки существующих контактов][Использует brevo_email_campaign_management для отправки письма о неудачном платеже][Использует brevo_sms_campaigns для постановки в очередь SMS через +24ч]
Последовательность восстановления запущена для 3 клиентов:- [email protected], Тариф Pro ($49/мес), письмо отправлено- [email protected], Тариф Business ($99/мес), письмо отправлено- [email protected], Тариф Pro ($49/мес), письмо отправлено- SMS-напоминания запланированы на завтра при отсутствии оплаты
Для 2 разовых платежей:[Использует brevo_email_campaign_management для отправки писем с запросом повторной оплаты]- Отправлены простые письма с запросом повтораСледующие шаги
- Shopify + Brevo, Интеграция с e-commerce
- HubSpot + Brevo, Интеграция с CRM
- Custom API + Brevo, Создайте собственный коннектор