gmi.software
01 · Twoja aplikacja

Aplikacje mobilne

Gdy aplikację trudno zmienić, często się psuje albo nikt za nią nie odpowiada.

  • Rozwój lub przejęcie aplikacji
  • Aplikacje lojalnościowe
  • Audyt kodu aplikacji mobilnej
  • Utrzymanie aplikacji i wydania

SFD: 100 000+ pobrań, ocena 4,9 w App Store

02 · Twój sklep

Sklepy internetowe

Gdy platforma bierze prowizję od każdej sprzedaży albo blokuje to, czego potrzebujesz.

  • Rozwój sklepu internetowego
  • Analityka aplikacji sklepu
  • Plan i prototyp przed budową

120+ projektów zrealizowanych

03 · Systemy za nimi

Integracje

Gdy zamówienia, stany i punkty przepisuje się ręcznie.

  • ERP, magazyn i płatności
  • AI dla jednego ręcznego procesu
  • Warsztaty i wycena

100+ integracji

Przed rozmową
  • Wycena aplikacjiZakres i widełki budżetu
  • Doradca wyboru platformy sklepuDecyzje, ryzyka i opcje
  • Koszt sklepu w 5 latGotowa platforma czy własna, porównanie

Po warsztatach: uzgodniony zakres i stała cena jego realizacji

Wszystkie usługi →
SFDAplikacja lojalnościowa i zakupowa100 000+ pobrań · ocena 4,9 w App StoreMój Świat KsiążkiProgram lojalnościowy sieci księgarń100 000+ pobrańEMKAAplikacja do śledzenia odpadów medycznych5000+ pobrań w pierwszym miesiącu
Wszystkie 120+ projektów →Biblioteka pomysłów na aplikacje
ZespółO nasKim jesteśmy i jak pracujemyKarieraJak pracujemy i otwarte rekrutacje
Kontakt i technologieKontakt[email protected]TechnologieReact Native, MedusaJS, Node.js i reszta
Opinie5.0 w Google4.9 na ClutchOpinie →Clutch ↗ (otwiera się w nowej karcie)
Blog
PLUmów bezpłatną konsultację
Co robimy+−

01 · Twoja aplikacja

Aplikacje mobilne

  • Rozwój lub przejęcie aplikacji
  • Aplikacje lojalnościowe
  • Audyt kodu aplikacji mobilnej
  • Utrzymanie aplikacji i wydania

02 · Twój sklep

Sklepy internetowe

  • Rozwój sklepu internetowego
  • Analityka aplikacji sklepu
  • Plan i prototyp przed budową

03 · Systemy za nimi

Integracje

  • ERP, magazyn i płatności
  • AI dla jednego ręcznego procesu
  • Warsztaty i wycena

Przed rozmową

  • Wycena aplikacjiZakres i widełki budżetu
  • Doradca wyboru platformy sklepuDecyzje, ryzyka i opcje
  • Koszt sklepu w 5 latGotowa platforma czy własna, porównanie
Wszystkie usługi →
Projekty+−
  • SFD100 000+ pobrań · ocena 4,9 w App Store
  • Mój Świat Książki100 000+ pobrań
  • EMKA5000+ pobrań w pierwszym miesiącu
  • Wszystkie 120+ projektów →
  • Biblioteka pomysłów na aplikacje
Firma+−
  • O nasKim jesteśmy i jak pracujemy
  • KarieraJak pracujemy i otwarte rekrutacje
  • Kontakt[email protected]
  • TechnologieReact Native, MedusaJS, Node.js i reszta
  • Opinie5.0 w Google
Blog→
Umów bezpłatną konsultację

5.0 w Google · 4.9 na Clutch

Wróć do bloga
E-commerce
Opublikowano: 11 listopada 2026
10 min czytania

Czym jest Medusa.js v2 i jak zbudowana jest jej architektura?

Medusa.js v2 od środka: cztery warstwy żądania, moduły commerce i infrastruktury, izolacja modułów, workflowy z wycofaniem kroków, zdarzenia, panel admina i wdrożenie. Na końcu: kiedy wybrać Medusę zamiast SaaS i jak zaplanować wdrożenie.

