Brak automatycznej zmiany statusu zamówienia po płatności Przelewy24 w WooCommerce niemal zawsze oznacza, że sklep nie otrzymuje poprawnego powiadomienia IPN/Webhook z Przelewy24 albo nie potrafi go przetworzyć.
Poniższy poradnik krok po kroku przeprowadzi Cię przez konfigurację, logi, ustawienia serwera, potencjalne konflikty wtyczek oraz testy, aby przywrócić prawidłową zmianę statusu płatności i wysyłkę potwierdzeń do klientów.
Problem wygląda zwykle tak:
- płatność zakończona w Przelewy24 – klient opłacił zamówienie, a w panelu P24 transakcja ma status „zakończona/rozliczona”;
- status w WooCommerce nie zmienia się – zamówienie pozostaje „Oczekuje na płatność” / „Pending payment” albo „W trakcie realizacji”, choć powinno przejść na „W trakcie realizacji” lub „Zrealizowane”;
- brak maila do klienta – WooCommerce nie wysyła potwierdzenia poprawnej płatności, bo nie otrzymał informacji o jej zakończeniu.
Aby to naprawić, trzeba zadbać o poprawny przepływ informacji:
- Przelewy24 musi wysłać powiadomienie (IPN/Webhook) pod dokładny adres URL Twojego sklepu.
- Adres ten musi być aktywny, dostępny z zewnątrz, na HTTPS i poprawnie obsługiwany przez wtyczkę Przelewy24 w WooCommerce.
- WooCommerce musi mieć właściwie skonfigurowaną wtyczkę (ID sprzedawcy, klucz CRC, opcje modułu) i nie może blokować żądania (konflikty wtyczek, błędy PHP, firewall).
Jak działa zmiana statusu płatności w WooCommerce z Przelewy24?
- Jak działa zmiana statusu płatności w WooCommerce z Przelewy24?
- Szybka checklista (dla niecierpliwych)
- Krok 1 – sprawdź konfigurację wtyczki Przelewy24 w WooCommerce
- Krok 2 – zweryfikuj adres powiadomień (IPN/Webhook) w panelu Przelewy24
- Krok 3 – przeanalizuj logi WooCommerce i logi Przelewy24
- Krok 4 – wyklucz problemy z serwerem i certyfikatem SSL
- Krok 5 – wyklucz konflikty wtyczek i motywu
- Krok 6 – upewnij się, że używasz właściwych wersji i środowiska (sandbox/produkcja)
- Krok 7 – zrób kompletne testy ścieżki zakupowej
- Typowe przyczyny braku zmiany statusu płatności (jak je rozpoznać i naprawić)
- Co napisać do supportu (Przelewy24 / hosting / developer)
- Dobre praktyki na przyszłość
W skrócie przebieg wygląda tak:
- Klient składa zamówienie w WooCommerce i wybiera metodę płatności Przelewy24.
- WooCommerce tworzy zamówienie ze statusem „Oczekuje na płatność” i przekierowuje klienta do Przelewy24.
- Po poprawnej płatności Przelewy24 wysyła powiadomienie do sklepu (IPN/Webhook) z informacją o opłaconym zamówieniu.
- Wtyczka Przelewy24 w WooCommerce odbiera to powiadomienie i zmienia status zamówienia (zwykle na „W trakcie realizacji” / „Processing” lub „Zrealizowane” / „Completed”).
- WooCommerce wysyła do klienta mailowe potwierdzenie płatności oraz kolejne powiadomienia według ustawień sklepu.
Jeżeli którykolwiek z tych kroków zawiedzie (błąd konfiguracji, blokada na serwerze, konflikt wtyczek), status się nie zmieni, mimo że po stronie Przelewy24 widzisz płatność jako poprawną.
Szybka checklista (dla niecierpliwych)
Jeśli chcesz zacząć od najważniejszych rzeczy, sprawdź kolejno:
- konfigurację wtyczki Przelewy24 w WooCommerce – ID sprzedawcy, klucz CRC, ewentualne klucze API;
- tryb sandbox vs produkcja – czy zgadza się z tym, co masz w panelu Przelewy24;
- adres powiadomień (IPN/Webhook) w panelu Przelewy24 – czy jest poprawny, na HTTPS, bez literówek i zbędnych spacji;
- logi WooCommerce i logi w panelu Przelewy24 – zwłaszcza kody 404/500 i komunikaty błędów;
- ewentualne blokady po stronie hostingu – firewall, blokada IP Przelewy24, błędy PHP, limity zasobów;
- konflikty wtyczek lub motywu – tryb Troubleshooting (Health Check & Troubleshooting);
- testowe zamówienie w sandboxie – czy po opłaceniu status zmienia się poprawnie.
Poniżej znajdziesz szczegółowy poradnik z konkretnymi krokami.
Krok 1 – sprawdź konfigurację wtyczki Przelewy24 w WooCommerce
Zacznij od panelu administracyjnego WordPressa:
- Wejdź w Wtyczki → Zainstalowane wtyczki i znajdź wtyczkę odpowiedzialną za Przelewy24 (oficjalny moduł Przelewy24, WP Desk lub inny certyfikowany dostawca).
- Upewnij się, że wtyczka jest włączona oraz w najnowszej wersji.
Następnie konfiguracja w WooCommerce:
- Przejdź do WooCommerce → Ustawienia → Płatności i kliknij metodę Przelewy24.
- Zweryfikuj ID sprzedawcy – musi dokładnie odpowiadać numerowi nadanemu w panelu Przelewy24.
- Sprawdź klucz CRC – skopiuj go ponownie z panelu Przelewy24 i wklej bez dodatkowych spacji.
- Jeśli używasz wersji modułu z kluczami API/sekretem, zweryfikuj również API key/secret.
- Upewnij się, że dane pochodzą z tego samego środowiska, co konfiguracja w panelu P24. Jeśli wtyczka jest w trybie sandbox/testowym, używaj danych z testowego środowiska; jeśli jest w trybie produkcyjnym, wprowadź dane z produkcyjnego konta Przelewy24.
Niewłaściwy ID, klucz CRC lub pomylenie środowisk (sandbox vs produkcja) to jedna z najczęstszych przyczyn braku zmiany statusu.
Krok 2 – zweryfikuj adres powiadomień (IPN/Webhook) w panelu Przelewy24
Kolejny krytyczny element to adres URL powiadomień, pod który Przelewy24 wysyła informacje o opłaconych transakcjach. W panelu Przelewy24 wykonaj:
- Zaloguj się do swojego konta sprzedawcy.
- Wejdź w ustawienia sklepu/integracji (sekcja z danymi sklepu lub ustawieniami modułów WooCommerce).
- Odszukaj pole typu „Adres powiadomień” / „Notification URL” / „IPN URL” / „Webhook URL” (nazwa zależy od wersji panelu).
- Sprawdź, czy adres jest pełny, zaczyna się od
https://i wskazuje dokładnie Twój sklep (bez literówek), czy nie zawiera zbędnych spacji ani starych fragmentów po migracji oraz czy jest zgodny z formatem wymaganym przez wtyczkę (część modułów ustawia go automatycznie – sprawdź dokumentację).
Uwaga (praktyczna): Nowe wersje oficjalnej wtyczki Przelewy24 dla WooCommerce potrafią same ustawiać adres powiadomień w panelu P24. Jeśli przenosiłeś sklep na inną domenę lub zmieniałeś strukturę URL, stary adres w panelu P24 może być nieaktualny – wtedy powiadomienia trafiają „w próżnię” i status się nie zmienia.
Jeśli masz wątpliwości co do prawidłowego adresu IPN/Webhook dla Twojej wersji modułu, sprawdź instrukcję wtyczki (np. dokumentację WP Desk lub oficjalnej wtyczki Przelewy24) – znajdziesz tam przykłady adresów i sposób ich generowania.
Krok 3 – przeanalizuj logi WooCommerce i logi Przelewy24
Bez logów widać tylko objaw. Aby znaleźć przyczynę, sprawdź, co dzieje się w momencie aktualizacji płatności.
Logi WooCommerce
Przejdź do sekcji logów i przeanalizuj zapisy:
- Wejdź w WooCommerce → Status → Logi.
- Z listy wybierz logi związane z Przelewy24 – np.
przelewy24,p24,wpdesk-przelewy24. - Sprawdź wpisy z czasu problematycznych transakcji – szukaj komunikatów błędów (np. weryfikacji podpisu, błędów API, brakujących parametrów) oraz kodów odpowiedzi HTTP (500 lub brak odpowiedzi powodują ponowne próby albo porzucenie aktualizacji).
Logi w panelu Przelewy24
W panelu P24 sprawdź historię powiadomień:
- Odszukaj sekcję logów / historii powiadomień / historii transakcji.
- Zweryfikuj, czy dla problematycznej transakcji P24 wysyłało powiadomienie do Twojego sklepu.
- Sprawdź status powiadomienia i kody błędów (np. 404 lub 500).
Dla najczęstszych kodów odpowiedzi przy powiadomieniach przyda się szybka ściąga:
| Kod | Objaw | Co oznacza | Co zrobić |
|---|---|---|---|
| 404 | Powiadomienie trafia na nieistniejący adres | Błędny URL IPN/Webhook, przeniesiona ścieżka lub blokada regułą (np. w .htaccess) |
Popraw adres powiadomień w panelu P24, sprawdź przekierowania i reguły serwera |
| 500 | Błąd po stronie sklepu | Błędy PHP, konflikt wtyczek, brak zasobów lub błąd aplikacji | Przejrzyj logi PHP, zaktualizuj wtyczki, zwiększ limity, usuń konflikt |
Jeśli logi wskazują na wielokrotne, nieudane próby powiadomień, problem niemal na pewno leży po stronie sklepu (konfiguracja, serwer, konflikt).
Krok 4 – wyklucz problemy z serwerem i certyfikatem SSL
Nawet przy idealnej konfiguracji wtyczki źródłem kłopotów może być infrastruktura – firewall, certyfikat SSL, wersja PHP, limity zasobów.
Certyfikat SSL
Zweryfikuj certyfikat pod kątem następujących kwestii:
- jest ważny i poprawnie zainstalowany na domenie sklepu,
- obejmuje dokładny adres powiadomień podany w panelu Przelewy24,
- nie generuje błędów „Mixed Content” ani zbędnych przekierowań HTTP → HTTPS.
Przelewy24 oczekuje komunikacji wyłącznie po bezpiecznym HTTPS – problemy z SSL mogą blokować odbiór IPN/Webhooków.
Firewall i blokady połączeń
Gdy w logach widzisz błędy połączenia lub brak dostarczonych powiadomień, skontaktuj się z obsługą hostingu i opisz problem („status zamówienia w WooCommerce nie zmienia się po płatności Przelewy24, IPN/Webhook nie dochodzą”). Poproś o: sprawdzenie, czy firewall nie blokuje adresów IP Przelewy24, dodanie ich do whitelisty oraz weryfikację reguł bezpieczeństwa po ewentualnej migracji.
PHP, limity pamięci i czasu wykonywania
Zwróć uwagę na parametry i środowisko uruchomieniowe:
- wersję PHP (WooCommerce rekomenduje aktualne, wspierane wydania),
- logi serwera pod kątem błędów PHP, braku pamięci (
memory_limit) lub przekroczeń czasu (max_execution_time), - ewentualną potrzebę zwiększenia limitów pamięci i czasu wykonywania oraz aktualizacji PHP do wersji zalecanej przez WooCommerce.
Krok 5 – wyklucz konflikty wtyczek i motywu
Częstą przyczyną problemów są konflikty z innymi wtyczkami (bezpieczeństwo, cache, optymalizacja) lub z motywem. Najbezpieczniej przetestować to w trybie kontrolowanym:
- Zainstaluj wtyczkę Health Check & Troubleshooting z repozytorium WordPress.
- Włącz tryb Troubleshooting (działa tylko dla administratora – klienci widzą normalny sklep).
- W tym trybie wyłącz wszystkie wtyczki poza WooCommerce i Przelewy24, a motyw przełącz na domyślny (np. Storefront lub Twenty Twenty‑Four).
- Złóż testowe zamówienie i opłać je przez Przelewy24.
- Sprawdź, czy status zamówienia zmienia się poprawnie. Jeśli tak – oznacza to konflikt z inną wtyczką lub motywem; jeśli nie – problem leży raczej w konfiguracji P24, serwerze lub samej wtyczce.
Dalsze kroki przy konflikcie:
- W trybie Troubleshooting włączaj kolejne wtyczki pojedynczo, za każdym razem robiąc testową płatność, aż znajdziesz tę, która powoduje błąd.
- Zwróć szczególną uwagę na wtyczki:
- bezpieczeństwa – firewall, blokada XML-RPC, filtrowanie żądań POST,
- cache / CDN – agresywne cache’owanie, blokowanie ścieżek,
- modyfikujące URL-e – przekierowania, skracanie adresów.
- Jeśli problem pojawia się po włączeniu Twojego motywu – możliwe, że motyw nadpisuje szablony WooCommerce lub wprowadza reguły blokujące poprawne działanie modułu płatności.
Krok 6 – upewnij się, że używasz właściwych wersji i środowiska (sandbox/produkcja)
Zdarza się, że wszystko jest „prawie” dobrze, ale sklep działa w sandboxie, a konto w P24 jest produkcyjne (lub odwrotnie), albo używasz starej wersji modułu, która nie obsługuje aktualnego API Przelewy24.
Sprawdź:
- W ustawieniach wtyczki Przelewy24 – pozycję przełącznika „Tryb testowy / sandbox” względem środowiska w panelu P24.
- Czy korzystasz z aktualnej wersji modułu WooCommerce zalecanej przez Przelewy24 (sekcja „Do pobrania” na ich stronie).
- Czy WordPress i WooCommerce są aktualne – nowsze wersje często poprawiają obsługę Webhooków i zabezpieczenia.
Po każdej aktualizacji (wtyczki, WooCommerce, motywu):
- Zrób testowe zamówienie i opłać je w środowisku sandbox lub na niewielką kwotę na produkcji.
- Sprawdź, czy status zamówienia się zmienia oraz czy klient otrzymuje mailowe potwierdzenie.
Krok 7 – zrób kompletne testy ścieżki zakupowej
Test w sandboxie
W trybie testowym Przelewy24 wykonaj pełny scenariusz:
- Włącz tryb sandbox w ustawieniach wtyczki.
- Złóż testowe zamówienie w sklepie (z prawdziwym adresem e‑mail, aby odebrać powiadomienia).
- W P24 wybierz dowolną metodę – sandbox zaakceptuje każdą.
- Po zakończeniu płatności sprawdź, czy zamówienie zmieniło status na „W trakcie realizacji” lub „Zrealizowane” oraz czy klient otrzymał potwierdzenie mailowe.
Test na produkcji
Po potwierdzeniu w sandboxie:
- Przełącz wtyczkę na produkcję (zgodnie z instrukcją modułu i panelu P24).
- Złóż niewielkie, „prawdziwe” zamówienie i opłać je normalnie.
- Sprawdź statusy zamówienia i maile jak wyżej.
Regularne, cykliczne testy po aktualizacjach pomagają wychwycić problemy, zanim zgłoszą je klienci.
Typowe przyczyny braku zmiany statusu płatności (jak je rozpoznać i naprawić)
Najczęstsze scenariusze wraz z objawami i szybkim remedium:
| Przyczyna | Objaw | Rozwiązanie |
|---|---|---|
| Błędny adres IPN/Webhook w P24 | Błędy 404 w logach P24, powiadomienia kierowane na starą domenę | Popraw adres powiadomień na aktualny adres sklepu i wymuś HTTPS |
| Nieprawidłowy ID sprzedawcy / klucz CRC / środowisko | Błędy weryfikacji podpisu w logach WooCommerce | Skopiuj ponownie ID, klucz CRC i klucze API; upewnij się, że pochodzą z właściwego (testowego lub produkcyjnego) konta P24 |
| Blokada po stronie serwera (firewall, WAF) | Brak odpowiedzi lub błędy połączenia w logach P24 | Poproś hosting o whitelistę IP Przelewy24 i weryfikację reguł zabezpieczeń |
| Błędy PHP lub brak zasobów | Kod 500 w logach P24, „fatal errors” w logach PHP | Przejrzyj logi PHP, zaktualizuj PHP, zwiększ memory_limit i max_execution_time |
| Konflikt wtyczek lub motywu | W trybie „gołego” WooCommerce działa; po włączeniu konkretnej wtyczki/motywu – przestaje | Ustal konfliktującą wtyczkę/motyw w trybie Troubleshooting, dostosuj konfigurację lub zamień rozszerzenie |
| Stara wersja wtyczki Przelewy24/WooCommerce | Problemy po zmianach po stronie P24, niekompatybilność z API | Zaktualizuj moduł z oficjalnego źródła, zaktualizuj WooCommerce i WordPress |
Co napisać do supportu (Przelewy24 / hosting / developer)
Do supportu Przelewy24
W sekcji wsparcia technicznego modułów na stronie Przelewy24 możesz zgłosić problem z WooCommerce. W zgłoszeniu podaj:
- ID sprzedawcy i nazwę sklepu,
- datę i godzinę przykładowej transakcji oraz jej numer w P24 i WooCommerce,
- informację, czy status w P24 to „zakończona/rozliczona”, a w WooCommerce pozostaje „Oczekuje na płatność”,
- zrzuty ekranu lub treść logów (historia powiadomień P24 oraz logi WooCommerce dla modułu Przelewy24),
- wersje środowiska: WordPress, WooCommerce, moduł Przelewy24, PHP.
Takie dane pozwalają wsparciu szybciej wskazać, czy problem dotyczy konfiguracji, modułu czy serwera.
Do hostingu
W zgłoszeniu do hostingu uwzględnij:
- krótki opis: brak zmiany statusu zamówienia po płatności Przelewy24, błędy IPN/Webhook,
- dane przykładowej transakcji (czas, URL powiadomień),
- prośbę o sprawdzenie firewalla (whitelistę IP Przelewy24) oraz analizę logów serwera pod kątem błędów PHP i ograniczeń zasobów.
Do developera / administratora WordPress
Jeśli korzystasz z zewnętrznego wsparcia technicznego, przekaż:
- wyniki testów z trybu Health Check & Troubleshooting – które wtyczki powodują konflikt,
- logi WooCommerce i P24 z konkretnymi przykładami błędów,
- informację, czy problem pojawił się po konkretnej aktualizacji (motywu, wtyczki, WooCommerce).
Dobre praktyki na przyszłość
Żeby podobne problemy z Przelewy24 i WooCommerce nie wracały, pamiętaj o poniższych zasadach:
- regularnie aktualizuj WordPress, WooCommerce, wtyczkę Przelewy24 i PHP – zgodnie z zaleceniami twórców,
- po każdej większej aktualizacji lub migracji przetestuj całą ścieżkę zakupową (zamówienie → płatność → powiadomienie klienta → zmiana statusu),
- nie zmieniaj ręcznie struktury URL powiadomień bez wiedzy, jak działają – korzystaj z adresów sugerowanych przez moduł,
- unikaj wtyczek, które agresywnie blokują ruch HTTP, jeśli nie potrafisz poprawnie skonfigurować wyjątków dla Webhooków,
- regularnie sprawdzaj logi WooCommerce i panel Przelewy24, aby szybko wykryć nowe błędy.