Blog

Spryker v/s Magento: The showdown

In deze blog hebben we de belangrijkste overeenkomsten en verschillen tussen Magento Commerce (“De titelverdediger“) versus Spryker Commerce OS (“The Challenger”) op een rijtje gezet. Benieuwd wie wint?

Je bent op zoek naar een nieuw e-commerce platform. Mogelijk omdat je huidige platform end-of-life is, je uit je jasje bent gegroeid of omdat je met jouw nieuwe startup impact op de wereld gaat maken. Wat je reden ook is; op een gegeven moment zal je een keuze voor een e-commerce pakket moeten gaan maken.

Magento is al jaren een bekende naam en wordt door Gartner als “leader” aangemerkt. Door de komst van Magento 2 en de overname door Adobe wordt Magento steeds meer een geschikte keuze voor partijen met een serieuze ambitie. Spryker is een relatief nieuwe speler, maar zeker niet minder ambitieus. Spryker biedt een vernieuwende kijk op e-commerce en levert een toolkit voor partijen die digitaal onderscheidend willen zijn.

Wij hebben de belangrijkste overeenkomsten en verschillen tussen beide pakketten voor je op een rijtje gezet. Let's get ready to rumble.

In de rechterhoek: Magento Commerce (“De titelverdediger“)

Voor online begrippen mag Magento mag bijna een ouwe rot genoemd worden. In 2007 verscheen Magento 1 en in eind 2015 is de huidige versie, Magento 2, gelanceerd. Juist door die nieuwe release zijn veel organisaties op dit moment op zoek naar een nieuw platform. Magento 1 wordt vanaf juni 2020 niet meer geüpdatet en veel modules zullen in de maanden daarna ook niet meer worden ondersteund.

Magento 2 biedt een zeer grote set aan functionaliteiten en is erg flexibel en modulair opgebouwd, waardoor bijna iedere klus door Magento geklaard kan worden. Tegelijkertijd is Magento niet altijd de beste keus voor iedere klus. Magento heeft er met Magento 2 duidelijk voor gekozen om te mikken op de wat grotere spelers. Toch blijft Magento - door de beschikbaarheid van een gratis Open Source versie - ook een interessante keuze voor het midden van de markt.

In de linkerhoek: Spryker Commerce OS (“The Challenger”)

Spryker is ontwikkeld in 2017, een tijd waarin een veelvoud aan digitale touchpoints de nieuwe norm is. Spryker kijkt daarom verder dan het web door een oplossing te bieden waarmee transactionele businessmodellen op ieder denkbaar kanaal kunnen worden ondersteund. Spryker is vanaf de basis opgezet als headless platform, razendsnel en ongeëvenaard flexibel.

Ronde 1. De overeenkomsten

Voordat we naar de verschillen kijken, gaan we door met de overeenkomsten.

Tech stack

Magento en Spryker maken in de basis gebruik van dezelfde technologie. Zo maken beide systemen gebruik van een LAMP stack (Linux, Apache, MySQL en PHP) en gebruiken ze beide Elastic. In het geval van Spryker wordt een groot deel van de frontend gevoed vanuit Elastic. In het geval van Magento wordt Elastic vooral gebruikt als zoekmachine.

De technologie an sich zegt je wellicht niet zoveel. Wat wel een verschil kan maken is de beschikbaarheid van kennis over een bepaalde technologie. Dat kan namelijk een flinke impact hebben op de kosten voor de ontwikkeling en de schaalbaarheid van je team.

PHP, de programmeertaal waar beide pakketten gebruik van maken, wordt op bijna 80 procent van alle websites op het internet gebruikt (W3Techs.com, 11 maart 2020). Er zijn wereldwijd (en in Nederland) veel ontwikkelaars en bedrijven met een goede kennis van PHP, waardoor er in verhouding tot andere talen een goede beschikbaarheid van kennis en capaciteit is.

B2B & B2C

Beide systemen hebben een uitgebreide set functionaliteiten en bieden zowel voor B2B als B2C bedrijven een gepaste oplossing.