Mikołaj Lehman, CEO i założyciel GMI Software
Mikołaj Lehman
CEO i założyciel GMI Software

W skrócie

Medusa.js v2 to platforma headless commerce w Node.js. Sklep, panel administracyjny i inne systemy korzystają z niej przez API. Żądanie przechodzi przez cztery warstwy: trasę API, workflow z logiką biznesową, moduły domenowe (koszyk, zamówienie, produkt i inne) i bazę PostgreSQL. Moduły są od siebie odizolowane, a dane łączy się przez powiązania modułów, nie przez bezpośrednie relacje. Własne funkcje dodaje się jako moduły, workflowy, trasy API i subskrybentów zdarzeń. Medusa ma sens, gdy firma potrzebuje własnej logiki i integracji, których platforma SaaS nie obsłuży bez kompromisu, i ma zespół, który utrzyma kod.

Medusa.js v2 to platforma headless commerce w Node.js. Sklep, panel administracyjny i inne systemy korzystają z niej przez API. Żądanie przechodzi przez cztery warstwy: trasę API, workflow z logiką biznesową, moduły domenowe (koszyk, zamówienie, produkt i inne) i bazę PostgreSQL. Moduły są od siebie odizolowane, a dane łączy się przez powiązania modułów, nie przez bezpośrednie relacje. Własne funkcje dodaje się jako moduły, workflowy, trasy API i subskrybentów zdarzeń. Medusa ma sens, gdy firma potrzebuje własnej logiki i integracji, których platforma SaaS nie obsłuży bez kompromisu, i ma zespół, który utrzyma kod.

Krótka odpowiedź

Źródła sprawdzone 11 listopada 2026, na dokumentacji Medusy v2; najnowsze wydanie w tym dniu to v2.22.6.

Ten poradnik jest dla CTO, architekta albo product ownera, który słyszy o Medusie po raz pierwszy albo ocenia ją jako fundament nowego sklepu. Wyjaśnia, z czego składa się aplikacja Medusa v2, gdzie dopisuje się własną logikę i co trzeba wdrożyć obok niej.

Odpowiedź w skrócie: Medusa v2 to serwer Node.js z panelem administracyjnym, zbudowany z niezależnych modułów domenowych. Logikę biznesową, która dotyka kilku modułów albo systemów zewnętrznych, zapisuje się w workflowach, które potrafią wycofać wykonane kroki po błędzie. Sklep internetowy jest osobną aplikacją i łączy się z Medusą przez API.

1. Cztery warstwy jednego żądania

Według opisu architektury Medusy żądanie ze sklepu albo panelu trafia najpierw do trasy API. Serwer działa na Express.js. Trasa uruchamia workflow, workflow korzysta z modułów, a moduły czytają i zapisują dane w bazie.

Medusa obsługuje wyłącznie PostgreSQL jako główną bazę danych. Inną bazę można podłączyć tylko we własnym module. Tabela pokazuje, gdzie w każdej warstwie dopisuje się własny kod.

1. Cztery warstwy jednego żądania
WarstwaZa co odpowiadaGdzie dopisujesz własny kod
Trasy API (HTTP)Punkt wejścia dla sklepu, panelu i systemów zewnętrznychPlik route.ts w katalogu src/api
WorkflowyLogika biznesowa złożona z krokówKatalog src/workflows
ModułyDane i operacje jednej domeny albo jednej integracjiKatalog src/modules
Baza danychTrwały zapis danych modułówMigracje generowane dla modułów

2. Moduły commerce i moduły infrastruktury

Moduł to pakiet funkcji jednej domeny: modele danych (tabele) i serwis, który nimi zarządza. Po instalacji dostępne są moduły z listy modułów commerce, między innymi koszyk, zamówienie, produkt, cennik, promocje, magazyn, płatności, podatki, klient i użytkownik. Wyjątkami są moduł lojalnościowy, instalowany jako wtyczka, i moduł RBAC z Enterprise Edition. Funkcje modułów są wystawione przez gotowe trasy API.

