Onde está o botão e quem o vê
As fichas das lojas abrem-se a partir do menu Shopify › Configuração › Lojas (Shopify › Configuration › Stores). O primeiro nível Shopify exige a permissão Visualizador (Viewer) e o nível Configuração (Configuration) exige Operador (Operator); se não tiveres uma delas, não vês esse nível. No ecrã Instâncias Shopify (Shopify Instances) está o botão Sincronizar pedidos, que se vê sem condições no Odoo 17, 18, 19 e 20.

Com o Odoo em castelhano o botão chama-se Sincronizar pedidos; o rótulo muda conforme o idioma do teu Odoo, como mostra este esquema.


Passo a passo: o que acontece ao sincronizar pedidos
Isto é o que o código faz, pela ordem em que o faz.
- Primeiro, o caminho automático. A tarefa agendada
Sincronizar encomendas Shopify(Shopify Sync Orders) executa-se a cada 5 minutos e chega à mesma ação que o botão; vem desativada na instalação. Por isso o botão é a via para a lançar manualmente, não o passo normal. - Carregas no botão. O módulo cria um registo da sincronização, do tipo pedidos, em estado de execução.
- Calcula desde quando pedir. Se
Última sincronização de encomendas(Last Order Sync) tem data e a loja já importou algum pedido, pede os pedidos atualizados desde essa data. Se não, recua a partir do momento atual uma janela de horas configurada na loja, nunca inferior a uma hora. O filtro é pela data de atualização do pedido, não pela data de criação. - Aplica o âmbito de importação da loja. Conforme o âmbito configurado, pede todos os pedidos, só os pagos, ou os pagos que continuam pendentes de cumprimento.
- Pede páginas ao Shopify. Chegam primeiro os pedidos atualizados há mais tempo, e cada um é processado no Odoo um a um. Pára quando o Shopify não tem mais ou quando atinge
Páginas máx.(Max Pages), que por defeito no código é20e se vê na ficha, separadorOperações(Operations), grupoConfigurações de sincronização(Sync Settings). - Primeira vez: segunda passagem sem filtro de data. Se não chegou nenhum pedido e a loja nunca importou um, repete o pedido sem o filtro de data, percorrendo o histórico desde o pedido mais antigo (com o mesmo limite de páginas). Se a loja já tinha importado pedidos e não chega nada, não repete: uma loja tranquila é o normal.
- Se chegaram pedidos, regista a data.
Última sincronização de encomendaspassa a ser o momento atual, o contadorErros de sincronização consecutivos(Consecutive Sync Errors) volta a zero e o último erro guardado é limpo. Se a execução parou pelo limite de páginas, a data que se guarda é a do último pedido processado quando é posterior à que já existia (ou não existia nenhuma); a data nunca recua. A execução seguinte continua a partir daí. Se o Shopify não devolveu nenhum pedido, nada disto é escrito. - Fecha o registo. Anota a hora de fim e a duração, conta todos os pedidos processados como atualizados (esta ação não conta nenhum como criado) e sem erros, pelo que o registo fica como correto. O botão devolve o total de pedidos sincronizados.
Que erros pode dar
Ao carregar em Sincronizar pedidos, a ação pode parar com Sincronização de pedido Shopify falhou para …: … (Shopify order sync failed for …: …). Depois de «para» vai o valor de Domínio da loja (Shop Domain) e depois dos dois pontos, o texto do erro que a provocou. Antes de mostrar o aviso, o módulo marca o registo da sincronização como falhado e guarda nele o texto do erro.
Outros dois finais possíveis, também segundo o código:
- Se o erro já é um aviso do Odoo dos que se mostram num diálogo, o registo é marcado como falhado e esse aviso é mostrado tal como está.
- Se o FlexigoTech Cloud pausou a sincronização, o módulo apaga o registo dessa execução, para que não figure como falhada, e a ação pára.
O contador Erros de sincronização consecutivos é escrito pelo código, não por ti. Vai sem rótulo na ficha (só se vê o número, apenas de leitura) e só aparece quando é diferente de zero. Preenchem-no o botão Sincronizar pedidos, o botão Executar (Run) e a tarefa agendada; esvazia-o o botão Repor sincronização (Reset Sync), que também esvazia Última sincronização de encomendas.
O que verificar depois de sincronizar
- A data.
Última sincronização de encomendasvê-se na ficha e na lista deInstâncias Shopify, apenas de leitura. Se não mudar após uma execução sem erros, o Shopify não devolveu pedidos; se a ação parou com um aviso ou o FlexigoTech Cloud a pausou, a data também não é atualizada. - O domínio.
Domínio da lojavê-se na ficha e na lista. A sua ajuda diz: «Use o seu domínio Shopify exato, por exemplo: flexigobe.myshopify.com». O aviso de falha leva esse domínio, por isso compara um com o outro. - O limite de páginas. O código corta ao atingir
Páginas máx., pelo que esse campo limita quantas páginas de pedidos se pedem ao Shopify em cada execução. Com muitos pedidos pendentes, a data avança até ao último pedido processado e a execução seguinte continua a partir daí. - O contador de erros. Se aparece na ficha, há erros consecutivos registados; volta a zero quando uma execução com pedidos termina bem.
Custo e versões
O módulo está publicado no Odoo Apps para Odoo 17, 18, 19 e 20, e funciona com a subscrição do FlexigoTech Cloud, plano Conector: 49 €/mês ou 490 €/ano sem IVA, até 3 contas da plataforma. A ligação passa pelo FlexigoTech Cloud, que guarda cifradas as credenciais, 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 fornece; os dados ficam no teu Odoo. O preço do módulo de cada versão está na ficha do Odoo Apps e na página do módulo.
Como te ajuda a FlexigoTech
A FlexigoTech implementa Odoo 17, 18, 19 e 20 e desenvolve conectores e integrações à medida. Se queres rever como fica configurada a tua loja Shopify no Odoo, escreve-nos.
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 (03641761): views/shopify_instance_views.xml
- Código do módulo: flexigobe_shopify_seller_connector 20.0 (03641761): models/shopify_instance.py
- Código do módulo: flexigobe_shopify_seller_connector 20.0 (03641761): models/fgt_cloud.py
- apps.odoo.com/apps/modules/20.0/flexigobe_shopify_seller_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
