Depois que a etiqueta é gerada, o plugin assume o trabalho de importar o código de rastreio, avisar o cliente e mover o pedido pelos status correspondentes — tudo via um cron interno.
Como o ciclo funciona
- Etiqueta gerada. O pedido tem
_melhor_envio_label_generated = 1e o protocolo do Melhor Envio gravado em meta. - Cron acorda. O evento
wc_melhor_envio_check_postedroda no intervalo configurado. - Plugin pergunta ao Melhor Envio. Pra cada pedido nos status monitorados, ele consulta a API de tracking.
- Código chega. Quando a transportadora libera o rastreio, o plugin grava em
_melhor_envio_tracking_codese dispara o e-mail pro cliente. - Status muda. Conforme a postagem é detectada, o pedido caminha pelos status configurados (postado → entregue → ou falha).
Configurar o cron
Em WooCommerce → Configurações → Integrações → Melhor Envio, ajuste:
-
Intervalo de verificação — frequência com que o cron roda. Opções:
- Uma vez ao dia (padrão) — bom pra lojas com poucos pedidos por dia.
- A cada 12 horas — meio-termo.
- A cada hora — pra lojas com volume alto, onde clientes esperam atualização rápida.
-
Status para monitorar — quais status do pedido o cron deve verificar. O padrão é Processando. Você pode incluir múltiplos status.
Se você configurou Status após gerar etiqueta pra mover o pedido pra "Postado" (ou qualquer outro), esse mesmo status precisa estar em Status para monitorar. Senão o cron muda o pedido de status, perde de vista, e o rastreio nunca é importado.
Inspecionar e disparar manualmente
Mais embaixo na página de integração, o bloco Eventos agendados mostra:
- Se o cron está registrado.
- Quando vai rodar a próxima vez.
- Um link pra forçar execução agora (
?melhor-envio-force-cronna URL do admin).
Use o disparo manual pra testar se o cron está funcionando depois de uma instalação ou pra forçar um update fora do horário normal.
O cron padrão do WordPress (wp-cron.php) só dispara quando alguém acessa o site. Em lojas com pouco movimento à noite, isso atrasa as verificações. Considere desativar o cron interno (define( 'DISABLE_WP_CRON', true ); no wp-config.php) e configurar um cron real do servidor chamando wp-cron.php a cada 5 minutos. O Melhor Envio passa a atualizar nos horários certos.
E-mail de rastreio pro cliente
Quando um código de rastreio é importado, o plugin dispara um e-mail transacional do WooCommerce chamado Novo código de rastreio Melhor Envio.
Customize em WooCommerce → Configurações → E-mails → Novo código de rastreio Melhor Envio:
- Habilitar/Desabilitar o envio.
- Assunto — aceita placeholders
{site_title}e{order_number}. - Cabeçalho do e-mail.
- Conteúdo — aceita
{tracking_code}(link clicável pro Melhor Rastreio),{order_number}e{date}. - Tipo — HTML ou texto plano.
Onde o cliente vê o rastreio
- No e-mail — link direto pro Melhor Rastreio (
melhorrastreio.com.br/meu-rastreio/<código>). - Na página de detalhes do pedido — depois de logado, na conta do cliente.
- Na conta → Meus pedidos — coluna com o código.
Onde a equipe vê
- Lista de pedidos (admin) — coluna do endereço de envio mostra os códigos.
- Painel de etiquetas (WooCommerce → Melhor Envio) — visão consolidada com status e rastreio.
- Detalhes do pedido — no metabox.
Múltiplos códigos por pedido
Um pedido pode ter mais de um código de rastreio (envio dividido em volumes). O plugin armazena todos como array em _melhor_envio_tracking_codes e cada novo código dispara um e-mail individual.
Próximos passos
- Status do pedido — como mapear os status que o pedido assume durante o envio.
- Solução de problemas — quando o rastreio não chega ou o status não atualiza.