Drugą grupę tworzą moduły infrastruktury. Odpowiadają za usługi techniczne, a dostawcę każdej z tych usług można wymienić:

  • Event Module: publikowanie zdarzeń i subskrypcje (pub/sub).
  • Workflow Engine Module: orkiestracja workflowów.
  • Caching Module: pamięć podręczna dla danych kosztownych w obliczeniu.
  • Locking Module: blokady przy dostępie kilku procesów do tych samych zasobów.
  • File Module: przechowywanie plików, na przykład zdjęć produktów.
  • Notification Module: wysyłka powiadomień do klientów i użytkowników.
  • Analytics Module: przekazywanie zdarzeń do zewnętrznego narzędzia analitycznego.

Uwaga na nazwy: moduł lojalnościowy z listy modułów commerce wymaga instalacji wtyczki Loyalty Plugin (Medusa v2.14.0+) i według dokumentacji obsługuje karty podarunkowe. Nazwa modułu nie mówi jeszcze, czy pokrywa on Twój proces; trzeba sprawdzić opis jego funkcji.

3. Izolacja modułów i powiązania między nimi

Zasada izolacji modułów oznacza, że moduł nie widzi serwisów ani modeli danych innych modułów. Twój moduł nie może na przykład wywołać serwisu modułu produktu ani zdefiniować bezpośredniej relacji do jego tabel.

Dane z różnych modułów łączy się przez powiązania modułów (module links). Medusa tworzy dla każdego powiązania osobną tabelę, która przechowuje tylko identyfikatory połączonych rekordów, bez klucza obcego. Dane z kilku modułów pobiera się narzędziem Query.

Dla architekta wynika z tego prosta reguła: własne pojęcie biznesowe, na przykład markę albo umowę handlową, zapisujesz we własnym module i łączysz z produktem lub klientem powiązaniem. Nie zmieniasz tabel modułów rdzenia; według dokumentacji izolacja pozwala dołączyć własny moduł do aplikacji bez skutków ubocznych dla jej reszty.

4. Workflowy: logika biznesowa z wycofaniem kroków

Według dokumentacji workflowów workflow to seria kroków, która realizuje zadanie. W odróżnieniu od zwykłej funkcji Medusa śledzi przebieg każdego kroku, pozwala zdefiniować logikę wycofania i wykonywać długie działania asynchronicznie. Workflow uruchamia się z trasy API, subskrybenta zdarzenia albo zadania cyklicznego.

Wycofanie opisuje funkcja kompensacyjna kroku: jeśli krok utworzył rekord, a późniejszy krok zakończył się błędem, kompensacja usuwa ten rekord. Dzięki temu dane w Medusie i w systemach zewnętrznych nie zostają w stanie pośrednim.

Przykład hipotetyczny, a nie opis projektu klienta: hurtownia chce, żeby zamówienie ze sklepu trafiało do ERP. Workflow mógłby wyglądać tak:

  1. Pobierz zamówienie z pozycjami i danymi klienta narzędziem Query.
  2. Przemapuj dane na format ERP: kody towarów, jednostki, numer kontrahenta.
  3. Utwórz dokument w ERP przez moduł integracji; kompensacja anuluje dokument, jeśli kolejny krok się nie uda.
  4. Zapisz numer dokumentu ERP we własnym module i połącz go z zamówieniem powiązaniem modułów.
  5. Zgłoś błąd osobie odpowiedzialnej, jeśli workflow się nie powiódł. To nie jest kolejny krok workflowu: po błędzie Medusa uruchamia kompensacje, a nie dalsze kroki, więc zgłoszenie obsługuje kod, który uruchomił workflow (subskrybent, trasa API albo zadanie cykliczne).

5. Zdarzenia, subskrybenci i zadania cykliczne

Medusa emituje zdarzenia przy operacjach rdzenia, na przykład order.placed po złożeniu zamówienia. Opis zdarzeń i subskrybentów pokazuje, jak obsłużyć je funkcją asynchroniczną w tym samym kodzie, bez osobnej aplikacji do webhooków.

