Documentação do Mercado Livre

Confira todas as informações necessárias sobre as APIs Mercado Livre.
circulos azuis em degrade

Documentação do

Última atualização em 20/12/2024

Estoque distribuído

Importante:

A iniciativa já está em produção na Argentina e Chile, para vendedores que têm convivência Full e Flex. Além disso, a partir do 1º de outubro de 2024, começará a ativar a experiência também para vendedores no México, para a iniciativa de Multi origem.

O Estoque Distribuído tem como objetivo permitir que os vendedores configurem diferentes locais de estoque (stock_locations) para um mesmo Produto do Usuário.


Nota:

Como evidenciado pelo gráfico, o estoque será compartilhado entre canais (marketplace e MShops).


Tipos de estoque

Para a gestão do estoque, definimos as três tipologias seguintes de stock_locations:

Tipo de local Caso de uso Gestor do estoque Permite editar estoque via API
meli_facility O vendedor envia seu estoque para os depósitos de Fulfillment do Mercado Livre. Mercado Livre (Full) Não.
selling_address Depósito de origem do vendedor quando tiver estoque de Flex em publicações que também estão em Fulfillment do Mercado Livre (meli_facility). Usuário (Vendedor) Sim, desde que o item tenha Flex ativado.
seller_warehouse Múltiplas origens de estoque gerenciadas pelo vendedor. Permite ao vendedor gerenciar o estoque de vários depósitos que correspondem às localidades onde possui seu inventário. Usuário (Vendedor) Sim, desde que o vendedor tenha pelo menos um depósito configurado.

Obter detalhe de estoque

Tenha em mente que um mesmo UP pode ter até duas tipologias, seja (selling_address e meli_facility) ou (seller_warehouse e meli_facility).

Para consultar o estoque associado a um Produto do Usuário, você deve fazer a seguinte requisição.

Chamada:

curl -X GET https://api.mercadolibre.com/user-products/$USER_PRODUCT_ID/stock -H 'Authorization: Bearer $ACCESS_TOKEN'

Exemplo:

curl -X GET https://api.mercadolibre.com/user-products/MLAU123456789/stock -H 'Authorization: Bearer $ACCESS_TOKEN'

Exemplo de resposta para tipologia selling_address:

{
  "locations": [
    {
      "type": "selling_address",
      "quantity": 5
    }
  ],
  "user_id": 1234,
  "id": "MLBU206642488"
}

Exemplo de resposta para tipologia meli_facility:

{
  "locations": [
    {
      "type": "meli_facility", // fulfillment
      "quantity": 5
    }
  ],
  "user_id": 1234,
  "id": "MLBU206642488"
}

Exemplo de resposta para tipologia seller_warehouse:

{
   "locations": [
       {
           "type": "seller_warehouse",
           "network_node_id": "MXP123451",
           "store_id": "9876543",
           "quantity": 15
       },
       {
           "type": "seller_warehouse",
           "network_node_id": "MXP123452",
           "store_id": "9876553",
           "quantity": 15
       }
   ],
   "user_id": 1234,
   "id": "MLAU123456789"
}

Considerações:

  • Ao consultar os detalhes do estoque, será retornado um header chamado x-version, que terá um valor inteiro (do tipo long) que representará a versão atual de /stock/.
  • Este header deve ser enviado ao realizar chamadas PUT no recurso /stock/.
  • Se não for enviado, retornará um bad request (status code: 400).
  • Adicionalmente, caso a versão enviada não seja a mais recente, será retornado um conflito (status code: 409).
  • No caso de uma resposta com código 409, você deve consultar novamente o estoque para obter a versão atualizada do header x-version.

Gerir estoque

Utilize a seguinte chamada para enviar a quantidade de estoque a nível User Products nesses dois tipos de localizações de estoque selling_address e meli_facility

Nota:

Para itens com localização selling_address, você ainda poderá continuar utilizando o PUT de itens. Nesse caso, o Mercado Livre atualizará o estoque para todos os itens associados ao mesmo user_product_id. No entanto, já é recomendado adaptar-se ao novo recurso de user-products/stock, que passará a ser o recurso definitivo para essas atualizações.


Chamada:

curl -X PUT https://api.mercadolibre.com/user-products/$USER_PRODUCT_ID/stock/type/selling_address 
-H 'Content-Type: application/json' -H 'Authorization: Bearer $ACCESS_TOKEN' -H 'x-version: $HEADER' 
-d '{
    "quantity": $STOCK_QUANTITY
}'

Exemplo:

curl -X PUT https://api.mercadolibre.com/user-products/MLAU123456789/stock/type/selling_address 
-H 'Content-Type: application/json' -H 'Authorization: Bearer $ACCESS_TOKEN' -H 'x-version: 1' 
-d '{
    "quantity": 10
}'

Códigos de status da resposta:

Código Mensagem Descrição Recomendação
204 OK O estoque será atualizado de maneira assíncrona em todas as condições de venda do produto do usuário.
400 Você não pode modificar o estoque do endereço de venda se os itens associados são apenas fulfillment ou nenhum item está associado.
400 Você não pode modificar o estoque do endereço de venda em itens sem ID de inventário.
400 Você não pode modificar o estoque do endereço de venda porque é necessário realizar uma entrada completa primeiro antes de modificar.
400 Falta o cabeçalho X-Version Cabeçalho “x-version” não informado. Você deve informar o cabeçalho “x-version”.

Nota:

Para atualizar o estoque do tipo seller_warehouse, deve rever a documentação de estoque multi-origem.



Próxima documentação: Estoque multi-origem.