Mercado Envios Flex
Configurar o usuário de test
Para configurar esta funcionalidade para os usuários de teste, você deve estar logado na conta que deseja colocar Flex, e a conta deve ter:
- ME2 em suas publicações;
- Reputação amarela ou verde;
- Endereço de e-mail compatível com a área de cobertura de seu país;
- O user_id tem que estar configurado com o endereço de envio de acordo com as áreas de cobertura da seguinte maneira:
- Para MLC: deve configurar com a cidade, por exemplo: Lo Barnechea.
- Para MLA: deve configurar para um endereço de CABA (Ciudade Autónoma de Buenos Aires).
- Para MCO: deve configurar qualquer bairro de Bogota.
- Para MLB: deve configurar para um endereço com cobertura a Flex, conforme alguns exemplos de CEPs: São Paulo Central: 01401000 Oeste: 05002070 Leste: 03424010 Norte: 02308000 Sul1: 04342011 Sul2: 04866100
- Para MLU: deve estar configurado para Montevidéu ou Canelones.
Depois de garantidas todas essas condições, é necessário acessar a página de Mercado Envios Flex e fazer a ativação.
Ao fazer essa ativação, todos os anúncios passarão a oferecer Flex, e para alterar essa configuração, deverá acessar a página do Mercado Livre do usuário > "Configurações" > "Preferências de venda" e editar.
Consultar configuração do vendedor
Antes de verificar as configurações de Flex em uma conta, identifique se o vendedor tem esse tipo de envio (self_service) ativo usando o recurso /users /$USER_ID/shipping_preferences. Depois, você pode verificar as configurações que o vendedor habilitou na conta.
Chamada:
curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' -H 'Accept-version: v2' https://api.mercadolibre.com/shipping/flex/sites/$SITE_ID/configuration
Exemplo:
curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' - H 'Accept-version: v2' curl -X POST https://api.mercadolibre.com/shipping/flex/sites/MLA/configuration
{
"query": "{ configuration(user_id: 427427465, service_type: \"lightweight\"){ adoption{ service_id status {id cause date} creation_date last_update penalty_status recover_date delivery_window } address{ id address_line zip_code city{ id name } } capacity{ availables selected current_count } cutoff{ availables{ value unit } selected{ week saturday sunday } } working_days training_time{ offset{ value unit } activation_date } zones{ id label price{ cents currency_id decimal_separator fraction symbol } is_mandatory selected neighborhoods } }}"
}
Resposta:
{
"configuration": {
"address": {
"address_line": "Avenida Brigadeiro Luís Antônio - de 2253 a 3139 - lado ímpar 50",
"city": {
"id": "BR-SP-44",
"name": "São Paulo"
},
"id": 1091302682,
"zip_code": "01401000"
},
"adoption": {
"creation_date": "2020-03-10T15:43:36-03:00",
"delivery_window": "same_day",
"last_update": "2020-03-11T09:43:38-03:00",
"penalty_status": "",
"recover_date": "0001-01-01T00:00:00Z",
"service_id": 214241,
"status": "in"
},
"capacity": {
"availables": [
0,
10,
20,
30,
40,
60,
80,
100
],
"current_count": 0,
"selected": 100
},
"cutoff": {
"availables": [
{
"unit": "HOUR",
"value": 12
},
{
"unit": "HOUR",
"value": 13
},
{
"unit": "HOUR",
"value": 14
},
{
"unit": "HOUR",
"value": 15
},
{
"unit": "HOUR",
"value": 16
},
{
"unit": "HOUR",
"value": 17
},
{
"unit": "HOUR",
"value": 18
}
],
"selected": {
"saturday": 13,
"sunday": 12,
"week": 15
}
},
"training_time": {
"activation_date": "2020-03-10T00:00:00.000Z",
"unit": "DAY",
"value": 7
},
"working_days": [
"week",
"saturday"
],
"zones": [
{
"id": "BR-SP-Centro",
"is_mandatory": false,
"label": "Centro",
"polygon": {
"properties": {
"name": "Centro"
}
},
"price": {
"cents": "90",
"currency_id": "BRL",
"decimal_separator": ".",
"fraction": "8",
"symbol": "R$"
},
"selected": true
},
{
"id": "BR-SP-Leste-1",
"is_mandatory": false,
"label": "Leste 1",
"polygon": {
"properties": {
"name": "Leste 1"
}
},
"price": {
"cents": "90",
"currency_id": "BRL",
"decimal_separator": ".",
"fraction": "13",
"symbol": "R$"
},
"selected": false
},
{
"id": "BR-SP-Leste-2",
"is_mandatory": false,
"label": "Leste 2",
"polygon": {
"properties": {
"name": "Leste 2"
}
},
"price": {
"cents": "90",
"currency_id": "BRL",
"decimal_separator": ".",
"fraction": "15",
"symbol": "R$"
},
"selected": false
},
{
"id": "BR-SP-Leste-3",
"is_mandatory": false,
"label": "Leste 3",
"polygon": {
"properties": {
"name": "Leste 3"
}
},
"price": {
"cents": "90",
"currency_id": "BRL",
"decimal_separator": ".",
"fraction": "15",
"symbol": "R$"
},
"selected": false
},
{
"id": "BR-SP-Leste-4",
"is_mandatory": false,
"label": "Leste 4",
"polygon": {
"properties": {
"name": "Leste 4"
}
},
"price": {
"cents": "90",
"currency_id": "BRL",
"decimal_separator": ".",
"fraction": "15",
"symbol": "R$"
},
"selected": false
},
{
"id": "BR-SP-Leste-5",
"is_mandatory": false,
"label": "Leste 5",
"polygon": {
"properties": {
"name": "Leste 5"
}
},
"price": {
"cents": "90",
"currency_id": "BRL",
"decimal_separator": ".",
"fraction": "15",
"symbol": "R$"
},
"selected": false
},
{
"id": "BR-SP-Norte-1",
"is_mandatory": false,
"label": "Norte 1",
"polygon": {
"properties": {
"name": "Norte 1"
}
},
"price": {
"cents": "90",
"currency_id": "BRL",
"decimal_separator": ".",
"fraction": "13",
"symbol": "R$"
},
"selected": false
},
{
"id": "BR-SP-Norte-2",
"is_mandatory": false,
"label": "Norte 2",
"polygon": {
"properties": {
"name": "Norte 2"
}
},
"price": {
"cents": "90",
"currency_id": "BRL",
"decimal_separator": ".",
"fraction": "13",
"symbol": "R$"
},
"selected": false
},
{
"id": "BR-SP-Norte-3",
"is_mandatory": false,
"label": "Norte 3",
"polygon": {
"properties": {
"name": "Norte 3"
}
},
"price": {
"cents": "90",
"currency_id": "BRL",
"decimal_separator": ".",
"fraction": "15",
"symbol": "R$"
},
"selected": false
},
{
"id": "BR-SP-Oeste-1",
"is_mandatory": false,
"label": "Oeste 1",
"polygon": {
"properties": {
"name": "Oeste 1"
}
},
"price": {
"cents": "90",
"currency_id": "BRL",
"decimal_separator": ".",
"fraction": "13",
"symbol": "R$"
},
"selected": false
},
{
"id": "BR-SP-Oeste-2",
"is_mandatory": false,
"label": "Oeste 2",
"polygon": {
"properties": {
"name": "Oeste 2"
}
},
"price": {
"cents": "90",
"currency_id": "BRL",
"decimal_separator": ".",
"fraction": "15",
"symbol": "R$"
},
"selected": false
},
{
"id": "BR-SP-Oeste-3",
"is_mandatory": false,
"label": "Oeste 3",
"polygon": {
"properties": {
"name": "Oeste 3"
}
},
"price": {
"cents": "90",
"currency_id": "BRL",
"decimal_separator": ".",
"fraction": "13",
"symbol": "R$"
},
"selected": false
},
{
"id": "BR-SP-Sul-1",
"is_mandatory": false,
"label": "Sul 1",
"polygon": {
"properties": {
"name": "Sul 1"
}
},
"price": {
"cents": "90",
"currency_id": "BRL",
"decimal_separator": ".",
"fraction": "13",
"symbol": "R$"
},
"selected": false
},
{
"id": "BR-SP-Sul-2",
"is_mandatory": false,
"label": "Sul 2",
"polygon": {
"properties": {
"name": "Sul 2"
}
},
"price": {
"cents": "90",
"currency_id": "BRL",
"decimal_separator": ".",
"fraction": "13",
"symbol": "R$"
},
"selected": false
},
{
"id": "BR-SP-Sul-3",
"is_mandatory": false,
"label": "Sul 3",
"polygon": {
"properties": {
"name": "Sul 3"
}
},
"price": {
"cents": "90",
"currency_id": "BRL",
"decimal_separator": ".",
"fraction": "15",
"symbol": "R$"
},
"selected": false
}
]
}
}
Também é possível consultar as localizações de coordenadas do mapa através de um geoJSON, neste caso a query poderia ser executada assim no atributo zones:
zones{ id label polygon{ type geometry{ type coordinates } properties{ name } }
Resposta:
{
"id": "BR-SP-Sul-1",
"is_mandatory": false,
"label": "Sul 1",
"polygon": {
"geometry": {
"coordinates": [
[
[
-46.687368,
-23.6263235
],
]
…………..
Determine o prazo de entrega e limite de envios
Este recurso permite configurar até que horas você oferece envios no mesmo dia. Você também pode optar por oferecer somente envios no dia seguinte. Após o horário configurado, você oferecerá envios no próximo dia útil.
Também permitirá configurar quantos envios com o Mercado Envios Flex você vai oferecer por dia nos seus anúncios. Ao alcançar o limite, os envios rápidos não serão mais mostrados nos seus anúncios.
Parâmetros esperados:
delivery_window (required): indica se o usuário escolheu fazer entregas no mesmo dia (consideramos apenas os dias úteis):
- same_day: o usuário escolheu fazer entregas no mesmo dia.
- next_day: o usuário escolheu fazer entregas no dia seguinte.
cutoff: indica o horário limite para receber pedidos a ser enviados no mesmo dia. Se o usuário escolheu “next_day” em delivery_window, o cutoff não pode ser vazio. Possíveis valores: 12 / 13 / 14 / 15 / 16 / 17 / 18. Também é possível configurar entrega aos finais de semana, habilitando entregas aos sábados e domingos.
capacity: capacidade máxima por dia selecionada pelo seller, o seu valor pode ser vazio, porque não é necessário atualizá-lo.
Possíveis valores: 10 / 20 / 30 / 40 / 60 / 80 / 100 / 0 (indica que é "Mais de 100).
Chamada:
curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' -H 'Accept-version: v2' https://api.mercadolibre.com/shipping/flex/sites/$SITE_ID/users/$USER_ID/adoption
Exemplo:
curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' 'Accept-version: 2' https://api.mercadolibre.com/shipping/flex/sites/MLA/users/427427465/adoption
[
{
"service_id": 171791,
"delivery_window": "next_day",
"settings": [
{
"cutoff": {
"week": {
"value": 15
},
"saturday": {
"value": 13,
"enabled": true
},
"sunday": {
"value": 12,
"enabled": false
}
},
"capacity": 100
}
]
}
]
Resposta:
{
[
{
"user_id": 427427465,
"service_id": 171791,
"service_type": "lightweight",
"status": {
"version": 1,
"id": "out",
"cause": "full",
"date": "2020-08-25T17:59:29.276-03:00"
},
"penalty_status": "",
"delivery_window": "next_day",
"settings": [
{
"zones": [
""
],
"monday": {
"cutoff": 15,
"capacity": 100,
"enabled": true
},
"tuesday": {
"cutoff": 15,
"capacity": 100,
"enabled": true
},
"wednesday": {
"cutoff": 15,
"capacity": 100,
"enabled": true
},
"thursday": {
"cutoff": 15,
"capacity": 100,
"enabled": true
},
"friday": {
"cutoff": 15,
"capacity": 100,
"enabled": true
},
"saturday": {
"cutoff": 13,
"capacity": 100,
"enabled": true
},
"sunday": {
"cutoff": 12,
"capacity": 100,
"enabled": false
}
}
],
"training_time": {
"offset": {
"value": 0,
"unit": "DAY"
},
"activation_date": "2019-07-15T00:00:00.000Z"
},
"creation_date": "2019-07-15T11:40:47-03:00",
"last_update": "2021-03-04T17:26:33-03:00",
"recover_date": null,
"site_id": "MLA",
"is_test": true
}
]
Amplie sua área de cobertura
Este endpoint permite que você configure as regiões onde quer entregar com Mercado Envios Flex.
Neste recurso é necessário enviar as zonas que deseja adicionar e também as que já estavam adicionadas, senão serão eliminadas.
Através da consulta da configuração do vendedor é possível obter as zonas liberadas pelo Mercado Livre para serem escolhidos pelo vendedor.
Chamada:
curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' -H ' Accept-version: v1'
https://api.mercadolibre.com/shipping/flex/sites/$SITE_ID/coverages/users/$USER_ID/services/types/$SERVICE_TYPE/zones
Exemplo:
curl -X PUT -H 'Authorization: Bearer $ACCESS_TOKEN' -H 'Accept-version: v1' https://api.mercadolibre.com/shipping/flex/sites/MLB/coverages/users/534720659/services/types/lightweight/zones
["BR-SP-Sul-2"]
Resposta:
[
{
"service_id": 214241,
"zones": [
"BR-SP-Sul-2"
]
}
]
Consultar Flex no item
Este endpoint permite que você consulte se o item está habilitado para ME Flex ou não.
Chamada:
curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/sites/$SITE_ID/shipping/selfservice/items/$ITEM_ID
Exemplo:
curl -X GET -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/sites/MLB/shipping/selfservice/items/MLB1493119403
Resposta:
Status: 204 No Content
Possíveis respostas:
204 - No Content: o item oferece Flex.
403 - Forbidden: site está desabilitado para Flex.
404 - Not Found: o ítem não oferece Flex ou o item não existe.
message: item down: o item não oferece Flex.
message: item not found: o item não foi encontrado.
Também é possível verificar se o item está ativado com Flex ou não através do recurso de /items, nas tags:
self_service_out: item não ativo
self_service_in: item ativo
Ativar Flex no item
Este endpoint permite que você ative a opção de Flex no item.
Chamada:
curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/sites/$SITE_ID/shipping/selfservice/items/$ITEM_ID
Exemplo:
curl -X POST -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/sites/MLB/shipping/selfservice/items/MLB1493119403
Resposta:
Status: 204 No Content
Possíveis respostas:
204 - No Content: o item foi atualizado corretamente para oferecer Flex.
400 - Bad Request: item is already in flex.
403 - Forbidden: site está desabilitado para Flex.
404 - Not Found: o item não existe.
Desativar Flex no item
Este endpoint permite que você desative a opção de Flex no item.
Chamada:
curl -X DELETE -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/sites/$SITE_ID/shipping/selfservice/items/$ITEM_ID
Exemplo:
curl -X DELETE -H 'Authorization: Bearer $ACCESS_TOKEN' https://api.mercadolibre.com/sites/MLB/shipping/selfservice/items/MLB1493119403
Resposta:
Status: 204 No Content
Possíveis respostas:
204 - No Content: o item foi atualizado corretamente para deixar de oferecer Flex.
400 - Bad Request: item is not in flex.
403 - Forbidden: site está desabilitado para Flex.
404 - Not Found: o item não existe.
Conheça mais sobre Mercado Envios Flex.
