Recursos para IA
Reembolsar una order

Este endpoint permite realizar la devolución total o parcial de una order procesada. Para realizar un reembolso total, no debes enviar el monto a reembolsar en el body de la requisición. Para realizar un reembolso parcial, debes indicar el valor a ser reembolsado junto con el identificador de la transacción que deseas devolver. Se pueden realizar múltiples reembolsos parciales sobre la misma order, siempre que el monto acumulado reembolsado no supere el monto total pagado. En caso de éxito, la solicitud devolverá una respuesta con el estado 200.

POST

https://api.mercadopago.com/v1/orders/{order_id}/refund
Request parameters
Header
Authorization
string

REQUERIDO

Token de acceso para autenticar la solicitud. Para más información, consulta la documentación de [Autenticación](https://www.mercadopago.com/developers/es/docs/your-integrations/credentials).
X-Idempotency-Key
string

REQUERIDO

Esta función permite repetir requisiciones de forma segura, sin riesgo de realizar la misma acción más de una vez por error. Esto es útil para evitar errores como crear dos pagos idénticos. Para garantizar que cada solic
Path
order_id
string

REQUERIDO

ID de la order a reembolsar. Este valor es devuelto en la respuesta a la requisición 'Crear order' ("/v1/orders").
Body
transactions
array

REQUERIDO CONDICIONAL

Contiene información sobre las transacciones asociadas a la order. Puede contener solo una transacción. Obligatorio para reembolso parcial. Para un reembolso total, envía body vacío. Mutuamente excluyente con "splits".
splits
array

REQUERIDO CONDICIONAL

Participantes del split a reembolsar. Mutuamente excluyente con "transactions".
Response parameters
id
string
Identificador de la order procesada en la solicitud.
status
string
Estado actual de la order.
status_detail
string
Detalles sobre el estado de la order.
transactions
object
Contiene información sobre las transacciones de reembolso.
Errors

400Error de solicitud.

refund_amount_exceeds

Se envió un valor inválido para alguna propiedad. El monto proporcionado supera el disponible para reembolso. Chequea el mensaje devuelto en los detalles del error para saber cuál fue el problema y vuelve a intentarlo.

order_refund_already_in_process

Ya se está procesando un reembolso total para esta order. Chequea el mensaje devuelto en los detalles del error para saber cuál fue el problema y vuelve a intentarlo.

401Error. Access Token no autorizado.

401

El valor enviado como Access Token es incorrecto. Por favor, verifícalo y vuelve a intentar realizar la requisición enviando el valor correcto.

invalid_credentials

No hay soporte para credenciales de prueba. Use usuarios de prueba con credenciales de producción para el entorno de prueba (sandbox) y sus credenciales de producción para el entorno de producción.

404Recurso no encontrado.

transaction_not_found

El ID de transacción proporcionado no existe en esta order. Usa el id de `transactions.payments[].id`.

409Alguna regla específica del sistema no permite realizar la acción debido a restricciones definidas.

idempotency_key_already_used

El valor enviado como header de idempotencia ("X-Idempotency-Key") ya fue utilizado. Por favor, vuelve a intentar realizar la requisición enviando un nuevo valor.

order_already_refunded

Order ya reembolsada.

cannot_refund_order

No se puede reembolsar la order. Comprueba si la order ya ha sido reembolsada.

order_refund_already_in_process

Ya existe una solicitud de reembolso completo en proceso para la order en cuestión.

500Error genérico.

internal_error

Error genérico. Intenta enviar la solicitud nuevamente.

Request
curl -X POST \
    'https://api.mercadopago.com/v1/orders/{order_id}/refund'\
    -H 'Content-Type: application/json' \
       -H 'Authorization: Bearer ' \
       -H 'X-Idempotency-Key: 8a16b526-b9c8-478d-a124-1644fdfca012' \
    -d '{
  "transactions": [
    {
      "id": "PAY01HRYFWNYRE1MR1E60MW3X0T2P",
      "amount": "100.00"
    }
  ],
  "splits": [
    {
      "user_id": 1,
      "amount": "50.00"
    }
  ]
}'
Response
{
  "id": "ORD01J49MMW3SSBK5PSV3DFR32959",
  "transactions": {
    "refunds": [
      {
        "amount": "100.00"
      }
    ]
  }
}