O que o módulo faz sozinho antes de carregares em nada
Carregar em Connect não é o caminho normal para teres um token válido. Segundo o código do módulo, desde 2026 o Shopify já não mostra um token permanente na sua interface: uma app mostra um Client ID e um Client Secret, e com eles gera-se um token que caduca a cada 24 horas. Por isso o módulo pede esse token também por conta própria, sem que ninguém carregue em nada.
Fá-lo quando a loja tem Client ID e Client Secret e não tem token de atualização, e além disso se cumpre uma destas condições: foi pedido forçar a renovação, ainda não há token ou ao token atual restam cinco minutos ou menos de vida. Chega-se a essa verificação, sem tocar no botão, a partir de:
- guardar uma ficha de guia de remessa;
- validar uma guia de remessa com o botão padrão do Odoo, que o módulo amplia;
- a tarefa agendada
Processar webhooks Shopify(Shopify Process Webhooks), a cada minuto e ativa ao instalar; - a tarefa agendada
Sincronizar encomendas Shopify(Shopify Sync Orders), a cada cinco minutos e desativada ao instalar; - a tarefa agendada
Shopify Sync Payouts, a cada seis horas e desativada ao instalar; - a tarefa agendada
Sincronizar produtos Shopify(Shopify Sync Products), a cada hora e desativada ao instalar.
As lojas com token de atualização ficam fora deste caminho. Segundo o código, a geração automática do token está pensada para uma app desenvolvida pela tua própria organização e instalada numa loja tua, não para uma app distribuída à loja de outra pessoa.

Onde está o Connect e quando se vê
As fichas de loja abrem-se a partir de Shopify › Configuração › Lojas (Shopify › Configuration › Stores). O troço Shopify pede a permissão Visualizador (Viewer) e o troço Configuração (Configuration) pede Operador (Operator): se não tiveres uma delas, não vês esse troço do menu. O botão Connect está no ecrã Instâncias Shopify (Shopify Instances) em todos os ramos publicados do módulo: Odoo 17, 18, 19 e 20.

Connect, com a mensagem Ligação bem-sucedida para … como possível resultado.Com os valores por defeito o botão vê-se. Só se oculta com uma combinação concreta de duas definições internas, Shopify connection (que não se vê em nenhuma vista) e Shopify app, quando as duas têm um valor determinado. A condição é a mesma no Odoo 17, 18, 19 e 20.
O caso da Cerámica Norte: ligar a loja com um clique
Exemplo Caso ilustrativo: a empresa e os seus dados são inventados para explicar o fluxo.
A Cerámica Norte é uma empresa inventada que vende pelo Shopify e faz a sua gestão no Odoo. A Marta, a sua responsável de operações, criou uma app na própria organização da empresa, tem à mão o seu Client ID e o seu Client Secret e quer deixar a loja ligada. Isto é o que acontece quando carrega em Connect, pela ordem em que o faz o código do Odoo 20:
- A Marta abre
Shopify › Configuração › Lojas, entra na ficha da sua loja e carrega emConnect. - O módulo verifica que a loja tem Client ID e Client Secret. Se faltar algum, nem sequer chama o Shopify: marca a ligação com erro, guarda o texto do erro e mostra um aviso vermelho.
- Com ambos os dados, pede ao Shopify um token de acesso. Se o Shopify responder com um erro, ou responder sem token, o resultado é o mesmo: erro guardado na loja e aviso vermelho.
- Se o Shopify entregar o token, o módulo guarda-o juntamente com a hora da renovação e as permissões que o Shopify devolve. Se o Shopify indicar quanto dura, guarda também a data de caducidade.
- A seguir testa a ligação: obtém o perfil da loja, guarda o seu nome, o seu e-mail e a sua moeda, marca a ligação como ligada e apaga o último erro.
- Por fim mostra um aviso de sucesso que não fica fixo:
Ligação bem-sucedida para …(Connection successful for …), com o nome da loja ou, se ainda não tiver nome, o seu domínio.

Conexión exitosa para …, em alemão Verbindung erfolgreich für …, em francês Connexion réussie pour …, em italiano Connessione riuscita per … e em português Ligação bem-sucedida para ….O que fica guardado consoante o resultado
| Resultado | O que faz o módulo | Aviso |
|---|---|---|
| Tudo correto | Guarda o token, o nome, o e-mail e a moeda, marca a ligação como ligada e apaga o último erro | Verde: Ligação bem-sucedida para … |
| Falha a geração do token ou o teste de ligação | Marca a ligação com erro e guarda o texto do erro | Vermelho, fica no ecrã e leva o texto do erro |
| O FlexigoTech Cloud pausa o serviço durante o teste de ligação | Nesse teste não marca a loja como falhada | Aparece o aviso da pausa |
Nas falhas, o módulo não lança uma exceção de propósito. Segundo o seu código, assim o que se guarda não se desfaz e a ficha pode mostrar o motivo da última falha, em vez de deixar o problema sem rasto.
O que aprender com o caso
- Se estás na ficha da loja e o botão não aparece, a causa é a combinação de
Shopify connectioneShopify appque oculta o botão. - O
Connectpede sempre um token novo; não espera que o atual esteja prestes a caducar. A renovação automática, em contrapartida, só atua quando falta o token ou lhe resta pouco. - Se vires o aviso vermelho, lê o seu texto: é o motivo que o módulo guardou na loja.
- Um token gerado uma vez não é para sempre: caduca e o módulo renova-o sozinho enquanto a loja tiver Client ID e Client Secret e não tiver token de atualização.
Outro botão do módulo com o seu próprio artigo: O que faz o botão Pull Stock.
Como se encaixa na subscrição
O módulo é de pagamento único por versão e precisa da subscrição do FlexigoTech Cloud, plano Conector: 49 €/mês ou 490 €/ano sem IVA, até 3 contas da plataforma. Está publicado para Odoo 17, 18, 19 e 20. A ligação passa pelo FlexigoTech Cloud, que guarda cifradas as credenciais, vigia a sincronização e avisa por e-mail se falhar. Se o compraste em flexigotech.com, o módulo para as versões novas do Odoo vem incluído na subscrição; na Odoo App Store, cada versão compra-se lá. Podes ver o módulo na sua página.
Se estás a implementar o Odoo e queres que alguém reveja contigo a ligação ao Shopify, a FlexigoTech implementa Odoo 17, 18, 19 e 20 e desenvolve conectores e integrações à medida.
Continue a ler
Verificado no código do conector (versão 20.0) e nas fontes indicadas
Fontes
- Código do módulo: flexigobe_shopify_seller_connector 20.0 (d7e627b4): views/shopify_instance_views.xml
- Código do módulo: flexigobe_shopify_seller_connector 20.0 (d7e627b4): models/shopify_instance.py
- Código do módulo: flexigobe_shopify_seller_connector 20.0 (d7e627b4): models/fgt_cloud.py
- apps.odoo.com/apps/modules/20.0/flexigobe_shopify_seller_connector
- flexigotech.com/precios.html
- flexigotech.com/en/services.html
