Dobra umowa na utrzymanie i opiekę techniczną sklepu nie wygrywa liczbą stron, tylko trzema rzeczami: jasnym podziałem obowiązków, tabelą priorytetów z realnymi czasami reakcji i wyceną, którą da się zweryfikować. Poniżej porządkujemy stronę organizacyjną współpracy – co zapisać w umowie, o co zapytać przed podpisaniem i jak wykryć luki w ofercie, zanim zaczniesz płacić. Samą listę czynności technicznych znajdziesz w dalszej części artykułu, a ogólny wzór podejścia w naszym utrzymaniu stron internetowych.
W praktyce te dwa słowa opisują dwie różne prace. Utrzymanie to reakcja: sklep przestał działać, płatności zwracają błąd, koszyk nie zapisuje zamówień — ktoś wchodzi i naprawia. Opieka to zapobieganie: praca wykonywana wtedy, gdy wszystko działa, po to żeby awaria albo się nie zdarzyła, albo trwała 20 minut, a nie dwa dni. Umowa, w której widzisz wyłącznie słowo „utrzymanie”, zwykle oznacza, że dostawca czeka na Twoje zgłoszenie. Umowa na opiekę oznacza, że ktoś czyta logi, zanim napiszesz „nie działa”.
Prosty test na pierwszej rozmowie: zapytaj, co dostawca zrobi w środę, jeśli przez cały tydzień nie wyślesz żadnego zgłoszenia. Odpowiedź „będę czekał” to utrzymanie. Odpowiedź z listą czynności — kopie zapasowe, aktualizacje na środowisku testowym, przegląd logów, raport — to opieka.
Kto za co odpowiada — najczęstsze punkty sporne:
| Obszar | Dostawca (w pakiecie) | Właściciel sklepu |
|---|---|---|
| Serwer i hosting | Konfiguracja, monitoring, kopie, aktualizacje PHP | Opłata za serwer, decyzje o migracji, dostępy |
| Aplikacja sklepu | Aktualizacje modułów, błędy, wydajność, integracje | Zgłaszanie objawów, akceptacja zmian, dostępy do paneli |
| Treści | Publikacja w ramach pakietu godzinowego | Opisy, zdjęcia, ceny, zgodność z prawem |
| Domeny, SSL, konta | Przypomnienia o wygasaniu, konfiguracja | Posiadanie, opłaty, aktualne dane kontaktowe |
| Decyzje biznesowe | Wycena i wdrożenie po akceptacji | Promocje, zmiany kurierów, nowe funkcje |
Poniższe osiem punktów to lista kontrolna. Przechodzisz przez nią przy każdej ofercie i przy każdym punkcie zaznaczasz: jest / nie ma / nie wiem. Pozycje „nie wiem” to miejsca, w których zapłacisz podwójnie.
Jeśli obsługujesz firmę z kilkoma sklepami albo kilkoma językami, zakres trzeba rozbić na osobne pozycje — utrzymanie i opieka techniczna sklepów w Zwierzyńcu pokazuje, jak wygląda takie rozbicie zakresu.
Oferta bez SLA jest warta tyle, co ustna obietnica. SLA to nie „24/7” na papierze, tylko tabela: co się stało, jak szybko ktoś reaguje i co się dzieje, jeśli nie zdąży. Poniżej przykład, który warto porównać 1:1 z tym, co dostałeś.
Trzy różne czasy. Czas reakcji to moment, w którym człowiek odezwie się na zgłoszenie. Czas rozpoczęcia pracy to chwila, gdy ktoś realnie zaczyna diagnozę. Czas rozwiązania to przywrócenie działania sklepu. W ofertach najczęściej pada tylko pierwszy — najkrótszy i najłatwiejszy do dotrzymania. W umowie muszą być wszystkie trzy, osobno dla każdego priorytetu i z jasnym zapisem, czy liczą się w godzinach zegarowych, czy roboczych.
Jak to się mierzy. Ustal, że każde zgłoszenie trafia do jednego systemu (ticket albo mail z automatycznym numerem), a czas liczysz od potwierdzenia przyjęcia zgłoszenia. Punkt końcowy definiujesz testem, np. „koszyk zapisuje zamówienie, a płatność kończy się sukcesem”. Bez tego nie policzysz kary, bo dostawca powie, że „naprawił”, a Ty nadal nie sprzedajesz.
Kary, okna serwisowe i weekendy. Typowy mechanizm: potrącenie kilku procent miesięcznego abonamentu za każde rozpoczęte 60 minut przekroczenia P1, z limitem np. 50% opłaty. Zapytaj, czy to potrącenie, czy osobna płatność, i czy kary nie zjadają pakietu godzin. Ustal okno serwisowe, np. 8:00–16:00 w dni robocze, i to, co dzieje się poza nim: dyżur dla P1 (w pakiecie albo za dopłatą) czy brak wsparcia. Weekend bez zapisu w umowie oznacza, że możesz czekać do poniedziałku — i to jest zgodne z umową. Zanim porównasz poziomy kar, sprawdź, ile kosztuje utrzymanie i opieka techniczna sklepów w praktyce.
| Priorytet | Przykład | Czas reakcji | Czas rozwiązania |
|---|---|---|---|
| P1 | Sklep nie działa: błąd 500, brak dostępu, koszyk nie zapisuje zamówień | 30–60 min | cel: tego samego dnia |
| P2 | Padły płatności online lub integracja z kurierem | do 2 h | cel: tego samego dnia roboczego |
| P3 | Drobne błędy: literówka w mailu, brak stanów magazynowych w feedzie | do 2 dni roboczych | w ramach pakietu godzin |
| P4 | Rozwój: nowy moduł, zmiana szablonu, optymalizacja | zaplanowane | według wyceny i harmonogramu |
Pytanie „ile kosztuje utrzymanie sklepu” bez danych wejściowych nie ma odpowiedzi. Do wyceny potrzebne są trzy liczby: liczba SKU, liczba integracji zewnętrznych i liczba modułów lub wtyczek pracujących na produkcji. Realne widełki dla polskiego rynku wyglądają tak:
Metodologia jest prosta i powinna być zapisana w umowie: stawka godzinowa × założony budżet godzin. Stawki w Polsce to zwykle 120–220 zł/h netto. 6 h przy 150 zł/h daje 900 zł/mc. Nadwyżki rozliczasz osobno — tą samą stawką albo niższą pakietową (150–250 zł/h). Umowa musi też rozstrzygać, co dzieje się z niewykorzystanymi godzinami: przechodzą na kolejny miesiąc, przepadają, czy są rozliczane kwartalnie.
Cena zależy przede wszystkim od liczby punktów styku z systemami zewnętrznymi, nie od „wielkości” sklepu. InPost, DPD, DHL, ERP (Subiekt, Comarch Optima), bramki płatnicze, feedy Ceneo i Google Shopping, fakturowanie — każdy element psuje się niezależnie od pozostałych. Sklep z 200 SKU i sześcioma integracjami bywa droższy w utrzymaniu niż sklep z 3000 SKU i dwiema.
W standardowy pakiet zwykle nie wchodzą: nowe funkcje (moduł B2B, konfigurator produktu), migracje wersji platformy, kampanie marketingowe i SEO, nowy szablon, przeniesienie na inny hosting. To osobne projekty z osobną wyceną — jeśli dostawca tego nie rozdziela, prawdopodobnie dolicza te prace w abonamencie.
Ukryte koszty poza abonamentem: licencje płatnych wtyczek (300–1500 zł/rok za sztukę), certyfikat SSL (0 zł dla Let's Encrypt, do ok. 300 zł/rok za wildcard), CDN (20–100 zł/mc), backup poza serwerem (30–100 zł/mc), serwer z zapasem mocy (100–400 zł/mc). Poproś o pełną listę tych pozycji i porównaj ją z naszym cennikiem utrzymania i opieki technicznej sklepów.
| Typ sklepu | Zakres | Stawka miesięczna (netto) | Budżet godzin |
|---|---|---|---|
| Mały, do 500 SKU | 1–3 integracje (płatności, jeden kurier), kilka wtyczek | 400–900 zł/mc | 3–6 h |
| Średni, 500–5000 SKU | 4–8 integracji, feedy produktowe, e-maile transakcyjne | 900–2000 zł/mc | 6–12 h |
| Z ERP i wieloma integracjami | ERP, kilku kurierów, B2B, wielojęzyczność | 2000–4000+ zł/mc | 12–25 h |
Platforma nie decyduje o tym, czy utrzymanie będzie tanie, ale zmienia profil ryzyka i liczbę godzin. Zestawienie poniżej opieramy na własnej praktyce, nie na deklaracjach producentów.
PrestaShop to architektura monolityczna: rdzeń, motyw i moduły działają w jednej aplikacji PHP na jednym serwerze. Mniej ruchomych części oznacza mniej codziennych konfliktów, ale aktualizacje idą skokowo. Przejście z 1.7 na 8.x to projekt, nie kliknięcie przycisku: trzeba sprawdzić zgodność modułów i motywu, przetestować koszyk, płatności i wysyłki na kopii, przygotować plan wycofania i dopiero potem wdrażać. Moduł 1-Click Upgrade tego nie zastąpi. Zakres zmian między wersjami najlepiej weryfikować w dokumentacji dla deweloperów PrestaShop, a nie na forach, gdzie informacje bywają nieaktualne.
WooCommerce to WordPress plus WooCommerce plus motyw plus wtyczki. Szybkie wdrożenie na starcie nie oznacza kompatybilności w ekosystemie: każda aktualizacja wtyczki może wejść w konflikt z inną, a winowajcę znajduje się metodą kolejnych wyłączeń na kopii. Praktyczny współczynnik: sklep z 20+ aktywnymi wtyczkami generuje zwykle dwa–trzy razy więcej godzin na aktualizacje i testy niż ten sam sklep z ośmioma.
Typowy wspólny incydent to porzucona płatna wtyczka lub moduł. Autor przestaje go rozwijać, wtyczka wywala błędy na PHP 8.2, a Ty masz dwie drogi: znaleźć zamiennik i przepisać konfigurację oraz dane albo zlecić moduł pisany na miarę. Koszt: od kilkuset złotych do kilku tysięcy. Dlatego przy wyborze rozszerzeń patrz na datę ostatniej aktualizacji i liczbę otwartych zgłoszeń, nie na liczbę pobrań. Porządek w tej liście to połowa sukcesu w utrzymaniu i opiece technicznej sklepów.
| Element | PrestaShop | WooCommerce |
|---|---|---|
| Architektura | monolit: rdzeń + motyw + moduły | WordPress + WooCommerce + motyw + wtyczki |
| Aktualizacje | skokowe (np. 1.7 → 8.x), wymagają planu i testów | częste, każda wtyczka aktualizowana osobno |
| Nakład na aktualizacje i testy | zwykle 1,5–3 h/mc | zwykle 3–8 h/mc przy 20+ wtyczkach |
| Główne ryzyko | zgodność modułów i motywu po skoku wersji | konflikt między wtyczkami, porzucone wtyczki |
Nie każde „sklep chodzi wolniej” oznacza, że musisz kupić abonament. Poniższe siedem sygnałów sprawdzisz samodzielnie w kilkanaście minut, bez dostępu do kodu.
grep -c " 50[24] " access.log. Regularne 504 to przekroczony timeout PHP-FPM, nie „chwilowy problem u dostawcy”.Trzy lub więcej punktów na tej liście to sygnał, że potrzebujesz uporządkowanej opieki. Ile to kosztuje w praktyce, rozpisaliśmy przy okazji utrzymania i opieki technicznej sklepów Zamość – ile to kosztuje.
Katalog pułapek jest krótki, ale każda z nich kosztuje albo pieniądze, albo tygodnie przestoju. Poniżej siedem zapisów, które warto wynegocjować, zanim podpiszesz cokolwiek.
/modules, a modyfikacje wyglądu w /themes/nazwa_motywu. Jeśli dostawca pisze własne moduły i nie przekazuje repozytorium, po zakończeniu umowy zostajesz z kodem, którego nikt nie zaktualizuje. Strukturę modułów i nadpisań opisuje oficjalna dokumentacja dla deweloperów, ale dokumentacja nie zastąpi dostępu do źródeł. Wpisz w umowę: repozytorium Git z historią commitów, kod modułów i motywu jest Twoją własnością, licencje płatnych modułów przepisane na Twoją firmę.| Pułapka | Jak wygląda w praktyce | Co wpisać do umowy |
|---|---|---|
| Kod i repo | Własne moduły zostają u dostawcy | Git z historią commitów, prawa do kodu po Twojej stronie |
| Godziny w pakiecie | 20 h/mies. przepada bez wykorzystania | Przenoszenie godzin min. 3 miesiące lub rozliczenie godzinowe |
| Staging | Zmiany wchodzą wprost na produkcję | Osobne środowisko testowe i wdrożenia przez Git z rollbackiem |
| SLA | Reakcja w dniach roboczych | P1: reakcja do 1 h, 7 dni w tygodniu, kontakt telefoniczny |
| Aktualizacje | Tylko na zgłoszenie klienta | Harmonogram miesięczny + poprawki bezpieczeństwa do 14 dni |
| Wyjście z umowy | Brak zapisu o przekazaniu zasobów | Baza, pliki, licencje i dostępy przekazane w 30 dni |
| Koszty dodatkowe | Stawka godzinowa ustalana ad hoc | Cennik jednostkowy i limit godzin bez pisemnej zgody |
Te pytania zadaj na jednym spotkaniu i poproś o odpowiedzi na piśmie — w ofercie lub e-mailem. Odpowiedź „to zależy” bez liczb jest sygnałem ostrzegawczym.
Jeśli chcesz porównać te odpowiedzi z konkretnym zakresem prac, zobacz, co obejmuje utrzymanie i opieka techniczna sklepów dla firm.
Decyzja sprowadza się do trzech elementów: jasne SLA z czasami reakcji w godzinach, rozliczenie godzinowe z przenoszeniem niewykorzystanych godzin oraz zapis o dostępie do kodu i repozytorium po zakończeniu współpracy. Dostawca, który nie chce pokazać przykładowego raportu ani podać trzech referencji, zwykle nie ma procesu — ma tylko dobre chęci. Zestaw ofertę z tabelą poniżej i sprawdź, czy odpowiada na wszystkie punkty z checklisty.
| Element umowy | Bezpieczna wartość |
|---|---|
| Czas reakcji P1 | do 1 h, 7 dni w tygodniu, kanał telefoniczny |
| Godziny | rozliczenie godzinowe, niewykorzystane przenoszone min. 3 miesiące |
| Kod i repozytorium | Git z historią commitów, moduły w Twojej własności |
| Aktualizacje | przegląd miesięczny, poprawki bezpieczeństwa do 14 dni |
| Wdrożenia | staging → produkcja, opisany rollback |
| Wyjście z umowy | baza, pliki, dostępy i licencje przekazane w 30 dni |
Umowa mówi „opieka techniczna”, ale nigdzie nie zapisano, co jest z niej wyłączone.
Jak wykryć: Przeczytaj załącznik z zakresem prac i policz punkty wyłączeń. Jeśli ich nie ma, każda większa zmiana będzie tematem sporu, a nie wycenionym zleceniem.
Jak naprawić: Dopisz listę wyłączeń: nowe funkcje, migracje, kampanie marketingowe, nowy szablon, prace po stronie ERP. Każdy punkt z osobną wyceną i zasadą akceptacji przed startem.
Brak SLA albo SLA bez zdefiniowanych priorytetów – jedno „reakcja do 24h” dla wszystkiego.
Jak wykryć: Sprawdź, czy w umowie jest tabela P1–P4 z konkretnymi minutami i czy P1 dotyczy całkowitego zatrzymania sprzedaży, a nie tylko „błędu na stronie”.
Jak naprawić: Wymagaj tabeli priorytetów: P1 (sklep nie działa) 30–60 min, P2 (płatności lub kurierzy padły) 2h, P3 (drobne błędy) do 2 dni roboczych, P4 (rozwój) prace planowane.
Mieszanie opieki nad serwerem z opieką nad aplikacją sklepu.
Jak wykryć: Zapytaj wprost: kto aktualizuje moduły, kto reaguje na błąd 500, kto zmienia wersję PHP i kto zgłasza awarie do hostingu. Jeśli odpowiedzi się rozjeżdżają, granica jest nieustalona.
Jak naprawić: Wpisz do umowy podział odpowiedzialności i punkt styku: kto i w jakim czasie zgłasza problem do dostawcy hostingu oraz kto prowadzi komunikację z nim do rozwiązania.
Kopie zapasowe bez testu odtwarzania i trzymane na tym samym serwerze co produkcja.
Jak wykryć: Poproś o datę ostatniego testu odtworzenia kopii oraz o informację, gdzie fizycznie leży backup.
Jak naprawić: Ustal minimum: kopia 1x dziennie, retencja min. 14 dni, kopia off-site, test odtworzenia raz na kwartał potwierdzony notatką.
Rozliczanie „na telefon”, bez zdefiniowanego budżetu godzin w miesiącu.
Jak wykryć: Sprawdź, ile godzin jest w pakiecie, jaka stawka obowiązuje za nadwyżkę i w którym momencie dostajesz informację, że budżet się kończy.
Jak naprawić: Ustal budżet godzin (typowo 4–8h/mc) i zasadę: prace ponad budżet wymagają Twojej akceptacji przed rozpoczęciem, nie po otrzymaniu faktury.
Brak jednej osoby decyzyjnej po stronie sklepu i brak miesięcznego raportu z prac.
Jak wykryć: Sprawdź, kto akceptuje wdrożenia i czy dostajesz comiesięczne podsumowanie wykonanych prac, incydentów i rekomendacji.
Jak naprawić: Wyznacz jedną osobę do akceptacji zmian i wymagaj raportu miesięcznego. Bez raportu nie zweryfikujesz, czy pakiet godzin został wykorzystany na realną pracę.
Strona organizacyjna współpracy decyduje o tym, czy awaria sklepu zajmie pół godziny, czy pół dnia. Trzy rzeczy do domknięcia przed podpisaniem: podział obowiązków z listą wyłączeń, tabela priorytetów P1–P4 z realnymi czasami reakcji oraz wycena oparta na budżecie godzin, a nie na ogólnym opisie „wielkości” sklepu. Reszta – kopie zapasowe, monitoring, raporty – powinna być weryfikowalna na papierze, bo tylko wtedy da się ją rozliczyć.
Utrzymanie to działania reaktywne: naprawa tego, co już się zepsuło – błąd 500, padająca płatność, zablokowany panel. Opieka to praca wyprzedzająca: aktualizacje na stagingu, monitoring, kopie zapasowe, przegląd wydajności. W praktyce potrzebujesz obu, ale w umowie warto je rozdzielić, bo mają inny model rozliczania i inne oczekiwania co do terminów.
Nie. Hosting odpowiada za infrastrukturę: dostępność maszyny, wersję PHP, limity bazy danych, sieć. Wykonawca opieki odpowiada za aplikację: moduły, szablon, konfigurację sklepu, integracje z płatnościami i kurierami. Najczęstszy problem to brak punktu styku – gdy awaria jest na granicy obu obszarów, nikt nie chce jej wziąć na siebie, a sklep stoi.
Dla całkowitego zatrzymania sprzedaży realny przedział to 30–60 minut na pierwszy kontakt i rozpoczęcie diagnozy. Dla awarii płatności lub modułu kurierskiego ok. 2 godzin. Dla drobnych błędów wizualnych do 2 dni roboczych. Jeśli oferta obiecuje „natychmiast” bez dyżuru i bez tabeli priorytetów, to nie jest zobowiązanie, a hasło marketingowe.
Technicznie tak, ale wtedy nie masz podstawy do reklamacji ani do kar umownych – liczy się tylko dobra wola wykonawcy. Bez SLA nie da się też porównać dwóch ofert, bo nie wiesz, za co dokładnie płacisz. Samo SLA bez zapisu o sposobie pomiaru zgłoszeń też niewiele daje.
Typowe widełki to 400–900 zł/mc dla małego sklepu (do ok. 500 SKU), 900–2000 zł/mc dla średniego (500–5000 SKU) i 2000–4000 zł/mc i więcej przy sklepie z ERP oraz wieloma integracjami. Wycena zwykle wynika z budżetu godzin pomnożonego przez stawkę 120–220 zł/h, a nie z liczby produktów. Nasze przykładowe stawki zebraliśmy w cenniku utrzymania i opieki technicznej sklepów.
Nowe funkcje i moduły, migracje między platformami, kampanie marketingowe i SEO, nowy szablon graficzny oraz prace po stronie systemów zewnętrznych, np. ERP. To nie jest ukrywanie kosztów – to normalny podział, o ile lista wyłączeń jest zapisana w umowie. Problem pojawia się wtedy, gdy klient dowiaduje się o wyłączeniu dopiero przy wycenie.
Głównie od liczby i złożoności integracji. Sklep z 3000 SKU bez integracji zewnętrznych bywa tańszy w utrzymaniu niż sklep z 400 produktami, ale z ERP, dwoma systemami płatności i trzema kurierami. Każda integracja to osobny punkt awarii, osobne API i osobne aktualizacje po zmianach po stronie dostawcy.
Jeśli chcesz porównać swoją obecną umowę z tym, co realnie powinno w niej być, napisz do nas – przejrzymy zakres i wskażemy luki. Nie sprzedajemy w tym miejscu pakietu, tylko porządkujemy stronę organizacyjną, a warianty wyceny znajdziesz w omówieniu kosztów utrzymania sklepów.