Subskrybent działa poza głównym przepływem, więc nadaje się do działań pobocznych, takich jak e-mail z potwierdzeniem. Jeśli działanie jest niezbędne dla samego przepływu, dokumentacja kieruje do haków workflowu (workflow hooks).

Zadania cykliczne uruchamiają funkcję według wyrażenia cron, gdy aplikacja działa, na przykład do synchronizacji produktów z ERP. Działania, które mają ruszać przy wyłączonej aplikacji, dokumentacja zaleca jako własne skrypty CLI wywoływane przez harmonogram systemu.

Zdarzenia obsługuje Event Module. Domyślna wersja lokalna służy do developmentu; do produkcji dokumentacja wskazuje moduł oparty na Redis.

6. Panel admina, sklep i wdrożenie

Panel Medusa Admin instaluje się razem z aplikacją. Według opisu panelu admina można dodawać do niego widżety na istniejących stronach i nowe strony, ale nie można zmienić układu, wyglądu ani treści istniejących stron. Przy dużych zmianach dokumentacja wskazuje budowę własnego panelu na Admin API.

Sklep internetowy jest osobną aplikacją. Punktem startu może być Next.js Starter Storefront, który od wersji v2.14.0 przy instalacji przez create-medusa-app trafia do jednego repozytorium (monorepo) z aplikacją Medusa. Możesz też zbudować własny frontend w dowolnej technologii.

Opis wdrożenia rozdziela aplikację Medusa (serwer i panel) i co najmniej jeden sklep, które wdraża się osobno; serwer łączy się z PostgreSQL i Redis. Na produkcji dokumentacja zaleca dwie instancje tej samej aplikacji: serwer do obsługi żądań i worker do zadań w tle, a hosting musi zapewniać co najmniej 2 GB RAM. Alternatywą jest zarządzany hosting Medusa Cloud.

7. Kiedy Medusa zamiast platformy SaaS

Najpierw licencja: według pliku licencji w repozytorium Medusa jest dostępna na licencji MIT, z wyjątkiem materiałów Enterprise Edition, które wymagają osobnej umowy handlowej. Brak opłaty licencyjnej za rdzeń nie oznacza braku kosztów: płacisz za hosting, development i utrzymanie.

Decyzja zależy od tego, ile Twojego procesu wykracza poza standard sklepu i kto będzie utrzymywał kod. Tabela pokazuje warunki, a nie gotowy werdykt.

7. Kiedy Medusa zamiast platformy SaaS
SytuacjaPrzemawia za MedusąPrzemawia za SaaS
Logika sprzedażyReguły cen, akceptacji lub zamówień, których nie da się odwzorować w ustawieniach platformyProces mieści się w standardowym koszyku i promocjach
IntegracjeKilka systemów (ERP, PIM, WMS) z wymianą danych w obie strony i obsługą błędówJedna lub dwie integracje dostępne jako gotowe aplikacje
KanałyJeden backend dla sklepu, aplikacji mobilnej i portalu handlowcówJeden sklep internetowy
ZespółWłasny zespół albo partner, który zna TypeScript i utrzyma kodBrak zespołu technicznego po wdrożeniu
InfrastrukturaGotowość do utrzymania PostgreSQL, Redis i workerów albo wybór Medusa CloudWolisz, żeby dostawca odpowiadał za infrastrukturę rdzenia

Jeśli sprzedajesz firmom i potrzebujesz cen kontraktowych, limitów kredytowych i podziału odpowiedzialności z ERP, rozwinięcie tego tematu znajdziesz w poradniku o Medusie dla sprzedaży firmowej.

8. Ścieżka do wdrożenia

Kolejność poniżej zmniejsza ryzyko, że architektura powstanie przed zrozumieniem procesu. Każdy krok kończy się dokumentem albo działającym fragmentem, który można sprawdzić.

