Blueberry Studio
Blue Heavy Weight: dopłata za ciężkie produkty
Moduł automatycznie wykrywa ciężkie produkty w koszyku, liczy ile paczek trzeba wysłać i ustawia koszt wysyłki na liczbę paczek × stawka kuriera: osobno dla każdego przewoźnika. Ta instrukcja tłumaczy instalację, konfigurację i raport dopłat.
blueheavyweight • v2.2.3 • PrestaShop 1.7
blueheavyweight_ps9 • v3.1.1 • PrestaShop 8 / 9
W jednym zdaniu: jeśli produkt waży więcej niż ustalony próg (domyślnie 50% maks. wagi paczki),
moduł traktuje go jako „ciężki”, wylicza liczbę potrzebnych paczek i mnoży ją przez stawkę za paczkę
wybranego kuriera. Koszt wysyłki staje się wtedy wyłącznie tą kwotą (moduł nie dokłada jej do standardowej stawki kuriera).
Dwie wersje modułu, wybierz właściwą:
| Sklep | Moduł | Plik ZIP |
| PrestaShop 1.7.x |
blueheavyweight |
Paczka z katalogiem blueheavyweight/ |
| PrestaShop 8.x / 9.x |
blueheavyweight_ps9 |
Paczka z katalogiem blueheavyweight_ps9/ |
Na jednym sklepie instalujesz tylko jedną wersję. Nie instaluj obu naraz, logika jest ta sama, ale moduły są dostosowane do wersji PrestaShop.
1.Jak działa kalkulacja
- Moduł bierze wagę każdego produktu w koszyku (pole „Waga” z katalogu PrestaShop).
- Filtruje „ciężkie” produkty: te, których waga przekracza próg:
max waga paczki × próg %.
Przy ustawieniach domyślnych: 30 kg × 50% = 15 kg.
- Liczy paczki dla każdego ciężkiego produktu:
- Jeśli waga ≤ max paczki, sprawdza, ile sztuk zmieści się w jednej paczce, i dzieli ilość w koszyku.
- Jeśli waga > max paczki, każda sztuka to osobna paczka.
- Mnoży liczbę paczek × stawka: bierze koszt za paczkę przypisany do wybranego kuriera (albo globalny fallback).
- Ustawia koszt wysyłki na wynik tego mnożenia, zastępuje standardową stawkę kuriera PrestaShop, nie dodaje do niej.
Przy 5 ciężkich produktach i stawce 10 zł/paczka klient płaci 50 zł za wysyłkę, a nie np. 30 zł (kurier) + 50 zł (dopłata).
2.Przykład liczenia dopłaty
Ustawienia: próg 50%, max paczka 30 kg, koszt 25 zł/paczka, kurier z tą stawką.
Klient dodaje do koszyka 4 szt. produktu ważącego 18 kg każda:
| Krok | Wynik |
| Próg ciężkiego produktu | 30 × 50% = 15 kg |
| Czy 18 kg jest „ciężkie”? | Tak (18 > 15) |
| Ile sztuk w jednej paczce? | floor(30 ÷ 18) = 1 szt. |
| Potrzebne paczki | 4 szt. ÷ 1 = 4 paczki |
| Koszt wysyłki | 4 × 25 zł = 100 zł (cały koszt dostawy, nie dokładka) |
Dopłata liczy się per koszyk i per kurier: jeśli dla DHL ustawisz 25 zł, a dla InPost 18 zł,
klient zobaczy inną kwotę po zmianie metody dostawy.
3.Instalacja / aktualizacja
- Zaloguj się do panelu administracyjnego sklepu.
- Wejdź w Moduły → Menedżer modułów.
- Kliknij „Prześlij moduł” i wskaż plik ZIP z właściwą wersją (
blueheavyweight lub blueheavyweight_ps9).
- Jeśli moduł jest nowy, kliknij „Zainstaluj”. Przy aktualizacji pliki zostaną podmienione automatycznie.
- PrestaShop 8 / 9: moduł instaluje override klasy
Cart, to normalne. Po instalacji wyczyść cache
(Zaawansowane → Wydajność → Wyczyść pamięć podręczną).
- PrestaShop 1.7: moduł współpracuje z
orderfees_shipping (v1.23+) przez hook
actionCartGetPackageShippingCost, upewnij się, że ten moduł jest zainstalowany i włączony.
- Wejdź w Konfiguruj modułu i ustaw parametry (patrz pkt 4).
Ważne przy PrestaShop 8 / 9: jeśli wcześniej był zainstalowany stary moduł blueheavyweight
(wersja z hackiem gift-wrapping), odinstaluj go przed instalacją blueheavyweight_ps9.
Na sklepie PS 8/9 używaj wyłącznie wersji _ps9.
4.Konfiguracja modułu
Moduły → Menedżer modułów → Blue Heavy Weight → Konfiguruj
| Ustawienie | Co robi | Domyślnie |
| Moduł włączony |
Globalny przełącznik, wyłączenie zatrzymuje naliczanie dopłat. |
Tak |
| Próg wagi (%) |
Procent maks. wagi paczki, powyżej którego produkt uznawany jest za „ciężki”. |
50% |
| Maks. waga paczki (kg) |
Limit wagi jednej paczki, baza do liczenia paczek i progu. |
30 kg |
| Koszt za dodatkową paczkę |
Globalna stawka dopłaty, gdy kurier nie ma własnej ceny w tabeli. |
25,00 zł |
| Szanuj darmową wysyłkę |
Gdy koszyk ma regułę z darmową wysyłką, moduł nie nalicza kosztu za ciężkie produkty. |
Nie |
| Próg „pierwsza paczka gratis” tylko PS 1.7 |
Gdy wartość produktów w koszyku ≥ tej kwoty, od dopłaty odejmowana jest stawka za jedną paczkę. |
99,00 zł |
Po każdej zmianie ustawień warto wyczyścić cache sklepu i sprawdzić koszyk testowy z ciężkim produktem.
5.Pierwsza paczka gratis (PS 1.7)
Od wersji 2.2.3 moduł blueheavyweight (PrestaShop 1.7) ma opcję progu wartości koszyka.
Gdy suma produktów (bez wysyłki) osiągnie ustawiony próg, klient dostaje jedną paczkę gratis,
od końcowej dopłaty odejmowana jest stawka za jedną paczkę wybranego kuriera.
Przykład: 4 paczki × 25 zł = 100 zł, koszyk ≥ 99 zł → klient płaci 75 zł (100 − 25).
W koszyku widoczna jest linia „Pierwsza paczka gratis: −X zł”, gdy próg jest spełniony.
Funkcja dostępna obecnie w wersji PS 1.7. W module blueheavyweight_ps9 (PS 8/9) nie występuje.
6.Koszty per kurier
W konfiguracji modułu znajdziesz tabelę kurierów. Dla każdego możesz ustawić własną stawkę za paczkę
(np. DHL 25 zł, InPost 18 zł, DPD 22 zł).
- Jeśli kurier ma ustawioną aktywną stawkę > 0, moduł używa jej.
- Jeśli nie, używa globalnego „Koszt za dodatkową paczkę”.
Stawki dotyczą id_carrier w PrestaShop. Po dużej zmianie kurierów (reinstalacja modułu dostawy)
sprawdź, czy przypisania w tabeli modułu nadal pasują do aktualnych metod wysyłki.
7.Waga produktów w katalogu
Moduł bazuje wyłącznie na polu Waga produktu w PrestaShop. Bez poprawnej wagi dopłata nie zadziała.
- Wejdź w Katalog → Produkty, edytuj produkt.
- W zakładce Szczegóły / Wysyłka uzupełnij pole Waga (w kg).
- Zapisz produkt. Dla wariantów z różną wagą ustaw wagę na poziomie kombinacji.
Produkt z wagą 0 lub pustą jest ignorowany, moduł go nie traktuje jako ciężki, nawet jeśli fizycznie jest duży.
8.Co widzi klient
- W koszyku i przy checkoutcie koszt wysyłki to liczba paczek × stawka (gdy są ciężkie produkty).
- Moduł może pokazać informację o dopłacie (lista ciężkich produktów, liczba paczek, kwota).
- Po zmianie kuriera kwota dopłaty przelicza się automatycznie, jeśli kurierzy mają różne stawki.
- Dopłata jest częścią kosztu dostawy, nie osobną pozycją w zamówieniu (chyba że motyw sklepu inaczej to prezentuje).
9.Podsumowanie dopłat (panel)
Od wersji 2.2.0 (PS 1.7) i 3.1.0 (PS 8/9) w konfiguracji modułu jest sekcja
„Podsumowanie dopłat”. Rejestruje dopłaty zrealizowanych zamówień.
| Element | Opis |
| KPI na górze | Suma dopłat, liczba paczek i liczba zamówień w wybranym okresie. |
| Filtr dat | Od–do, ogranicza raport do interesującego zakresu. |
| Podział miesięczny | Sumy dopłat wg miesięcy. |
| Według kuriera | Ile dopłaty wygenerowała każda metoda dostawy. |
| Lista zamówień | Konkretne zamówienia z kwotą dopłaty, liczbą paczek i kurierem. |
Log powstaje przy składaniu zamówienia (hook actionValidateOrder). Zamówienia sprzed aktualizacji modułu
mogą nie mieć wpisów, to normalne; od momentu aktualizacji wszystko jest rejestrowane.
10.Najczęstsze pytania i problemy
Koszt wysyłki jest za wysoki (np. stawka kuriera + dopłata)
- To był błąd w starszych wersjach, moduł sumował standardową wysyłkę z dopłatą. Od 3.1.1 (PS 8/9)
i 2.2.2+ (PS 1.7) koszt to wyłącznie liczba paczek × stawka.
- Zaktualizuj moduł i wyczyść cache sklepu.
Dopłata się nie pojawia mimo ciężkiego produktu
- Sprawdź, czy moduł jest włączony w konfiguracji.
- Sprawdź wagę produktu w katalogu, musi być > 0 i powyżej progu (domyślnie > 15 kg przy 30 kg / 50%).
- Wyczyść cache (Zaawansowane → Wydajność).
- Sprawdź, czy w koszyku nie ma reguły darmowej wysyłki i opcja „Szanuj darmową wysyłkę” jest włączona.
Po instalacji błąd 500 lub dziwny koszt wysyłki
- Wyczyść cache i sprawdź, czy override
Cart został poprawnie zainstalowany
(Zaawansowane → Informacje → Overrides).
- Jeśli inny moduł też nadpisuje
Cart::getPackageShippingCost, może być konflikt override,
skontaktuj się z nami, połączymy logikę.
- Na PS 1.7 sprawdź, czy działa moduł orderfees_shipping (v1.23+), bez niego dopłata nie zostanie naliczona.
Czy dopłata działa z darmową wysyłką?
- Domyślnie tak: dopłata nalicza się nawet przy promocji „darmowa dostawa”.
- Jeśli chcesz ją wyłączać przy darmowej wysyłce, włącz opcję „Szanuj darmową wysyłkę”.
Czy mogę mieć różne stawki dla kurierów?
- Tak: w tabeli kurierów w konfiguracji modułu. Brak indywidualnej stawki = globalny koszt za paczkę.
Odinstalowanie modułu
- Odinstalowanie usuwa override, tabele modułu i ustawienia. Koszty wysyłki wrócą do standardowych PrestaShop.
- Historia dopłat z raportu zostanie usunięta wraz z tabelą logów.