O que faz a tarefa e de quanto em quanto tempo corre
A tarefa trabalha sobre as encomendas da Amazon que o módulo guarda e pega, no máximo, em 100 encomendas por execução. Corre a cada 30 minutos e fica ativa ao instalar. Está nas versões 17.0, 18.0, 19.0 e 20.0; na 17.0 está configurada para se repetir sem fim. O que se segue descreve o que faz o código do Odoo 20.0.


Pormenores de cada execução
Só olha para as contas que ativaram o envio
O primeiro que a execução faz é procurar as contas da Amazon com o envio de faturas ativado. Se não houver nenhuma, termina aí sem analisar uma única encomenda. O envio é opcional: vem desativado por defeito e ativa-se na configuração da conta da Amazon. Os campos da conta estão explicados neste artigo sobre a conta SP-API.
Só recolhe faturas publicadas e ainda não carregadas
Dessas contas, a execução escolhe as encomendas cuja fatura de cliente está publicada e que ainda não têm data de carregamento. Se a conta limitar o envio a encomendas de empresa, as de consumidor ficam de fora. O código aplica estes filtros de entrada de propósito: uma fatura em rascunho, ou uma encomenda de consumidor numa conta só de empresa, ocupariam o lote à frente das restantes encomendas de todas as contas. E uma encomenda já carregada não volta a ser enviada: a tarefa não avisa a Amazon duas vezes da mesma fatura.
Cada execução tem limite, e as falhadas ficam para trás
O limite é de 100 encomendas. Entram primeiro as que não têm nenhum erro guardado, por ordem de criação. Só se o limite não for atingido é que se acrescentam as que já falharam noutra execução, começando pela que há mais tempo não é tentada. Cada falha volta a escrever na encomenda, por isso as falhadas alternam-se em vez de se repetirem sempre as mesmas.
Uma falha não interrompe a execução
Se o carregamento de uma encomenda der erro, o módulo guarda o texto do erro nessa encomenda, deixa um aviso no registo do servidor e continua com a seguinte. A encomenda não fica marcada como carregada, por isso volta à fila das falhadas para uma execução posterior.
Guarda o feito depois de cada encomenda
Depois de cada encomenda, a tarefa grava na base de dados as marcas do que já fez. O motivo que o código indica: o Odoo corta uma tarefa que ultrapasse o seu limite de tempo (120 s por defeito) e leva consigo a sua transação; sem esta gravação, a execução seguinte enviaria à Amazon as mesmas faturas outra vez. Dentro dos testes automáticos não se grava assim, porque o Odoo o proíbe aí.
O que envia à Amazon e o que deixa registado
Para cada encomenda, o módulo gera o PDF da fatura publicada, carrega-o na Amazon e cria um feed de faturas de IVA com estes dados: o número de encomenda da Amazon, o número da fatura, o tipo de documento (fatura), o montante total e o montante de IVA. Usa o marketplace da encomenda ou, se a encomenda não o tiver, o da conta. Só quando todo o envio termina sem erro é que regista a data de carregamento na encomenda, apaga o erro anterior e, se a encomenda da Amazon tiver uma encomenda de venda associada, deixa uma nota no seu chatter: Factura … subida a Amazon (feed de facturas de IVA) para el pedido … (Invoice … uploaded to Amazon (VAT invoice feed) for order …).
Como encontrar a tarefa consoante o idioma
O nome da tarefa depende do idioma do teu Odoo: com o Odoo em português é Amazon SP-API - Carregar faturas de IVA para a Amazon. O módulo traz também traduções para alemão, francês, italiano e castelhano.

Se não carrega nada: o que verificar
Revê o que o código exige a cada encomenda:
- Que o envio de faturas esteja ativado na conta da encomenda. Para saberes qual é, abre a encomenda a partir do menu
Amazon › Encomendas(Amazon › Orders) e vê os camposConta(Account) eEncomenda Amazon(Amazon Order) da ficha deEncomendas Amazon(Amazon Orders). OEncomenda Amazoné só de leitura. - Que a encomenda tenha uma fatura de cliente e que esteja publicada: se a fatura estiver em rascunho, a tarefa não a carrega.
- Que a conta não limite o envio a encomendas de empresa se a encomenda for de consumidor.
- Que a encomenda ainda não tenha sido carregada: com data de carregamento, não volta a ser enviada.
- Que não haja mais encomendas pendentes do que o limite de 100: as execuções seguintes, a cada 30 minutos, continuam com o resto.
- Que a tarefa continue ativa: fica ativa ao instalar.
Para ver o menu Amazon › Encomendas são precisas permissões: o nível Amazon pede Visualizador (Viewer) e o nível Encomendas (Orders) também.
Quanto custa e como te ajudamos
O módulo é de pagamento único por versão (publicado no Odoo Apps para 17.0, 18.0, 19.0 e 20.0) e precisa da subscrição ao FlexigoTech Cloud, plano Conector: 49 € por mês ou 490 € por ano, sem IVA. A ligação passa pelo FlexigoTech Cloud, que guarda as credenciais cifradas, vigia a sincronização e avisa por e-mail se falhar. Mais detalhes em a página do módulo e na ficha do Odoo Apps.
A FlexigoTech implanta o Odoo 17, 18, 19 e 20 e desenvolve conectores e integrações à medida, caso o teu circuito de faturas com a Amazon precise de algo mais.
Continue a ler
Verificado no código do conector (versão 17.0 e 20.0) e nas fontes indicadas
Fontes
- Código do módulo: flexigobe_amazon_seller_connector 20.0 (8c5900d9): data/ir_cron_data.xml
- Código do módulo: flexigobe_amazon_seller_connector 17.0 (51d6a72c): data/ir_cron_data.xml
- Código do módulo: flexigobe_amazon_seller_connector 20.0 (8c5900d9): models/amazon_order.py
- apps.odoo.com/apps/modules/20.0/flexigobe_amazon_seller_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
