PS PrestaShop Średnio zaawansowany

Częściowa Wysyłka i Automatyczne Zamówienia Zaległe (dfavailsplit)

Instalacja, konfiguracja i zasada działania modułu, który wysyła dostępny stan i automatycznie przenosi resztę do zaległości.

Zaktualizowano Wersja modułu 1.3.4

Przegląd

Ten moduł automatycznie dzieli każde zamówienie według faktycznie dostępnego stanu magazynowego. Dostępne artykuły od razu trafiają do zamówienia gotowego do przygotowania, a artykuły wyczerpane są przenoszone do dedykowanego zamówienia zaległego (backorder). Oba zamówienia mają ten sam numer referencyjny, a suma ich wartości jest ściśle równa zamówieniu oryginalnemu, z podatkami.

Wszystko uruchamia się przy walidacji zamówienia, a ręczny podział wiersz po wierszu jest dostępny na każdej karcie zamówienia.

Instalacja

  1. Wgraj folder dfavailsplit do /modules/ lub zainstaluj archiwum ZIP przez Moduły > Menedżer modułów > Wgraj moduł.
  2. Kliknij Zainstaluj.
  3. Otwórz konfigurację przez Konfiguruj.

Przy instalacji moduł tworzy dedykowany status zamówienia „Oczekuje na uzupełnienie zapasów (Backorder)” (kolor pomarańczowy). Ten status i historia podziałów są zachowywane przy odinstalowaniu, aby chronić Twoje dane.

Konfiguracja

Przejdź do Moduły > Menedżer modułów > dfavailsplit > Konfiguruj.

Włącz podział automatyczny

Główny przełącznik. Wyłączony: żadne zamówienie nie jest dzielone automatycznie; podział ręczny pozostaje dostępny na karcie zamówienia.

Status zamówienia backorder

Status stosowany do zamówienia z wyczerpanymi artykułami. Domyślnie status „Oczekuje na uzupełnienie zapasów (Backorder)” utworzony przy instalacji.

Nadpisanie statusu zamówienia gotowego do wysyłki

Opcjonalne. Włącz, aby wymusić konkretny status (na przykład „W przygotowaniu”) na zamówieniu gotowym do wysyłki. Wyłączone: zamówienie zachowuje bieżący status.

Darmowa wysyłka zamówienia zaległego

Domyślnie włączona. Koszty wysyłki pozostają na zamówieniu gotowym do wysyłki; zaległe jest dostarczane bez opłat, bo klient zapłacił za wysyłkę tylko raz.

Podział wierszy częściowych

Domyślnie włączony. Wiersz częściowo dostępny (3 na stanie z 5 zamówionych) jest dzielony na 3 wysłane + 2 zaległe. Wyłączony: cały wiersz przechodzi do zaległości.

E-mail backorder

Wysyła klientowi e-mail w jego języku (FR/EN/ES/DE/IT/PL w zestawie, angielski jako zapasowy) z informacją, że zamówienie zostanie wysłane w kilku częściach.

Ponowne generowanie faktur po podziale

Domyślnie wyłączone. Zostaw wyłączone, aby wystawiać faktury w momencie rzeczywistej wysyłki każdego zamówienia. Włączone: moduł ponownie generuje faktury obu zamówień po podziale, jeśli bieżący status tego wymaga.

Rejestrowanie

Zapisuje każdą operację podziału w logach PrestaShop dla identyfikowalności.

Jak działa podział

Podział automatyczny uruchamia się zaraz po walidacji zamówienia (hook actionValidateOrderAfter, z zapasowym actionOrderStatusPostUpdate dla przepływów, które go nie emitują). Moduł wyprowadza ilość możliwą do wysłania w każdym wierszu z rzeczywistego niedoboru stanu, agregowanego po produkcie i wariancie. Ten model pozostaje poprawny nawet dla podziału ręcznego uruchomionego kilka dni później, gdy stan się zmienił.

Występują trzy przypadki:

  • Wszystko jest dostępne: brak podziału. Zamówienie idzie dalej (możliwe wymuszenie statusu).
  • Wszystko jest wyczerpane: brak podziału, całe zamówienie przechodzi do statusu backorder.
  • Zamówienie mieszane: zamówienie oryginalne zachowuje część gotową do wysyłki (wysyłka, rabaty, opakowanie, płatność); dla reszty tworzone jest nowe zamówienie zaległe, z tym samym numerem referencyjnym.

