SKLEPINTERNETOWY.BIZPoradniki i wiedza e-commerce
Poradnik›BŁĘDY›WooCommerce 11.2.2 – poważny błąd kosztów dostawy. Stawka…
BŁĘDY

WooCommerce 11.2.2 – poważny błąd kosztów dostawy. Stawka 6500 zmienia się na 7

6 listopada 202613 min czytanianetpoint

WooCommerce 11.2.2 może zapisywać błędne koszty dostawy i powodować straty finansowe

W WooCommerce 11.2.2 zgłoszono poważny błąd dotyczący konfiguracji kosztów wysyłki. W określonych ustawieniach regionalnych ponowne otwarcie okna edycji metody dostawy może spowodować zmianę prawidłowej stawki 6500 na zaledwie 7. Jeśli administrator zapisze taką wartość, sklep zacznie naliczać klientom nieprawidłowe opłaty za przesyłki.

Problem został zgłoszony 5 listopada 2026 roku w oficjalnym repozytorium WooCommerce na GitHubie, pod numerem #70713. Autor potwierdził wystąpienie błędu w rzeczywistym sklepie internetowym, w którym opłata za dostawę kurierską została przypadkowo zmniejszona. Podczas kolejnej próby poprawienia konfiguracji stawka zmieniła się na bezpłatną.

Chociaż w opisanym przypadku nie złożono zamówień w czasie obowiązywania błędnej stawki, konsekwencje podobnej sytuacji mogą być poważne. Sklep może pobierać od klientów kwoty niewystarczające do pokrycia kosztów dostawy, a różnicę będzie musiał pokryć sprzedawca.

Co istotne, problem nie wymaga instalowania dodatkowych wtyczek kurierskich ani wykonywania skomplikowanych operacji. Dotyczy mechanizmu edycji standardowej metody wysyłki Flat Rate, czyli stałej stawki dostawy wbudowanej w WooCommerce.

Na czym dokładnie polega błąd kosztów wysyłki WooCommerce?

Problem występuje w sklepach, które wykorzystują kropkę jako separator tysięcy oraz przecinek jako separator dziesiętny.

Przykładowo wartość sześć tysięcy pięćset jest w takim formacie zapisywana jako:

6.500

Przy określonej konfiguracji WooCommerce ponownie przetwarza już sformatowaną wartość liczbową. W rezultacie system interpretuje ją nie jako 6500, lecz jako 6,5. Gdy sklep ma ustawione zero miejsc po przecinku, liczba zostaje zaokrąglona do 7.

Najbardziej niebezpieczne jest to, że błędna wartość może zostać zapisana w ustawieniach metody dostawy.

Jak stawka 6500 zmienia się na 7?

W udokumentowanym scenariuszu występuje następująca sekwencja:

  1. Administrator konfiguruje metodę dostawy Flat Rate z kosztem 6500.
  2. Otwiera ustawienia metody wysyłki. WooCommerce prawidłowo wyświetla wartość 6.500.
  3. Zamyka okno edycji przyciskiem X, bez zapisywania zmian.
  4. Bez odświeżenia całej strony ponownie otwiera konfigurację tej samej metody.
  5. W polu kosztu dostawy pojawia się wartość 7 zamiast 6.500.
  6. Jeżeli administrator kliknie przycisk zapisu, WooCommerce zapisuje nieprawidłową kwotę.

Przykład zmiany wartości:

Etap Wartość kosztu dostawy
Prawidłowa wartość w konfiguracji 6500
Pierwsze otwarcie okna edycji 6.500
Drugie otwarcie bez odświeżenia strony 7
Zapisanie błędnie przeliczonej stawki 7

Przy takim błędzie sklep pobierałby od klienta o około 99,9% mniej, niż wynosiła prawidłowo skonfigurowana opłata za dostawę.

W przypadku wysyłek ekspresowych, ciężkich przesyłek, transportu gabarytowego czy dostaw realizowanych przez specjalistycznych przewoźników taka różnica może prowadzić do istotnych strat finansowych.

Błąd potwierdzony w działającym sklepie internetowym

Autor zgłoszenia opisał rzeczywisty przypadek, w którym problem dotknął konfiguracji dostawy kurierskiej realizowanej tego samego dnia.

Prawidłowa opłata wynosiła 6500 jednostek waluty sklepu. Po błędnym przeliczeniu i zapisaniu konfiguracji koszt dostawy zmienił się na 7.

Podczas próby przywrócenia odpowiedniej stawki konfiguracja została dodatkowo zmieniona na darmową wysyłkę.

