Cálculo de frete:

Fretes podem ser calculados do seguinte modo:

Endpoint POST /api/v2/me/shipment/calculate

Payload:

{
  "from": {
    "postal_code": "01002001",  
    "address": "Endereço do remetente", // se for uma transportadora municipal o endereço e o número deve ser informado
    "number": "1" // número do destinatário
  },
  "to": {
    "postal_code": "90570020",  
    "address": "Endereço do destinatário", // se for uma transportadora municipal o endereço e o número deve ser informado
    "number": "2" // número do destinatário
  },
  "package": {
    "weight": 1,
    "width": 12,
    "height": 4,
    "length": 17
  },
  "options": {
    "insurance_value": 20.50,
    "receipt": false,
    "own_hand": false,
    "collect": false
  },
  "services": "1,2"
}

Exemplo com cURL:

$ curl -X POST \
    'https://www.melhorenvio.com.br/api/v2/me/shipment/calculate' \
    -H 'accept: application/json' \
    -H 'authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjNjYmQzNTBjYzI0YmI5NzdjMDRkNTRmYzg1NThhOTE4ZjNkZDBmMDBkMTFhYzg2ZmI0OTViMDBiNzQxODEwZDlhMWM2ZWVlNTRkMTdhZDkxIn0.eyJhdWQiOiIxIiwianRpIjoiM2NiZDM1MGNjMjRiYjk3N2MwNGQ1NGZjODU1OGE5MThmM2RkMGYwMGQxMWFjODZmYjQ5NWIwMGI3NDE4MTBkOWExYzZlZWU1NGQxN2FkOTEiLCJpYXQiOjE1MDY1MjMzODYsIm5iZiI6MTUwNjUyMzM4NiwiZXhwIjoxNTM4MDU5Mzg2LCJzdWIiOiIxNmIyMWVhNS00NmVjLTQ0Y2MtYjdmNS1hMDJmZmY3YjljMjgiLCJzY29wZXMiOlsiY2FydC1yZWFkIiwiY2FydC13cml0ZSIsImNvbXBhbmllcy1yZWFkIiwiY29tcGFuaWVzLXdyaXRlIiwiY291cG9ucy1yZWFkIiwibm90aWZpY2F0aW9ucy1yZWFkIiwiY291cG9ucy13cml0ZSIsIm9yZGVycy1yZWFkIiwicHVyY2hhc2VzLXJlYWQiLCJzaGlwcGluZy1jYWxjdWxhdGUiLCJzaGlwcGluZy1jYW5jZWwiLCJzaGlwcGluZy1jaGVja291dCIsInNoaXBwaW5nLWNvbXBhbmllcyIsInNoaXBwaW5nLWdlbmVyYXRlIiwic2hpcHBpbmctcHJldmlldyIsInNoaXBwaW5nLXByaW50Iiwic2hpcHBpbmctdHJhY2tpbmciLCJ3ZWJob29rcy1yZWFkIiwid2ViaG9va3Mtd3JpdGUiLCJ0cmFuc2FjdGlvbnMtcmVhZCIsInVzZXJzLXJlYWQiLCJ1c2Vycy13cml0ZSJdfQ.GpVYhn4ZLjvtBsNq_sLullUV5E-zb3t009IuKkeRHgDGiDlnt_Lslv7elg6ou2nD_t0u2REIv3umZsLhYxUhHak732DSek84YJ14ehF4OCwFDYY8j1qOHB91YpXIUe6BzrDSD58IC3sknmoV7Cln2oLWwsooHTmowVFceCW5BNzavoT-wawUGxfOKb-el0exgtfx9gs-ppEdfSYfRvRvvfGMDqcbqaoIZxOE1hf9LK1qIbuOjLUO0lPwXCmhIe8q-fKfb-DvGXhz9aTCZ2K4khaseDGkjXOQyB_abOqfzktcFOfqcXuInv53-UoPQNZhzfTPqu2ATe73AlVsbS9Y1w_F40cVgHfhlOujcqccpQiErM6mZvDkx7EIIcEXM7wmX4kDZzWBm5ZEf1Y4WX0lSR-zOK0jm-rOZ6MWKeko5-GcQaeqho9Q3I4o-RViVznBCBW1OnGy7K2jNlB0juL6ZL2YKgKhjxmhe-_dNSQ7BMvJpzhQsKcOkJXS70RBJvx17Dl0vHMuCbW-K1KT1HrPasMVB3psHNNE1wtPI1IeAogcd9eTtvD2Easy7hS0YUqf7KCXk7h2qJdGHpgbjwALGq4U6JvpDeyqWHmS5_d8v92dtJ5Lz4wFc-JYsueNU5tqJiz03ORnRCZCkYZu52pc5kiW7-fo-UVfxSDdizf76Fk' \
    -H 'content-type: application/json' \
    -d '{
    "from": {
      "postal_code": "01002001",  
      "address": "Endereço do remetente",
      "number": "1"
    },
    "to": {
      "postal_code": "90570020",  
      "address": "Endereço do destinatário",
      "number": "2"
    },
    "package": {
      "weight": 1,
      "width": 12,
      "height": 4,
      "length": 17
    },
    "options": {
      "insurance_value": 20.50,
      "receipt": false,
      "own_hand": false,
      "collect": false
    },
    "services": "1,2"
  }'

