Skip to main content
POST
Estornar transação
POST /transactions/:id/refund Faz parte do recurso Transações — o conceito, o ciclo de vida e a tabela de status estão lá. Cria pedidos de estorno para todos os pagamentos pagos da transação de uma só vez — cada um pelo saldo que ainda resta: um pagamento já parcialmente estornado entra pelo restante, e um já esgotado (ou com estorno em andamento) fica de fora sem derrubar os demais. O corpo tem um único campo, e ele é obrigatório: reason, o motivo do estorno (1 a 4000 caracteres). O comportamento de aprovação depende da configuração refund.auto_approve da sua conta (default: ativado):
  • Com auto-approve (cartão/Pix): o estorno é criado, aprovado e processado no gateway na própria requisição — a resposta síncrona já traz o estorno em refunded (sucesso) ou failed (recusa do gateway).
  • Boleto: nasce pending mesmo com auto-approve — a devolução é feita por transferência bancária e depende de aprovação e da coleta de dados bancários. Veja reembolsos.
  • Sem auto-approve: os estornos ficam pending, aguardando aprovação manual.
Endpoint idempotente — envie Idempotency-Key. Para estornar um pagamento específico (estorno parcial), use o endpoint de reembolsos / pagamentos.
A resposta traz refunds (os estornos criados) e processResults (o resultado do processamento de cada um, com success e o estorno atualizado). Já o estorno de um pagamento específico (POST /transactions/{transactionId}/payments/{paymentId}/refund) responde no singular: { "refund": { ... }, "processResult": { ... } }.
Transação sem nenhum pagamento pago responde 409, não 200 com lista vazia. Se nada é estornável — porque nada foi pago, ou porque tudo já foi estornado — a chamada falha em vez de não fazer nada. Reenviar não muda o resultado enquanto o estado da transação for o mesmo.

Authorizations

x-api-key
string
header
required

API Key da Credential (gerada no Backoffice)

Headers

Idempotency-Key
string

Chave única para garantir idempotência da requisição

Path Parameters

id
string
required

ID da transação

Body

application/json
reason
string
required

Motivo do estorno da transação inteira (obrigatório).

Required string length: 1 - 4000

Response

Refunds criados e processados

refunds
object[]

Estornos vinculados à transação.

processResults
object[]

Resultados do processamento por pagamento.