Autor zaznaczył jednak, że w okresie obowiązywania nieprawidłowych ustawień nie wpłynęły żadne zamówienia. Nie ma więc podstaw, aby twierdzić, że ten konkretny przypadek doprowadził do rzeczywistych strat finansowych.

Potwierdzono natomiast, że problem wystąpił w środowisku produkcyjnym i doprowadził do zapisania nieprawidłowych wartości.

Które wersje WooCommerce są dotknięte błędem?

Problem został odtworzony w WooCommerce 11.2.2. Autor zgłoszenia wskazał również, że po raz pierwszy zaobserwował go w wersji 11.2.1.

Środowisko podane w zgłoszeniu:

  • WordPress: 7.1.4.
  • WooCommerce: 11.2.2, pierwszy raz zaobserwowany w 11.2.1.
  • PHP: 8.2.
  • Motyw: Blocksy 2.1.61 z motywem potomnym.
  • Waluta: peso argentyńskie (ARS).
  • Separator tysięcy: kropka.
  • Separator dziesiętny: przecinek.
  • Liczba miejsc dziesiętnych: 0.

W zgłoszeniu nie wykazano, że problem dotyczy wszystkich sklepów WooCommerce 11.2.2. Kluczowe znaczenie mają ustawienia formatowania liczb oraz sposób korzystania z okna konfiguracji wysyłki.

Czy problem może wystąpić w polskich sklepach WooCommerce?

Tak, jeżeli konfiguracja sklepu odpowiada warunkom prowadzącym do błędu.

W Polsce standardowo stosuje się przecinek jako separator dziesiętny, natomiast separator tysięcy bywa ustawiany w różnych formatach, zależnie od konfiguracji sklepu.

Sam fakt prowadzenia sprzedaży w złotówkach nie oznacza, że sklep jest podatny na opisaną nieprawidłowość.

Znaczenie ma przede wszystkim konfiguracja:

Separator tysięcy: .
Separator dziesiętny: ,
Liczba miejsc dziesiętnych: 0

Przy dwóch miejscach dziesiętnych objaw może być inny. Autor wykazał, że ponownie przetworzona wartość 6500 może zostać przedstawiona jako 6,50, zamiast 6500,00.

Nie należy jednak automatycznie zakładać, że problem dotyczy wyłącznie sklepów z zerową liczbą miejsc dziesiętnych.

Dlaczego WooCommerce błędnie przelicza koszt dostawy?

Analiza zgłoszenia wskazuje na problem w kodzie JavaScript odpowiedzialnym za obsługę okna edycji metod wysyłki w panelu administracyjnym.

Wykorzystywany jest plik:

woocommerce/plugins/woocommerce/client/legacy/js/admin/wc-shipping-zone-methods.js

Podczas otwierania okna konfiguracji mechanizm onConfigureShippingMethod wykonuje formatowanie wartości zapisanej w ustawieniach metody wysyłki.

Problem polega na tym, że wynik formatowania zostaje zapisany z powrotem do danych, które następnie są używane przy ponownym otwarciu tego samego okna.

Ponowne formatowanie już sformatowanej liczby

Według analizy autora kluczowy fragment działania obejmuje:

method.settings_html = shippingMethodView.reformatSettingsHTML( method.settings_html );

Za pierwszym razem mechanizm otrzymuje surową wartość:

6500

i prawidłowo przedstawia ją jako:

6.500

Po zamknięciu i ponownym otwarciu okna formatowana jest jednak wartość, która została już wcześniej przekształcona.

Funkcja maybeModifyDecimal() interpretuje występującą w niej kropkę jako separator dziesiętny. W efekcie otrzymuje:

6,500

Następnie localiseMonetaryValue() interpretuje tę liczbę jako 6,5 i przy ustawieniu zerowej liczby miejsc dziesiętnych zaokrągla ją do 7.

To właśnie ta druga operacja prowadzi do radykalnej zmiany wartości kosztu wysyłki.

Czy przyczyną jest motyw Blocksy albo dodatkowa wtyczka?

Nie ma dowodów wskazujących, że bezpośrednią przyczyną jest motyw Blocksy.

Autor przeanalizował działanie funkcji JavaScript samego WooCommerce i odtworzył błędne przeliczanie niezależnie od interfejsu sklepu, wykorzystując środowisko Node.js.

Nie przeprowadzono jednak pełnego testu z wyłączonymi wszystkimi dodatkowymi wtyczkami oraz standardowym motywem WordPressa.

Najmocniejszym dowodem jest więc odtworzenie błędu w funkcjach formatujących WooCommerce oraz wystąpienie jego skutków w rzeczywistym sklepie.

