>
Pagamentos & Checkout ChatGPT / GPT-4o

Checkout de Assinatura Stripe com Webhook Idempotente

Assinaturas Stripe no Node.js/TypeScript com checkout sessions, portal e webhook idempotente.

EPEquipe Prompt Salvo ·Criado em 11 de set. de 2026 ·Atualizado em 24 de set. de 2026
0cópias
0joinhas
0favoritos

O prompt

Escreva o backend completo em Node.js (TypeScript) para gerenciar assinaturas recorrentes com a Stripe API.

Parâmetros:
- Nome do Plano: {{nome_plano}}
- Preço da Assinatura: {{moeda}} {{valor_mensal}}/mês

Requisitos Críticos:
1. Endpoint POST /api/checkout/session que cria uma Stripe Checkout Session para o plano {{nome_plano}} no valor de {{moeda}} {{valor_mensal}}/mês, com customer_email, metadata e modo 'subscription'.
2. Endpoint POST /api/customer-portal para redirecionar o assinante ao Customer Portal oficial da Stripe (gerenciar cartão e cancelamento).
3. Rota de webhook POST /api/webhooks/stripe com validação rigorosa da assinatura do header (stripe-signature) usando o secret da chave.
4. Tratamento idempotente dos eventos:
   - customer.subscription.created
   - invoice.payment_succeeded
   - customer.subscription.deleted (rebaixando o plano no banco)
5. Proteção contra requisições duplicadas armazenando o event.id processado no banco de dados.

Como usar

  1. Substitua {{nome_plano}}, {{moeda}} e {{valor_mensal}}.
  2. Cole no ChatGPT/Cursor; crie antes o produto + preço no dashboard da Stripe e use os IDs reais no código.
  3. Defina STRIPE_SECRET_KEY e STRIPE_WEBHOOK_SECRET como variáveis de ambiente.
  4. Teste local: stripe listen --forward-to localhost:3000/api/webhooks/stripe para capturar eventos de teste.

Exemplo de saída

Backend (~200 linhas): POST /api/checkout/session criando Checkout Session de assinatura com metadata, POST /api/customer-portal redirecionando ao portal oficial da Stripe e rota de webhook validando stripe-signature e processando created/payment_succeeded/deleted de forma idempotente — event.id persistido contra duplicatas.

Guias relacionados

Prompts para programação e revisão de códigoBoilerplate, refatoração e code review com auditoria de segurança: como pedir código que compila de primeira.Prompt chains: encadear prompts para tarefas complexasQuando um prompt não basta: decomponha o trabalho em etapas com saída de uma alimentando a entrada da outra.Segurança e privacidade ao usar IAs com dados pessoaisO que nunca colar em um chat de IA, como anonimizar dados sensíveis e o que a LGPD exige do seu fluxo.
Usar na extensão