Cartões a expirar: como impedir que terminem as suas subscrições
Como as atualizações automáticas do Stripe tratam os cartões a expirar, o que falham e como emails prévios e uma página simples evitam renovações falhadas.
Todos os cartões têm uma data de validade, e todas as subscrições que duram mais do que um cartão acabam por lá chegar. Quando isso acontece, a renovação falha, muitas vezes com um cliente que não tem qualquer intenção de sair. Os cartões a expirar são uma das causas mais previsíveis de pagamentos falhados, o que faz deles uma das mais fáceis de tratar com antecedência.
Este guia explica o que o Stripe faz automaticamente, o que não consegue fazer e o processo simples que apanha o resto: encontrar os cartões prestes a expirar, enviar um email ao cliente antes da renovação e fazer com que atualizar o cartão demore um minuto.
O que acontece quando um cartão guardado expira
Quando cobra um cartão depois da data de validade, o banco emissor recusa-o, normalmente com o código de recusa expired_card (códigos de recusa do Stripe). Tentar de novo com os mesmos dados do cartão não ajuda. Ou os dados do cartão são atualizados, ou o cliente tem de fornecer um novo método de pagamento.
Há duas formas de obter os novos dados:
- A rede do cartão envia-os, através das atualizações automáticas de cartões (também chamadas card account updater).
- O cliente introdu-los, depois de lhe pedir.
Quer que o maior número possível de cartões seja tratado pelo primeiro caminho, e um segundo caminho fácil para os restantes.
Atualizações automáticas de cartões do Stripe
A visão geral dos cartões do Stripe explica como funcionam as atualizações automáticas de cartões. Quando o banco de um cliente emite um cartão de substituição (porque o antigo expirou, ou foi declarado perdido ou roubado), os bancos emissores participantes partilham os novos dados através das redes de cartões, e o Stripe atualiza o cartão guardado por si.
Pontos-chave da documentação do Stripe:
- Depende do banco emissor. Só os bancos emissores que participam nos programas de atualização das redes enviam atualizações.
- A cobertura varia por país. Nos EUA, o Stripe consegue atualizar a maioria dos cartões American Express, Visa, Mastercard e Discover. Fora dos EUA, o suporte varia.
- Não consegue saber antecipadamente que cartões serão atualizados. O Stripe diz que não é possível identificar que cartões suportam atualizações automáticas.
- Pode acompanhar as atualizações. O Stripe envia um webhook
payment_method.automatically_updatedquando um cartão é atualizado pela rede, incluindo a nova data de validade e os últimos quatro dígitos. Se o número do cartão mudou, a impressão digital (fingerprint) do cartão também muda.
O Stripe anunciou também uma cobertura alargada dos tokens de rede e do card account updater, incluindo atualizações em tempo real para algumas redes e regiões. Consulte o anúncio e a documentação para o âmbito atual nos seus mercados.
O que as atualizações automáticas falham
Mesmo com boa cobertura, alguns cartões a expirar não serão atualizados:
- O banco emissor não participa, ou não nesse país.
- O cliente fechou a conta ou mudou de banco; não há “cartão novo” para enviar.
- O cartão era um cartão pré-pago ou virtual de utilização única que não é reemitido.
- A atualização chega depois da tentativa de renovação.
Por isso, conte com as atualizações automáticas para reduzir o problema, não para o resolver.
Passo 1: encontrar os cartões prestes a expirar
Cada cartão guardado no Stripe tem exp_month e exp_year no objeto card do PaymentMethod. Uma tarefa diária ou semanal pode listar os clientes cujo cartão predefinido expira antes da próxima renovação.
Uma regra simples:
Flag a subscription when:
the default payment method is a card, and
the card expires before the next invoice date, and
no automatic update has been received for that card
Lembre-se de que um cartão é normalmente válido até ao último dia do mês de validade. Um cartão marcado 11/2026 deve continuar a funcionar a 20 de novembro de 2026 e falhar numa renovação em dezembro.
Escute payment_method.automatically_updated e retire um cartão da sua lista assim que a rede o atualizar. Não há razão para enviar um email a um cliente cujo cartão já foi corrigido.
Exemplo de calendário
| Data de renovação | Validade do cartão | Estado | Ação |
|---|---|---|---|
| 5 dez. | 11/2026 | Vai falhar | Email a meio de novembro |
| 20 nov. | 11/2026 | Ainda válido | Verificar de novo antes da próxima renovação |
| 3 jan. | 12/2026 | Vai falhar | Email a meio de dezembro |
| 5 dez. | 11/2026, atualizado pela rede | Corrigido | Nenhuma ação |
Estas linhas são exemplos hipotéticos para ilustrar.
Passo 2: enviar um email ao cliente antes da renovação
O Stripe pode fazer parte disto por si. Nas definições de emails para clientes, pode ativar os emails sobre cartões a expirar. É uma base razoável. Se quiser controlar o momento, o texto, o idioma, ou excluir os clientes cujos cartões já foram atualizados, envie os seus próprios emails.
Uma sequência antes da expiração que funciona bem para planos mensais:
| Quando | Notas | |
|---|---|---|
| Cerca de 2–3 semanas antes da renovação | “O seu cartão expira em breve” | Email principal |
| Cerca de 3 dias antes da renovação | Lembrete curto | Só se não tiver sido atualizado |
| Dia da renovação | Fluxo normal de pagamento falhado | Se a cobrança falhar |
Para planos anuais, comece mais cedo (por exemplo 30 dias antes da renovação) e inclua o montante da renovação, já que é maior.
Modelo: cartão a expirar em breve
Assunto: O seu cartão para [Produto] expira em breve
Olá [Nome próprio],
O [Marca do cartão] terminado em [1234] que usa para [Produto]
expira no fim de [Mês]. O seu próximo pagamento de [Montante]
é a [Data de renovação].
Para evitar qualquer interrupção, pode adicionar o seu novo cartão aqui:
[Atualizar o método de pagamento]
Se já recebeu um cartão de substituição do seu banco,
pode ter sido atualizado automaticamente. Pode verificar na
mesma página.
Obrigado,
[Nome do remetente]
Modelo: lembrete curto
Assunto: Lembrete: atualize o seu cartão antes de [Data de renovação]
Olá [Nome próprio],
Um lembrete rápido: o seu [Marca do cartão] terminado em [1234] expira antes
do seu próximo pagamento de [Produto] a [Data de renovação].
[Atualizar o método de pagamento]
Demora cerca de um minuto.
[Nome do remetente]
Mantenha estes emails simples e curtos. Ainda não são urgentes, e o tom deve refleti-lo.
Passo 3: tornar a página de atualização do cartão o mais fácil possível
O email só é tão bom quanto a página para onde aponta. No Stripe, pode usar o portal do cliente, que permite aos clientes gerir os seus métodos de pagamento, ou construir a sua própria página com o Stripe Elements.
Lista de verificação para a página:
- Abre a partir do email sem pedir palavra-passe.
- Mostra o cartão atualmente registado (marca, últimos quatro dígitos, validade) para que o cliente saiba o que está a substituir.
- Funciona num telemóvel.
- Oferece carteiras digitais como Apple Pay, Google Pay ou Stripe Link quando disponíveis.
- Define o novo cartão como predefinido para a subscrição, e não apenas como um cartão extra.
- Confirma o sucesso em palavras simples.
O quarto ponto é um erro comum. Se o novo cartão fica guardado no cliente mas a subscrição continua a apontar para o antigo cartão predefinido, a renovação falha na mesma.
Passo 4: se a renovação falhar mesmo assim
Alguns clientes não vão agir antes da renovação. Trate a falha expired_card como uma recusa definitiva: salte a linguagem do tipo “vamos tentar de novo” e peça um cartão novo logo no dia 0. Depois siga a sua sequência normal de emails de recuperação. O processo completo está no guia completo para recuperar pagamentos falhados no Stripe.
Medir se está a tratar bem os cartões a expirar
Acompanhe estes valores todos os meses:
| Métrica | Como calcular |
|---|---|
| Cartões a expirar antes da renovação | Número de subscrições assinaladas |
| Atualizados automaticamente | Cartões assinalados que receberam uma atualização da rede |
| Atualizados pelo cliente antes da renovação | Cartões assinalados substituídos depois do seu email |
Falhados na renovação com expired_card |
Renovações que falharam por este motivo |
| Recuperados após a falha | Destas, quantas foram pagas mais tarde |
Se muitas renovações continuam a falhar com expired_card, veja o momento dos emails (demasiado tarde?), a entregabilidade (os emails estão a cair no spam?) e a página de atualização (há uma barreira de palavra-passe?).
Erros comuns
- Enviar emails a clientes cujos cartões já foram atualizados. É confuso e desgasta a confiança. Verifique primeiro as atualizações automáticas.
- Enviar só depois da falha. Nessa altura o cliente recebe um aviso de pagamento falhado em vez de um aviso simpático.
- Esquecer os outros métodos de pagamento. A expiração aplica-se aos cartões. Os débitos bancários como o SEPA Direct Debit não expiram da mesma forma, o que é uma razão para os oferecer.
- Não atualizar o método de pagamento predefinido da subscrição.
- Ignorar os planos anuais. Um cartão expirado num plano anual pode corresponder a uma fatura grande.
Como o NoChurn ajuda
O NoChurn liga-se ao Stripe num clique e trata os pagamentos falhados de ponta a ponta: novas tentativas inteligentes (ou o Stripe Smart Retries, se preferir), emails de recuperação escritos por IA nos dias 0, 3, 7 e 14 no idioma do cliente, revistos antes do envio, e uma página alojada de atualização do cartão onde os dados do cartão ficam no Stripe. O NoChurn nunca vê números de cartão.
Também assinala os clientes que removem o cartão antes da renovação e inicia um fluxo de retenção antes de o pagamento falhar. Veja como funciona a recuperação de pagamentos falhados e os preços.