Saltar para o conteúdo principal
Advanced Shipping Carrier

Advanced Shipping Carrier Integration: o que não te contam ao arrancar

Para arrancar com o Advanced Shipping Carrier Integration registas cada transportadora com Carrier Name, Carrier Type, Company e a caixa Enabled, juntamente com as credenciais da tua conta com essa transportadora: API Key, API Secret e Account Number. Na primeira semana convém vigiar Connection Status, Last Sync Time e Last API Response de cada transportadora e, quando um pedido falha, ler o seu HTTP Status Code e a sua Error Message. Abaixo tens os detalhes práticos que convém saber antes de começar.

FlexigoTech · Responsável: Víctor Gómez · Atualizado em 4 de novembro de 2026

O essencial

Versões
Odoo 17, 18, 19 e 20
Verificado
no código do conector, versão 20.0 · nas fontes indicadas no fim
Leitura
6 min

Antes de registar a primeira transportadora

O arranque joga-se em poucos sítios: a ficha de cada transportadora, o registo de cada pedido e os campos de estado que vais ver nas listas. Estes são os detalhes que convém ter claros antes de mexer em qualquer coisa. Se procuras a visão de conjunto de menus e fluxo, tens-na em como funciona o módulo por dentro.

As credenciais são as da tua conta com cada transportadora

O registo de uma transportadora leva Carrier Name, Carrier Type (um campo de seleção), Enabled e Company. Junto a eles vão as credenciais. O próprio módulo descreve API Key como «API key of the carrier account» e API Secret como «API secret of the carrier account». Account Number é o número de conta próprio de cada transportadora, e o campo dá como exemplos «FedEx account, UPS account, etc.».

A leitura prática: esses três dados são os da tua conta com cada transportadora, por isso tem-nos à mão antes de te sentares a configurar. E como cada registo leva a sua própria Company, se trabalhas com várias empresas na mesma base de dados, confirma a qual fica atribuída cada transportadora.

Custom Endpoint URL é opcional e tem um caso concreto

Entre os campos da transportadora está Custom Endpoint URL. A sua descrição define-o como um URL de API personalizado e opcional para «non-standard carriers». Se a tua transportadora não se enquadra nesse caso, não tens de o preencher.

Enabled e Connection Status veem-se por separado

Enabled é uma caixa; Connection Status é um campo de seleção à parte. São dois dados distintos e convém revê-los por separado. Ao lado tens Last Sync Time, com a data e hora da última sincronização, e Last API Response, com a última resposta da API. Na mesma ficha ficam também Created e Created By, com a data de criação e o utilizador que a fez.

Lista de Hazmat Categories do módulo Shipping com seis registos, cada um com código, nome de categoria e sobretaxa a zero, com barra de pesquisa e paginação
Outra das listas do módulo: Hazmat Categories, com seis categorias e a sua sobretaxa a zero.

Cada pedido fica guardado campo a campo

O módulo guarda um registo com estes campos: Carrier, Request Type, Status, Timestamp, HTTP Status Code, Response Snippet, Error Message, Request Payload e Company. Quando algo não bate certo, é esse o sítio onde olhar:

  • Request Type: que tipo de pedido era.
  • Request Payload: o que foi enviado.
  • HTTP Status Code: o código HTTP da resposta.
  • Response Snippet: um fragmento da resposta.
  • Error Message: o texto do erro.
  • Timestamp: quando ocorreu.

Com Carrier e Timestamp delimitas depressa de que transportadora e de que momento falas. Para interpretar cada mensagem concreta, tens o guia de erros e avisos do módulo.

Há vários campos de estado e não significam o mesmo

No módulo vais encontrar vários campos chamados status ou state, cada um com o seu próprio conjunto de valores:

  • status com Success, Failed e Timeout.
  • status com Success, Error e Label Exists.
  • status com Draft, Generated, Printed e Failed.
  • status com Active, Degraded e Down.
  • status com Draft, In Progress, Completed, Failed e Paused.
  • status com Draft, Completed, Failed e Partial.
  • state com Open, Submitted, Approved, Rejected e Paid.
  • state com Draft e Done.
  • status_filter com Draft, Ready-to-Ship e All.

