De situatie: catalogus in Odoo en een nieuwe instantie
Voorbeeld Fictief geval: het bedrijf en de cijfers zijn verzonnen om de werkwijze uit te leggen.
Ferretería Costa Norte heeft haar catalogus in Odoo, met een interne referentie op de producten, en heeft net haar marktplaatsinstantie aangemaakt. Nu heeft ze aanbodkoppelingen nodig voor de producten die ze op Mirakl wil hebben, en ze wil ze niet één voor één aanmaken. Daarvoor dient de knop Koppelingen genereren (Generate Bindings). We volgen haar route en bekijken bij elke stap wat de code van Odoo 20.0 doet.

Waar de knop staat en wanneer hij verschijnt
Open Mirakl › Configuratie › Marktplaatsen en ga naar het formulier van Mirakl instanties. De knop Koppelingen genereren staat in de weergave van dat scherm en is altijd zichtbaar: geen enkele voorwaarde in de weergave verbergt hem. Hij zit in de branches 17.0, 18.0, 19.0 en 20.0 van de module.

Twee velden die het resultaat bepalen
Kijk eerst naar deze twee voordat je klikt:
Bedrijf: zichtbaar op het formulier vanMirakl instantiesen ook in de lijst. Standaard wordt het actieve bedrijf genomen. De knop gebruikt het om te bepalen welke producten worden meegenomen (je ziet het in de stappen).Limiet aanbodkoppeling genereren: staat op het formulier, tabbladHandmatige bewerkingen, groepAanbiedingen. De standaardwaarde is 500. De help zegt: «Maximaal aantal producten dat wordt gescand bij het automatisch genereren van ontbrekende aanbodkoppelingen.»
Wat er gebeurt als je klikt, stap voor stap
- Hij werkt alleen met de instantie van het geopende formulier.
- Hij neemt de waarde van
Limiet aanbodkoppeling genereren; de limiet gaat nooit onder de één. - Hij zoekt actieve producten waarvan de interne referentie is ingevuld en die geen bedrijf hebben of bij het bedrijf van de instantie horen. Als het product de verkoopoptie heeft, komen alleen de verkoopbare producten in aanmerking. Hij sorteert ze op identificatienummer, van oud naar nieuw, en houdt er zoveel over als de limiet toestaat.
- Hij kijkt welke producten in deze instantie al een koppeling hebben.
- Hij loopt de gevonden producten door. Producten die al een koppeling hebben worden overgeslagen en tellen als bestaand; producten zonder referentie worden overgeslagen en tellen als zonder SKU overgeslagen. Voor de rest bereidt hij een nieuwe koppeling voor: de instantie, het product, de interne referentie als SKU, de weergegeven productnaam als titel en de synchronisatiemodus voor categorieën op mapping.
- Als er iets is voorbereid, maakt hij alle koppelingen in één keer aan.
- Hij stelt het resultaat samen, plaatst het als bericht op het formulier van de instantie en toont het in een melding.
Voor producten die al een koppeling hadden, maakt de code niets nieuws aan: ze worden alleen als bestaand geteld.
Wat je aan het eind ziet
Er verschijnt een melding met de titel Mirakl, van het type succes, die niet vast op het scherm blijft staan, met deze tekst: … aanbiedingen gegenereerd. Bestaand: …. Overgeslagen zonder SKU: …. (Generated … offers. Existing: …. Skipped without SKU: ….). De drie open plekken zijn de tellingen uit stap vijf. Dezelfde tekst blijft als bericht op het formulier van de instantie staan.
Als je Odoo in een andere taal staat, verandert het label van de knop:

Koppelingen genereren, in het Duits Verknüpfungen generieren, in het Frans Générer les liaisons, in het Italiaans Genera collegamenti en in het Portugees Gerar Ligações.Als het resultaat niet is wat je verwachtte
Costa Norte klikt en mist bij controle producten. Dit zegt de code over wat er in de scan komt:
| Product in Odoo | Komt het in de selectie? |
|---|---|
| Gearchiveerd | Nee |
| Zonder interne referentie | Nee |
| Met verkoop uitgeschakeld | Nee, als het product die optie heeft |
| Van een ander bedrijf dan dat van de instantie | Nee |
| Zonder bedrijf | Ja |
| Al gekoppeld in deze instantie | Wordt gescand, maar overgeslagen en geteld als bestaand |
De volgorde van de stappen heeft een gevolg: de limiet geldt voor de gescande producten, niet voor de aangemaakte koppelingen. Al gekoppelde producten tellen dus mee binnen de limiet, en als de catalogus die aan de voorwaarden voldoet groter is dan de limiet, vallen de laatste producten op identificatienummer buiten die ronde. Meldt de melding weinig gegenereerde en veel bestaande aanbiedingen, verhoog dan de waarde van Limiet aanbodkoppeling genereren onder Handmatige bewerkingen en klik opnieuw: producten die al een koppeling hebben worden overgeslagen, dus er ontstaan geen dubbele koppelingen voor.
Wat je daarna controleert
- Dat de melding en het bericht op het formulier overeenkomen met wat je verwachtte aan gegenereerde, bestaande en zonder SKU overgeslagen aanbiedingen.
- Dat het
Bedrijfvan de instantie het juiste is als er producten van een bepaald bedrijf ontbreken. - Dat de limiet groter is dan het aantal producten dat je wilt scannen.
Wil je een andere knop van de module op dezelfde manier uitgelegd zien, lees dan wat de knop «Annuleren in Mirakl» doet. En voor een geplande taak: «Mirakl - Orders accepteren».
Kosten en hulp
Mirakl Connector is een module met een eenmalige betaling per Odoo-versie en vereist het abonnement op FlexigoTech Cloud, plan Connector: € 49 per maand of € 490 per jaar, excl. btw. De verbinding loopt via FlexigoTech Cloud, dat de inloggegevens versleuteld opslaat. De module is gepubliceerd voor Odoo 17.0, 18.0, 19.0 en 20.0 (pagina in Odoo Apps, pagina van de module). FlexigoTech implementeert Odoo 17, 18, 19 en 20 en ontwikkelt connectoren en integraties op maat, mocht je hulp nodig hebben bij het opstarten van je catalogus.
Lees verder
Gecontroleerd in de broncode van de connector (versie 20.0) en in de gelinkte bronnen
Bronnen
- Broncode van de module: flexigobe_mirakl_connector 20.0 (aa05e537): views/mirakl_instance_views.xml
- Broncode van de module: flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_instance.py
- Broncode van de module: flexigobe_mirakl_connector 20.0 (aa05e537): models/mirakl_ai.py
- apps.odoo.com/apps/modules/20.0/flexigobe_mirakl_connector
- flexigotech.com/en/services.html
- flexigotech.com/precios.html
