Herken je dit?
Je draait Magento omdat je B2B-klanten hebt met eigen prijzen, meerdere websites of een grote catalogus. De koppeling met Exact Online is ooit gebouwd door de webbouwer, en niemand durft hem meer aan te raken.
Prijsafspraken staan in Exact Online, maar de shop toont een andere prijs. Klanten bellen om de factuur te laten corrigeren.
Na de laatste Magento-upgrade kwamen de orders twee dagen niet door. Dat merkte je pas toen het magazijn stil lag.
Een Magento Exact Online koppeling moet tegen dit soort complexiteit kunnen. Magento is geen eenvoudige webshop en de koppeling is dat ook niet.
Keuzes per datastroom
Magento is de bron van orders en klantregistraties. Exact Online is de bron van artikelen, prijzen, voorraad en facturen. Vaak zit er een PIM naast voor de productinhoud.
In Magento bepaalt de klantgroep wat een klant ziet en betaalt. De koppeling bewaakt dat de klantgroep in Magento overeenkomt met de prijslijst en betaalconditie van de debiteur in Exact Online. Bij een wijziging in Exact Online volgt Magento, niet andersom.
Multi-store maakt het complexer. Een order uit de Belgische store view moet in de Belgische administratie landen, met Belgische btw-codes. De koppeling leest de store view en kiest de administratie.
Standaard, iPaaS of maatwerk
Er bestaan extensies die Magento aan Exact Online koppelen. Voor een B2C-shop met een website en vaste prijzen zijn ze bruikbaar. Houd er rekening mee dat een extensie in de Magento-installatie leeft en bij elke upgrade opnieuw getest moet worden.
Een iPaaS past bij een landschap met Magento, een PIM, een WMS en meerdere ERP's, waar een intern team de flows beheert. Voor alleen Magento en Exact Online is het een dure laag.
Maatwerk is voor Magento meestal de passende route. B2B-klantgroepen, prijslijsten en staffels, meerdere store views, meerdere magazijnen en facturen in het klantaccount: dat vraagt logica die een vaste mapping niet biedt. Wij bouwen de koppeling als losse middleware buiten Magento, via de REST API van Magento en de REST API van Exact Online. Een Magento-upgrade raakt de koppeling dan niet. Na oplevering en betaling is de code van jou, in een repository op jouw naam.
Wat we vaak tegenkomen
Klantgroepen en prijslijsten. Exact Online kent verkoopprijslijsten en staffels per artikel. Magento kent tier prices per klantgroep en catalog price rules. De vertaling daartussen is de kern van een B2B-koppeling. We maken eerst de matrix klantgroep-prijslijst voordat er een regel code wordt geschreven.
Configurable en bundle products. Een configurable product in Magento heeft kindproducten met eigen SKU. Exact Online kent alleen het kind als artikel. De koppeling boekt de kindartikelen en bewaart de ouder als referentie.
Voorraad per source. Magento Inventory Management werkt met sources en stocks. Als je in Exact Online twee magazijnen hebt, maken we twee sources, zodat de beschikbaarheid per website klopt.
API-limieten van Exact Online. 60 calls per minuut, 5.000 per dag, per app per administratie. Bij 20.000 artikelen met staffels is dat snel op. We synchroniseren alleen wijzigingen, met de sync-endpoints tot 1.000 records per call, en spreiden de prijsupdate over de nacht.
Upgrades. De Magento REST API is stabiel, maar extensies en custom attributes veranderen. Omdat onze koppeling buiten Magento draait, blijft de impact van een upgrade beperkt tot een test van de attributen die we gebruiken.
Al iets draaien dat hapert?
Een Magento-koppeling van een vorige bouwer die na een upgrade stil staat, nemen we over en fixen we ook zonder groot project. Dat valt onder Helpen en fixen: op strippenkaart of als losse opdracht, reactie binnen een werkdag.