Sylius jest jedną z najlepiej zaprojektowanych rzeczy, jakie powstały w e-commerce na PHP. Headless od pierwszego dnia, zbudowany na Symfony i API Platform, z rdzeniem na licencji MIT i architekturą, którą naprawdę da się testować. Model domeny jest otwarty: encje nadpisujesz, serwisy podmieniasz, a poszczególne komponenty (katalog, promocje, wysyłki) dają się użyć nawet poza sklepem. Wersja 2.x przeszła na Symfony 7 i natywny komponent Workflow, porzucając stare zależności. Jeśli masz zespół Symfony, Sylius daje mu narzędzie, w którym czuje się jak u siebie od pierwszego dnia.
I tu zaczyna się różnica, wokół której kręci się cały ten tekst. Sylius jest frameworkiem, nie gotowym sklepem. Dostajesz fundament i zestaw dobrze wykonanych klocków, ale platformę, a tym bardziej platformę B2B, składasz z nich sam albo z agencją. Endora Commerce jest odwrotnością tego podejścia: to gotowa platforma B2B z ponad sześćdziesięcioma modułami w standardzie, wdrażana konfiguracją pod Twoje procesy. Kupującym jest organizacja, cena wynika z kontraktu, a zapytanie ofertowe jest częścią rdzenia, nie doklejonym pluginem.
Jest jeszcze jedna rzecz, która odróżnia to zestawienie od porównań z Shopify czy Magento: w obu przypadkach kod jest Twój. Nie ma sporu o lock-in, o dostęp do bazy ani o abonament rosnący razem z obrotem. Zostaje pytanie węższe i trudniejsze: ile chcesz zbudować samodzielnie, za ile gotowego zapłacić i gdzie w tym rachunku jest czas Twojego zespołu.
Skrót dla niecierpliwych
| Kryterium | Sylius 2.x | Endora Commerce |
|---|---|---|
| Czym to jest | Framework e-commerce na Symfony: fundament do budowania | Gotowa platforma B2B wdrażana konfiguracją pod procesy |
| Licencja rdzenia | MIT, zero opłat | Brak opłat licencyjnych, kod w Twoim repozytorium |
| Funkcje B2B | Poza rdzeniem: moduł B2B Suite w płatnym Sylius Plus | W rdzeniu, bez dopłat i bez modułów do dokupienia |
| Cennik komercyjny | Sylius Plus deklaruje start od 800 € rocznie; realna kwota to wycena od obrotu i liczby modułów | Brak opłat od obrotu, stanowisk i modułów |
| Stos technologiczny | PHP 8.3+, Symfony 7.4, API Platform, Doctrine, MySQL lub PostgreSQL, Elasticsearch | TypeScript end-to-end, Fastify z MikroORM, Next.js SSR, PostgreSQL, Redis, Meilisearch |
| Rynek specjalistów | Bardzo szeroki: każdy zespół Symfony rusza od razu | Wąski: TypeScript jest wszędzie, ale platformy trzeba się nauczyć |
| Ekosystem rozszerzeń | Addons Marketplace uruchomiony w 2026 roku, ponad 500 wtyczek | Brak marketplace’u; rozwój przez moduły w Twoim repozytorium |
| Czas do działającego B2B | Projekt deweloperski: miesiące pracy zespołu Symfony | Prototyp w 4 tygodnie, wdrożenie w kilka miesięcy |
| Koszt dojścia do B2B | Licencje modułów Plus plus projekt programistyczny | Orientacyjnie 60-80 tys. zł, integracje wyceniane osobno |
| Polskie realia | KSeF, Comarch Optima i Subiekt GT bez utrzymywanych wtyczek: praca na zamówienie | KSeF w formacie FA(3), Comarch Optima i Subiekt GT natywnie |
| Własność kodu i danych | Pełna | Pełna |
Jeśli masz przeczytać tylko trzy zdania: Syliusa wybierasz, kiedy masz zespół Symfony i chcesz zbudować platformę dokładnie pod siebie, bo Twój model sprzedaży nie mieści się w żadnym gotowcu. Endorę wybierasz, kiedy potrzebujesz działającego B2B, a nie fundamentu pod B2B: hierarchia organizacji, zapytania ofertowe, limity kupieckie, KSeF i Comarch mają być skonfigurowane, a nie napisane. Jeśli masz już produkcyjnego Syliusa i programistów, którzy go znają, właściwe pytanie brzmi „co dobudować”, a nie „na co migrować”.
Czym właściwie jest każda z tych platform
Sylius
Sylius to headless framework e-commerce zbudowany na Symfony, Doctrine i API Platform. Rdzeń jest na licencji MIT, więc kosztuje zero i nie ma w nim ograniczeń użycia. Wersja 2.0 przeniosła platformę na Symfony 7, wymieniła stary automat stanów winzou na natywny komponent Workflow i porzuciła SwiftMailera na rzecz symfony/mailer. Wersja 2.1 dołożyła wsparcie dla PHP 8.4 i Symfony 7.3, dostępność na poziomie WCAG AA oraz odświeżony panel. Aktualna linia to 2.2.x. Wydanie z sierpnia 2026 wymaga PHP 8.3 lub nowszego i Symfony 7.4.
Kluczowe dla tego porównania jest rozróżnienie na dwie edycje:
- Sylius (MIT) - darmowy rdzeń: katalog z wariantami i atrybutami, kanały sprzedaży z osobnymi cenami, walutami i lokalizacjami, promocje, wysyłki, płatności przez Payum, koszyk i kasa, panel administracyjny, pełne API. Nie zawiera funkcji B2B. Organizacje kupujące, cenniki kontraktowe, szybkie zamawianie hurtowe i negocjacje ceny trzeba dokupić albo napisać.
- Sylius Plus - komercyjna, modułowa nadbudowa z oficjalnym wsparciem i określonym SLA. Obecnie jedenaście modułów: B2B Suite, Marketplace Suite, Advanced Multi-store, Returns Management (RMA), Multi-source Inventory, Loyalty System, RBAC, Partial Shipment, Request for Quotation (RFQ), Product Configurator i Subscription. Kupujesz pojedyncze moduły albo cały pakiet, w rozliczeniu miesięcznym, rocznym lub dożywotnim.
Cennik Plus zaczyna się deklaracją „od 800 € rocznie”, ale to punkt wejścia, a nie stawka. Realna kwota jest wyceną indywidualną liczoną od obrotu online (GMV) oraz od tego, które i ile modułów wybierzesz. Publicznej tabeli progów nie ma.
Sam B2B Suite daje: zarządzanie organizacjami (konto nadrzędne z podkontami, wspólne dane do faktur, książka adresowa i historia zamówień), wiele cenników z cenami indywidualnymi i progami ilościowymi, szybkie zamawianie hurtowe z jednego ekranu, wyszukiwarkę na Elasticsearchu dostrojoną do przypadków B2B, wiele list życzeń, zarządzanie zamówieniami z ponawianiem oraz import i eksport pod PIM lub ERP. W opisie modułu nie ma limitów kupieckich ani ścieżki akceptacji zamówień po stronie kupującego. To trzeba dobudować.
Ekosystem urósł: uruchomiony w 2026 roku Addons Marketplace zebrał ponad 500 wtyczek indeksowanych z publicznych repozytoriów i Packagista, z listingami prowadzonymi przez samych autorów.
Endora Commerce
Endora Commerce to platforma B2B napisana w TypeScripcie: backend na Fastify z MikroORM i kontraktami Zod, storefront w Next.js renderowany po stronie serwera, panel administracyjny w React. Dane w PostgreSQL, cache i kolejki w Redisie, wyszukiwarka Meilisearch. Ponad 60 modułów w standardzie, od katalogu i cenników po KSeF, feedy produktowe i asystenta AI w panelu.
Nie ma tu podziału na edycje ani modułów do dokupienia. Hierarchia organizacji, zapytania ofertowe, limity kupieckie, wielomagazynowość, zwroty z numeracją RMA, role i uprawnienia oraz kanały sprzedaży są częścią platformy, a nie osobnymi pozycjami na fakturze.
Sprzedaż B2C działa na tej samej instalacji i tym samym modelu danych: rejestracja klienta indywidualnego zakłada w tle jednoosobową organizację, więc zamówienia, zapytania ofertowe, faktury i adresy idą tą samą ścieżką co w B2B. B2C włącza się osobno dla każdego kanału sprzedaży.
Model dostarczania: nie kupujesz licencji, tylko dostajesz platformę wdrożoną pod Twoje procesy, z kodem w Twoim repozytorium Git. Pierwszy działający prototyp powstaje w cztery tygodnie, metodą Spec-Driven Development wspieraną przez AI. Średnie wdrożenie mieści się orientacyjnie w widełkach 60-80 tys. zł, bez integracji z systemami zewnętrznymi, które wycenia się osobno.
Wydajność
Przy Syliusie to kryterium trzeba postawić inaczej niż przy platformach gotowych, bo wydajność Syliusa jest w dużej mierze wydajnością tego, co na nim zbudujesz. Framework nie narzuca ani warstwy cache’u, ani sposobu renderowania storefrontu, ani modelu zapytań do bazy. Zespół, który zna Doctrine i wie, jak konfigurować cache HTTP, wyciągnie z Syliusa bardzo dobre liczby. Zespół, który tego nie wie, potrafi na tym samym kodzie zbudować sklep, który dusi się na trzystu kategoriach. I to nie będzie wina Syliusa.
Standardowy storefront 2.x to Twig z Symfony UX. Wariant headless z własnym frontendem jest w pełni wspierany przez API Platform, ale to osobny projekt: własna aplikacja, własny hosting, własny budżet.
Endora renderuje storefront serwerowo w Next.js, z celami Core Web Vitals wpisanymi wprost w wymagania platformy (LCP poniżej 2,5 s, INP poniżej 200 ms, CLS poniżej 0,1) i wyszukiwaniem poniżej 200 ms w percentylu 95. Konkret ze skali: generowanie feedu produktowego dla 100 000 produktów daje plik 38 MB przy szczytowym zużyciu pamięci poniżej 20 MB, bo serializacja jest strumieniowa. Demo chodzi na katalogu powyżej 120 tys. SKU.
Różnica praktyczna dotyczy cen indywidualnych. W B2B każda firma widzi własną cenę, więc pełnostronicowy cache przestaje być narzędziem, na którym można oprzeć wydajność. Endora wylicza cenę przez silnik cen przy każdym żądaniu: z cennika grupy, kontraktu indywidualnego, progu ilościowego i okna czasowego, z deterministycznym rozstrzyganiem nakładających się reguł. W Syliusie ten sam scenariusz jest do zbudowania i wielu zespołom się udaje, ale to Ty projektujesz, gdzie leży granica cache’owalności.
| Sylius 2.x | Endora Commerce | |
|---|---|---|
| Komponenty w produkcji | PHP-FPM, MySQL lub PostgreSQL, Elasticsearch, cache HTTP, Messenger z brokerem | Node.js, PostgreSQL, Redis, Meilisearch |
| Kto odpowiada za wydajność | Twój zespół: framework nie narzuca architektury cache’u | Platforma, z celami wpisanymi w wymagania |
| Docelowa skala | Od małych sklepów po duże wdrożenia wielokrajowe | Setki tysięcy SKU, setki zamówień i zapytań ofertowych miesięcznie |
| Sprzęt w wariancie docelowym | Zależnie od architektury wdrożenia | Jeden VPS: minimum 4 vCPU / 8 GB, rekomendowane 8 vCPU / 16 GB |
Zastrzeżenie w obie strony: Sylius ma za sobą lata wdrożeń w Europie i dobrze rozpoznane wąskie gardła Symfony i Doctrine, a jego wydajność jest sterowalna, bo wszystko jest po Twojej stronie. Liczby Endory to cele architektoniczne potwierdzone testami i skalą demo, a nie dekada produkcyjnych szczytów.
Koszt wdrożenia i utrzymania
Tu trzeba policzyć coś, czego nie widać w porównaniach licencji: koszt zbudowania tego, co po drugiej stronie jest skonfigurowane.
Sam rdzeń Syliusa kosztuje zero i to jest realna zaleta. Ale rdzeń nie ma funkcji B2B. Masz więc trzy drogi i każda ma cenę: wykupić moduły Sylius Plus (B2B Suite plus RFQ to już dwie pozycje, a limitów kupieckich i akceptacji zamówień w nich nie znajdziesz), kupić wtyczki od zewnętrznych dostawców albo napisać. W praktyce większość wdrożeń B2B na Syliusie miesza wszystkie trzy.
Do tego dochodzi lista rzeczy, których w polskich realiach nikt za Ciebie nie utrzymuje. KSeF nie ma na Syliusa gotowej, wspieranej wtyczki. Oficjalny Invoicing Plugin generuje faktury PDF, a nie dokumenty FA(3) wysyłane do systemu Ministerstwa Finansów. Integracji z Comarch ERP Optima ani Subiektem GT też nie kupisz jako modułu Sylius Plus. To są osobne projekty programistyczne, każdy ze swoim harmonogramem i swoim utrzymaniem.
Średnie wdrożenie Endora Commerce zamyka się orientacyjnie w widełkach 60-80 tys. zł. To warsztat, konfiguracja platformy pod Twoje procesy i uruchomienie produkcyjne. Bez licencji, bez opłat od stanowisk i bez opłat od obrotu. Kwota jest punktem wyjścia, a nie sufitem, i zwykle nie obejmuje integracji z systemami zewnętrznymi, które wycenia się osobno po ustaleniu na warsztacie, co i w którą stronę ma się synchronizować.
| Pozycja kosztowa | Sylius 2.x | Endora Commerce |
|---|---|---|
| Licencja rdzenia | 0 zł, MIT | Brak |
| Funkcje B2B | Moduły Sylius Plus: start od 800 € rocznie, wycena od obrotu i liczby modułów | W cenie platformy |
| Wdrożenie | Projekt deweloperski zespołu Symfony; zakres B2B to zwykle miesiące pracy | Orientacyjnie 60-80 tys. zł; integracje wyceniane osobno |
| KSeF i polski ERP | Praca na zamówienie, bez utrzymywanej wtyczki | W standardzie: FA(3), Comarch Optima, Subiekt GT |
| Wtyczki zewnętrzne | Realna pozycja przy nietypowym zakresie, z własnym cyklem aktualizacji | Brak, moduły są częścią platformy |
| Infrastruktura | Zależnie od architektury: PHP-FPM, baza, Elasticsearch, broker | Jeden VPS w wariancie docelowym |
| Aktualizacje wersji | Skoki większych wersji wymagają migracji kodu i wtyczek | Zwykłe wdrożenia w Twoim repozytorium |
| Zespół | Programiści Symfony: szeroki i dojrzały rynek | Programiści TypeScript: szeroki rynek, ale bez znajomości tej platformy |
Zastrzeżenie po stronie Syliusa: jeśli masz własny zespół Symfony, część tego rachunku znika, bo płacisz czasem ludzi, których i tak zatrudniasz. Dla firmy z działem IT pracującym w PHP „zbudujemy to sami na Syliusie” bywa rozsądniejsze niż kupienie gotowej platformy, której nikt w firmie nie zna.
Zastrzeżenie po stronie Endory: brak opłat licencyjnych nie oznacza, że platforma jest darmowa. Wspomniane 60-80 tys. zł to realny wydatek, integracje dochodzą do tej kwoty, a rozwój po starcie też kosztuje. Różnica polega na tym, że budżet idzie w rozwój Twojej platformy i nie rośnie automatycznie razem z obrotem.
Łatwość rozwijania platformy
To kryterium najlepiej sprawdzić na jednym pytaniu: ile trwa dodanie statusu zamówienia „w produkcji” i pola „numer umowy” na zamówieniu?
W Syliusie jedno i drugie to zadanie dla programisty. Status: konfiguracja przejść w komponencie Symfony Workflow plus kod nasłuchujący na przejściach, testy i wdrożenie. Pole: rozszerzenie encji Doctrine, migracja bazy, typ formularza w panelu, szablon, ewentualnie wystawienie w API. Nic z tego nie jest trudne dla kogoś, kto zna Symfony. To jest właśnie mocna strona Syliusa. Ale nadal jest to zmiana kodu, wdrożenie i pozycja w kolejce zadań.
W Endorze jedno i drugie robi się w panelu. Statusy zamówień i przejścia między nimi są konfigurowalne, z możliwością podpięcia zdarzenia biznesowego do każdego przejścia. Pola dodatkowe dokłada się do zamówień, organizacji, klientów, kategorii, produktów i zapytań ofertowych jako dane, bez migracji bazy i bez wdrożenia kodu.
| Zadanie | Sylius 2.x | Endora Commerce |
|---|---|---|
| Nowy status zamówienia z logiką | Symfony Workflow plus kod i wdrożenie | Konfiguracja w panelu |
| Dodatkowe pole na zamówieniu | Encja, migracja, formularz, szablon, zasób API | Konfiguracja w panelu, pole jako dane |
| Nowy cennik / reguła cenowa | Promocje w rdzeniu; cenniki B2B przez B2B Suite albo własny kod | Kreator reguł w panelu |
| Nowa bramka płatnicza | Wtyczka Payum albo własny gateway | Moduł-adapter, rdzeń bez zmian |
| Nowy język storefrontu | Tłumaczenia i konfiguracja lokali | Wpis na liście języków |
| Zmiana modelu domeny | Nadpisanie encji i serwisów, pełna swoboda | Moduł w Twoim repozytorium, w granicach kontraktów |
Ostatni wiersz jest ważny i działa na korzyść Syliusa. Sylius pozwala przemodelować dziedzinę do zera. Jeśli Twoja sprzedaż wymaga produktu, którego nie da się opisać jako wariantu z ceną, w Syliusie po prostu piszesz własną encję i własny silnik. Endora daje Ci moduły i kontrakty, a nie czystą kartkę. Dla większości firm to zaleta, bo kartka kosztuje. Dla firmy z naprawdę nietypowym modelem to ograniczenie.
Po stronie Syliusa jest też przewaga, której nie da się podważyć: rynek specjalistów. Programistów Symfony można zatrudnić albo wynająć w każdym większym mieście, dokumentacja jest obszerna i publiczna, a agencję da się zmienić bez przepisywania platformy. Endora daje Ci kod na własność, ale zespołu, który zna tę platformę od środka, nie znajdziesz w pierwszym ogłoszeniu. Łagodzi to fakt, że kod jest zwykłym TypeScriptem z kontraktami Zod, a nie autorskim frameworkiem, ale problemu nie usuwa całkowicie.
W drugą stronę działa jedna rzecz, której w Syliusie nie ma: w panelu Endory pracuje asystent AI. Otwierasz paletę poleceń i opisujesz po polsku, co ma się stać. Asystent pokazuje plan zmian i wykonuje go po Twoim potwierdzeniu, w granicach Twoich uprawnień i z wpisem w dzienniku audytu.
Za tym stoi konkret, bo „szybko” samo w sobie nic nie znaczy: mniej złożony moduł powstaje w Endorze w 1-3 dni, większy do tygodnia. Nie dotyczy to integracji z ERP, WMS, CRM, PIM czy OMS: te są zawsze mocno indywidualne, a napisanie takiej integracji zajmuje do dwóch tygodni. To nie jest przewaga nad otwartym kodem jako takim, bo tam też możesz dopisać, co zechcesz. To przewaga punktu startu: dokładasz moduł do działającej platformy B2B, zamiast najpierw zbudować to, co ma być rozszerzane.
Integracje z systemami zewnętrznymi
W B2B to zwykle kryterium rozstrzygające, bo platforma prawie nigdy nie jest źródłem prawdy: jest nim ERP, a obok niego CRM, WMS i coraz częściej OMS.
Gdzie wygrywa Sylius
Ekosystem PHP i dojrzałe API. Sylius stoi na API Platform, więc REST z dokumentacją OpenAPI dostajesz od pierwszego dnia, razem z filtrowaniem, paginacją i wersjonowaniem zasobów. Do tego cały Symfony: Messenger do kolejek i zdarzeń, HttpClient, konsola i harmonogramy, plus wszystko, co jest na Packagiście. Jeśli Twój ERP ma bibliotekę PHP, integrator zaczyna od composer require, a nie od czytania dokumentacji protokołu.
Rynek wykonawców. Integratorów, którzy potrafią spiąć Symfony z ERP-em, jest po prostu dużo, także w Polsce. Addons Marketplace z ponad 500 wtyczkami zwiększa szansę, że część drogi ktoś już przeszedł.
Gdzie wygrywa Endora
Krótsza lista gotowych integracji, ale mocniejszy kontrakt i polskie realia w standardzie.
- Comarch ERP Optima i Subiekt GT, adaptery w standardzie: kartoteki, stany, ceny i dokumenty sprzedaży.
- KSeF w rdzeniu platformy: faktury i korekty w formacie FA(3) wysyłane trwałą kolejką, numer KSeF na dokumencie, UPO do pobrania i kod QR weryfikacyjny na PDF. Na Syliusie to dziś praca na zamówienie, a przy obowiązkowym KSeF w 2026 roku to nie jest drobiazg.
- API partnerskie z żywym OpenAPI: dokument generowany z kontraktów w kodzie, więc integrator nie pracuje na nieaktualnym PDF-ie.
- Klucz API przypięty do organizacji i kanału: integracja widzi ceny, limity i asortyment dokładnie tej firmy i nie może więcej niż jej własny kupujący. Nie ma parametru omijającego reguły.
- Zamówienia idempotentne: powtórzone żądanie zwraca to samo zamówienie, nigdy drugie. Dotyczy też równoległych powtórzeń.
- Webhooki podpisane HMAC-SHA-256, do ośmiu prób z rosnącym odstępem, osobny widok nieudanych doręczeń z ręcznym ponowieniem.
- Wycena hurtowa: jedno żądanie wycenia do 200 pozycji dla konkretnej organizacji, z gwarancją zgodności z koszykiem co do grosza.
- Poświadczenia szyfrowane AES-256-GCM, testowane przy zapisie, maskowane przy odczycie i redagowane w dzienniku audytu.
Warstwa integracyjna Endory jest ogólna: nie ma listy „obsługiwanych ERP-ów”, jest opisany kontrakt. Dowolny ERP, CRM, WMS czy OMS podłącza się jako moduł-adapter. Tą samą ścieżką powstały adaptery Stripe, PayU i tpay.
Najważniejsza różnica jest jednak w tym, co kontrakt wie o Twoim biznesie. API Endory zna pojęcie organizacji: klucz przypięty do firmy widzi jej cennik, jej limit kupiecki i jej asortyment. Na Syliusie API jest neutralne i bardzo dobrze zaprojektowane, ale uprawnienia handlowe w kontekście organizacji musisz dołożyć sam, bo w rdzeniu nie ma organizacji.
B2B: gdzie Endora Commerce faktycznie się wyróżnia
Zacznę od tego, czego nie ma sensu ukrywać: Sylius Plus ma poważną ofertę B2B, nie listek figowy. B2B Suite daje organizacje, wiele cenników z progami ilościowymi, szybkie zamawianie hurtowe i wyszukiwarkę dostrojoną do katalogów B2B. Osobny moduł RFQ obsługuje negocjację ceny z poziomu koszyka. Do tego RBAC, wielomagazynowość z routingiem zapasów, zwroty RMA, wysyłki częściowe i multi-store. To jest zestaw, który realnie obsłuży sprzedaż firma-firma.
Dwie rzeczy trzeba jednak dopowiedzieć. Po pierwsze, to są moduły płatne, kupowane osobno, a pod nimi nadal jest framework, który ktoś musi doprowadzić do stanu produkcyjnego. Po drugie, kilku mechanizmów w tej ofercie nie ma wcale.
1. Hierarchia organizacji jako drzewo z dziedziczeniem warunków. B2B Suite modeluje firmę jako konto nadrzędne z podkontami dzielącymi dane rozliczeniowe i historię, czyli strukturę płaską. W Endorze centrala i oddziały tworzą drzewo: widoczność zamówień spływa w dół, a cennik i limit kupiecki dziedziczą się z najbliższego przodka. Firma z dwudziestoma oddziałami nie wymaga dwudziestu równoległych konfiguracji.
2. Limit kupiecki jako narzędzie kontroli ryzyka. W opisie B2B Suite limitów kredytowych nie ma. Endora przyznaje limit organizacji, rezerwuje go atomowo w chwili składania zamówienia i zwalnia po opłaceniu faktury albo anulowaniu, a po wyczerpaniu limitu filtruje dostępne metody płatności. To różnica między terminem płatności a realną kontrolą ekspozycji.
3. Akceptacja zamówienia po stronie kupującego. Jeśli kupujący ma wewnętrzną procedurę wymagającą zgody przełożonego, w Syliusie trzeba to napisać. Endora ma akceptację koszyka włączaną per organizacja, z pełną ścieżką zgłoszenia i decyzją z uzasadnieniem.
4. Zapytania ofertowe jako pełna pętla, plus katalog bez cen. Moduł RFQ w Sylius Plus obsługuje negocjację z koszyka. Endora idzie dalej: handlowiec wycenia z terminem realizacji i ważnością oferty, obie strony modyfikują warunki, a zaakceptowana oferta zamienia się w zamówienie bez przepisywania pozycji. Do tego tryb wyświetlania cen none, który ukrywa wszystkie elementy cenowe i kieruje intencję zakupową do zapytania ofertowego, dla asortymentu, którego z zasady nie sprzedaje się z cennika.
5. Zmiany, które robi biznes, a nie programista. Konfigurowalne statusy zamówień ze zdarzeniami biznesowymi na każdym przejściu oraz pola własne na zamówieniach, organizacjach, klientach, kategoriach, produktach i zapytaniach ofertowych dodawane jako dane, bez migracji i bez wdrożenia. W Syliusie każda taka zmiana przechodzi przez repozytorium i wydanie.
6. Realia hurtu w jednym pakiecie. Jednostki opakowaniowe (palety, kartony, zgrzewki) z przeliczaniem sztuk, import koszyka z CSV lub Excela z rozpoznawaniem wariantów, wyszukiwanie po SKU i atrybutach, zakup jednym kliknięciem, listy zakupowe, porównywarka produktów z eksportem do PDF, zwroty z numeracją RMA i fakturami korygującymi, wielomagazynowość z rezerwacjami i backorderem. W Syliusie część z tego to osobne moduły Plus, a część praca własna.
Do tego dochodzi rzecz, której nie widać na liście funkcji: każda wrażliwa operacja trafia do dziennika audytu ze stanem przed zmianą i po zmianie, a handlowiec może wejść w kontekst klienta i zobaczyć ceny jego oczami, z widocznym banerem i wpisem w dzienniku.
Gdzie Sylius ma przewagę w samym B2B: w szerokości katalogu modułów. Marketplace Suite pozwala uruchomić sprzedaż wielu dostawców z podziałem płatności, Product Configurator obsługuje produkty składane przez klienta z wyceną w czasie rzeczywistym, Subscription daje sprzedaż subskrypcyjną, a Loyalty System programy lojalnościowe. Endora nie ma żadnego z tych czterech. Jeśli któryś jest u Ciebie wymogiem, Sylius jest bliżej gotowego rozwiązania. Jest to przewaga, której nie da się zbyć argumentem o architekturze.
Kiedy Sylius będzie lepszym wyborem
1. Masz zespół Symfony. To najsilniejszy argument w całym tekście. Zespół PHP rusza na Syliusie od pierwszego dnia, bez poznawania nowej platformy, i zna wszystkie narzędzia wokół: Doctrine, Messenger, testy, wdrożenia. Kompetencja, którą już masz, jest warta więcej niż gotowe moduły, których nie umiesz utrzymać.
2. Twój model sprzedaży nie mieści się w żadnym gotowcu. Produkt, którego nie da się opisać jako wariantu z ceną, wycena z konfiguratora, sprzedaż usług powiązanych z towarem. Sylius pozwala przemodelować dziedzinę od podstaw i nie udaje, że wie lepiej.
3. Potrzebujesz marketplace’u, subskrypcji, konfiguratora produktu albo programu lojalnościowego. To są gotowe moduły Sylius Plus, a w Endorze ich nie ma.
4. Zależy Ci na wymienialności dostawcy. Rynek agencji Symfony jest głęboki, przetarg na kolejnego wykonawcę jest realny, a rdzeń na MIT nie wiąże Cię z nikim.
5. Budujesz coś, co nie jest tylko sklepem. Komponenty Syliusa da się użyć wewnątrz większej aplikacji Symfony: portalu, systemu obsługi zamówień, narzędzia wewnętrznego. To rzadki, ale realny scenariusz.
6. Masz już produkcyjnego Syliusa. Replatforming bez policzonego powodu biznesowego to jeden z najdroższych sposobów na nic. Jeśli platforma działa, dobuduj brakujące funkcje.
7. Twoje B2B mieści się w tym, co daje B2B Suite. Organizacje, cenniki dla grup, progi ilościowe, szybkie zamawianie i dobra wyszukiwarka. Jeśli to jest cała lista, a masz kogoś, kto ją złoży, nie ma powodu szukać dalej.
Kiedy Endora Commerce będzie lepszym wyborem
1. Potrzebujesz działającego B2B, a nie fundamentu pod B2B. Jeśli decyzja ma zapaść w tym kwartale, a sprzedaż ruszyć w tym roku, różnica między „konfigurujemy” a „budujemy” jest różnicą w harmonogramie, nie w filozofii.
2. Sprzedaż idzie przez negocjację. Zapytania ofertowe są główną ścieżką, część asortymentu w ogóle nie ma pokazywanej ceny, a zaakceptowana oferta ma się zamienić w zamówienie bez przepisywania pozycji.
3. Struktura klientów to drzewo, nie lista. Grupy kapitałowe, oddziały dziedziczące cennik i limit po centrali, widoczność zamówień spływająca w dół. Płaskie konto nadrzędne z podkontami tego nie odwzoruje.
4. Limit kupiecki jest u Ciebie narzędziem, a nie deklaracją. Rezerwacja przy składaniu zamówienia, zwolnienie po zapłacie faktury, filtrowanie metod płatności po wyczerpaniu limitu.
5. Pracujesz w polskich realiach. Comarch ERP Optima albo Subiekt GT w tle, obowiązkowy KSeF w formacie FA(3), PayU i tpay w kasie, faktury z własną numeracją. To wszystko jest w Endorze natywnie, a na Syliusie do napisania i do utrzymania.
6. Budżet i termin są policzone z góry. Orientacyjne 60-80 tys. zł bez licencji, integracje wycenione osobno, prototyp po czterech tygodniach. To inna przewidywalność niż projekt deweloperski o zakresie ustalanym w trakcie.
7. Twój zespół pracuje w TypeScripcie, nie w PHP. Jeden język od bazy po interfejs, kontrakty współdzielone między backendem a frontendem, zwykłe monorepo w Twoim repozytorium.
8. Chcesz, żeby część zmian robił biznes, a nie programista. Statusy zamówień, pola własne, cenniki, treści maili i szablony faktur konfigurowane w panelu, bez kolejki zadań u dostawcy.
9. Uruchamiasz kilka kanałów naraz i chcesz też detal. Storefront, marketplace, portal dystrybutora, PWA i POS jako osobne kanały jednej instalacji, a B2C na tym samym modelu danych, bez drugiego systemu i bez rozmiękczania modelu B2B.
Czego Endora Commerce nie ma
Ta sekcja jest w tekście po to, żeby dało się na jego podstawie podjąć decyzję, a nie tylko poczuć się przekonanym.
- Marketplace’u rozszerzeń. Sylius ma Addons Marketplace z ponad 500 wtyczkami. W Endorze każda nietypowa funkcja to praca programistyczna.
- Ekosystemu Symfony. Dekady bibliotek, wzorców i integratorów, którzy już to robili. Tego nie odtwarza się deklaracją.
- Głębokiego rynku specjalistów. Programistów Symfony jest wielokrotnie więcej niż osób znających Endorę. Łagodzi to zwykły TypeScript z kontraktami Zod zamiast autorskiego frameworka, ale problemu nie usuwa.
- Modułów, które ma Sylius Plus: sprzedaży wielu dostawców (marketplace), subskrypcji, konfiguratora produktu i programu lojalnościowego.
- Pełnej swobody przemodelowania dziedziny. Endora daje moduły i kontrakty, Sylius daje czystą kartkę. Jeśli Twój model jest naprawdę nietypowy, kartka bywa tańsza.
- Dekady referencji na ekstremalnej skali.
- Pełnych integracji API z marketplace’ami. Allegro, Amazon i eBay są dziś obsługiwane szablonami feedów do pobrania, a nie dwukierunkową integracją z API.
- Utrzymania wliczonego w jedną cenę. Ktoś musi utrzymać serwer, kopie zapasowe i aktualizacje, tak samo jak przy Syliusie. Możesz je prowadzić samodzielnie albo zlecić nam lub firmie partnerskiej w ramach umowy SLA.
- Wielopoziomowej akceptacji zamówień zakupowych w takim stopniu, w jakim mają ją platformy enterprise.
Krótka lista kontrolna
Odpowiedz sobie na te pytania: odpowiedzi zwykle układają się w jedną stronę.
- Czy masz zespół, który zna Symfony, czy zespół, który zna TypeScript, a może nie masz żadnego?
- Chcesz zbudować platformę pod siebie, czy uruchomić gotową i dopasować ją konfiguracją?
- Czy Twój model sprzedaży da się opisać jako katalog, ceny i zamówienia, czy wymaga własnej dziedziny?
- Czy potrzebujesz limitów kupieckich, akceptacji zamówień i hierarchii oddziałów, czy wystarczą organizacje i cenniki?
- Czy KSeF, Comarch albo Subiekt są u Ciebie wymogiem twardym? I kto będzie utrzymywał te integracje przez najbliższe pięć lat?
- Czy budżet i termin są zdefiniowane z góry, czy zakres może się kształtować w trakcie?
- Czy potrzebujesz marketplace’u wielu dostawców, subskrypcji, konfiguratora produktu albo lojalnościówki?
- Kto ma dodawać nowe pole na zamówieniu: administrator w panelu czy programista w repozytorium?
Przewaga odpowiedzi „mamy zespół Symfony”, „model jest nietypowy”, „potrzebujemy marketplace’u albo subskrypcji”, „zakres będzie się kształtował” wskazuje na Syliusa. Przewaga odpowiedzi „chcemy gotowe B2B”, „limity i hierarchia oddziałów”, „KSeF i polski ERP”, „budżet policzony z góry”, „zmiany ma robić administrator” wskazuje na Endorę.
Podsumowanie
Sylius i Endora Commerce stoją po tej samej stronie jednej ważnej granicy: kod jest Twój, dane są Twoje, nikt nie liczy opłaty od obrotu. Różnią się tym, co dostajesz w dniu pierwszym. Sylius daje znakomity fundament, ogromny ekosystem PHP i pełną swobodę. Płacisz za to tym, że B2B trzeba złożyć z płatnych modułów i własnego kodu, i że KSeF, Comarch czy Subiekt zostają na Twojej głowie. Endora daje platformę B2B, w której hierarchia organizacji, zapytania ofertowe, limity kupieckie i polskie realia są skonfigurowane, a nie napisane. Płacisz za to węższym ekosystemem, brakiem czterech modułów, które ma Sylius Plus, i mniejszą swobodą w przemodelowaniu dziedziny.
Najprostszy test: jeśli masz zespół Symfony i czas na budowanie, Sylius prawdopodobnie da Ci lepszy rezultat i tańszy rachunek. Jeśli potrzebujesz działającego B2B w tym roku, pracujesz z polskim ERP-em i KSeF-em, a Twoi klienci mają limity kupieckie i strukturę oddziałów, warto policzyć drugą opcję.
Panel i storefront Endory działają online, więc najszybszą drogą jest przeklikać demo samodzielnie albo umówić bezpłatny warsztat, na którym przejdziemy przez Twoje procesy i systemy i wycenimy zakres pierwszego wdrożenia razem z integracjami.
A jeśli z tej rozmowy wyjdzie, że lepszym wyborem jest Sylius, powiemy to wprost. Nieudane wdrożenie nie jest dobrą referencją dla nikogo.