Szacunek czasu i budżetu ma sens dopiero po krokach 1 i 2, bo zależy od liczby własnych modułów i integracji, a nie od samej Medusy.

  1. Opisz proces sprzedaży: kto kupuje, jak powstaje cena, co dzieje się po zamówieniu, jakie są wyjątki.
  2. Przypisz proces do modułów: co pokrywają moduły commerce, co wymaga własnego modułu, a co zostaje w ERP.
  3. Zaprojektuj integracje jako workflowy: kroki, kompensacje i to, kto dostaje informację o błędzie.
  4. Zbuduj najkrótszą ścieżkę zakupu od katalogu do zamówienia w ERP i sprawdź ją na danych testowych.
  5. Przygotuj produkcję: osobny serwer i worker, Redis dla zdarzeń, kopie zapasowe bazy i monitoring.
  6. Zaplanuj aktualizacje: kto i jak często sprawdza nowe wydania Medusy i testuje własne moduły po aktualizacji.

Najczęstsze pytania

Czy Medusa.js jest darmowa?
Kod w repozytorium jest dostępny na licencji MIT, z wyjątkiem materiałów Enterprise Edition, które wymagają osobnej umowy. Koszty wdrożenia to hosting (własny albo Medusa Cloud), development własnych modułów i integracji oraz utrzymanie.
Jakiej bazy danych wymaga Medusa v2?
PostgreSQL. Dokumentacja podaje, że to jedyna obsługiwana baza główna. Inną bazę, na przykład MongoDB, można podłączyć tylko we własnym module. Na produkcji potrzebny jest też Redis, między innymi dla zdarzeń.
Czy Medusa ma gotowy frontend sklepu?
Jest Next.js Starter Storefront, który można zainstalować razem z aplikacją i rozbudować. Sklep pozostaje osobną aplikacją, więc możesz też zbudować własny frontend albo aplikację mobilną na tym samym API.
Czym różni się moduł od workflowu?
Moduł przechowuje dane i operacje jednej domeny i nie widzi innych modułów. Workflow łączy kroki korzystające z wielu modułów i systemów zewnętrznych, śledzi ich przebieg i wycofuje wykonane kroki po błędzie.

Opisz proces, który chcesz przenieść na Medusę

Opisz proces, który chcesz przenieść na Medusę.

Treść zaktualizowano: 11 listopada 2026

Mikołaj Lehman, CEO i założyciel GMI Software
Mikołaj Lehman
CEO i założyciel GMI Software

Mikołaj Lehman jest CEO i założycielem GMI Software. Na blogu opisuje decyzje związane z aplikacjami mobilnymi, e-commerce oraz realizacją produktów cyfrowych.

  • Aplikacje mobilne i React Native
  • Headless i e-commerce B2B
  • MedusaJS
  • Realizacja produktów cyfrowych

Google Preferred Sources

Czytaj GMI częściej w Google

Dodaj gmi.software do preferowanych źródeł. Google może częściej wyróżniać nasze nowe materiały w Top Stories i obsługiwanych widokach AI.

Udostępnij artykuł:

Powiązane artykuły

E-commerce

Marketplace z wieloma sprzedawcami w MedusaJS: co zaprojektować

Model sprzedawcy, izolacja danych i uprawnień, publikowanie ofert, zamówienia per sprzedawca i granice rdzenia Medusy v2. Na końcu kryteria decyzji: budować moduł samemu czy wziąć gotowy.

→
E-commerce

Testy E2E sklepu w Playwright: plan regresji koszyka i płatności

Plan testów E2E ścieżki zakupu w sklepie internetowym: koszyk, sesja, płatność na symulowanych odpowiedziach dostawcy, powrót z bramki płatności i status zamówienia po błędzie, z ustawieniami Playwright do CI.

→

Porozmawiajmy o projekcie.

Opisz, czego potrzebujesz. Zaproponujemy następny krok.

[email protected]
gmi.software Sp. z o.o.ul. Jana Heweliusza 11 / 819
80-890 Gdańsk, Polska
Ocena 5,0 na 5 w Google5,017 opinii klientów w GooglePrzeczytaj opinie
TechnologieReact NativeExpoNext.jsReactTypeScriptMedusaJSKonfiguratory 3DNode.jsNestJSPostgreSQLDockerAWSPlaywrightMaestro
© 2026 gmi.software Sp. z o.o.
Polityka prywatnościRegulamin