Naast alle B2C features die je van een high-end e-commerce oplossing mag verwachten, bieden beide pakketten bijvoorbeeld ook ondersteuning voor klantspecifieke catalogi, individuele prijsafspraken en bedrijfsstructuren waarmee je e-commerce omgeving af te stemmen is op de workflow van klanten.

Hierdoor zijn beide pakketten voor bijna iedere use case in de e-commerce arena in te zetten.

Ronde 2. De verschillen

Architectuur

Frontend en backend

Magento is van origine opgezet als een systeem voor webshops, waarbij zowel de frontend als de backend standaard meegeleverd worden in het pakket. Door niet alleen maar een beheeromgeving te leveren, maar ook een standaard thema waarin alle functionaliteiten worden ondersteund, kun je relatief laagdrempelig aan de slag met het pakket. Je hebt immers al een standaard omgeving waarin alle mogelijkheden zitten.

Waar veel systemen die als monoliet zijn opgesteld steeds meer tegenaan lopen is de snelheid waarmee ontwikkelingen op frontend vlak plaatsvinden. Niet alleen de manier waarop websites en webshops gebouwd worden, maar ook de hoeveelheid touchpoints die je als organisatie hebt (app, website, webshop, instore display, smartwatch, voice, chatbot, etc) zorgen ervoor dat het heel complex is om een standaard frontend mee te leveren, die snel genoeg doorontwikkeld kan worden én tegelijkertijd flexibel genoeg is om alle touchpoints optimaal te kunnen bedienen.

Daarom worden e-commerce applicaties tegenwoordig steeds vaker als ‘headless’ applicatie ontwikkeld. Wat headless precies is, lees je in onze whitepaper.

Spryker is in de basis headless ontwikkeld. De backend en de frontend zijn twee volledig losstaande applicaties. Door de manier waarop Spryker de data opslaat en aan de voorkant gebruikt (via een Elastic tussenlaag) is Spryker enorm schaalbaar. Daarnaast levert Spryker twee headless demo thema’s (B2B en B2C) mee, waardoor je - indien gewenst - ook een kick-start hebt als je een frontend gaat ontwikkelen.

Magento is ook flinke stappen aan het maken op het gebied van headless ontwikkeling, en heeft hiervoor een GraphQL API ontwikkeld, waarmee een frontend applicatie op een efficiënte en snelle manier data op kan halen. Hierdoor is het nu ook al mogelijk om met Magento volledig headless te ontwikkelen. Wij deden dit bijvoorbeeld voor Jan van Sundert keukens.

Modulariteit

Beide pakketten zijn modulair opgezet. De manier waarop is echter sterk verschillend. In Magento worden alle modules samen aangeboden. Het voordeel hiervan is dat je relatief snel up-and-running bent en standaard een grote set aan functionaliteiten tot je beschikking hebt. Door de modulaire opbouw van Magento kunnen ontwikkelaars bijna alle mogelijke denkbare functionaliteiten toevoegen aan het systeem. En door de grote community achter Magento zijn er (onder andere via de officiële marketplace) duizenden modules beschikbaar waarmee laagdrempelig nieuwe functionaliteit toegevoegd kunnen worden aan je webshop.

Spryker geeft de mogelijkheid om bij de start van het pakket een selectie te maken van de modules die je wilt gebruiken. Je kunt daarbij zelf kiezen welke van de meer dan 700 modules, die Spryker standaard aanbiedt, je wilt gebruiken. Daardoor bevat je shop alleen maar de onderdelen die je daadwerkelijk gaat gebruiken. Om de opstart niet té complex te maken heeft Spryker standaard use-cases (B2B en B2C) uitgewerkt en daarvoor een voorselectie gemaakt van de modules die je kunt inladen.

Uitbreidbaarheid

Beide pakketten bieden verschillende manieren aan om functionaliteiten te wijzigen of toe te voegen. Je kunt zelf nieuwe modules toevoegen om functionaliteiten toe te voegen, maar je kunt ook bestaande modules uitbreiden of overschrijven om aanpassingen aan bestaande functies door te voeren.

Updates

