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_idoutracking_code, a chamada volta 200 sem mudar nada. Confira o campo na resposta.