Reembolsar uma transação
Devolve ao pagador todo o valor ainda não reembolsado ou só uma parte (amountCents). O valor sai do seu saldo na hora: primeiro do que a venda ainda tem a liberar, depois do disponível. A taxa da venda não é devolvida. O reembolso começa em PROCESSING; o webhook transaction.refunded confirma, e refund.failed avisa quando o banco recusa (o valor volta ao saldo). Vale para vendas pagas há até 90 dias, sem MED aberto. Precisa da permissão refunds:write, que vem desligada. Com chave de teste, conclui na hora.
Permissão da chave: refunds:write.
x-api-key<token>Sua chave de API, criada no painel em Desenvolvedores → Chaves de API.
id*stringO id da transação paga (txn_…).
idempotency-key?stringEnvie a mesma chave para repetir com segurança: o mesmo reembolso volta, sem devolver duas vezes.
application/json- body
amountCents?integerValor em centavos. Mínimo de 500 (R$ 5,00).
1 <= valuereason?stringOpcional: o motivo, até 140 caracteres. Vai para o pagador junto com o Pix devolvido.
length <= 140Reembolso pedido.
application/json- response
Um reembolso: dinheiro de uma venda paga devolvido ao pagador.
id*stringtransactionId*stringamountCents*integerValor devolvido ao pagador, em centavos.
status*stringPROCESSING enquanto o banco processa; SUCCEEDED quando o dinheiro chegou ao pagador; FAILED quando foi recusado (o valor volta ao seu saldo).
"PROCESSING""SUCCEEDED""FAILED"reason*|O motivo informado.
failureReason*|Por que falhou, quando FAILED.
livemode*booleancreatedAt*string^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$date-timecompletedAt*|nullcurl -X POST "https://example.com/api/v1/transactions/string/refunds" \ -H "Content-Type: application/json" \ -d '{ "amountCents": 8990, "reason": "Produto fora de estoque" }'{ "id": "ref_01k6g8m2v4x7z9b3c5d7f9h0j2", "transactionId": "txn_01k6g8m2v4x7z9b3c5d7f9h0j2", "amountCents": 8990, "status": "PROCESSING", "reason": "Produto fora de estoque", "failureReason": "string", "livemode": true, "createdAt": "2026-10-04T15:30:00.000Z", "completedAt": "2026-10-04T15:30:00.000Z"}Atualizar um cliente PATCH
Atualiza só os campos enviados de um cliente. O CPF ou CNPJ pode ser incluído num cliente que ainda não tem; depois disso, não muda. Permissão da chave: `customers:write`.
Listar os reembolsos de uma transação GET
Os reembolsos pedidos para a transação, do mais novo para o mais antigo. Permissão da chave: `refunds:read`.