Jakie straty może spowodować błędne naliczanie kosztów wysyłki?

Sprzedaż z niemal darmową dostawą

Jeżeli prawidłowa stawka zostanie zastąpiona wielokrotnie niższą wartością, sklep może przyjmować zamówienia, pobierając zbyt małe opłaty za przesyłki.

Przy dużej liczbie zamówień strata może narastać szybko, zwłaszcza gdy sprzedawca ponosi wysokie koszty logistyczne.

Problemy z rozliczeniami firm kurierskich

Nieprawidłowa stawka zapisana w WooCommerce nie zmienia automatycznie cennika przewoźnika.

Sklep może więc pobrać od klienta niewielką kwotę, a następnie otrzymać od firmy kurierskiej fakturę obejmującą rzeczywisty koszt usługi.

Różnica obciąża sprzedawcę, chyba że została uwzględniona w innym elemencie kalkulacji ceny.

Problemy w sklepach dropshippingowych

W modelu dropshippingowym sprzedawca często korzysta z kosztów dostaw określonych przez hurtownię lub dostawcę zewnętrznego.

Błędne naliczanie wysyłki może dodatkowo obniżać marżę, która w tym modelu sprzedaży bywa stosunkowo niewielka.

Znaczenie kosztów logistycznych, sposobu realizacji zamówień i współpracy z dostawcami opisuje również artykuł Dropshipping – na czym polega i jak można na nim zarabiać?.

Nieprawidłowe stawki w koszyku i podczas finalizacji zamówienia

WooCommerce wykorzystuje konfigurację metod wysyłki do wyliczania opłat przedstawianych klientowi w koszyku i podczas składania zamówienia.

Jeżeli w ustawieniach została zapisana niewłaściwa wartość, może ona zostać wykorzystana przy kalkulacji ceny dostawy.

Warto również pamiętać, że widoczność kosztów dostawy i przejrzystość warunków zakupu mają znaczenie dla doświadczeń klientów. Szerzej opisuje to artykuł Sukces e-commerce w Polsce – jak stworzyć sklep spełniający oczekiwania klientów?.

Jak sprawdzić, czy WooCommerce nie zapisuje błędnych stawek dostawy?

Diagnostykę najlepiej przeprowadzić na środowisku testowym, wykorzystującym tę samą wersję WooCommerce i ustawienia regionalne co sklep produkcyjny.

1. Sprawdź ustawienia formatowania cen

W panelu administracyjnym WordPressa otwórz:

WooCommerce → Ustawienia → Ogólne → Opcje waluty.

Sprawdź:

  • separator tysięcy;
  • separator dziesiętny;
  • liczbę miejsc po przecinku;
  • walutę wykorzystywaną przez sklep.

Jeżeli separator tysięcy ustawiono jako kropkę, a separator dziesiętny jako przecinek, konfiguracja odpowiada części warunków opisanych w zgłoszeniu.

2. Sprawdź istniejące metody wysyłki

Przejdź do:

WooCommerce → Ustawienia → Wysyłka → Strefy wysyłkowe.

Wybierz odpowiednią strefę i sprawdź metody dostawy typu Flat Rate, czyli stała stawka.

Porównaj zapisane koszty z rzeczywistym cennikiem dostaw. Szczególną uwagę zwróć na wysokie opłaty, w których występują separatory tysięcy.

Oficjalna dokumentacja WooCommerce dotycząca stref i metod wysyłki wyjaśnia sposób przypisywania metod dostawy do regionów oraz zarządzania ich konfiguracją.

3. Odtwórz problem bez zapisywania błędnych danych

Na kopii testowej sklepu wykonaj następujące czynności:

  1. Ustaw separator tysięcy jako kropkę, separator dziesiętny jako przecinek oraz zero miejsc dziesiętnych.
  2. Utwórz metodę Flat Rate z kosztem 6500.
  3. Zapisz konfigurację.
  4. Otwórz ponownie ustawienia tej metody.
  5. Sprawdź, czy pole kosztu pokazuje 6.500.
  6. Zamknij okno przyciskiem X bez zapisywania.
  7. Bez odświeżania strony ponownie otwórz tę samą metodę wysyłki.
  8. Sprawdź, czy wartość zmieniła się na 7.

Jeżeli wystąpi opisana zmiana, środowisko odtwarza problem zgłoszony na GitHubie.

Nie zapisuj nieprawidłowej wartości w działającym sklepie. Testy zapisu wykonuj wyłącznie na środowisku, na którym nie będą wpływać na rzeczywiste zamówienia.

4. Sprawdź faktyczne koszty w koszyku

