Recursos Cross
Confira os principais recursos das nossas APIsDocumentação do
Você pode usar esta documentação para as seguintes unidades de negócio:
Gestão de packs
Relação de entidades
O diagrama ilustra como os componentes-chave se inter-relacionam dentro de um pack:
- Pack: Torna-se um componente obrigatório em todas as compras, pois todos os pedidos estarão associados a um pack_id.
- Relação com Order (Pedido): Existe uma relação de 1 a N entre um pack e um ou mais pedidos. Isso significa que um pack pode conter múltiplos pedidos, o que reflete situações onde vários pedidos são agrupados em um único pack.
- Relação com Shipping (Envio): Existe uma relação de 0 a 1, o que sugere que um pack pode ou não estar vinculado a um processo de envio. Este caso é comum, especialmente em vendas de itens not_specified, onde nem sempre é necessário um shipment_id.
- Relação com Payments (Pagamentos): Existe uma relação de 1 a N entre um pedido e um ou mais pagamentos. Isso implica que um pedido pode exigir múltiplos pagamentos, como no caso de pagamentos a prazo ou quando um pedido está associado a várias transações diferentes.
- Relação com Descontos (Discounts): Existe uma relação de N a N entre pagamentos e descontos. Isso implica que agora um único pagamento pode estar vinculado a múltiplos descontos.
Este diagrama fornece uma visão clara do fluxo de packs, ordens, envios e pagamentos, destacando a flexibilidade e as possíveis variações em cada componente.
Saiba mais sobre:
- Como uso a garantia estendida?
- Como estender a garantia de um produto?
- Como cancelo a garantia estendida?
Consultar ordens de um pack
Representa um pacote de compra, pode conter uma ou várias ordens do mesmo ou de diferentes vendedores.
Este endpoint permite consultar informações sobre as ordens de um pack.
Chamada:
curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/packs/$PACK_ID
Exemplo:
curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/packs/2000006181551917
Resposta:
{
"shipment": {
"id": 43729529445
},
"orders": [
{
"id": 2000009047722568
},
{
"id": 2000009047707726
}
],
"id": 2000006181551917,
"status": "released",
"status_detail": null,
"buyer": {
"id": 1944693439
},
"date_created": "2024-08-15T17:38:30.000-0400",
"last_updated": "2024-08-15T17:42:52.000-0400"
}
Parâmetros de resposta:
- shipment.id: Identificador único do envio.
- orders.id: Identificadores únicos dos pedidos que estão associados a um pack.
- id: Identificador único do pack.
- status: Estado atual do pack. Pode assumir os seguintes valores:
- Released: os pedidos e o envio estão pagos.
- Error: Algo falhou no processo e pode ser recuperado.
- Pending_cancel: ocorreu um erro irrecuperável.
- Cancelled: os pedidos e o envio foram cancelados.
- status_detail: Fornece detalhes adicionais sobre o status do pack, como os motivos de um cancelamento ou qualquer outro problema específico que afete o envio (neste caso, null indica que não há detalhes adicionais).
- buyer.id: Identificador único do comprador associado ao pack.
- date_created: Data e hora em que o pack foi criado.
- last_updated: Data e hora da última atualização do pack.
Códigos de status de resposta:
Código | Mensagem | Descrição | Possível Solução |
---|---|---|---|
200 - OK | - | Consulta bem-sucedida. | - |
403 - forbidden | Can not identify the user | Não é possível identificar o usuário. | Validar access token. |
403 - forbidden | The user has not access to the order | O caller não está autorizado a acessar o recurso. | Validar access token. |
404 - not_found | Order do not exists | O pack não existe. | Validar o pack_id. |
Consultar orders
Um order representa a compra de um item-variação no marketplace. O pedido sempre é de um único item, mas pode haver várias unidades dele.
Este endpoint permite obter detalhes sobre um pedido específico.
Chamada:
curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/orders/$ORDER_ID
Exemplo:
curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/orders/2000008779458474
Resposta:
{
"id": 2000009713473608,
"date_created": "2024-11-01T09:34:59.000-04:00",
"last_updated": "2024-11-01T09:37:20.000-04:00",
"expiration_date": "2024-11-29T09:35:43.000-04:00",
"date_closed": "2024-11-01T09:35:43.000-04:00",
"pack_id": 2000006556183755,
"fulfilled": null,
"buying_mode": "buy_equals_pay",
"shipping_cost": 0.0,
"mediations": [],
"total_amount": 125.92,
"paid_amount": 125.92,
"order_items": [
{
"item": {
"id": "MLB3737188005",
"title": "Espa\u00e7ador E Nivelador Para Piso 1,5 Mm 500p\u00e7s Eco Cortag Cor Vermelho",
"category_id": "MLB188658",
"variation_id": null,
"seller_custom_field": null,
"variation_attributes": [],
"warranty": "Garantia de f\u00e1brica: 3 meses",
"condition": "new",
"seller_sku": "ESPA\u00c7ADOR NIVELADOR ECO C/500 P\u00c7S CORTAG-2",
"global_price": null,
"net_weight": null,
"user_product_id": "MLBU1458960576",
"release_date": null
},
"quantity": 2,
"requested_quantity": {
"measure": "unit",
"value": 2
},
"picked_quantity": null,
"unit_price": 62.96,
"full_unit_price": 72.37,
"currency_id": "BRL",
"manufacturing_days": null,
"sale_fee": 11.07,
"listing_type_id": "gold_special",
"base_exchange_rate": null,
"base_currency_id": null,
"element_id": 1,
"stock": [
{
"store_id": "54936888", // Nuevos atributos de Stock Distribuido y Multi Origen
"network_node_id": "163942": "54936888", // Nuevos atributos de Stock Distribuido y Multi Origen
}
],
}
],
"currency_id": "BRL",
"payments": [
{
"id": 91776699099,
"order_id": 2000009713473608,
"payer_id": 6427433,
"collector": {
"id": 779432305
},
"card_id": null,
"reason": "Espa\u00e7ador E Nivelador Para Piso 1,5 Mm 500p\u00e7s Eco Cortag Cor Vermelho",
"site_id": "MLB",
"payment_method_id": "account_money",
"currency_id": "BRL",
"installments": 1,
"issuer_id": "2007",
"atm_transfer_reference": {
"transaction_id": null,
"company_id": null
},
"activation_uri": null,
"operation_type": "regular_payment",
"payment_type": "account_money",
"available_actions": [
"refund"
],
"status": "approved",
"status_code": null,
"status_detail": "accredited",
"transaction_amount": 125.92,
"transaction_amount_refunded": 0.0,
"taxes_amount": 0.0,
"shipping_cost": 0.0,
"overpaid_amount": 0.0,
"total_paid_amount": 125.92,
"installment_amount": null,
"deferred_period": null,
"date_approved": "2024-11-01T09:35:42.000-04:00",
"transaction_order_id": null,
"date_created": "2024-11-01T09:35:42.000-04:00",
"date_last_modified": "2024-11-01T09:37:12.000-04:00",
"marketplace_fee": 22.14,
"reference_id": null,
"authorization_code": null
}
],
"shipping": {
"id": 44028792542
},
"status": "paid",
"status_detail": null,
"tags": [
"pack_order",
"order_has_discount",
"catalog",
"paid",
"not_delivered"
],
"feedback": {
"seller": null,
"buyer": null
},
"context": {
"channel": "marketplace",
"site": "MLB",
"flows": [
"catalog"
],
},
"seller": {
"id": 779432305,
"user_type": null,
"tags": [],
"status": null,
"buy_restrictions": []
},
"buyer": {
"id": 6427433,
"user_type": null,
"tags": [],
"status": null,
"buy_restrictions": []
},
"taxes": {
"amount": null,
"currency_id": null,
"id": null
},
"cancel_detail": null,
"manufacturing_ending_date": null,
"order_request": {
"change": null,
"return": null
}
}
Parâmetros de resposta:
- id: Identificador único do pedido.
- date_created: Data e hora em que o pedido foi criado.
- last_updated: Data e hora da última atualização do pedido.
- expiration_date: Data e hora em que o pedido expira.
- date_closed: Data e hora em que o pedido foi fechado.
- pack_id: Identificador do pacote ao qual o pedido pertence, se estiver associado a um pacote.
- fulfilled: Indica se o pedido foi cumprido ou concluído (valor booleano).
- buying_mode: Modo de compra utilizado, neste caso, "buy_equals_pay" (comprar equivale a pagar).
- shipping_cost: Custo do envio associado ao pedido. Pode ser nulo se fizer parte de um pack_id. Caso contrário, será exibido o custo de envio que o comprador pagou pelo pedido.
- mediations: Array de mediações associadas ao pedido (pode estar vazio).
- total_amount: Valor total do pedido.
- paid_amount: Valor pago pelo pedido.
- order_items: Array que contém os detalhes dos produtos incluídos no pedido, como título, quantidade, preço unitário, etc.
- order_items.stock.store_id: Identifica a loja ou local físico específico onde o estoque de um item está armazenado.
- order_items.stock.network_node_id: Representa o nó do vendedor ou o local físico específico de onde o item vem.
- currency_id: Identificador da moeda utilizada na transação.
- payments: Array de pagamentos associados ao pedido, incluindo detalhes como o método de pagamento, valor da transação, status do pagamento, etc.
- shipping: Informações sobre o envio, incluindo o id do envio.
- status: Status atual do pedido (por exemplo, "paid").
- status_detail: Detalhes adicionais sobre o status do pedido (pode ser nulo).
- tags: Array de etiquetas associadas ao pedido.
- pack_order: O pedido pertence a um pacote.
- not_delivered: O pedido não foi entregue.
- not_paid: O pedido não foi pago.
- high_concurrency: Indica que o pedido é de um item de alta concorrência (por exemplo, em eventos de venda em massa).
- catalog: Pedido criado para um item listado no catálogo.
- unfulfilled: Pedido que não foi concretizado.
- test_order: Pedido de teste (ambas as partes devem ser usuários de teste).
- feedback: Representa as avaliações das contrapartes em uma venda.
- buyer: ID do feedback do comprador.
- seller: ID do feedback do vendedor.
- context: Informações contextuais do pedido, incluindo canal e país.
- seller: Informações sobre o vendedor, incluindo seu “id”, tipo de usuário e restrições de compra.
- buyer: Informações sobre o comprador, incluindo seu “id”, apelido, nome, sobrenome, tipo de usuário e restrições de compra.
- taxes: Informações sobre os impostos aplicados ao pedido, incluindo o valor e a moeda (pode ser nulo).
- cancel_detail: Detalhes sobre o cancelamento do pedido (pode ser nulo).
- manufacturing_ending_date: Data de término da fabricação, se aplicável (pode ser nulo).
- order_request: Informações sobre solicitações de troca ou devolução associadas ao pedido (pode ser nulo).
Códigos de status de resposta:
Código | Mensagem | Descrição | Possível Solução |
---|---|---|---|
200 - OK | - | Consulta bem-sucedida. | - |
403 - forbidden | Can not identify the user | Não foi possível identificar o usuário. | Validar access token. |
403 - forbidden | The user has not access to the order | O caller não está autorizado a acessar o recurso. | Validar access token. |
404 - not_found | Order does not exist | O pedido não existe. | Validar o order_id. |
Considerações
- Às vezes, pode acontecer que, mesmo que exista um pedido, o envio demore para ser criado. Nesses casos, o shipping ID será nulo até que o envio seja criado, e você receberá uma notificação assim que ele for gerado.
- As tags delivered/not delivered não serão mais adicionadas automaticamente. Se precisar que essas tags estejam presentes, o integrador deverá realizar um PUT com a tag correspondente.
- Pedidos com status paid serão cancelados se o pagamento for devolvido. Quando isso ocorrer, você receberá uma notificação para se manter atualizado sobre a mudança de status do pedido.
- Embora o pedido continue exibindo o campo seller_custom_field, as informações mostradas nesse campo seguirão certos critérios para selecionar as informações de SKU, tais como:
- seller_sku de atributos de variação
- seller_custom_field de variação
- seller_sku de atributos de item
- seller_custom_field de item
- Caso o pedido não esteja associado a um pack e a transação seja na modalidade “acordar com o vendedor”, você não receberá um status “to be agreed”, mas o shipping ID virá como nulo. Isso indicará que você deverá entrar em contato com o comprador para coordenar o método de envio.
Já tenho o produto
Este endpoint permite que o vendedor marque a disponibilidade de estoque ou "Já tenho o produto", permitindo despachar o produto quando estiver pronto.
Chamada:
curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/shipments/$SHIPMENT_ID/process/ready_to_ship
Exemplo:
curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/shipments/43664723386/process/ready_to_ship
Resposta:
{
"status": 200
}
Códigos de estado de resposta:
Código | Mensagem | Descrição | Possível Solução |
---|---|---|---|
200 - OK | - | Consulta bem-sucedida. | - |
403 - forbidden | At least one policy returned UNAUTHORIZED | O chamador não está autorizado a acessar o recurso. | Validar access token. |
404 - not_found | Not found shipment with id. | shipment_id não encontrado. | Validar shipment_id. |
Considerações:
- Tenha em mente que esta funcionalidade só pode ser usada para ordens ME2.
- Considere que está habilitada em países que têm a funcionalidade de manufacturing_time e ME2.