FernandoAcosta.Net

REST API: rastreio em pedidos

1 min de leituraAtualizado há 2 semanas1.8.0

O plugin adiciona o campo shipping_tracking_code aos pedidos da API REST do WooCommerce (/wp-json/wc/v3/orders/{id}). Autenticação e permissões são as do WooCommerce.

Ler

GET /wp-json/wc/v3/orders/123?_fields=id,shipping_tracking_code
{
  "id": 123,
  "shipping_tracking_code": [
    { "company_id": 0, "name": "Correios", "tracking_code": "AB123456789BR" }
  ]
}

company_id é a posição da transportadora na lista cadastrada, começando em 0. Transportadora apagada vira "name": "Transportadora".

Adicionar

PUT /wp-json/wc/v3/orders/123
{ "shipping_tracking_code": { "company_id": 0, "tracking_code": "AB123456789BR" } }

Faz o mesmo que adicionar no painel: nota no pedido, mudança de status e e-mail. Envie um objeto (não uma lista), um código por chamada. Código que já está no pedido é ignorado.

:::warning Código vazio apaga tudo "tracking_code": "" remove todos os códigos do pedido. Valide antes de enviar. :::

Não há remoção pela API. Use o painel ou wc_any_shipping_notify_update_tracking_code() com $remove = true (Funções helper).

Bom saber

  • Reordenar a lista de transportadoras muda os company_id. Deixe a lista fixa antes de integrar.
  • Sem company_id ou tracking_code, a chamada volta 200 sem mudar nada. Confira o campo na resposta.
Foi útil?