Repara que Failed e Draft aparecem em vários deles. Quando filtrares ou quando alguém da equipa te disser que algo está em Failed, pergunta em que lista o viu antes de procurar a causa.

O campo state mais longo vai de Draft a Cancelled

Um dos campos state do módulo percorre estes valores: Draft, Blocked, Cost Quoted, Ready to Ship, In Transit, Out for Delivery, Delivered, Attempted Delivery, Returned to Sender, Lost, Damaged e Cancelled. Há ainda dois campos, status e current_status, com Pre-Label, In-Transit, Out-for-Delivery, Delivered, Exception e Returned.

Atenção à escrita: num caso é Out for Delivery e no outro Out-for-Delivery; o mesmo com Ready to Ship e o Ready-to-Ship de status_filter. Tem isto em conta ao pesquisar ou ao criar filtros guardados.

Assistente Export Intrastat com mês e ano, texto explicativo do CSV e botões Export e Cancel, aberto sobre a lista de envios da DHL Express nos estados Ready to Ship e Delivered
O assistente Export Intrastat sobre a lista de envios (Shipping › Shipments), com envios da DHL Express em Ready to Ship e Delivered.
Assistente Bulk Print Labels aberto sobre a lista de envios com dois envios da DHL Express selecionados, botões Download Labels e Cancel e texto sobre PDF único ou ZIP
Bulk Print Labels com dois envios da DHL Express selecionados; o texto do assistente fala de um PDF único ou de um ZIP.
Sequência do assistente Bulk Print Labels com dois envios selecionados, o diálogo Create Return sobre um envio no estado Delivered e o diálogo Record Carrier Invoice com a DHL Express
Da impressão em massa de etiquetas ao diálogo Create Return (com envio original, transportadora, tipo de serviço, Email Customer e notas de devolução) e ao registo da fatura da transportadora com Record Carrier Invoice.

last_health_check_status tem três valores

O campo last_health_check_status assume Success, Failed ou Unknown. Durante a primeira semana, anota qual dos três mostra cada dia e compara-o com Last Sync Time e Last API Response da transportadora.

O que rever durante a primeira semana

Com o que ficou dito, a revisão dos primeiros dias resume-se assim:

  • Cada transportadora tem API Key, API Secret e Account Number da sua conta, e a Company correta.
  • Custom Endpoint URL só está preenchido onde se aplica o caso de «non-standard carriers».
  • Enabled e Connection Status de cada transportadora, vistos por separado.
  • Last Sync Time e Last API Response, todos os dias.
  • O valor de last_health_check_status.
  • Em cada pedido falhado: HTTP Status Code, Error Message, Response Snippet e Request Payload.
  • Que registos estão em Blocked, Exception ou Attempted Delivery.

O que custa e como a FlexigoTech te ajuda

O módulo custa 9 € sem IVA por versão do Odoo, em pagamento único, para 17, 18, 19 e 20; no Odoo 19 e 20, além disso, precisa da subscrição do FlexigoTech Cloud, cujo plano Conector custa 49 €/mês ou 490 €/ano sem IVA (Pro: 98 €/mês ou 980 €/ano), com até 3 contas da plataforma (Pro: 10). Essa ligação através do FlexigoTech Cloud guarda as credenciais cifradas, vigia a sincronização e avisa por e-mail se falhar; sem subscrição, ou com o serviço suspenso, pára o que a subscrição dá e os dados ficam no teu Odoo.

Tens os detalhes na ficha do Odoo Apps e na página do módulo em flexigotech.com.

Na FlexigoTech implementamos Odoo 17, 18, 19 e 20 e desenvolvemos conectores e integrações à medida. Se precisas de ajuda para registar as tuas transportadoras, rever as primeiras falhas ou adaptar o fluxo de envios à tua operação, conta-nos o teu caso.

Continue a ler

Verificado no código do conector (versão 20.0) e nas fontes indicadas

Fontes