Documentación Mercado Libre

Descubre toda la información que debes conocer sobre las APIs de Mercado Libre.
circulos azuis em degrade

Documentación

Última actualización 08/03/2026

Cancelar pedido

Nota:
Para cancelar una orden que fue aceptada en el PDV/POS, realiza un PUT enviando el shipment_id y access_token (generado por el proceso de autenticación OAuth)

Se puede agregar un motivo para la cancelación, solo es necesario verificar si el motivo de la cancelación está disponible para el estado actual.

Consultar razones de cancelación

Antes de cancelar un pedido, puedes consultar las razones de cancelación disponibles según el estado actual del pedido.

Importante:
Siempre consulta las razones de cancelación disponibles mediante el endpoint GET antes de realizar la cancelación. Las razones pueden variar según el estado actual del pedido y la configuración de la tienda.

Llamada

curl -X GET \
    'https://api.mercadopago.com/proximity-integration/shipments/{shipment_id}/cancellation-reasons' \
    -H 'Authorization: Bearer $ACCESS_TOKEN'

Llamada

curl -X PUT \
    'https://api.mercadopago.com/proximity-integration/shipments/$SHIPMENT_ID/cancel' \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer $ACCESS_TOKEN' \
    -d '{
  "status": "cancelled",
  "cancellation_reason": {
    "id": "CS7452",
    "value": "out_of_stock",
    "message": "Me falta alguno de los productos."
  }
}'

Ejemplo

curl -X PUT \
    'https://api.mercadopago.com/proximity-integration/shipments/44962414957/cancel' \
    -H 'Content-Type: application/json' \
    -H 'Authorization: Bearer APP_USR-1234567890-123456-abcdef1234567890' \
    -d '{
  "status": "cancelled",
  "cancellation_reason": {
    "id": "CS7452",
    "value": "out_of_stock",
    "message": "Me falta alguno de los productos."
  }
}'

Respuesta

{
  "status": "cancelled"
}

Parámetros de Request

Header

Parámetro Tipo Descripción
Authorization (obligatorio) string Access Token obtenido a través del panel de desarrollador. Obligatorio ser enviado en todas las solicitudes.

Path

Parámetro Tipo Descripción
shipment_id (obligatorio) string Shipment ID del pedido.

Body

Parámetro Tipo Descripción
status (obligatorio) string Este campo indica el estado del pedido, que debe tener el valor cancelled para este endpoint.
cancellation_reason (opcional) object Motivo de la cancelación que se recuperó desde el endpoint de motivos de cancelación.
  • id (string): ID del motivo de cancelación.
  • value (string): Valor del motivo de cancelación (ej: out_of_stock).
  • message (string): Mensaje descriptivo del motivo de cancelación.

Parámetros de Response

Parámetro Tipo Descripción
status string Status de la orden tras su cancelación. El valor de status que se devolverá es cancelled.

Razones de cancelación por estado

Las razones de cancelación disponibles varían según el estado actual del pedido. A continuación se detallan las razones para cada estado:


Estado: ready_to_print

Razones disponibles cuando el pedido está pendiente de aceptación.

ID Valor Mensaje
CS7452 out_of_stock Me falta alguno de los productos.
CS7453 too_many_orders Se juntaron demasiados pedidos.
CS7454 closed_store No cerré la tienda y no estoy haciendo pedidos.
CS7455 out_of_delivery_area El comprador me pidió cambiar la dirección y está fuera de mi área de cobertura.
CS7456 seller_other Otro motivo.

Estado: ready_to_ship

Razones disponibles cuando el pedido ya fue aceptado y está en preparación o listo para enviar.

ID Valor Mensaje
CS7452 out_of_stock Me falta alguno de los productos.
CS7453 too_many_orders Se juntaron demasiados pedidos.
CS7457 delivery_person_problem El repartidor tuvo un problema.
CS7456 seller_other Otro motivo.

Estado: shipped

Razones disponibles cuando el pedido ya fue despachado y está en camino.

ID Valor Mensaje
CS7457 delivery_person_problem El repartidor tuvo un problema.
CS7456 seller_other Otro motivo.


Errores

Código de Error Mensaje Descripción
400 Conflict-error Esta orden no puede ser cancelada debido a su estado actual.
401 Unauthorized Access Token inválido.
403 Forbidden El usuario no puede acceder a este recurso.
424 Not Found No se pudo obtener alguna información de la orden.
500 Internal Server Error Error interno del servidor.

Siguiente: Pedido Listo.