Twój koszyk

Twój koszyk zakupów jest pusty!

Znajdź swój moduł
Natychmiastowy dostęp do plików

Spis treści

  1. Czym jest moduł
  2. Po co powstał
  3. Jaki problem rozwiązuje
  4. Wymagania
  5. Instalacja
  6. Konfiguracja
  7. Obsługa – strona klienta
  8. Obsługa – panel administracyjny
  9. Powiadomienia e-mail
  10. Statusy zwrotów
  11. Rozwiązywanie problemów
  12. Hooki dla deweloperów

1. Czym jest moduł

DC One Click Return to wtyczka WordPress/WooCommerce, która umożliwia klientom składanie wniosków o odstąpienie od umowy (zwrot towaru) bezpośrednio w sklepie internetowym.

Moduł zapewnia:

  • publiczny formularz zwrotów dostępny pod dedykowaną stroną sklepu,
  • możliwość dodania linku „Formularz zwrotów” do menu nawigacyjnego (sekcja endpointów WooCommerce),
  • dwuetapowy proces składania oświadczenia o odstąpieniu (zgodny z wymaganiami dyrektywy UE),
  • obsługę klientów zalogowanych i gości (bez konieczności zakładania konta),
  • wybór konkretnych produktów z zamówienia do zwrotu (nie trzeba zwracać całego zamówienia),
  • panel administracyjny „Zwroty” w menu WooCommerce do zarządzania wnioskami,
  • automatyczne powiadomienia e-mail dla klienta i sklepu.

Zobacz wideo z instalacji i obsługi modułu:


2. Po co powstał

Moduł powstał jako odpowiedź na nowe wymagania prawne Unii Europejskiej dotyczące praw konsumenta w handlu internetowym.

Od 19 czerwca 2026 roku obowiązują przepisy wynikające z Dyrektywy (UE) 2023/2673, która zmienia dyrektywę o prawach konsumenta (2011/83/UE). Sklepy internetowe sprzedające konsumentom w UE muszą udostępnić elektroniczną funkcję odstąpienia od umowy.

Wcześniej w wielu sklepach odstąpienie od umowy wymagało:

  • pobrania formularza PDF,
  • wysłania e-maila na ogólny adres sklepu,
  • telefonu do obsługi klienta,
  • logowania się do konta (co prawnie nie może być warunkiem).

DC One Click Return implementuje ten proces w WooCommerce w sposób prosty dla klienta i przejrzysty dla właściciela sklepu.


3. Jaki problem rozwiązuje

Problem prawny

Dyrektywa wymaga, aby konsument mógł odstąpić od umowy zawartej online również online – bez zbędnych przeszkód. Formularz musi być:

  • łatwo dostępny (np. w menu sklepu),
  • dostępny bez logowania,
  • proces dwuetapowy: oświadczenie + potwierdzenie,
  • z automatycznym potwierdzeniem otrzymania wniosku (np. e-mail).

Problem operacyjny

Bez dedykowanego modułu zwroty często trafiają na różne kanały (e-mail, telefon, formularz kontaktowy), co utrudnia:

  • śledzenie statusu wniosku,
  • powiązanie zwrotu z konkretnym zamówieniem,
  • informowanie klienta o postępie,
  • spełnienie wymogu potwierdzenia na trwałym nośniku.

Co daje moduł w praktyce

  • Jeden, spójny proces zwrotu dla wszystkich klientów.
  • Weryfikacja zamówienia po numerze i e-mailu (dla gości) lub wybór z listy (dla zalogowanych).
  • Możliwość zwrotu wybranych produktów z zamówienia.
  • Centralna lista wniosków w panelu WooCommerce.
  • Automatyczne maile przy złożeniu wniosku i przy zmianie statusu.

4. Wymagania

  • WordPress 6.0 lub nowszy
  • PHP 7.4 lub nowszy
  • WooCommerce 7.0 lub nowszy (aktywna wtyczka)
  • Działająca wysyłka e-mail z serwera (wp_mail) lub plugin SMTP

5. Instalacja

Krok 1 – skopiowanie plików

  1. Skopiuj folder dc_one_click_return do katalogu wp-content/plugins/ na serwerze.
  2. Upewnij się, że główny plik wtyczki to dc-one-click-return.php.

Krok 2 – aktywacja

  1. Wejdź w panel WordPress: Wtyczki.
  2. Znajdź DC One Click Return i kliknij Aktywuj.
  3. Jeśli WooCommerce nie jest aktywny, wtyczka nie uruchomi się i wyświetli komunikat o braku zależności.

Krok 3 – permalinki

  1. Po aktywacji wejdź w Ustawienia → Bezpośrednie odnośniki.
  2. Kliknij Zapisz zmiany (bez konieczności zmiany ustawień).
  3. To odświeża reguły adresów URL w WordPressie.

