Como contestar chargebacks no Braintree
Guia prático das disputas no Braintree: tipos e estados, datas de resposta, códigos de motivo, provas categorizadas para recorrências e quando aceitar.
Um chargeback numa subscrição raramente tem a ver com um cartão roubado. Mais vezes, o cliente esqueceu-se de que se inscreveu, não reconheceu o descritor ou pensou que tinha cancelado. Esses casos podem ser ganhos quando tem os registos certos e os submete no formato que o Braintree espera. As ferramentas do Braintree são boas, mas estritas: falhe a data ou ponha provas na categoria errada e a resposta nunca chega ao banco.
Este guia percorre a forma como o Braintree estrutura as disputas, as regras de provas que contam para a faturação recorrente e um processo que pode aplicar a cada caso. Baseia-se na documentação do próprio Braintree: a visão geral das disputas, Managing disputes via the API, Evidence requirements, o objeto de resposta Dispute, Chargeback reason codes, Disputing chargebacks, Dispute: Accept e PayPal disputes (todos consultados em novembro de 2026). Para as chamadas básicas da API e os nomes dos webhooks, veja a secção de disputas de recuperar pagamentos de subscrição falhados no Braintree.
Tipos e estados de disputa
O objeto dispute tem um kind e um status.
Tipos:
| Tipo | O que é |
|---|---|
| Retrieval | Um pedido de informação sobre uma transação |
| Chargeback | O banco do titular do cartão reverte a transação |
| Pre-arbitration | Uma fase posterior, depois de um chargeback |
Estados: Open, Accepted, Auto Accepted, Disputed, Won, Lost e Expired. “Disputed” significa que submeteu provas e está à espera da decisão do banco. “Expired” significa que a data de resposta passou e perdeu o direito de contestar.
As transações PayPal processadas através do Braintree seguem o processo próprio do PayPal, com três fases (retrieval, claim, chargeback) descritas no guia de disputas PayPal do Braintree. O Braintree nota que as retrievals e claims resolvidas através do PayPal ou do seu gateway não têm taxas de disputa, enquanto uma disputa que escala para chargeback pode ter taxas do emissor ou do banco.
Aceitação automática de pre-arbitration
Segundo o artigo do Braintree sobre contestar chargebacks, desde 27 de agosto de 2025, o Braintree aceita automaticamente as pre-arbitrations abaixo de 1000 $ para comerciantes com tarifa fixa nos EUA, e é cobrada uma taxa para processar a pre-arbitration seja qual for o resultado. Se está nesse grupo, o seu esforço deve ir para a primeira resposta ao chargeback.
A data de resposta é tudo
Cada disputa tem uma data de resposta (reply-by). Segundo o Braintree, tem de adicionar as provas e finalizar antes dessa data, ou a sua resposta não é tida em conta pelo banco. Se não responder, é enviada uma resposta Accept em seu nome. Carregar provas sem finalizar conta como ausência de resposta.
Regras práticas:
- Use o Dispute: Search filtrado pela data de resposta para listar tudo o que vence nos próximos dias.
- Defina um prazo interno dois dias úteis antes da data de resposta.
- As provas só podem ser adicionadas ou removidas (com Dispute: Remove Evidence) enquanto a disputa estiver Open.
Códigos de motivo que atingem negócios de subscrição
O artigo sobre códigos de motivo de chargeback e a referência de disputas listam, entre outros:
- Cancelled recurring transaction: o titular do cartão diz que lhe foi cobrada uma cobrança recorrente que cancelou ou tentou cancelar. Os códigos das marcas listados pelo Braintree incluem Visa 41 e 1320, Mastercard 41 e 4841, Discover 4541 e American Express C28.
- Fraude / não autorizado: o titular do cartão diz que não fez a compra.
- Não recebido: o titular do cartão diz que não recebeu o produto ou o serviço.
Para subscrições, o par habitual é “cancelled recurring” e “fraude” vindos de clientes que se esqueceram da subscrição. Cada um precisa de provas diferentes.
Provas categorizadas: a regra que faz tropeçar as equipas
Os requisitos de provas do Braintree dizem que, quando responde a uma disputa de fraude ou não receção, tem de categorizar cada prova pelo requisito que satisfaz. Uma tabela no mesmo guia indica que categorias aceita cada código de motivo; usar uma categoria não permitida para esse código é um erro de validação, tal como finalizar sem provas válidas.
Duas categorias contam mais para a faturação recorrente:
RECURRING_TRANSACTION_ID: o ID de uma transação recorrente anterior não contestada para o mesmo serviço.RECURRING_TRANSACTION_DATE_TIME: a data dessa transação. O Braintree exige-a sempre que fornece um ID de transação recorrente (ou ARN); uma resposta sem ela é rejeitada.
A prova de um histórico anterior de transações recorrentes não contestadas é um dos tipos de prova que o Braintree indica para certas disputas de fraude e de não receção. Em termos simples: se o mesmo cartão lhe pagou durante meses sem queixas, diga-o, na categoria certa, com datas.
Quando contesta através do Control Panel, o Braintree acrescenta automaticamente à sua resposta detalhes da transação como os resultados de AVS e CVV.
O que submeter, por motivo
| Motivo | Provas que lhe respondem |
|---|---|
| Cancelled recurring transaction | A sua política de cancelamento tal como mostrada na inscrição; o histórico da conta do cliente sem pedido de cancelamento antes da cobrança (ou a data em que cancelou e que a cobrança foi anterior); lembretes de renovação enviados |
| Fraude (o cliente não a reconhece) | Pagamentos recorrentes anteriores não contestados no mesmo cartão (categorizados), dados da inscrição, logins e utilização depois da cobrança contestada |
| Não recebido / serviço não prestado | Registos de utilização no período faturado, registos de acesso, conversas de suporte em que o cliente usou o serviço |
Mantenha cada documento focado. Um resumo de uma página que expõe os factos com datas, seguido dos registos de suporte, é mais fácil de ler para um analista do banco do que uma exportação longa.
Quando aceitar em vez disso
O Dispute: Accept fecha uma disputa Open a favor do cliente. A documentação do Braintree acrescenta uma nota importante: se já reembolsou a transação, não aceite; submeta antes o reembolso como prova. Aceite quando:
- o cliente cancelou de facto e cobrou mesmo assim (corrija o bug e depois reembolse os outros clientes afetados);
- as provas que tem não respondem ao código de motivo;
- o valor é inferior ao tempo que uma resposta levaria, e não tem nenhum padrão a defender.
Um processo para cada disputa
- Chega o webhook. Em
dispute_opened, vá buscar a disputa e registe o tipo, o motivo, o valor e a data de resposta. - Pare as cobranças futuras, se fizer sentido. Um cliente que contesta uma renovação dificilmente vai pagar a seguinte. Decida se cancela a subscrição ou suspende o acesso enquanto o caso está aberto.
- Reúna os registos da faturação, da utilização do produto, do email e do suporte, para o cliente e o período contestado.
- Escolha as categorias permitidas para este código de motivo e associe cada registo a uma.
- Escreva o resumo, adicione as provas em texto e em ficheiro.
- Finalize antes do seu prazo interno.
- Acompanhe o resultado a partir dos webhooks
dispute_wonedispute_lost, por código de motivo. - Corrija a causa. Descritor pouco claro, lembrete de renovação em falta, um botão de cancelar difícil de encontrar: cada disputa perdida deve mudar alguma coisa. Para a prevenção, veja regras de click to cancel e lembretes de renovação de planos anuais.
Teste antes de entrar em produção
A sandbox do Braintree pode simular resultados: submeter o texto compelling_evidence e finalizar passa uma disputa de teste para Won, e losing_evidence simula uma derrota (guia de testes). Use-a para verificar a sua lógica de categorização e de finalização de ponta a ponta.
Fazer isto com o NoChurn
O Braintree fica com a disputa, a decisão e os fundos. O NoChurn segue os webhooks de disputa do Braintree e reúne provas automaticamente: respostas do fluxo de cancelamento, emails enviados, utilização do produto e conversas de suporte. Redige uma resposta com IA, e nada é enviado ao Braintree antes de uma pessoa da sua equipa a ter revisto e aprovado. As conversas de suporte vêm de conectores de helpdesk só em leitura e são citadas tal como estão. Veja NoChurn + Braintree.