Stripe - Pagamentos

Configure pagamentos, assinaturas e webhooks para automatizar sua receita

Pagamentos Unicos Assinaturas Webhooks Checkout

Por Que Stripe + N8N?

O Stripe e a plataforma de pagamentos mais usada por SaaS, e-commerces e produtos digitais. Com N8N, voce pode automatizar todo o ciclo de vida do cliente pagante.

Notificacoes

Avise no Slack/Discord quando um pagamento for aprovado ou falhar

Provisioning

Crie contas automaticamente quando assinatura for confirmada

Notas Fiscais

Emita NFe automaticamente integrando com Focus NFe ou similares

Dunning

Envie lembretes quando cartao falhar ou assinatura estiver para vencer

1

Criar Conta Stripe

Cadastro e configuracao inicial

Acesse stripe.com

  1. 1. Acesse dashboard.stripe.com e clique em "Start now"
  2. 2. Crie uma conta com email e senha
  3. 3. Voce estara em Test Mode por padrao (ideal para desenvolvimento)

Test Mode vs Live Mode

Sempre desenvolva em Test Mode primeiro. Cartoes de teste: 4242 4242 4242 4242 (sucesso) ou 4000 0000 0000 0002 (recusado).

2

Obter API Keys

Chaves para autenticar suas requisicoes

Developers → API Keys

  1. 1. No dashboard, clique em Developers no canto superior direito
  2. 2. Selecione API Keys
  3. 3. Voce vera duas chaves:

Publishable Key

Comeca com pk_test_ ou pk_live_

Usada no frontend (Checkout, Elements)

Secret Key

Comeca com sk_test_ ou sk_live_

Nunca exponha! Usada no backend/N8N

CUIDADO com a Secret Key

A Secret Key permite fazer cobranças, reembolsos e acessar dados de clientes. Nunca commite em repositorios ou exponha no frontend.

3

Configurar no N8N

Adicionar credencial do Stripe

Criar Credencial

  1. 1. No N8N, va em Credentials → Add Credential
  2. 2. Busque por Stripe API
  3. 3. Cole a Secret Key (começa com sk_)
  4. 4. Clique em Save

Pronto!

A credencial funciona tanto para Test Mode quanto Live Mode. Basta trocar a chave quando for para producao.

4

Configurar Webhooks

Receber eventos do Stripe em tempo real

Eventos Mais Importantes

Pagamentos

  • payment_intent.succeeded
  • payment_intent.payment_failed
  • charge.refunded

Assinaturas

  • customer.subscription.created
  • customer.subscription.updated
  • customer.subscription.deleted
  • invoice.payment_failed

Opcao A: Stripe Trigger (Recomendado)

  1. 1. Use o node Stripe Trigger no N8N
  2. 2. Selecione os eventos que deseja escutar
  3. 3. O N8N registra o webhook automaticamente no Stripe

Opcao B: Webhook Manual

  1. 1. No Stripe, va em Developers → Webhooks
  2. 2. Clique em Add endpoint
  3. 3. Cole a URL do Webhook do N8N
  4. 4. Selecione os eventos e clique em Add endpoint

Webhook Signing Secret

Se criar webhook manual, copie o Signing Secret (whsec_...) para validar que os eventos realmente vem do Stripe. O Stripe Trigger faz isso automaticamente.

5

Operacoes Comuns no N8N

O que voce pode fazer com o node Stripe

Customer

  • • Create - Criar cliente
  • • Get - Buscar por ID
  • • Update - Atualizar dados
  • • Delete - Remover cliente
  • • Get All - Listar clientes

Charge

  • • Create - Criar cobranca
  • • Get - Buscar cobranca
  • • Update - Atualizar metadata
  • • Get All - Listar cobranças

Subscription

  • • Create - Criar assinatura
  • • Get - Buscar assinatura
  • • Update - Alterar plano
  • • Delete - Cancelar

Invoice

  • • Get - Buscar fatura
  • • Get All - Listar faturas

Exemplos Praticos