Krok 4 – strona formularza

Po aktywacji plugin automatycznie tworzy stronę Formularz zwrotów pod adresem:

https://twoja-domena.pl/formularz-zwrotow/

Strona zawiera shortcode [dc_return_form]. Możesz ją edytować w Strony, ale nie usuwaj shortcode’a.

Screen: formularz zwrotów


Krok 5 – link w menu (opcjonalnie, zalecane)

  1. Wejdź w Wygląd → Menu.
  2. Po lewej stronie rozwiń sekcję WooCommerce endpoints (endpointy WooCommerce).
  3. Zaznacz pozycję Formularz zwrotów.
  4. Kliknij Dodaj do menu i zapisz menu.

Link będzie widoczny w nawigacji sklepu i prowadzi do strony formularza zwrotów.


6. Konfiguracja

Plugin nie wymaga osobnej strony ustawień. Domyślne parametry:

  • Termin odstąpienia: 14 dni od daty zrealizowania zamówienia (lub daty utworzenia, jeśli brak daty realizacji).
  • Dopuszczalne statusy zamówień: „W realizacji” (processing) oraz „Zrealizowane” (completed).
  • Adres e-mail sklepu: pobierany z ustawień WooCommerce (adres nadawcy wiadomości e-mail).

Te wartości można zmienić programistycznie przez hooki WordPress (patrz sekcja „Hooki dla deweloperów”).


7. Obsługa – strona klienta

Scenariusz A – klient gość (niezalogowany)

1) Klient wchodzi na stronę formularza zwrotów (z menu lub bezpośredni link).

2) Podaje numer zamówienia (z e-maila potwierdzającego) oraz adres e-mail użyty przy zakupie.

3) Klika Znajdź zamówienie.

4) System weryfikuje dane. Przy błędzie wyświetla komunikat (np. zły numer, zły e-mail, minął termin, niewłaściwy status).

5) Po poprawnej weryfikacji klient widzi podsumowanie zamówienia i listę produktów z checkboxami.

Screen: formularz zwrotów - zaznaczenie produktów do zwrotu

6) Zaznacza produkty, które chce zwrócić (co najmniej jeden).

7) Opcjonalnie dodaje uwagi.

8) Klika Odstąp od umowy tutaj.

Screen: formularz zwrotów - dodanie uwag i wysłanie wniosku

9) Przechodzi do kroku potwierdzenia – widzi podsumowanie wniosku.

Screen: formularz zwrotów - potwierdzenie wysłania wniosku

10) Klika Potwierdź odstąpienie tutaj.

Screen: potwierdzenie wysłania wniosku

11) Otrzymuje potwierdzenie na stronie oraz e-mail z potwierdzeniem odstąpienia.


Scenariusz B – klient zalogowany

  1. Klient wchodzi na stronę formularza zwrotów.
  2. Wybiera zamówienie z listy rozwijanej (widoczne są tylko zamówienia kwalifikujące się do zwrotu).
  3. Strona odświeża się i pokazuje produkty z wybranego zamówienia.
  4. Dalsze kroki jak u gościa: zaznaczenie produktów → oświadczenie → potwierdzenie → e-mail.

Ważne informacje dla klienta

  • Nie trzeba podawać powodu odstąpienia od umowy.
  • Nie trzeba zwracać wszystkich produktów z zamówienia – wybiera się tylko te, od których się odstępuje.
  • Link weryfikacyjny gościa (guest_token) działa tylko w tej samej instalacji sklepu, w której wyszukano zamówienie. Nie można kopiować linku między różnymi sklepami (np. ze stagingu na produkcję).

8. Obsługa – panel administracyjny

Dostęp do listy zwrotów

W panelu WordPress: WooCommerce → Zwroty

Screen - panel admina: link "zwroty"

Lista wniosków

Tabela zawiera:

  • ID wniosku
  • numer powiązanego zamówienia (link do edycji zamówienia)
  • imię i nazwisko klienta (z danych billingowych zamówienia)
  • adres e-mail
  • status wniosku
  • datę złożenia

Screen: lista wniosków

Można filtrować listę po statusie (linki nad tabelą).


Szczegóły wniosku

Kliknij Szczegóły przy wybranym wniosku. Zobaczysz:

  • dane klienta,
  • powiązane zamówienie,
  • listę produktów objętych wnioskiem,
  • uwagi klienta (jeśli podał),
  • datę utworzenia i datę potwierdzenia,
  • formularz zmiany statusu.

Screen: szczegóły wniosku


Zmiana statusu

  1. Wejdź w szczegóły wniosku.
  2. W sekcji „Zmień status” wybierz nowy status z listy.
  3. Kliknij Zapisz status.
  4. Klient automatycznie otrzyma e-mail z informacją o nowym statusie (jeśli status faktycznie się zmienił).