Po zweryfikowaniu konfiguracji wykonaj kontrolowane sprawdzenie koszyka i checkoutu.

Wybierz produkty fizyczne, wprowadź adres dostawy przypisany do odpowiedniej strefy wysyłkowej i sprawdź naliczoną opłatę.

Porównaj ją z ustalonym cennikiem.

Jeżeli wykorzystywane są klasy wysyłkowe, dodatkowe koszty za sztukę albo zewnętrzne integracje kurierskie, uwzględnij również ich wpływ na cenę.

Oficjalne informacje dotyczące konfiguracji stałych stawek znajdują się w dokumentacji Flat Rate Shipping dla WooCommerce.

Jak tymczasowo zabezpieczyć sklep przed błędnym zapisywaniem kosztów wysyłki?

Do czasu potwierdzenia oficjalnej poprawki najbezpieczniejszym podejściem jest ograniczenie ryzyka przypadkowego zapisania błędnie przeliczonej wartości.

Odświeżaj stronę przed ponowną edycją metody dostawy

Zgłoszony błąd występuje podczas ponownego otwarcia okna edycji bez przeładowania strony.

Dlatego po zamknięciu konfiguracji danej metody warto odświeżyć cały ekran stref wysyłkowych przed kolejną edycją.

To tymczasowy sposób ograniczenia ryzyka wynikający ze scenariusza odtworzenia błędu. Nie jest to oficjalna poprawka kodu.

Sprawdzaj wartość przed zapisaniem zmian

Przed kliknięciem przycisku zapisu zweryfikuj koszt dostawy, szczególnie jeśli wcześniej otwierano lub zamykano okno edycji.

Nie należy zakładać, że brak ręcznej zmiany pola oznacza brak zmiany jego wartości przez skrypty administracyjne.

Po zapisaniu ponownie sprawdź konfigurację

Po zapisaniu metody wysyłki odśwież stronę i upewnij się, że wyświetlana wartość odpowiada prawidłowej stawce.

Następnie zweryfikuj naliczanie kosztów dostawy w koszyku, ponieważ sama kontrola panelu administracyjnego nie daje pełnego obrazu działania procesu zakupowego.

Nie zmieniaj pochopnie separatorów we wszystkich cenach sklepu

Zmiana separatora tysięcy lub separatora dziesiętnego może wpływać na sposób wyświetlania cen produktów, podatków i innych wartości pieniężnych.

Nie jest więc dobrym pomysłem modyfikowanie ustawień waluty w działającym sklepie wyłącznie po to, aby ominąć problem z oknem wysyłki.

Taką zmianę należy poprzedzić analizą skutków dla całego sklepu i integracji zewnętrznych.

Czy można samodzielnie naprawić błąd w pliku JavaScript WooCommerce?

Autor zgłoszenia wskazał konkretną zmianę, która powinna wyeliminować przyczynę ponownego przetwarzania wartości.

Obecny mechanizm modyfikuje dane ustawień metody wysyłki, a następnie wykorzystuje te zmodyfikowane dane podczas kolejnej edycji.

Proponowane rozwiązanie zakłada zachowanie oryginalnej wartości otrzymanej z serwera i formatowanie jej kopii za każdym razem, kiedy otwierane jest okno konfiguracji.

Dzięki temu ponowne otwarcie ustawień nie powinno przetwarzać liczby, która została już wcześniej sformatowana.

Nie jest jednak zalecane ręczne edytowanie oryginalnego pliku wc-shipping-zone-methods.js bez przygotowania odpowiednich testów.

Zmiany w plikach wtyczki mogą zostać nadpisane podczas kolejnej aktualizacji WooCommerce, a nieprawidłowa modyfikacja skryptu może spowodować inne problemy w panelu administracyjnym.

Czy WooCommerce opublikowało już poprawkę?

Według stanu zgłoszenia z 6 listopada 2026 roku problem pozostaje otwarty.

Do zgłoszenia przypisano kategorię dotyczącą problemów z wysyłką i osobę odpowiedzialną za jego dalszą obsługę. Nie potwierdzono jeszcze udostępnienia oficjalnej poprawki eliminującej opisany scenariusz.

Autor wskazał również dwa powiązane zgłoszenia dotyczące obsługi wartości i formatowania kosztów wysyłki. Nie stanowią one jednak potwierdzenia, że omawiany problem został już rozwiązany.

Stan prac i ewentualne poprawki można sprawdzać w zgłoszeniu WooCommerce #70713 dotyczącym błędnego przeliczania kosztów dostawy.

Jak ograniczyć ryzyko podobnych błędów w konfiguracji WooCommerce?

