Status de pedidos ME1

A nova ferramenta de status de pedidos ME1 serve para dar uma melhor experiência para os compradores no acompanhamento da entrega de seus pedidos. Neste recurso, será possível informar quando o produto foi enviado, se houve sucesso na entrega ou não além do tracking number.

Conteúdos

→Status e substatus de envio
→Atualizar o status de um envio ME1
       ↳Informar código de rastreio
       ↳Marcar pedido como despachado
       ↳Marcar como não entregue
       ↳Marcar pedido como entregue


Status e substatus de envio

As junção das informações do campo status e sub-status de envio determinam o que será notificado ao comprador. Hoje é possível enviar a informação de pedido despachado (shipped) ou insucesso de entrega (not_delivered):

Status Substatus Descrição
shipped null Despachado
not_delivered returning_to_sender Não entregue - Retornado ao vendedor
delivered null Entregue ao comprador

Atualizar o status de um envio ME1

Para atualizar o status do envio, é necessário que conheça o shipment_id do pedido. Para obter esta informação, busque no recurso de order.

Chamada:

curl -X GET https://api.mercadolibre.com/orders/$ORDER_ID/shipments?access_token=$ACCESS_TOKEN

Exemplo:

curl -X GET https://api.mercadolibre.com/orders/2339711980/shipments?access_token=$ACCESS_TOKEN

Resposta:

{
    "id": 28264263908,
    "mode": "me1",
    "created_by": "receiver",
    "order_id": 2339711980,
    "order_cost": 99.9,
    "base_cost": 22.07,
    "site_id": "MLB",
    "status": "pending",
    "substatus": null,
    [ ]
}
Nota:
Utilizamos o campo ID desta resposta.

Informar código de rastreio

O código de rastreio ou tracking number deve ser informado antes de enviar as alterações no status do pedido, para isto é necessário realizar um PUT no recurso /shipments:

Chamada:

curl -X PUT https://api.mercadolibre.com/shipments/$SHIPMENT_ID?access_token=$ACCESS_TOKEN

Exemplo:

curl -X PUT https://api.mercadolibre.com/shipments/28264263908?access_token=$ACCESS_TOKEN -H 'Content-Type: application/json' -d '{"service_id": 11,"tracking_number": "OP123456789BR"}'

Resposta:

{
[ ]
    "date_created": "2020-08-19T16:18:57.000-04:00",
    "last_updated": "2020-08-19T16:19:57.899-04:00",
    "tracking_number": "OP123456789BR",
    "tracking_method": "Otros",
    "service_id": 11,
    "carrier_info": null,
    "sender_id": 419059118,
[ ]
}
Nota:
O campo service_id = 11 é para todos pedidos ME1.

Marcar pedido como despachado

Para marcar o pedido como despachado, é necessário informar o status como "shipped" e o substatus como "null".

Chamada:

curl -X POST https://api.mercadolibre.com/shipments/$SHIPMENT_ID/seller_notifications?access_token=$ACCESS_TOKEN

Exemplo:

curl -X POST https://api.mercadolibre.com/shipments/28264263908/seller_notifications?access_token=$ACCESS_TOKEN -H 'Content-Type: application/json'  \
{
   "payload":{
      "comment":"despachado",
      "date":"2020-02-28T16:03:51.175-04:00"
   },
   "status":"shipped",
   "substatus":"null"
}

Resposta:

{
    "status": "OK"
}

Marcar pedido como não entregue

O status "not_delivered" é um status finalizador e irreversível. Só deve ser utilizado quando não houver mais tentativas de entrega. Dessa forma o vendedor tem que alinhar o fluxo para que seja feita a devolução do dinheiro do comprador.
Para marcar o pedido como não entregue, é necessário informar o status como "not_delivered" e o substatus como "returning_to_sender".

Chamada:

curl -X POST https://api.mercadolibre.com/shipments/$SHIPMENT_ID/seller_notifications?access_token=$ACCESS_TOKEN

Exemplo:

curl -X POST https://api.mercadolibre.com/shipments/28264263908/seller_notifications?access_token=$ACCESS_TOKEN -H 'Content-Type: application/json'  \
{
   "payload":{
      "comment":"Não entregue",
      "date":"2020-03-05T16:17:51.175-04:00"
   },
   "status":"not_delivered",
   "substatus":"returning_to_sender"
}

Resposta:

{
    "status": "OK"
}

Marcar pedido como entregue

Ao receber a informação de que o produto foi entregue ao comprador, é necessário fazer a alteração do status da compra para entregue. Para isso utilize o status "delivered" com o substatus "null".
Este status também é finalizador e irreversível.

Chamada:

curl -X POST https://api.mercadolibre.com/shipments/$SHIPMENT_ID/seller_notifications?access_token=$ACCESS_TOKEN

Exemplo:

curl -X POST https://api.mercadolibre.com/shipments/28264263908/seller_notifications?access_token=$ACCESS_TOKEN -H 'Content-Type: application/json'  \
 {
   "payload":{
      "comment":"Pedido entregue",
      "date":"2020-03-06T16:17:51.175-04:00"
   },
   "status":"delivered",
   "substatus":"null"
}

Resposta:

{
    "status": "OK"
}
ou registre-se para receber as últimas notícias sobre nossa API