VenddorDocumentação API
API atualAPI legada
Guia rápidoReferência completa
Carregando índice…
API legada/Referência completa

Remessas

A API de remessas gerencia as remessas dos pedidos da sua loja: criar, atualizar e acompanhar.

A API de remessas permite gerenciar as remessas dos pedidos da sua loja. Uma remessa é o registro de que uma parte do pedido, ou o pedido inteiro, foi entregue a uma transportadora, em geral com um código de rastreamento. Você pode criar remessas, atualizar as existentes e acompanhar o status de cada uma.

Todas as chamadas usam as credenciais HTTP Basic de um administrador ($EMAIL:$API_KEY) e o endereço da sua loja ($BASE_URL).

Pontos principais
  • As remessas pertencem a pedidos: para criar uma, você precisa do id do pedido e dos itens que vão nela.
  • Você pode criar remessas parciais, enviando só alguns itens do pedido ou quantidades menores que a quantidade pedida.
  • Esta página mostra as letras de status P, S, D e F. A página Endpoints desta seção mostra outro conjunto de campos e de palavras de status, então leia cada página nos próprios termos.
  • Os campos obrigatórios do objeto de remessa são marcados com * na página Campos, e qualquer campo que não esteja lá é ignorado.
  • Excluir uma remessa só remove o registro. A entrega não é cancelada.

Como funciona

Uma remessa começa em processamento, é entregue à transportadora e termina como entregue, ou como falha/devolvida.

Em processamento→Enviada→Entregue

Códigos de status da remessa

CódigoDescrição
PEm processamento (Processing)
SEnviada (Shipped)
DEntregue (Delivered)
FFalhou/Devolvida (Failed/Returned)

Conceitos principais

Listar remessas

O GET /api/shipments/ retorna uma lista de todas as remessas. O endpoint aceita paginação e filtros, para ajudar você a encontrar remessas específicas.

ParâmetroTipoObrigatórioDescrição
pageintegerNãoNúmero da página (padrão: 1)
items_per_pageintegerNãoQuantidade de itens por página (padrão: 10)
order_idintegerNãoFiltra as remessas pelo id do pedido
statusstringNãoFiltra as remessas pelo status

A resposta de exemplo da listagem:

json
{
  "shipments": [
    {
      "shipment_id": "12",
      "order_id": "145",
      "shipping_method": "Standard Shipping",
      "tracking_number": "1Z999AA10123456784",
      "status": "S",
      "timestamp": "1649851200"
    },
    {
      "shipment_id": "13",
      "order_id": "146",
      "shipping_method": "Express Shipping",
      "tracking_number": "1Z999AA10123456785",
      "status": "P",
      "timestamp": "1649937600"
    }
  ],
  "params": {
    "page": 1,
    "items_per_page": 10,
    "total_items": 2
  }
}

Consultar uma remessa

O GET /api/shipments/{shipment_id}/ retorna os detalhes de uma remessa específica, pelo id. Além dos dados da listagem, a resposta traz a transportadora, os itens e os comentários.

json
{
  "shipment_id": "12",
  "order_id": "145",
  "shipping_method": "Standard Shipping",
  "tracking_number": "1Z999AA10123456784",
  "carrier": "UPS",
  "status": "S",
  "timestamp": "1649851200",
  "items": [
    {
      "item_id": "458",
      "product_id": "123",
      "product_name": "Premium Widget",
      "amount": "2"
    },
    {
      "item_id": "459",
      "product_id": "124",
      "product_name": "Widget Accessories",
      "amount": "1"
    }
  ],
  "comments": "Handle with care"
}

Criar uma remessa

O POST /api/shipments/ cria uma remessa nova para um pedido. O corpo da requisição tem estes parâmetros.

ParâmetroTipoObrigatórioDescrição
order_idstringSimId do pedido para o qual a remessa será criada
shipping_methodstringSimForma de envio a usar
tracking_numberstringNãoCódigo de rastreamento da remessa
carrierstringNãoTransportadora
itemsarraySimArray com os itens do pedido que entram nesta remessa
commentsstringNãoComentários sobre a remessa

Um exemplo de requisição:

json
{
  "order_id": "145",
  "shipping_method": "Standard Shipping",
  "tracking_number": "1Z999AA10123456784",
  "carrier": "UPS",
  "items": [
    {
      "item_id": "458",
      "amount": "2"
    },
    {
      "item_id": "459",
      "amount": "1"
    }
  ],
  "comments": "Handle with care"
}
Dica

Você pode criar remessas parciais informando só alguns dos itens do pedido, ou quantidades menores que o total pedido.

Atualizar uma remessa

O PUT /api/shipments/{shipment_id}/ atualiza uma remessa existente. Um exemplo de requisição que registra o novo código de rastreamento, marca a remessa como entregue e acrescenta um comentário:

json
{
  "tracking_number": "1Z999AA10123456789",
  "status": "D",
  "comments": "Delivered to front door"
}

Endpoints

MétodoCaminhoFinalidadeAutenticação
GET/api/shipmentsListar todas as remessas, com paginação e filtros, veja PaginaçãoAdministrador
POST/api/shipmentsCriar uma remessa, veja EndpointsAdministrador
GET/api/shipments/{id}Consultar uma remessa específica, veja EndpointsAdministrador
PUT/api/shipments/{id}Atualizar uma remessa, veja EndpointsAdministrador
DELETE/api/shipments/{id}Excluir uma remessa, veja EndpointsAdministrador

Erros comuns

  • Criar uma remessa com itens que não fazem parte do pedido. A página de campos diz que todos os produtos citados na remessa precisam fazer parte do pedido informado.
  • Deixar o código de rastreamento de fora. Ele é opcional, mas a página de campos recomenda sempre informá-lo, para que você e seus clientes acompanhem a entrega.
  • Tratar a exclusão como cancelamento. Ela só remove o registro da remessa, e a entrega em si precisa ser cancelada com a transportadora.
  • Enviar um campo que não está na tabela de campos. Ele é ignorado.

Próximos passos

Endpoints
Todas as URLs da API de remessas, com exemplos de requisição e resposta.
Paginação
Escolha a página e o tamanho da página da listagem.
Campos
A referência dos campos de remessa, com padrões e valores aceitos.
Anterior
Rastreio por token de app
Próxima
Endpoints de remessas
Nesta página
  • Como funciona
  • Códigos de status da remessa
  • Conceitos principais
  • Listar remessas
  • Consultar uma remessa
  • Criar uma remessa
  • Atualizar uma remessa
  • Endpoints
  • Erros comuns
  • Próximos passos