Binnen Magento worden alle (core) modules samen voorzien van één versienummer. In een nieuwe Magento release zijn vaak veel verschillende modules van updates voorzien. Doordat Magento zowel de backend als de frontend van de website bevat, hebben de updates regelmatig ook impact op de frontend van de webshop. Magento brengt circa vier keer per jaar een nieuwe versie uit en maakt daarbij onderscheid tussen versies met nieuwe features, kleinere updates en patches. Door de periodieke updates hoef je niet heel vaak te updaten, maar zijn de updates vaak wel redelijk impactvol.

Spryker updatet alle modules los. Dit betekent dat er 700+ individuele versienummers worden bijgehouden en er met grote regelmaat (vaak dagelijks) nieuwe releases van modules verschijnen. Je kunt zelf bepalen welke onderdelen je wilt updaten en kan per module updaten. Dit zorgt ervoor dat de impact van iedere update kleiner is en je vooral kunt kijken welke onderdelen wel wel toegevoegde waarde voor je hebben en welke je ook prima over kunt slaan.

Performance

Magento is een enorm flexibel pakket met een zeer groot aanbod aan mogelijke functionaliteiten. De keerzijde daarvan is dat Magento niet bekendstaat vanwege haar performance. Door aan de voorkant veel te leunen op caching en de hostingomgeving te optimaliseren is het ook voor Magento shops mogelijk om een goede performance te behalen.

Spryker komt ook met een standaard frontend, waarbij er onderscheid wordt gemaakt tussen een standaard B2C en een B2B set-up. De standaard Spryker frontend is minder uitgebreid, maar door de wijze waarop de meeste data uit de elastic tussenlaag wordt geladen is Spryker enorm snel. Alleen voor dynamische informatie, zoals bijvoorbeeld de winkelwagen, moet er verbinding gemaakt worden met de Spryker backend. Alle andere informatie is volledig geoptimaliseerd om snel op te kunnen halen vanuit de frontend.

Community

Spryker is op dit moment vooral bekend in Duitsland en is hard bezig aan de verdere uitbreiding.

Magento is al jaren een van de grootste pakketten en heeft een enorme development community achter zich staan. Daardoor zijn er enorm veel modules beschikbaar voor Magento, waardoor in veel gevallen snel en goedkoop functionaliteiten toegevoegd kunnen worden aan webshops.

Total cost of ownership

Welk pakket voor jou uiteindelijk de meest gunstige Total Cost of Ownership (TCO) heeft, hangt sterk af van jouw case. Doordat Magento een gratis Open Source versie aanbiedt is de instap lager. Het prijsmodel van Spryker en Magento Commerce werkt anders. Spryker heeft een vaste licentieprijs en Magento werkt met een staffel op basis van de online omzet. Tot circa een omzet van 10 miljoen per jaar zal de jaarlijkse Magento Commerce licentie lager zijn dan de Spryker licentie.

Wanneer je echter kijkt naar de TCO, dan wil je veel breder kijken dan licentiekosten en rekening houden met de initiële ontwikkeling, flexibiliteit in de doorontwikkeling en kosten voor updates en onderhoud.

Spryker vereist in de aanvang meer keuzes en mogelijk meer development. Wanneer je echter een complexe omgeving of businesscase hebt, dan kan Spryker in het onderhoud en de updates voordeliger zijn. Door alleen de specifieke modules te gebruiken die je nodig hebt en die individueel te updaten heb je minder tijd nodig voor maintenance.

And the winner is...

Zowel Magento en Spryker zijn zeer krachtige pakketten die een veelvoud aan use-cases goed ondersteunen.

Heb je een meer standaard transactioneel e-commerce model? Heb je behoefte aan maatwerk, maar kan je heel veel standaard componenten gebruiken? Dan zal Magento waarschijnlijk beter bij je passen. Heb je een unieke businessmodel en leunt je organisatie op een unieke technische oplossing waarvoor veel development benodigd is, dan biedt Spryker een perfecte toolkit om snel up-and-running te zijn en geeft je de mogelijkheid om ook in de toekomst snel te kunnen blijven ontwikkelen.