Estornando um QRCode
Estornando um QRCode
O estorno de um QRCode na API do Pagou permite solicitar o reembolso de um QRCode Pix pago (com ou sem vencimento), transitando seu status para StatusRefunded.
Visão Geral Técnica
O endpoint DELETE /v1/pix/{id}/refund solicita o estorno de um QRCode identificado por seu ID único no formato UUID (ex.: 550e8400-e29b-41d4-a716-446655440000). O payload permite especificar o valor do estorno (para estornos parciais) e o motivo do reembolso. A operação é síncrona, retornando 204 No Content para indicar que o estorno foi iniciado com sucesso, e o status do QRCode é alterado para StatusRefunded.
Especificações:
Método:
DELETEURL:
Produção:
https://api.pagou.com.br/v1/pix/{id}/refundSandbox:
https://sandbox.api.pagou.com.br/v1/pix/{id}/refund
Autenticação: Cabeçalho
X-API-KEYcom chave do painel.Content-Type: application/json
Resposta: Status
204 No Contentsem corpo.Erros:
400 Bad Request,401 Unauthorized,500 Internal Server Error.
Cabeçalhos
Cabeçalho
Valor
Descrição
X-API-KEY
sua_chave_api
Chave de autenticação (encontrada em Configurações > API).
Content-Type
application/json
Formato JSON para o corpo da requisição.
User-Agent
NomeDaSuaAplicacao/1.0
Identificador da aplicação (ex.: MinhaLoja/1.0, opcional).
Parâmetros da URL
Parâmetro
Tipo
Obrigatório
Descrição
id
string
Sim
ID único do QRCode no formato UUID (ex.: 550e8400-e29b-41d4-a716-446655440000).
Corpo da Requisição
O payload deve conter informações do estorno, como o valor a ser reembolsado (para estornos parciais) e o motivo do reembolso.
Campos do Payload:
Campo
Tipo
Obrigatório
Descrição
amount
number
Sim
Valor do estorno em reais (ex.: 50.00 para R$ 50,00).
reason
number
Sim
Motivo do estorno. Valores válidos: 1, 2, 3, 4.
description
string
Sim
Descrição do estorno (máx. 255 caracteres, ex.: "Devolução do produto").
Valores de reason:
Valor
Descrição
1
Estorno devido a um erro bancário.
2
Estorno por suspeita de fraude.
3
Estorno solicitado pelo cliente final.
4
Estorno devido a erro relacionado ao Pix Saque ou Pix Troco.
Validações:
id: Deve ser um UUID válido (ex.: 550e8400-e29b-41d4-a716-446655440000).
amount: Deve ser maior que 0 e menor ou igual ao valor original do QRCode.
reason: Máximo de 255 caracteres, se fornecido.
O QRCode deve estar no status
StatusCompleted. QRCodes emStatusEmpty,StatusActive,StatusCanceledouStatusRefundednão podem ser estornados.
Notas Técnicas:
Use o endpoint
GET/v1/pix/{id}(veja Consultando um QRCode) para verificar o status do QRCode antes e após o estorno.O estorno pode ser parcial ou total.
Configure o
notification_urlao criar o QRCode para receber eventos relacionados ao pagamento ou estorno, se aplicável (veja Webhooks para Interações com Pix).
Resposta
Status:
204 No ContentCorpo: Nenhum (a resposta não contém corpo, indicando sucesso no início do processo de estorno).
Exemplos de Código
Tratamento de Erros
Código HTTP
Descrição
Possível Causa
Solução
400
Bad Request
id não é um UUID válido, amount inválido (ex.: maior que o valor original), ou QRCode não está em StatusCompleted.
Verificar formato do id, validar amount e consultar status com GET /v1/pix/{id}.
401
Unauthorized
X-API-KEY inválido ou ausente.
Verificar chave.
Exemplo de Resposta de Erro:
Boas Práticas Técnicas
Verificação Prévia: Consulte o status do QRCode com
GET/v1/pix/{id}(veja Consultando um QRCode) para confirmar que está emStatusCompletedantes de tentar estornar.Validação de Dados: Valide o id como UUID e o amount (se fornecido) como menor ou igual ao valor original do QRCode antes de enviar a requisição.
Segurança: Armazene
X-API-KEYem variáveis de ambiente e use HTTPS para todas as requisições.Monitoramento: Registre todas as requisições e respostas (incluindo id e código de status HTTP) em logs para auditoria e depuração.
Confirmação de Estorno: Após o estorno, use
GET/v1/pix/{id}para verificar se o status mudou para StatusRefunded.Testes no Sandbox: Use
https://sandbox.api.pagou.com.br/v1/pix/{id}/refundpara simular estornos sem impacto em produção.Gestão de Erros: Trate erros 400 para evitar tentativas de estorno de QRCodes não pagos (
StatusActive) ou já estornados (StatusRefunded).
Last updated