Nota: O Parâmetro pretty pode ser passado para imprimir o JSON de modo que se possa visualizar a informação na fase de desenvolvimento, não sendo recomendado para produção por aumentar o tamanho da resposta enviada ao cliente.

É possível informar uma lista de produtos no lugar do pacote, fazendo com que seja montado pacotes de acordo com o limite das transportadoras:

Endpoint POST /api/v2/me/shipment/calculate

Payload:

{
  "from": { // remetente (origem)
    "postal_code": "01002001", // cep 
    "address": "Endereço do remetente", // endereço
    "number": "1" // número
  },
  "to": { // destinatário (destino)
    "postal_code": "90570020",  
    "address": "Endereço do destinatário",
    "number": "2"
  },
  "products": [
    {
      "id": "831-a", // opcional, id do produto
      "weight": 5, // peso
      "width": 12, // largura
      "height": 4, // altura
      "length": 17, // comprimento
      "quantity": 2, // opcional, padrão 1
      "insurance_value": 100
    },
    {
      "id": "832-b", // opcional, id do produto
      "weight": 10,
      "width": 12,
      "height": 4,
      "length": 17,
      "quantity": 1, // opcional, padrão 1
      "insurance_value": 100
    },
    {
      "id": "833-c", // opcional, id do produto
      "weight": 15,
      "width": 12,
      "height": 4,
      "length": 17,
      "quantity": 1, // opcional, padrão 1
      "insurance_value": 100
    }
  ],
  "options": {
    "insurance_value": 20.50, // quando for calculado o frete com uma lista de produtos e o mesmo contendo seu respectivo valor segurado, não é necessário informar este campo
    "receipt": false, // AR
    "own_hand": false, // Mão própria
    "collect": false // Coleta
  },
  "services": "1,2" // Serviços filtrados
}

Exemplo com cURL:

$ curl -X POST \
    'https://www.melhorenvio.com.br/api/v2/me/shipment/calculate' \
    -H 'accept: application/json' \
    -H 'authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6IjNjYmQzNTBjYzI0YmI5NzdjMDRkNTRmYzg1NThhOTE4ZjNkZDBmMDBkMTFhYzg2ZmI0OTViMDBiNzQxODEwZDlhMWM2ZWVlNTRkMTdhZDkxIn0.eyJhdWQiOiIxIiwianRpIjoiM2NiZDM1MGNjMjRiYjk3N2MwNGQ1NGZjODU1OGE5MThmM2RkMGYwMGQxMWFjODZmYjQ5NWIwMGI3NDE4MTBkOWExYzZlZWU1NGQxN2FkOTEiLCJpYXQiOjE1MDY1MjMzODYsIm5iZiI6MTUwNjUyMzM4NiwiZXhwIjoxNTM4MDU5Mzg2LCJzdWIiOiIxNmIyMWVhNS00NmVjLTQ0Y2MtYjdmNS1hMDJmZmY3YjljMjgiLCJzY29wZXMiOlsiY2FydC1yZWFkIiwiY2FydC13cml0ZSIsImNvbXBhbmllcy1yZWFkIiwiY29tcGFuaWVzLXdyaXRlIiwiY291cG9ucy1yZWFkIiwibm90aWZpY2F0aW9ucy1yZWFkIiwiY291cG9ucy13cml0ZSIsIm9yZGVycy1yZWFkIiwicHVyY2hhc2VzLXJlYWQiLCJzaGlwcGluZy1jYWxjdWxhdGUiLCJzaGlwcGluZy1jYW5jZWwiLCJzaGlwcGluZy1jaGVja291dCIsInNoaXBwaW5nLWNvbXBhbmllcyIsInNoaXBwaW5nLWdlbmVyYXRlIiwic2hpcHBpbmctcHJldmlldyIsInNoaXBwaW5nLXByaW50Iiwic2hpcHBpbmctdHJhY2tpbmciLCJ3ZWJob29rcy1yZWFkIiwid2ViaG9va3Mtd3JpdGUiLCJ0cmFuc2FjdGlvbnMtcmVhZCIsInVzZXJzLXJlYWQiLCJ1c2Vycy13cml0ZSJdfQ.GpVYhn4ZLjvtBsNq_sLullUV5E-zb3t009IuKkeRHgDGiDlnt_Lslv7elg6ou2nD_t0u2REIv3umZsLhYxUhHak732DSek84YJ14ehF4OCwFDYY8j1qOHB91YpXIUe6BzrDSD58IC3sknmoV7Cln2oLWwsooHTmowVFceCW5BNzavoT-wawUGxfOKb-el0exgtfx9gs-ppEdfSYfRvRvvfGMDqcbqaoIZxOE1hf9LK1qIbuOjLUO0lPwXCmhIe8q-fKfb-DvGXhz9aTCZ2K4khaseDGkjXOQyB_abOqfzktcFOfqcXuInv53-UoPQNZhzfTPqu2ATe73AlVsbS9Y1w_F40cVgHfhlOujcqccpQiErM6mZvDkx7EIIcEXM7wmX4kDZzWBm5ZEf1Y4WX0lSR-zOK0jm-rOZ6MWKeko5-GcQaeqho9Q3I4o-RViVznBCBW1OnGy7K2jNlB0juL6ZL2YKgKhjxmhe-_dNSQ7BMvJpzhQsKcOkJXS70RBJvx17Dl0vHMuCbW-K1KT1HrPasMVB3psHNNE1wtPI1IeAogcd9eTtvD2Easy7hS0YUqf7KCXk7h2qJdGHpgbjwALGq4U6JvpDeyqWHmS5_d8v92dtJ5Lz4wFc-JYsueNU5tqJiz03ORnRCZCkYZu52pc5kiW7-fo-UVfxSDdizf76Fk' \
    -H 'content-type: application/json' \
    -d '{
    "from": {
      "postal_code": "01002001",  
      "address": "Endereço do remetente",
      "number": "1"
    },
    "to": {
      "postal_code": "90570020",  
      "address": "Endereço do destinatário",
      "number": "2"
    },
    "products": [
      {
        "id": "p-1", // id do produto (para ter referência do mesmo nos pacotes) (opcional)
        "weight": 5,
        "width": 12,
        "height": 4,
        "length": 17,
        "insurance_value": 100 // valor declarado/segurado do produto
      },
      {
        "id": "p-2",
        "weight": 25,
        "width": 12,
        "height": 4,
        "length": 17,
        "insurance_value": 100
      },
      {
        "id": "p-3",
        "weight": 15,
        "width": 12,
        "height": 4,
        "length": 17,
        "insurance_value": 100
      }
    ],
    "options": {
      "insurance_value": 20.50,
      "receipt": false,
      "own_hand": false,
      "collect": false
    },
    "services": "1,2"
  }'

Resposta:

[
  {
    "id": 1,
    "name": "Econômico",
    "price": "123.64", // valor total do frete
    "custom_price": "123.64", // valor total do frete customizado (pode ser configurado pelo cliente, como por exemplo tendo um adicional ou sendo frete grátis - pode ser utilizado em lojas virtuais)
    "discount": "5.16", // valor total do desconto repassado ao cliente
    "currency": "R$", // moeda utilizada
    "delivery_range": { // tempo de entrega estimado em mínimo e máximo
      "min": 10,
      "max": 10,
    },
    "delivery_time": 10, // tempo de entrega baseado na média do mínimo e máximo
    "custom_delivery_time": 10, // tempo de entrega customizado (pode ser configurado pelo cliente, como por exemplo tendo um adicional - pode ser utilizado em lojas virtuais)
    "packages": [ // pacotes que serão enviados (volumes)
      {
        "insurance_value": 200, // valor declarado/segurado do pacote (volume)
        "weight": 30, // peso do pacote (limite do serviço econômico, por conta disso montou-se 2 pacotes)
        "dimensions": { // dimensões do pacote
          "width": 12,
          "height": 4,
          "length": 34
        },
        "format": "box", // formato do pacote
        "products": [ // id dos produtos se não informado será o índice do array de produtos
          {
            "id": "p-1",
            "quantity": 1
          },
          {
            "id": "p-2",
            "quantity": 1
          }
        ],
        "price": "62.54", // preço do pacote
        "discount": "2.61" // desconto do pacote
      },
      {
        "insurance_value": 100,
        "weight": 15,
        "dimensions": {
          "width": 12,
          "height": 4,
          "length": 17
        },
        "format": "box",
        "products": [
          {
            "id": "p-3",
            "quantity": 1
          }
        ],
        "price": "61.1",
        "discount": "2.55"
      }
    ],
    "additional_services": {
      "receipt": false,
      "own_hand": false,
      "collect": false
    },
    "company": {
      "id": 1,
      "name": "Correios",
      "picture": "https://www.melhorenvio.com.br/images/shipping-companies/correios.png"
    }
  },
  // ... (resultado de outros serviços)
]

results matching ""

    No results matching ""