Cada listagem da Amazon que tem no Odoo pode ficar marcada como pendente de envio do seu preço, do seu stock ou dos dois. Esta tarefa é a que percorre esses pendentes. As listagens abrem-se a partir do menu Amazon › Catálogo › Listagens (Amazon › Catalog › Listings); cada troço do menu pede a permissão Visualizador (Viewer), e sem ela não vê esse troço.
O que se segue é uma passagem contada por ordem, tal como a faz o código publicado para o Odoo 20.0.

Uma passagem, do princípio ao fim
- Ao instalar A tarefa
Amazon SP-API - Sincronizar associações pendentes (preço/stock)vem ativa. Existe em todas as ramificações publicadas (17, 18, 19 e 20); no Odoo 17 está configurada para se repetir sem fim. - A cada minuto O Odoo lança-a e ela executa a sincronização de pendentes com um limite de 100 listagens por passagem.
- Antes de procurar Se não for executada com privilégios de sistema, o código verifica que quem a lança tem permissão de escrita sobre as listagens.
- A pesquisa Apanha listagens ativas que tenham preço pendente ou stock pendente e cuja conta não esteja em pausa. O limite de 100 aplica-se aqui, ao pesquisar, antes de decidir quais se saltam.
- Contas em pausa Se a base de dados não tiver o serviço do FlexigoTech Cloud para o conector, as contas desta versão ligadas através do FlexigoTech Cloud ficam fora da pesquisa e conservam os seus pendentes até o serviço voltar.
- Primeiro filtro, por listagem Se a conta da listagem não tiver ativada a sincronização automática de ofertas, salta-a.
- Segundo filtro Se o modo de sincronização de oferta da listagem for manual, salta-a. Um valor que não seja um dos reconhecidos também é tratado como manual.
- Preço ou stock manual Com a listagem já dentro dos filtros anteriores: se usa preço manual e tem preço pendente, o código retira-lhe essa marca de pendente sem enviar o preço. O mesmo com o stock manual e o stock pendente.
- Sem pendentes Se depois disso não restar nem preço nem stock pendente, passa à listagem seguinte. Se ficar pendente um dos dois, esse sim é enviado.
- O envio Com preço e stock pendentes, executa a ação
Enviar oferta(Push Offer); só com preço,Enviar preço(Push Price); só com stock,Enviar stock(Push Stock). Cada ação deixa a listagem intocada se não tiver habilitada a sincronização que lhe corresponde (a de oferta só pára se não tiver nem a de preço nem a de stock). - Se o envio correr bem O código regista o resultado como correto.
- Se falhar o envio de oferta ou de preço A listagem fica em estado de erro com o texto do erro guardado e é registada como erro. O erro chega à tarefa, que deixa um aviso no log do servidor com o identificador da listagem e segue para a seguinte.
- Se falhar o envio só de stock Se entre as incidências da listagem houver alguma de unit count ou de conteúdo multimédia de conformidade, o módulo tenta repará-la e volta a enviar o stock. Se a reparação de unit count ficar pendente de validação pela Amazon, volta a marcar o stock como pendente. Se não chegar a ser reparada, a listagem fica em estado de erro com o texto do erro guardado.
- Ao terminar A passagem acaba e, um minuto depois, volta a começar.

O que ver se não faz nada
Siga a mesma ordem do código; cada ponto descarta uma causa.
- A tarefa continua ativa. Vem ativa ao instalar, por isso confirme que ninguém a desativou.
- O serviço da conta. Sem o serviço do FlexigoTech Cloud para o conector, as contas ligadas através do FlexigoTech Cloud ficam em pausa e os seus pendentes esperam. Na ficha da listagem, grupo
Vista geral(Overview), o campoConta(Account) diz-lhe a que conta pertence; também aparece na lista deListagens. - A listagem está ativa e marcada como pendente. A tarefa só olha para listagens ativas com preço ou stock pendente.
- A conta tem a sincronização automática de ofertas ativada. Se não, salta todas as suas listagens.
- O modo de sincronização de oferta da listagem não é manual. Com modo manual, a tarefa salta-a.
- Preço ou stock manual. Se a listagem usa preço manual, a tarefa não lhe envia o preço, apenas lhe retira a marca de pendente; com o stock manual, o mesmo com o stock. Se ficar pendente o outro dado, esse sim é enviado.
- A listagem tem habilitada a sincronização de preço ou de stock. Se não tiver nenhuma, as ações não fazem nada com ela.
- Um envio anterior falhou. Se falhou o envio de oferta ou de preço, a listagem fica em estado de erro com o texto do erro guardado e o log do servidor leva ainda um aviso com o seu identificador. Se falhou o de só stock e não se chegou a reparar, a listagem também fica em estado de erro com o texto guardado.
- Há mais de 100 pendentes. Cada passagem apanha no máximo 100 listagens, e as que depois são saltadas pelos filtros ocupam lugar nesse limite porque o limite se aplica ao pesquisar.
Preço e stock manuais
Na ficha da listagem, separador Oferta (Offer), grupo Estratégia de Sincronização (Sync Strategy), há duas caixas:
Usar Preço Manual(Use Manual Price). A sua ajuda diz:Se ativado, Enviar Preço e Enviar Oferta usam o preço de anúncio aqui definido em vez do preço de venda do produto Odoo.Por defeito vem desmarcada.Usar Stock Manual(Use Manual Stock). A sua ajuda diz:Se ativado, Enviar Stock e Enviar Oferta usam o stock de anúncio aqui definido em vez do stock Odoo.Por defeito vem desmarcada.
O que vê aqui e o que a tarefa faz andam a par: se uma caixa estiver marcada e existir o pendente correspondente, a tarefa (quando a listagem passou os filtros anteriores) retira essa marca sem enviar esse dado; se ficar pendente o outro, envia-o.

O que custa e para que versões
O módulo está publicado no Odoo Apps para o Odoo 17, 18, 19 e 20 (o seu pagamento único por versão está na ficha) e precisa da subscrição do FlexigoTech Cloud, plano Conector: 49 €/mês ou 490 €/ano sem IVA, com 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 aquilo que a subscrição dá; os dados ficam no seu Odoo.
Se quer ajuda com isto
Se está a implementar o Odoo e quer rever que listagens e que contas devem sincronizar-se sozinhas, a FlexigoTech implementa o Odoo 17, 18, 19 e 20 e desenvolve conectores e integrações à medida. Tem a página do módulo para ver a compra e o detalhe do conector.
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 (8576afa5): data/ir_cron_data.xml
- Código do módulo: flexigobe_amazon_seller_connector 17.0 (165f66af): data/ir_cron_data.xml
- Código do módulo: flexigobe_amazon_seller_connector 20.0 (8576afa5): models/amazon_spapi_product_binding.py
- Código do módulo: flexigobe_amazon_seller_connector 20.0 (8576afa5): models/amazon_spapi_new_product.py
- apps.odoo.com/apps/modules/20.0/flexigobe_amazon_seller_connector
- flexigotech.com/precios.html
- flexigotech.com/en/services.html
