Reembolsar uma order - Código QR - Mercado Pago Developers
Reembolsar uma order

POST

https://api.mercadopago.com/v1/orders/{order_id}/refund
Este endpoint permite criar uma devolução total de uma todas as transações associadas a uma order para Código QR do Mercado Pago. Ou seja, o reembolso será feito na order e todas as suas transações serão devolvidas. Além disso, apenas orders com "status=processed" podem ser reembolsadas. Em caso de sucesso, a requisição retornará uma resposta com o status 201.
Parâmetros de requisição
PATH
order_id
string

OBRIGATÓRIO

ID da order que contém a transação de pagamento associada para ser reembolsada. Esse valor é retornado na resposta à requisição "Criar order".
HEADER
X-Idempotency-Key
string

OBRIGATÓRIO

Esta função permite repetir solicitações de forma segura, sem o risco de realizar a mesma ação mais de uma vez por engano. Para garantir que cada solicitação seja única, deve usar um valor exclusivo para cada chamada. Ca...Ver mais
Parâmetros de resposta
id
string
Identificador da order reembolsada, recebido na resposta à sua criação.
status
string
Status atual da order.
processed: A order continua com o pagamento no status "processed", o que permite que o reembolso seja emitido. Para verificar o status do reembolso, execute a solicitação "Obter order por ID", e confirme o campo "transactions.refunds.status". Além disso, ative suas notificações de Webhooks.
status_detail
string
A order continua com o pagamento no status "accredited", o que permite que o reembolso seja emitido. Para verificar o status do reembolso, execute a solicitação "Obter order por ID", e confirme o campo "transactions.refu...Ver mais
transactions
object
Contém informações sobre a transação associada a uma order.
Erros

400Erro.

empty_required_header

O header 'X-Idempotency-Key' é requerido e não foi enviado. Faça a requisição novamente incluindo-o.

invalid_path_param

O Order ID fornecido no path da requisição tem um formato inválido. Deve começar com o prefixo "ORD" e continuar com 26 caracteres. Verifique e forneça um ID válido para tentar novamente.

invalid_order_owner

Devido a validações internas, você não pode processar um reembolso para um pedido que não foi criado por você.

in_store_payment_refund_order

O prazo permitido para emissão do reembolso da order foi excedido. Verifique estar dentro do período de 330 dias a partir da data de criação da order.

401Erro.

unauthorized

O valor enviado como Access Token está incorreto. Verifique e tente a enviar requisição novamente com o valor correto.

404Erro.

order_not_found

O valor enviado como Order ID não corresponde a uma order criada, razão pela qual não pode ser encontrada. Verifique e tente a enviar requisição novamente com o valor correto.

409Erro.

idempotency_key_already_used

O valor enviado como header de idempotência já foi utilizado em uma solicitação diferente em um período menor que 24 horas. Por favor, tente a solicitação novamente enviando um novo valor.

order_already_refunded

Está tentando devolver uma order que já foi reembolsada. Verifique se você enviou o ID correto.

cannot_refund_order,

O status da order não permite o reembolso. Apenas orders com status 'processed' podem ser reembolsadas.

500Erro.

500

Erro genérico. Tente enviar a solicitação novamente.

Requisição
curl -X POST \
    'https://api.mercadopago.com/v1/orders/{order_id}/refund'\
    -H 'Content-Type: application/json' \
       -H 'X-Idempotency-Key: 0d5020ed-1af6-469c-ae06-c3bec19954bb' \
       -H 'Authorization: Bearer TEST-7719*********832-03141*********ec9309854*********f1e54b5-1*********' \
    
Resposta de exemplo
{
  "id": "ORD0000ABCD222233334444555566",
  "status": "processed",
  "status_detail": "accredited",
  "transactions": {
    "refunds": [
      {
        "id": "REF01J67CQQH5904WDBVZEM1234D",
        "transaction_id": "PAY01J67CQQH5904WDBVZEM4JMEP3",
        "amount": "50.00",
        "status": "processing",
        "reference_id": "12345678"
      }
    ]
  }
}