Você liga o checkout do Stripe em uma tarde. Cobrar recorrente, aplicar desconto, fazer upgrade no meio do ciclo e estornar período parcial levam semanas, e é aí que pagamento vira tarefa de suporte.

Peças do SaaS que cobra

Customer: um customer por conta de cliente, com metadados de empresa e de dono. A referência da API do Stripe (Stripe, 2025) descreve a ligação entre customer, subscription e invoice.

Webhook: invoice.paid, customer.subscription.updated e charge.refund chegam por webhook. Valide o signing secret e responda rápido, gravando o evento e processando depois.

Idempotência: mande idempotency key em toda chamada de cobrança. O retry de rede vira uma cobrança só, e o cliente não vê cartão cobrado duas vezes.

Partes que dão trabalho

Preço por uso: Stripe Billing (Stripe, 2025) aceita métrica de uso e cobra por ela. O time precisa expor a métrica de forma que o cliente confira a conta.

Escopo de cartão: use Elements ou Checkout hospedado para o dado de cartão não tocar seu servidor. O padrão PCI DSS v4.0.1 (PCI Security Standards Council, 2024) dita esse recorte de escopo.

Roteiro de 30 dias

Semana 1: assinatura mensal e painel de cartão. Semana 2: webhook com idempotência e reprocessamento de eventos. Semana 3: prorata de upgrade e estorno parcial. Semana 4: falha de cartão, cartão expirado e reembolso aprovado. Marty Cagan, em Inspired (2017), trata pagamento como parte do produto. Cobrança que falha aparece como churn na receita.