Um caso para ver como funciona: encomendas à espera de aceitação
Exemplo Caso ilustrativo: a empresa e os seus dados são inventados para explicar o fluxo.
Almazara Home é uma loja inventada que vende artigos para a casa num marketplace Mirakl e tem a sua conta ligada ao Mirakl Connector. Numa manhã, a pessoa que trata das encomendas pergunta-se se o Odoo aceita sozinho as encomendas que o exigem ou se tem de ser ela a fazê-lo. Este é o seu percurso: primeiro vê o que o Odoo faz por conta própria e, depois, prime o botão.

Primeiro, o que o Odoo faz sem que prima nada
O botão não é o único caminho. O método que aceita as encomendas é também chamado por duas tarefas agendadas, e ambas correm sem que ninguém prima nada:
- A tarefa
Mirakl - Sincronizar Encomendas(Mirakl - Sync Orders) corre a cada dez minutos e está ativa ao instalar. Quando termina de importar encomendas, se na instância estiverem marcadas as duas caixasAceitar Encomendas Automaticamente(Auto Accept Orders) eAceitar Pendentes na Importação(Accept Pending On Import), tenta aceitar as encomendas pendentes, com o limite de tentativas dessa instância. - A tarefa
Mirakl - Aceitar Encomendas(Mirakl - Accept Orders) também corre a cada dez minutos e está ativa ao instalar. Chama o mesmo método de aceitação com o limite de tentativas de cada instância.
As duas caixas vêm desmarcadas por defeito no código. A ajuda de Aceitar Encomendas Automaticamente diz: «Aceitar automaticamente as encomendas importadas que requerem aceitação do vendedor no Mirakl.» A de Aceitar Pendentes na Importação diz: «Tentar aceitar encomendas em espera logo após cada importação de encomendas manual ou agendada.»
Passo a passo com o botão
- Abre
Mirakl › Configuração › Marketplacese entra na ficha da instância, no ecrãInstâncias Mirakl(Mirakl Instances). - Vai ao separador
Encomendas e Devoluções(Orders and Returns), grupoPolítica de Sincronização(Sync Policy). Aí estão as duas caixas de há pouco e o campoLimite de Tentativas de Aceitação(Accept Retry Limit), cujo valor por defeito no código é100. - Prime
Aceitar Encomendas Pendentes. O botão vê-se sempre nesse ecrã, no Odoo 17, 18, 19 e 20. O que se segue é o que acontece segundo o código do Odoo 20. - Lê o aviso que aparece no fim. Tem o título
Mirakl, não fica fixo no ecrã e o seu texto éAceites: … | Erros: …(Accepted: … | Errors: …). Se houve algum erro, o aviso aparece como advertência. - Vê a ficha da instância: o botão também deixa lá uma mensagem com o resultado.
- Se não foi aceite nenhuma encomenda e houve erros, a mensagem da ficha remete-te para os registos de encomendas do Mirakl; se houve erros mas também encomendas aceites, vê-lo-ás na contagem «Erros» do aviso. Volta a premir o botão quando quiseres tentar de novo.

O que faz o botão por dentro
O botão atua sobre a instância que tens aberta. Segundo o código do Odoo 20, faz isto, por esta ordem:
- Procura as encomendas dessa instância que requerem aceitação e cujo estado de aceitação é pendente ou com erro.
- Deixa de fora as encomendas retidas em relação às ordens de vendas. O comentário do código explica-o assim: aceitá-las seria comprometer-se a enviar o que o Odoo nunca vai enviar.
- Ordena-as por data da encomenda, da mais antiga à mais recente, e fica com tantas quantas indicar
Limite de Tentativas de Aceitação. - Tenta aceitar cada uma. Se for aceite, soma um aos aceites. Se não for aceite e a encomenda ficar com o estado de aceitação em erro, soma um aos erros.
- Publica uma mensagem na ficha da instância e mostra o aviso com as duas contagens. O aviso aparece como advertência se houve algum erro e como sucesso se não houve nenhum.
Um pormenor da contagem: uma encomenda que não é aceite mas também não fica em estado de erro não soma a nenhuma das duas contas.
Que mensagem te dá
O texto da mensagem da ficha depende do resultado:
| Mensagem | Quando aparece | O que significa |
|---|---|---|
Aceitar Encomendas Pendentes concluído: … encomendas aceites. (Accept Pending Orders completed: … orders accepted.) | Foi aceite pelo menos uma encomenda | Em vez das reticências vai o número de encomendas aceites. |
Aceitar Encomendas Pendentes concluído com erros. Verifique os registos de encomendas Mirakl. (Accept Pending Orders completed with errors. Check Mirakl order logs.) | Não foi aceite nenhuma e houve erros | Há encomendas que ficaram com o estado de aceitação em erro. |
Aceitar Encomendas Pendentes concluído: nenhuma encomenda requeria aceitação. (Accept Pending Orders completed: no orders required acceptance.) | Não foi aceite nenhuma e também não houve erros | Não foi aceite nenhuma encomenda e nenhuma ficou com o estado de aceitação em erro. |
Repara que, se algumas encomendas são aceites e outras falham, a mensagem da ficha é a primeira, mas o aviso aparece como advertência e o seu texto mostra as duas contagens.
O que aprender com o caso
A Almazara Home verifica três coisas, por esta ordem: se as duas caixas da política de sincronização estão marcadas, que limite de tentativas tem a instância e o que lhe diz o botão ao premi-lo. Como as encomendas em erro entram de novo na pesquisa, premir outra vez o botão volta a tentá-las. As encomendas retidas em relação às ordens de vendas ficam de fora, quando quer que prima o botão.
O botão muda de nome com o idioma do teu Odoo:

Aceptar pedidos pendientes; em alemão, Ausstehende Bestellungen annehmen; em francês, Accepter les commandes en attente; em italiano, Accetta ordini in sospeso; em português, Aceitar Encomendas Pendentes.Para continuar com a colocação em funcionamento, o botão Testar ligação tem o seu próprio percurso.
Versões e custo
O botão existe nos quatro ramos publicados, o 17, o 18, o 19 e o 20, e em todos se vê sempre. O código que descrevo é o do Odoo 20. O Mirakl Connector é um módulo de pagamento único por versão do Odoo, publicado no Odoo Apps para essas versões (consulta a ficha ou a página do módulo), e precisa da subscrição do FlexigoTech Cloud, plano Conector: 49 €/mês ou 490 €/ano, sem IVA. A ligação passa pelo FlexigoTech Cloud, que guarda cifradas as credenciais e avisa por e-mail se a sincronização falhar.
Se quiseres ajuda com a colocação em funcionamento
A FlexigoTech implementa o Odoo 17, 18, 19 e 20 e desenvolve conectores e integrações à medida. Se quiseres rever contigo a política de sincronização da tua instância Mirakl, escreve-nos a partir da página do módulo.
Continue a ler
Verificado no código do conector (versão 20.0) e nas fontes indicadas
Fontes
- Código do módulo: flexigobe_mirakl_connector 20.0 (aa05e537): views/mirakl_instance_views.xml
- Código do módulo: flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_instance.py
- Código do módulo: flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_ai.py
- apps.odoo.com/apps/modules/20.0/flexigobe_mirakl_connector
- flexigotech.com/precios.html
- flexigotech.com/en/services.html
