WysePayDocs

Reembolsar uma transação

POST
/api/v1/transactions/{id}/refunds

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.

Autenticação

headerx-api-key<token>

Sua chave de API, criada no painel em Desenvolvedores → Chaves de API.

Parâmetros da URL

id*string

O id da transação paga (txn_…).

Headers

idempotency-key?string

Envie a mesma chave para repetir com segurança: o mesmo reembolso volta, sem devolver duas vezes.

Corpo da requisição

application/json
  1. body
amountCents?integer

Valor em centavos. Mínimo de 500 (R$ 5,00).

Faixa1 <= value
reason?string

Opcional: o motivo, até 140 caracteres. Vai para o pagador junto com o Pix devolvido.

Tamanholength <= 140

Corpo da resposta

Reembolso pedido.

application/json
  1. response

Um reembolso: dinheiro de uma venda paga devolvido ao pagador.

id*string
transactionId*string
amountCents*integer

Valor devolvido ao pagador, em centavos.

status*string

PROCESSING enquanto o banco processa; SUCCEEDED quando o dinheiro chegou ao pagador; FAILED quando foi recusado (o valor volta ao seu saldo).

Valores aceitos"PROCESSING""SUCCEEDED""FAILED"
reason*|

O motivo informado.

failureReason*|

Por que falhou, quando FAILED.

livemode*boolean
createdAt*string
Formato^(?:(?:\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))$
Formatodate-time
completedAt*|null
curl -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"}