SaaS
MRR/ARR tracker semanal sin pagar ProfitWell. Workflow lee suscripciones activas + interval (month/year) y calcula MRR consolidado.
Integración n8n
La integración Stripe + Google Sheets vía n8n es el patrón más solicitado por SaaS, ecommerce y autónomos hispanos que facturan en línea. Permite que cada pago, suscripción, refund o nuevo cliente se registre automáticamente en una hoja de cálculo viva sin abrir el dashboard de Stripe. Casos típicos: tracker MRR/ARR en tiempo real, informes IVA trimestrales para tu gestoría, alertas Slack cuando entra un pago grande, sincronizar leads de checkout con tu CRM. La consulta 'integración de stripe con google sheets' acumula 130 búsquedas mensuales sin landing dedicada en español hasta ahora. Esta página agrupa los workflows n8n testeados que conectan ambos servicios, junto con casos de uso, requisitos técnicos y errores frecuentes que evitan que tu primer workflow falle en producción. Compatible con Stripe Estándar, Connect y Billing.
Captura eventos Stripe (payment_intent.succeeded, customer.created, invoice.paid, charge.refunded) vía webhook y los escribe como filas en una hoja Google Sheets que actúa como base de datos viva. Cada evento aparece en segundos en la hoja, lo que permite a tu equipo financiero o comercial trabajar sin acceso al dashboard Stripe.
1) Crea un endpoint webhook n8n. 2) Configura el webhook Stripe (Dashboard → Developers → Webhooks) apuntando al endpoint con los eventos que necesites. 3) En n8n, parsea el JSON Stripe y mapea los campos a columnas Sheets (amount, currency, customer_email, status, created). 4) Usa el nodo Google Sheets Append para añadir cada evento como nueva fila. Verificación firma webhook con Crypto node (HMAC SHA-256) recomendada para seguridad.
| Workflow | Trigger | Dificultad |
|---|---|---|
| Stripe Tax Summary → Google Sheets + Slack alerts | Cron diario + Stripe API | Intermedio |
| Stripe customer.created → Sheets leads | Stripe webhook customer.created | Básico |
| Stripe payment_intent.succeeded → Sheets transactions log | Stripe webhook | Básico |
| Stripe invoice.paid → Sheets + send factura PDF email | Stripe webhook invoice.paid | Avanzado |
| Stripe refund → alerta urgente Slack + log Sheets | Stripe webhook charge.refunded | Intermedio |
| Sync Stripe subscriptions → Sheets MRR tracker | Cron horario | Avanzado |
SaaS
MRR/ARR tracker semanal sin pagar ProfitWell. Workflow lee suscripciones activas + interval (month/year) y calcula MRR consolidado.
Ecommerce
Cuadre diario ventas: cada pago Stripe → fila Sheets + total agregado por día comparable con tu pasarela física.
Autónomos / freelance
Libro registro IVA: cada factura Stripe se escribe en Sheets con base imponible + IVA + total para presentar 303 a la gestoría.
Agencias
Tracking facturación por cliente: cada pago etiquetado con metadata.client_id se segrega en hojas por cliente automáticamente.
Cuenta Stripe activa con permisos Owner o Admin
Necesario para crear webhooks. Stripe Connect requiere permisos extra Connect Express/Standard.
Endpoint webhook accesible (n8n.cloud o self-hosted con HTTPS)
Stripe rechaza HTTP. Si self-host, usa Cloudflare Tunnel o ngrok para desarrollo.
Credenciales OAuth Google Sheets + hoja preparada con headers
Recomendado crear hoja dedicada 'Stripe_Events' con columnas: timestamp | event_type | amount | currency | customer_email | metadata.
Stripe API key (Secret) para llamadas activas (refunds, queries)
Restringir permisos con Restricted Key: solo Read para queries, Write solo si haces refunds desde n8n.
⚠ Webhook devuelve 200 pero el evento no llega a Sheets
Verificar firma HMAC SHA-256 con header Stripe-Signature; si falla, el nodo Crypto debe devolver 400 y Stripe reintentará.
⚠ Amount aparece como 12500 cuando esperabas 125€
Stripe expresa montos en céntimos (entero). Dividir amount / 100 antes de escribir en Sheets, o usar fórmula =A1/100 en la columna.
⚠ Duplicados en Sheets cuando Stripe reintenta el webhook
Usar Stripe event ID (evt_xxx) como deduplication key. Antes de Append, ejecutar Lookup por event_id; skip si existe.
⚠ Webhook timeout (Stripe espera <30s)
Procesar evento de forma asíncrona: responder 200 inmediato y encolar trabajo pesado en cola interna (Redis, n8n queue mode).
⚠ Refund crea fila nueva en vez de actualizar la original
Capturar charge.refunded con el charge_id, hacer Lookup en Sheets + Update fila existente cambiando status a 'refunded' + amount_refunded.
No. Webhooks y API son gratuitos en Stripe; solo pagas comisiones por transacción (1.4% UE + 0.25€).
Sí, crea webhook separado apuntando al mismo endpoint n8n y usa env var STRIPE_MODE para filtrar en el workflow.
El workflow Stripe Tax Summary genera mensualmente filas con base imponible + IVA por país, exportable como CSV para el modelo 303 español.
¿Necesitas automatizar procesos en tu equipo? Hablemos de tu proyecto sin compromiso.
Solicitar consultoríaAprende a construir estos workflows con nuestro Sprint 30 días y companion IA.
Ver formación