PS PrestaShop Początkujący

dfproforma: automatyczne generowanie faktur proforma

Generuj automatycznie faktury proforma w PDF w PrestaShop 8 na podstawie statusów zamówienia, z wysyłką e-mail, pobieraniem po stronie klienta i pełną obsługą w back office.

Zaktualizowano Wersja modułu 1.0.2

Prezentacja

dfproforma automatyzuje generowanie faktur proforma w PrestaShop 8. Gdy tylko zamówienie osiągnie skonfigurowany status, moduł tworzy spersonalizowany plik PDF (logo, numeracja, wielojęzyczna stopka) i udostępnia go klientowi w jego koncie. Ręczne generowanie z poziomu karty zamówienia pozostaje dostępne w każdej chwili.

Główne zastosowanie: kontekst B2B, w którym klient musi otrzymać proformę, zanim potwierdzi płatność albo uzyska wewnętrzną akceptację wydatku.

Instalacja

  1. W back office PrestaShop przejdź do Moduły > Menedżer modułów.
  2. Kliknij Wgraj moduł i wybierz plik dfproforma.zip.
  3. Kliknij Zainstaluj. Tabele SQL są tworzone automatycznie.
  4. Moduł pojawia się na liście pod nazwą Proforma Invoice Generator.
Zgodność: PrestaShop od 8.0 do 8.x, PHP od 7.4 do 8.3, multistore.

Konfiguracja ogólna

Wejdź w konfigurację przez Moduły > Menedżer modułów > dfproforma > Konfiguruj.

Statusy wyzwalające

Zaznacz statusy zamówienia, które mają wyzwalać automatyczne generowanie proformy. Gdy tylko zamówienie przejdzie w jeden z tych statusów, plik PDF zostaje utworzony i zapisany na serwerze.

Zalecenie: wyzwalaj na statusie Płatność zaakceptowana przy standardowym przepływie albo na Oczekiwanie na płatność w kontekście B2B, gdzie proforma poprzedza płatność.

Logo w PDF

Wgraj logo dedykowane proformom (akceptowane formaty: PNG, JPG). Jeśli pole pozostanie puste, domyślnie używane jest logo sklepu.

Załącznik do e-maila

Włącz opcję Dołącz proformę do e-maili potwierdzających, aby plik PDF był automatycznie załączany do e-maili zamówienia (order_conf, bankwire, cheque, payment).

Numeracja proform

Numerację konfiguruje się osobno dla każdego zainstalowanego języka. Dla każdego języka:

  • Prefiks: tekst dodawany przed numerem (na przykład PROFORMA, PRO).
  • Numer początkowy: liczba całkowita, od której zaczyna się licznik (na przykład 1 albo 1000).
  • Liczba cyfr: długość licznika z zerami wiodącymi (na przykład 6 daje 000001).

Przykład: prefiks PROFORMA, początek 1, 6 cyfr daje pierwszą proformę o numerze PROFORMA-000001.

W trybie multistore numeracja jest odizolowana per sklep: klucz złożony proforma_number + id_shop gwarantuje unikalność bez duplikatów między sklepami.

Stopka PDF

Wpisz tekst stopki dla każdego aktywnego języka. Ten tekst pojawia się na dole każdej wygenerowanej proformy w odpowiednim języku.

Dla polskiego sklepu w stopce warto umieścić dane rejestrowe (NIP, REGON, numer KRS przy spółkach) oraz adnotację, że dokument nie jest fakturą VAT i nie stanowi podstawy do odliczenia podatku. Proforma nie jest dokumentem księgowym w rozumieniu polskich przepisów o podatku od towarów i usług.

Ręczne generowanie z back office

Na każdej karcie zamówienia w panelu bocznym pojawia się karta Faktura proforma:

  • Jeśli proforma istnieje: bezpośredni link do pobrania pliku PDF.
  • Jeśli proformy nie ma: przycisk Wygeneruj proformę, który tworzy ją natychmiast, niezależnie od statusu zamówienia.

Pobieranie przez klienta

Klient ma dostęp do swoich proform z poziomu konta:

  • Strona szczegółów zamówienia: przycisk Pobierz proformę pojawia się bezpośrednio pod informacjami o zamówieniu.
  • Historia zamówień: linki do proform są wstawiane przez JavaScript, bez dodatkowego żądania AJAX (dodane w wersji 1.0.2).

Dostęp jest chroniony kluczem bezpieczeństwa zamówienia (secure_key): klient może pobrać wyłącznie własne proformy.

Struktura pliku PDF

Każda wygenerowana proforma zawiera:

  • Numer proformy (zgodny ze skonfigurowaną numeracją)
  • Datę wygenerowania
  • Logo sklepu (albo logo własne)
  • Dane sklepu i dane kupującego
  • Tabelę produktów z ilościami i cenami jednostkowymi netto i brutto
  • Sumy (netto, VAT, brutto, koszty dostawy)
  • Spersonalizowaną stopkę w języku zamówienia

Multistore

dfproforma jest natywnie zgodny z trybem multistore w PrestaShop 8:

  • Konfiguracja (statusy, logo, numeracja, stopka) jest niezależna dla każdego sklepu.
  • Pliki PDF są zapisywane w osobnym katalogu dla każdego sklepu.
  • Numeracja jest unikalna dla kombinacji numeru i sklepu.

Odinstalowanie

Odinstalowanie usuwa tabelę SQL df_proforma i wszystkie klucze konfiguracji z prefiksem DFPROFORMA_. Wygenerowane wcześniej pliki PDF pozostają na serwerze.

Historia zmian

  • v1.0.2: integracja z historią zamówień przez hook actionFrontControllerSetMedia, wyświetlanie linków bez dodatkowego żądania AJAX.
  • v1.0.1: drobne poprawki stabilności.
  • v1.0.0: pierwsza wersja, generowanie według statusu, konfigurowalny PDF, załącznik do e-maila, pobieranie przez klienta.
Czy ta strona była pomocna?

Nadal utknąłeś? Napisz do wsparcia