Registar o operador
- Instale o conector Mirakl e o módulo do operador: «Leroy Merlin for Mirakl» ou «Decathlon for Mirakl». Sem esse módulo, «Provider Code» oferece apenas «Generic Mirakl».
- Aceda a Mirakl › Configuration › Marketplaces e crie um marketplace novo.
- Em «Provider Code», escolha Leroy Merlin ou Decathlon. Nesse momento, o Odoo preenche as caixas do perfil que estejam desmarcadas e os campos vazios.
- Reveja a morada. Para a Leroy Merlin é https://adeo-marketplace.mirakl.net, com a API em https://adeo-marketplace.mirakl.net/api; para a Decathlon, marketplace-decathlon-eu.mirakl.net.
- Complete a ligação com os dados da sua conta no operador, guarde e carregue em «Test Connection».

Se começar com o perfil genérico e escrever a morada do operador, o Odoo reconhece-a pelo domínio: adeo-marketplace ou leroymerlin para a Leroy Merlin; marketplace-decathlon, marketplace.decathlon, seller.decathlon, partner.decathlon, .decathlon.net ou .decathlon.com para a Decathlon. E se mudar de um operador para outro, a morada do anterior é substituída pela do novo. Uma morada escrita à mão que não pertença a nenhum operador conhecido é respeitada.

O que o perfil deixa marcado
| Caixa | Perfil genérico | Leroy Merlin e Decathlon | Para que serve |
|---|---|---|---|
| Sync Orders Enabled | Desmarcada | Marcada | A tarefa «Mirakl - Sync Orders» importa as suas encomendas cada 10 minutos |
| Auto Accept Orders | Desmarcada | Marcada | A tarefa «Mirakl - Accept Orders» aceita cada 10 minutos as encomendas que a Mirakl tem à espera da sua aceitação |
| Accept Pending On Import | Desmarcada | Marcada | Tenta aceitar as encomendas em espera logo após cada importação, manual ou agendada |
| Auto Confirm Sale | Desmarcada | Marcada | Confirma as encomendas de venda importadas |
| Sync Returns Enabled | Desmarcada | Marcada | A tarefa «Mirakl - Sync Returns» traz as devoluções cada 30 minutos |
| Returns Fallback To Orders | Marcada | Marcada | Se o operador não oferecer devoluções pela API, cria-as a partir dos reembolsos que vêm nas encomendas |
O perfil só preenche o que está vazio ou desmarcado. Se já tiver posto um valor, mantém-se. Isso afeta o «Offer Price Tax Mode»: o perfil traz «Include Sales Taxes», mas o campo já vem com «As Computed», por isso, ao escolher o perfil no formulário, não muda. Decida como dá os preços das suas ofertas e deixe-o definido antes de exportar.
Leroy Merlin: catálogo e ofertas no formato do operador
O perfil da Leroy Merlin marca mais duas caixas, que de origem vêm desmarcadas e que o da Decathlon não altera:
- Exportar o catálogo no formato do operador. A ajuda do campo diz:
When enabled, catalog export defaults to Mirakl operator-format multipart CSV instead of raw JSON. - Exportar as ofertas com a importação de ficheiros OF01 no formato do operador:
When enabled, offer export defaults to Mirakl OF01 operator-format multipart file import.
Se exportar a partir de um marketplace que não tem o perfil da Leroy Merlin, verifique estas duas caixas antes de culpar o catálogo.
O envio sai ao validar a guia de remessa
Com estes dois perfis, validar no Odoo a entrega de uma encomenda da Mirakl basta para avisar o marketplace, mesmo que a caixa «Send Tracking to Mirakl on Validation» esteja desmarcada, que é como vem. No perfil genérico é essa caixa que decide.
Antes de validar, o Odoo atualiza a encomenda de venda com a da Mirakl e põe na guia o contacto de entrega do comprador. Se a esse contacto faltar a rua, a cidade, o código postal ou o telefone, volta a pedir a encomenda à Mirakl e refaz-a.
Depois, o envio faz-se em dois passos. Primeiro o seguimento (OR23). Se a Mirakl ainda não der a encomenda como expedida, o Odoo marca-a como expedida (OR24). Se o operador não aceitar o primeiro passo, por exemplo com um 404 ou porque não reconhece o código da transportadora, o Odoo passa diretamente ao segundo. E quando a sua transportadora no Odoo só se traduz como OTHER, usa a transportadora que vinha na encomenda da Mirakl.

