Pular para o conteúdo
PacoteVício API
Menu

Rastreamento por transportadora

API de rastreamento Shopee

Acompanhe pedidos da Shopee dentro do seu próprio sistema, com status normalizados e histórico de eventos em JSON — inclusive quando o envio é operado por uma transportadora parceira.

Qual código enviar

Use o código de rastreio que a Shopee mostra no detalhe do pedido, não o número do pedido. O parâmetro aceita de 1 a 40 caracteres, com letras, números e hífen, sem espaços.

  • SPX0000000000 (exemplo fictício)
  • BR000000000BR (exemplo fictício)

Shopee Xpress e parceiras

Dependendo do vendedor e do modal de envio, o pedido é entregue pela Shopee Xpress ou por uma transportadora parceira. Em vez de manter uma tabela de qual transportadora atende qual vendedor, envie o código e leia o campo courier da resposta.

Quando você já sabe a origem, GET /v1/track/shopee/{codigo} força a transportadora e responde 400 courier_not_supported se o código não pertencer a ela. Na detecção automática, códigos de outras transportadoras continuam sendo rastreados normalmente.

Pedido aprovado, etiqueta emitida, objeto parado

O status pending cobre o intervalo em que a etiqueta já existe mas o objeto ainda não teve movimentação. É o status certo para exibir "aguardando postagem" sem inventar uma mensagem a partir do texto da transportadora.

Quando o objeto entra na rede, os eventos passam por in_transit, out_for_delivery e delivered. available_for_pickup indica que o pedido espera retirada em um ponto, e exception cobre tentativa de entrega frustrada, problema de endereço ou avaria.

Atualização em lote sem estourar limites

Um pedido típico muda de status poucas vezes por dia. Consultar a mesma encomenda a cada minuto gasta cota e não melhora a experiência de quem acompanha o pedido: use cache pelo campo status_updated_at e só consulte de novo quando o timestamp mudar.

Para varreduras em segundo plano, suba o retry_level para high e distribua as chamadas ao longo do intervalo. Para uma tela aberta pelo usuário, low ou medium respondem mais rápido.

Primeira consulta

Envie o código com a transportadora explícita na rota. A alternativa é GET /v1/track/{codigo}, que detecta a transportadora pelo formato.

cURL
curl "https://api.pacotevicio.dev/v1/track/shopee/SPX0000000000" \
  --header "X-API-Key: SUA_CHAVE_DE_API"
Resposta 200 — exemplo
{
  "tracking_code": "SPX0000000000",
  "courier": "shopee",
  "status": "in_transit",
  "status_updated_at": "2026-10-21T08:30:00Z",
  "service": "Shopee Xpress",
  "package_description": null,
  "origin": null,
  "destination": null,
  "estimated_delivery_date": null,
  "estimated_delivery": null,
  "delivered_at": null,
  "recipient": null,
  "events": [
    {
      "timestamp": "2026-10-19T17:20:00Z",
      "status": "collected",
      "description": "Objeto coletado pelo vendedor",
      "location": {
        "country": "BR",
        "state": "SP",
        "city": "São Paulo",
        "facility": "Ponto de coleta"
      },
      "destination": null,
      "courier_status_code": null,
      "courier_status_label": null,
      "detail": null,
      "comment": null
    },
    {
      "timestamp": "2026-10-21T08:30:00Z",
      "status": "in_transit",
      "description": "Objeto em trânsito para o centro de distribuição",
      "location": {
        "country": "BR",
        "state": "SP",
        "city": "Guarulhos",
        "facility": "Centro de distribuição"
      },
      "destination": null,
      "courier_status_code": null,
      "courier_status_label": null,
      "detail": null,
      "comment": null
    }
  ]
}

O exemplo usa dados fictícios. Os campos seguem o contrato de GET /v1/track/{codigo}.

Perguntas frequentes

Preciso do ID do pedido ou do código de rastreio?

Do código de rastreio. O ID do pedido é interno da Shopee e não é aceito pela API. O código aparece no detalhe do pedido, junto ao status do envio.

A API cobre pedidos enviados por transportadoras parceiras?

Sim. A detecção automática identifica a transportadora pelo formato do código e devolve o slug correspondente no campo courier. Para forçar a Shopee, use /v1/track/shopee/{codigo}.

Como tratar um pedido que ainda não tem código?

Sem código não há consulta. Trate esse estado no seu sistema como "aguardando envio" e comece a consultar quando o vendedor informar o código. O status pending já cobre o período entre a emissão da etiqueta e a primeira movimentação.

Posso usar a API em uma página pública de rastreio?

Sim, desde que a chave fique no servidor. Exponha um endpoint próprio que valide o pedido do usuário e chame a PacoteVício por trás — nunca envie a X-API-Key para o navegador.

Outras transportadoras