Chargeback
Disputas iniciadas pelo emissor são reembolso compulsório — sem direito de resposta. Como detectar, contabilizar e prevenir.
Chargeback é o emissor do cartão devolvendo o dinheiro ao titular depois de uma reclamação. No fluxo da Zhex hoje, ele se comporta como reembolso compulsório: o valor sai do seu saldo, o cliente recebe de volta, e não há janela de resposta com evidência — diferente do modelo Stripe/Adyen, onde você submete documentação para tentar reverter.
A regra prática: se chargeback chegou, o dinheiro já foi. Tudo que você pode fazer é registrar contabilmente, comunicar com o cliente, e reduzir a recorrência via prevenção.
Como você fica sabendo
A Zhex emite o webhook charge.dispute.created assim que o chargeback é recebido do emissor. Esse é o único event do recurso hoje — não há won/lost/under_review no lifecycle público.
import Zhex from '@zhexio/node';
app.post(
'/webhooks/zhex',
express.raw({ type: 'application/json' }),
(req, res) => {
const event = Zhex.webhooks.constructEvent(
req.body,
req.headers['zhex-signature'] as string,
process.env.ZHEX_WEBHOOK_SECRET!,
);
if (event.type === 'charge.dispute.created') {
const intent = event.data.object as { id: string; amount: number; customer: string | null };
// 1. registrar perda contábil
// 2. email para o cliente confirmando que recebeu o estorno
// 3. opcionalmente, revogar acesso ao produto/conta
}
res.json({ received: true });
},
);O event.data.object é o PaymentIntent original — você usa o id para correlacionar com a venda no seu sistema, e amount para a baixa contábil.
O que fazer ao receber
- Marcar a venda como estornada no seu BD. Para o cliente, o efeito é equivalente a um refund — o produto deve sair da conta dele se aplicável.
- Email transacional confirmando o estorno. Reduz suporte e mostra que você está atento, mesmo perdendo a transação.
- Revogar acesso se for produto digital / SaaS — chargeback frequentemente é abuso. Sem revogação, vira fraude amiga (cliente fica com produto e dinheiro).
- Registrar contabilmente. Para fechamento mensal, o chargeback é um custo direto — taxa fixa do emissor + valor da transação.
Custos
| Item | Quem paga | Quando |
|---|---|---|
| Valor da transação | Você | Debitado do saldo na entrada do charge.dispute.created |
| Taxa de chargeback | Você | Por evento — varia por adquirente, tipicamente R$ 15–50 (BR) ou US$ 15–25 (internacional) |
| Reserva de risco | Você | Aplicada se chargeback ratio > 0,75% do volume mensal — até 10% do volume retido por 180 dias |
| Fines de bandeira | Você | Acima de 1% de ratio, Visa/Master aplicam fines mensais |
Prevenção
Como não há resposta, o caminho é evitar:
- 3DS em ticket > R$ 200 ou customer novo. O 3DS faz liability shift — em transações autenticadas, o emissor não pode abrir chargeback por "não reconheço". Custo zero quando o emissor aceita frictionless.
statement_descriptorclaro. "ZHEX*MEUSITE_PREMIUM" > "ZHX BR PAYMNT 8392". 40% dos chargebacks de fraude começam por "não reconheço esta cobrança".- Email pós-cobrança com nota fiscal/recibo, link de suporte e descrição clara do produto. Reduz "fraude amiga" — cliente que não lembra do que comprou.
- Cancelamento auto-servido em assinatura. Se o cliente não consegue cancelar pelo painel, ele cancela via cartão (= chargeback). Cancele com 1 clique, sempre.
- Refund proativo em queixas legítimas. Se o cliente reclamou e você sabe que tem razão, dê o refund antes que ele abra chargeback. Refund custa só o valor; chargeback custa valor + taxa + ratio.
- Bloqueio de IP/device repetente. Mesmo
customer.documentou IP gerando múltiplos chargebacks → blocklist interna.
Métrica que importa
Chargeback ratio = chargebacks do mês ÷ transações aprovadas do mês.
| Faixa | Status | Ação |
|---|---|---|
| < 0,5% | Saudável | Manter |
| 0,5% – 0,75% | Atenção | Auditar 3DS coverage e clarity do statement |
| 0,75% – 1% | Reserva aplicada | Plano de redução (3DS obrigatório, fraud rules) |
| > 1% | Fines + risco de descredenciamento | Pausa em ticket alto, revisão de adquirência |
Acompanhe em Dashboard → Transações → Chargebacks semanalmente.
Sem direito de resposta — hoje
O modelo da Zhex hoje trata chargeback como reembolso compulsório. Não há endpoint para submeter evidência (POST /v1/disputes/:id) nem lifecycle de won/lost — quando o emissor abre, o valor sai. Submissão de evidência via API e mecanismo de reanálise estão no roadmap; até lá, prevenção (3DS, statement claro, refund proativo) é a única alavanca.
Atualizado em