Sumy (produkty, wysyłka, rabaty, opakowanie, waga) i podział VAT są przeliczane co do grosza, wiersz po wierszu. Suma obu zamówień jest dokładnie równa zamówieniu oryginalnemu, z podatkami, również na ponownie wygenerowanych fakturach i w raportach podatkowych. Płatność, agregowana po numerze referencyjnym, uzgadnia się natywnie.

Podział jest atomowy: wszystkie zmiany (utworzenie zaległego, przeniesienie wierszy, sumy, przewoźnik, faktury) są objęte transakcją SQL. Błąd w trakcie wycofuje wszystko, nigdy zamówienie podzielone w połowie.

Podział ręczny z karty zamówienia

Na każdej niepodzielonej karcie zamówienia panel „Podział według dostępności” pokazuje tabelę wiersz po wierszu: produkt, zamówiona ilość, aktualny stan i ilość do zaległości. Pola są wstępnie wypełnione sugestią analizy stanu; dostosuj je dowolnie, 0 pozostawia wiersz na zamówieniu oryginalnym, po czym kliknij „Podziel to zamówienie teraz”.

  • Dostępny nawet przy wyłączonym podziale automatycznym.
  • Zamówienie już podzielone nigdy nie może zostać podzielone drugi raz.
  • Wybór jest odrzucany, jeśli całkowicie opróżniłby jedno z dwóch zamówień.
  • Wiersze personalizowane i ustawienie „podział wierszy częściowych” są respektowane.

Na karcie zamówienia (back office)

Po wykonaniu podziału panel łączy oba zamówienia: z zamówienia gotowego do wysyłki odsyła do powiązanego zaległego i odwrotnie. Wspólny numer referencyjny jest pokazywany w obu kierunkach.

Strona potwierdzenia i e-mail do klienta

Na stronie potwierdzenia zamówienia blok wymienia artykuły, które zostaną wysłane osobno, z przypomnieniem wspólnego numeru referencyjnego i wysyłki opłaconej tylko raz. Blok działa z każdym motywem: opiera się na trzech kotwicach potwierdzenia (displayOrderConfirmation, displayOrderConfirmation1, displayOrderConfirmation2) i ustala zamówienie z adresu URL potwierdzenia z weryfikacją klucza bezpieczeństwa, nigdy nie wyświetlając się dwa razy.

Jeśli opcja e-mail jest aktywna, klient otrzymuje też e-mail w swoim języku o wysyłce częściowej i dostawie zaległego bez opłat. Szablony FR, EN, ES, DE, IT i PL znajdują się w folderze mails/ modułu, z angielskim jako zapasowym dla każdego innego języka.

Pierwszy e-mail potwierdzający (pełne zamówienie) wysyła PrestaShop przed podziałem. E-mail backorder modułu informuje następnie klienta o wysyłce w kilku częściach.

Przypadki szczególne i ograniczenia

  • Produkty wirtualne nigdy nie trafiają do zaległości.
  • Produkty w zaawansowanym zarządzaniu stanem (ASM) są wykluczone z podziału i pozostają na zamówieniu gotowym do wysyłki.
  • Wiersz personalizowany nie jest dzielony: trafia w całości do jednego z dwóch zamówień.
  • Jeśli zarządzanie stanem jest wyłączone w PrestaShop, podział nie jest wykonywany.

Rozwiązywanie problemów

Żadne zamówienie nie jest dzielone

Sprawdź, czy podział jest włączony, czy zarządzanie stanem PrestaShop jest aktywne i czy produkty nie są wirtualne ani w zaawansowanym zarządzaniu stanem. Podział automatyczny następuje tylko przy zamówieniu mieszanym (jednocześnie dostępne i wyczerpane). W każdym innym przypadku użyj podziału ręcznego na karcie zamówienia.

Zamówienie zaległe pokazuje koszty wysyłki

Włącz opcję „Darmowa wysyłka zamówienia zaległego”. Koszty pozostają wtedy tylko na zamówieniu gotowym do wysyłki.

Blok nie pojawia się na stronie potwierdzenia

Od wersji 1.3.4 blok wyświetla się z każdym motywem dzięki trzem kotwicom potwierdzenia. Jeśli używasz starszej wersji, zaktualizuj moduł.

Zgodność

PrestaShop 8.x i 9.x, multisklep, bez override’ów i bez Composera.

Czy ta strona była pomocna?

Nadal utknąłeś? Napisz do wsparcia