Problemy z naliczaniem kosztów wysyłki nie zawsze objawiają się komunikatem błędu, białym ekranem lub całkowitą niedostępnością sklepu.

W tym przypadku strona administracyjna nadal działa, okno konfiguracji można otwierać, a zapis ustawień nie musi powodować żadnego ostrzeżenia.

Problem jest szczególnie trudny do wykrycia, ponieważ jego skutkiem jest błędna wartość liczbowa, która może wyglądać jak zwyczajna opłata za przesyłkę.

Dlatego w sklepach internetowych warto regularnie porównywać:

  • stawki zapisane w WooCommerce;
  • rzeczywiste cenniki przewoźników;
  • koszty wyświetlane klientowi w koszyku;
  • wartości zapisane w zamówieniach;
  • koszty wysyłek rozliczane z firmami kurierskimi.

Kontrola powinna obejmować również sytuacje po aktualizacjach WooCommerce oraz po zmianach konfiguracji metod dostawy.

Jeżeli w sklepie pojawiają się nieprawidłowe stawki wysyłki, problemy z koszykiem lub błędy integracji kurierskich, można skorzystać z pomocy technicznej dla sklepów internetowych, obejmującej diagnostykę WooCommerce, konfigurację dostaw i usuwanie błędów wpływających na sprzedaż.

Najczęstsze pytania dotyczące błędu kosztów dostawy

Czy WooCommerce 11.2.2 samodzielnie zmienia wszystkie koszty wysyłki?

Nie. Zgłoszony problem dotyczy określonego sposobu edycji standardowej metody Flat Rate przy konkretnych ustawieniach separatorów liczbowych. Nie potwierdzono automatycznej zmiany wszystkich stawek we wszystkich sklepach.

Czy błąd występuje również w WooCommerce 11.2.1?

Autor zgłoszenia wskazał, że po raz pierwszy zaobserwował problem w wersji 11.2.1. Szczegółową analizę i odtworzenie przeprowadził dla WooCommerce 11.2.2.

Czy problem dotyczy sklepów wykorzystujących PLN?

Może dotyczyć sklepu korzystającego z polskiej waluty, jeżeli spełnione są warunki związane z formatowaniem liczb. Sama waluta PLN nie jest jednak potwierdzoną przyczyną błędu.

Czy wystarczy zmienić stawkę 7 z powrotem na 6500?

Poprawienie zapisanej kwoty przywraca właściwą konfigurację konkretnej metody wysyłki, ale nie usuwa przyczyny technicznej. Dopóki błąd istnieje, nieprawidłowe przeliczenie może pojawić się ponownie.

Czy błąd może prowadzić do darmowej dostawy?

W rzeczywistym przypadku opisanym przez autora zgłoszenia stawka dostawy została podczas kolejnej próby poprawiania zmieniona na bezpłatną. Nie oznacza to jednak, że identyczny efekt wystąpi w każdym sklepie.

Czy wyłączenie motywu Blocksy rozwiąże problem?

Nie ma potwierdzenia, że Blocksy jest przyczyną błędu. Analiza wskazuje na funkcje JavaScript wbudowane w WooCommerce. Problem odtworzono również poprzez uruchomienie samych funkcji formatujących w środowisku testowym.

Podsumowanie: błędna stawka dostawy może zostać zapisana bez żadnego ostrzeżenia

Problem zgłoszony w WooCommerce 11.2.2 dotyczy ponownego formatowania wartości pieniężnych podczas edycji metod wysyłki.

W określonej konfiguracji separatorów koszt 6500 jest prawidłowo wyświetlany jako 6.500 przy pierwszym otwarciu okna, ale przy drugim otwarciu bez odświeżenia strony może zostać przeliczony na 7.

Jeżeli administrator zapisze nieprawidłową wartość, sklep może zacząć pobierać od klientów znacznie zaniżone opłaty za dostawę.

Problem został potwierdzony w rzeczywistym środowisku produkcyjnym, chociaż w opisanym przypadku nie doszło do sprzedaży z błędnymi kosztami wysyłki.

Do czasu udostępnienia poprawki warto zachować ostrożność przy ponownej edycji stawek Flat Rate, odświeżać ekran przed kolejnym otwieraniem ustawień oraz sprawdzać faktyczne koszty dostawy po zapisaniu konfiguracji.

Najważniejsze jest upewnienie się, że kwoty przedstawiane klientom w koszyku odpowiadają rzeczywistym kosztom i zasadom dostawy obowiązującym w sklepie.

netpoint

Materiały o e-commerce, sprzedaży i technologii dla sklepów internetowych.

Czytaj dalej

Powiązane materiały