Skip to main content
POST
/
api
/
transactions
/
{id}
/
refund
Reembolsar Transação
curl --request POST \
  --url https://garu.com.br/api/transactions/{id}/refund \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "amount": 123,
  "reason": "<string>"
}
'
{
  "id": 123,
  "status": "<string>",
  "value": 123,
  "refundedAmount": 123
}

Visão Geral

Emita um reembolso total ou parcial para uma transação que já foi paga. O valor será devolvido ao cliente através do mesmo método de pagamento utilizado na compra.

Exemplo de Requisição

Reembolso Total

curl -X POST https://garu.com.br/api/transactions/12345/refund \
  -H "Authorization: Bearer sk_test_sua_chave_api" \
  -H "Content-Type: application/json" \
  -d '{
    "reason": "Cliente solicitou reembolso"
  }'

Reembolso Parcial

curl -X POST https://garu.com.br/api/transactions/12345/refund \
  -H "Authorization: Bearer sk_test_sua_chave_api" \
  -H "Content-Type: application/json" \
  -d '{
    "amount": 100.00,
    "reason": "Desconto por insatisfação parcial"
  }'

Parâmetros

amount
number
Valor do reembolso em Reais. Se não especificado, o valor total da transação será reembolsado.
reason
string
Motivo do reembolso (opcional, para registro interno).

Resposta de Sucesso (200 OK)

{
  "id": 12345,
  "status": "reversed",
  "value": 297.00,
  "refundedAmount": 100.00
}
id
number
ID da transação reembolsada.
status
string
Novo status da transação (reversed).
value
number
Valor original da transação.
refundedAmount
number
Valor que foi reembolsado.

Considerações

Reembolsos podem levar alguns dias úteis para serem processados pelo gateway de pagamento e aparecerem na conta do cliente.
  • Apenas transações com status captured, payedBoleto ou payedPix podem ser reembolsadas
  • Reembolsos parciais podem ser feitos múltiplas vezes até atingir o valor total
  • O valor do reembolso não pode exceder o valor original da transação

Erros Comuns

{
  "statusCode": 400,
  "message": "Refund amount exceeds transaction value"
}
Solução: O valor do reembolso não pode ser maior que o valor original da transação.
{
  "statusCode": 400,
  "message": "Transaction cannot be refunded"
}
Solução: Apenas transações pagas podem ser reembolsadas. Verifique o status da transação.

Próximos Passos

Cancelar Transação

Cancele transações pendentes

Webhooks

Receba notificações de reembolso