9. Powiadomienia e-mail

Zdarzenie Odbiorca Treść (skrót)
Klient potwierdzi odstąpienie (krok 2) Klient Potwierdzenie otrzymania oświadczenia o odstąpieniu, numer wniosku, zamówienie, produkty
Klient potwierdzi odstąpienie (krok 2) Administrator sklepu Informacja o nowym wniosku z linkiem do panelu
Administrator zmieni status wniosku Klient Informacja o nowym statusie wniosku

E-maile wysyłane są przez standardową funkcję WordPress wp_mail. Jeśli maile nie dochodzą, skonfiguruj plugin SMTP (np. WP Mail SMTP) i sprawdź ustawienia nadawcy w WooCommerce.


10. Statusy zwrotów

Status Znaczenie
Oczekuje na potwierdzenie Wniosek utworzony, klient jeszcze nie przeszedł kroku „Potwierdź odstąpienie” (stan pośredni, rzadko widoczny w panelu)
Potwierdzone Klient złożył i potwierdził oświadczenie o odstąpieniu
Zaakceptowane Sklep zaakceptował wniosek (ustawiane ręcznie przez administratora)
Odrzucone Wniosek odrzucony (ustawiane ręcznie przez administratora)
Zakończone Proces zwrotu zakończony (np. pieniądze zwrócone, towar odebrany)

11. Rozwiązywanie problemów

Strona formularza pokazuje stronę główną zamiast formularza

  • Wejdź w Ustawienia → Bezpośrednie odnośniki i kliknij Zapisz.
  • Sprawdź, czy istnieje strona „Formularz zwrotów” ze shortcode [dc_return_form].
  • Dezaktywuj i ponownie aktywuj wtyczkę.

„Nie znaleziono zamówienia”

  • Sprawdź, czy numer zamówienia pochodzi z tego samego sklepu (nie ze stagingu ani innej instalacji).
  • Użyj numeru widocznego w e-mailu potwierdzającym zamówienie.
  • Sprawdź, czy e-mail jest identyczny z adresem podanym przy składaniu zamówienia.

„Link weryfikacyjny jest nieprawidłowy lub wygasł”

  • Link z parametrem guest_token działa tylko w tej instalacji WordPress, w której wyszukano zamówienie.
  • Wejdź na formularz bez parametrów w URL i wyszukaj zamówienie ponownie.

„Zamówienie ma status …” lub „Minął termin odstąpienia”

  • Zwrot możliwy jest tylko dla zamówień w statusie „W realizacji” lub „Zrealizowane”.
  • Termin odstąpienia wynosi domyślnie 14 dni od daty realizacji (lub utworzenia zamówienia).

Maile nie dochodzą

  • Sprawdź folder SPAM.
  • Skonfiguruj wysyłkę SMTP.
  • Sprawdź adres nadawcy w WooCommerce → Ustawienia → E-maile.

Zalogowany użytkownik nie widzi zamówień na liście

  • Lista pokazuje tylko zamówienia przypisane do konta klienta i kwalifikujące się do zwrotu (status + termin).
  • Zamówienia gościa (bez konta) wyszukuje się przez numer + e-mail.

12. Hooki dla deweloperów

Filtry

// Zmiana liczby dni na odstąpienie (domyślnie 14)
add_filter('dc_ocr_withdrawal_days', function() {
    return 14;
});

// Zmiana statusów zamówień kwalifikujących się do zwrotu
add_filter('dc_ocr_eligible_order_statuses', function($statuses, $order) {
    return array('completed', 'processing');
}, 10, 2);

Akcje

// Po potwierdzeniu odstąpienia przez klienta
add_action('dc_ocr_return_confirmed', function($return_id) {
    // własna logika, np. integracja z ERP
});

// Po zmianie statusu w panelu admina
add_action('dc_ocr_return_status_updated', function($return_id, $new_status, $old_status) {
    // własna logika
});

Shortcode

[dc_return_form] – wyświetla formularz odstąpienia od umowy. Można umieścić na dowolnej stronie, nie tylko na automatycznie utworzonej.


Struktura plików pluginu

dc_one_click_return/
├── dc-one-click-return.php       # główny plik wtyczki
├── includes/
│   ├── class-dc-ocr-post-type.php
│   ├── class-dc-ocr-order-validator.php
│   ├── class-dc-ocr-nav-menu.php
│   ├── class-dc-ocr-frontend.php
│   ├── class-dc-ocr-admin.php
│   └── class-dc-ocr-email.php
├── templates/
│   ├── return-form.php
│   ├── return-confirm.php
│   └── return-success.php
└── assets/
    ├── frontend.css
    ├── frontend.js
    └── admin.css

Napisz opinię

Uwaga: HTML nie jest przetłumaczalny!
Zły
Dobry