1. Notificar no Slack quando venda for aprovada

// Stripe Trigger: payment_intent.succeeded
// → Slack: Send Message

// Mensagem do Slack:
":moneybag: Nova venda de R$ {{ $json.data.object.amount / 100 }}"
"Cliente: {{ $json.data.object.receipt_email }}"
"ID: {{ $json.data.object.id }}"

2. Criar usuario quando assinatura iniciar

// Stripe Trigger: customer.subscription.created
// → HTTP Request: POST para seu backend

// Body do request:
{
  "email": "{{ $json.data.object.customer_email }}",
  "stripe_customer_id": "{{ $json.data.object.customer }}",
  "subscription_id": "{{ $json.data.object.id }}",
  "plan": "{{ $json.data.object.items.data[0].price.id }}",
  "status": "{{ $json.data.object.status }}"
}

3. Enviar email de recuperacao quando pagamento falhar

// Stripe Trigger: invoice.payment_failed
// → Stripe: Get Customer
// → Gmail: Send Email

// Buscar cliente pelo ID:
Customer ID: {{ $json.data.object.customer }}

// Email de recuperacao:
To: {{ $('Stripe').item.json.email }}
Subject: "Problema com seu pagamento"
Body: "Nao conseguimos processar seu pagamento.
Atualize seus dados em: {{ $json.data.object.hosted_invoice_url }}"

4. Emitir nota fiscal via API (Focus NFe)

// Stripe Trigger: payment_intent.succeeded
// → HTTP Request: POST Focus NFe API

// Body para emissao de NFS-e:
{
  "prestador": { "cnpj": "SEU_CNPJ" },
  "tomador": {
    "email": "{{ $json.data.object.receipt_email }}"
  },
  "servico": {
    "valor_servicos": {{ $json.data.object.amount / 100 }},
    "descricao": "Servico de automacao"
  }
}

Payment Links & Checkout

O Stripe oferece formas de criar pagamentos sem precisar programar uma pagina de checkout:

Payment Links

Links prontos para compartilhar. Crie no dashboard sem codigo.

Ideal para: vendas simples, links em redes sociais, WhatsApp

Checkout Sessions

API para criar sessoes de checkout dinamicas via N8N.

Ideal para: checkout customizado, precos dinamicos

Criar Checkout Session via HTTP Request

// HTTP Request node
Method: POST
URL: https://api.stripe.com/v1/checkout/sessions
Authentication: Header Auth
Header: Authorization: Bearer sk_test_xxx

// Body (form-urlencoded):
line_items[0][price]: price_xxxxx
line_items[0][quantity]: 1
mode: payment
success_url: https://seusite.com/sucesso
cancel_url: https://seusite.com/cancelado

Troubleshooting

401 Unauthorized

Chave API incorreta ou usando chave de Test Mode em ambiente Live (ou vice-versa).

Webhook nao chega

Verifique se o workflow esta ativo. Em Developers → Webhooks, veja os logs de tentativas. Certifique-se que a URL do N8N e acessivel publicamente.

Webhook signature verification failed

O Signing Secret (whsec_) esta incorreto ou expirado. Regenere nas configuracoes do webhook.

No such customer / subscription

Esta buscando um recurso de Test Mode com chave Live ou vice-versa. IDs de teste comecam com cus_test_, sub_test_, etc.

Eventos Webhook Essenciais

Evento Quando Dispara Use Para
checkout.session.completed Cliente completou checkout Provisionar acesso, enviar confirmação
customer.subscription.created Nova assinatura criada Criar conta, dar acesso
customer.subscription.deleted Assinatura cancelada Remover acesso, pesquisa de churn
invoice.payment_succeeded Pagamento recorrente OK Renovar acesso, enviar recibo
invoice.payment_failed Pagamento falhou Email de recuperação, dunning
customer.subscription.trial_will_end Trial termina em 3 dias Lembrete de conversão

Proximo: YouTube API

Aprenda a automatizar uploads, gerenciar videos e buscar dados do YouTube

Continuar para YouTube