Se a guia não tiver número de seguimento
Não se envia nada. O Odoo deixa isso escrito na guia: Shipment not sent to Mirakl: this transfer has no tracking reference. Add the carrier's tracking number to the delivery and click Push Mirakl Tracking to notify the marketplace. Introduza o número da transportadora e carregue em «Push Mirakl Tracking», que envia o seguimento manualmente.
Se faltarem as linhas da encomenda
Com estes dois perfis, o envio precisa das linhas da encomenda da Mirakl. Se não as encontrar, nem na encomenda da Mirakl nem na de venda, para com Missing Mirakl order lines to push tracking.
Posso ter a Leroy Merlin e a Decathlon no mesmo Odoo?
Sim. Cada operador é um marketplace distinto em Mirakl › Configuration › Marketplaces, com o seu perfil, a sua chave e a sua loja.
E se não quiser que as encomendas sejam aceites automaticamente?
Desmarque «Auto Accept Orders» e «Accept Pending On Import» depois de escolher o perfil e guarde: o que definir à mão prevalece sobre o perfil. Se mais tarde voltar a escolher o perfil em «Provider Code», marcá-las-á de novo.
Continue a ler
Verificado no código do conector (versão 17.0, 18.0, 19.0 e 20.0)
Fontes
- Código do módulo: flexigobe_mirakl_connector · 17.0 f10058e · 18.0 0d42567 · 19.0 9939dcd · 20.0 5c53911: models/mirakl_instance.py (_onchange_provider_code, _apply_provider_defaults_to_record, _should_apply_provider_default), views/menu_views.xml, views/mirakl_instance_views.xml; flexigobe_mirakl_provider_leroy_merlin · 17.0 e4e5b5d · 18.0 01707b8 · 19.0 6e605bb · 20.0 f3f10df y flexigobe_mirakl_provider_decathlon · 17.0 d6944fe · 18.0 8b78e2d · 19.0 c0c6021 · 20.0 80e11d3: models/mirakl_instance.py (_mirakl_provider_default_values)
- Código do módulo: flexigobe_mirakl_connector · 17.0 f10058e · 18.0 0d42567 · 19.0 9939dcd · 20.0 5c53911: models/mirakl_instance.py (cron_sync_orders, cron_accept_orders, cron_sync_returns), data/ir_cron_data.xml
- Código do módulo: flexigobe_mirakl_connector · 17.0 f10058e · 18.0 0d42567 · 19.0 9939dcd · 20.0 5c53911: models/mirakl_instance.py (_mirakl_provider_known_hosts, _onchange_connection_urls, _mirakl_detect_provider_from_urls); proveedores Leroy Merlin y Decathlon (mismos commits que mir.prov.perfil): _mirakl_provider_detection_signatures
- Código do módulo: flexigobe_mirakl_provider_leroy_merlin · 17.0 e4e5b5d · 18.0 01707b8 · 19.0 6e605bb · 20.0 f3f10df: models/mirakl_instance.py; flexigobe_mirakl_provider_decathlon (commits de mir.prov.perfil): models/mirakl_instance.py; flexigobe_mirakl_connector (commits de mir.prov.perfil): models/mirakl_marketplace_profile_mixin.py
- Código do módulo: flexigobe_mirakl_connector · 17.0 f10058e · 18.0 0d42567 · 19.0 9939dcd · 20.0 5c53911: models/stock_picking.py (button_validate, _mirakl_sync_sale_shipping_contacts, action_mirakl_push_tracking), models/mirakl_instance.py (_mirakl_auto_push_tracking_on_validate), views/stock_picking_views.xml; proveedores Leroy Merlin y Decathlon: _mirakl_auto_push_tracking_on_validate y _mirakl_repair_shipping_before_validate devuelven True
- Código do módulo: flexigobe_mirakl_connector · 17.0 f10058e · 18.0 0d42567 · 19.0 9939dcd · 20.0 5c53911: models/mirakl_instance.py (push de seguimiento con _mirakl_supports_advanced_tracking_flow)
