Atualizar pedido - Pedidos comerciais - Mercado Pago Developers
Atualizar pedido

Atualizar os dados de um pagamento. Indique o ID da ordem e envie as informações que você deseja atualizar.

PUT

https://api.mercadopago.com/merchant_orders/{id}
Request parameters
Header
Authorization
string

OBRIGATÓRIO

Access Token obtido através do painel de desenvolvedores. Obrigatório ser enviado em todas as requisições.
Path
id
number

OBRIGATÓRIO

Identificador único do pedido gerado pelo Mercado Pago
Body
external_reference
string
Identificador único enviado pelo vendedor para relacionar o order_id gerado pelo Mercado Pago ao ID do seu sistema de pagamento
preference_id
string
Identificador da preferência de pagamento associada ao pedido
marketplace
string
Indique se é um pagamento Mercado Livre (MELI) ou Mercado Pago (NONE) Marketplace
notification_url
string
URL para a qual você gostaria de receber notificações de pagamentos
Response parameters
id
number
Identificador único do pedido gerado pelo Mercado Pago
status
string
Exibe o estado atual da ordem
opened: Pedido sem pagamentos.
closed: Pedido com pagamentos que cobrem o valor total.
expired: Pedido cancelado que não possui pagamentos aprovados ou pendentes (todos rejeitados ou devolvidos).
external_reference
string
Identificador único enviado pelo vendedor para relacionar o order_id gerado pelo Mercado Pago ao ID do seu sistema de pagamento
preference_id
string
Identificador da preferência de pagamento associada ao pedido
Erros

400Erro

invalid_user_id

invalid users involved.

invalid_order_state

the action requested is not valid for the current merchant order state.

invalid_string

string too long.

invalid_application_id

internal server error.

invalid_items

only the item quantity of an item can be modified.

user_not_allowed

user not allowed to operate.

invalid_payment_id

invalid payment identifier.

invalid_operation_type

invalid operation type.

invalid_payer

invalid payer identifier.

invalid_shipment_id

invalid shipment identifier.

invalid_sponsor_id

invalid sponsor_id.

invalid_marketplace

invalid marketplace.

unmarshall_error

could not unmarshal request body into merchant order struct.

invalid_format

invalid merchant order id.

invalid_url

invalid URL. Isn't HTTP or HTTPS.

communication_error

Error when calling...

401Erro

invalid_token

access denied.

invalid_caller_id

invalid caller_id

Request
curl -X PUT \
    'https://api.mercadopago.com/merchant_orders/{id}'\
    -H 'Content-Type: application/json' \
       -H 'Authorization: Bearer APP_USR-8*********932064-12*********edf6d3c99*********2236c703f*********668' \
    -d '{
  "external_reference": "default",
  "preference_id": "Preference identification",
  "payer": {
    "id": 123,
    "nickname": "JOHN"
  },
  "site_id": "MLA",
  "items": [
    {
      "id": "item id",
      "category_id": "item category",
      "currency_id": "BRL",
      "description": "item description",
      "picture_url": "item picture",
      "quantity": 1,
      "unit_price": 5,
      "title": "item title"
    }
  ],
  "application_id": "10000000000000000"
}'
Response
{
  "id": 9999999999,
  "status": "closed",
  "external_reference": "default",
  "preference_id": "Preference identification",
  "payments": {},
  "shipments": {},
  "payouts": {},
  "collector": {
    "id": 999999999,
    "email": "test_user_cl@testuser.com",
    "nickname": "TESTRPEHE21Q"
  },
  "marketplace": "NONE",
  "date_created": "2018-09-14T17:11:31.000Z",
  "last_updated": "2018-09-14T17:11:43.000Z",
  "shipping_cost": 0,
  "total_amount": 5,
  "site_id": "mla",
  "paid_amount": 5,
  "refunded_amount": 0,
  "payer": {
    "id": 999999999,
    "email": "test_user_cl@testuser.com"
  },
  "items": [
    {
      "id": "item id",
      "category_id": "item category",
      "currency_id": "BRL",
      "description": "item description",
      "picture_url": "item picture url",
      "title": "item title",
      "quantity": 1,
      "unit_price": 5
    }
  ],
  "cancelled": false,
  "additional_info": "additional information",
  "application_id": "10000000000000000",
  "order_status": "paid"
}