Cancel order by ID - QR Code - Mercado Pago Developers
Cancel order by ID

POST

https://api.mercadopago.com/v1/orders/{order_id}/cancel
Cancel an order created for Mercado Pago QR Code and all its transactions using the reference ID obtained in the response to its creation. Only an order in status "created" can be canceled. In case of success, the request will return a response with status 200.
Request's parameters
PATH
order_id
string

REQUIRED

ID of the order that is being cancelled. This value is returned in the response to the Create order request.
HEADER
X-Idempotency-Key
string

REQUIRED

This feature allows you to safely retry requests without the risk of accidentally performing the same action more than once. This is useful for avoiding errors, such as creating two identical payments. To ensure that eac...View more
Response parameters
id
string
Identifier of the order cancelled in the request.
user_id
string
ID of the Mercado Pago account that created the order.
type
string
Order type.
qr: Order created for Mercado Pago QR payments.
external_reference
string
It is the external reference of the order, assigned when creating it.
Errors

400Error.

empty_required_header

The 'X-Idempotency-Key' header is required and was not sent. Make the requisition again including it.

invalid_path_param

The Order ID provided in the request path has has an invalid format. It must begin with the prefix "ORD" and be followed by 26 characters. Please confirm it and provide a valid ID to try again.

401Error.

unauthorized

The value sent as Access Token is incorrect. Please check and try again with the correct value.

404Error.

order_not_found

The value sent as Order ID does not correspond to a created order, therefore it could not be found. Please check and try again with the correct value.

409Error.

idempotency_key_already_used

The value sent as the idempotency header has already been used. Please try the request again sending a new value.

order_already_canceled

There is a conflict trying to cancel the order due to its current status. Please note that orders can only be cancelled via API when "status=created".

500Error.

500

Internal server error. Please try submitting the request again.

Request
curl -X POST \
    'https://api.mercadopago.com/v1/orders/{order_id}/cancel'\
    -H 'Content-Type: application/json' \
       -H 'X-Idempotency-Key: 0d5020ed-1af6-469c-ae06-c3bec19954bb' \
       -H 'Authorization: Bearer TEST-4599*********755-11221*********d497ae962*********ecf8d85-1*********' \
    
Sample answer
{
  "id": "ORD00001111222233334444555566",
  "user_id": "5238400195",
  "type": "qr",
  "external_reference": "ext_ref_1234",
  "description": "Point Mini",
  "expiration_time": "PT16M",
  "processing_mode": "automatic",
  "total_amount": "50.00",
  "country_code": "CHL",
  "marketplace_fee": "11.22",
  "integration_data": {
    "application_id": "1234567890",
    "platform_id": "dev_1234567890",
    "integrator_id": "dev_1234",
    "sponsor": {
      "id": "446566691"
    }
  },
  "status": "canceled",
  "status_detail": "canceled",
  "created_date": "2024-09-10T14:26:42.109320977Z",
  "last_updated_date": "2024-09-10T14:26:42.109320977Z",
  "config": {
    "qr": {
      "external_pos_id": "EXTERNALPOS019285",
      "mode": "static"
    }
  },
  "transactions": {
    "payments": [
      {
        "id": "PAY01J67CQQH5904WDBVZEM4JMEP3",
        "amount": "50.00",
        "status": "canceled",
        "status_detail": "canceled_by_api"
      }
    ]
  },
  "taxes": [
    {}
  ],
  "items": [
    {
      "title": "Point New Land",
      "unit_price": "50.00",
      "quantity": 1,
      "unit_measure": "kg",
      "external_code": "777489134",
      "external_categories": [
        {
          "id": "food"
        }
      ]
    }
  ],
  "discounts": {
    "payment_methods": [
      {
        "new_total_amount": "47.28",
        "type": "account_money"
      }
    ]
  }
}