# Zbiorcze fakturowanie B2B: dokumentacja

> Prezentacja Zbiorcze fakturowanie łączy wszystkie zamówienia klienta firmowego z danego okresu (domyślnie z minionego miesiąca) w jedną skonsolidowaną fakturę. Zamiast faktury do każdego zamówienia Twoi klienci B2B otrzymują jedną fakturę…

- Strona: <https://www.datafirefly.com/pl/documentation/dfdeferredinvoicing/>
- Język: pl
- Zaktualizowano: 2026-07-30
- Inne języki: [fr](https://www.datafirefly.com/documentation/dfdeferredinvoicing/index.md), [en](https://www.datafirefly.com/en/documentation/dfdeferredinvoicing/index.md), [es](https://www.datafirefly.com/es/documentation/dfdeferredinvoicing/index.md), [de](https://www.datafirefly.com/de/documentation/dfdeferredinvoicing/index.md), [it](https://www.datafirefly.com/it/documentation/dfdeferredinvoicing/index.md), [pt](https://www.datafirefly.com/pt/documentation/dfdeferredinvoicing/index.md), [nl](https://www.datafirefly.com/nl/documentation/dfdeferredinvoicing/index.md)
- Indeks: <https://www.datafirefly.com/pl/documentation/llms.txt>

## Prezentacja

Zbiorcze fakturowanie łączy wszystkie zamówienia klienta firmowego z danego okresu (domyślnie z minionego miesiąca) w jedną skonsolidowaną fakturę. Zamiast faktury do każdego zamówienia Twoi klienci B2B otrzymują jedną fakturę miesięczną, numerowaną sekwencyjnie, z podziałem VAT według stawek i szczegółami zamówienie po zamówieniu. Moduł generuje PDF przez natywny silnik PrestaShop, wysyła go e-mailem i przy okazji usuwa faktury indywidualne z e-maili zamówień kierowanych do klientów firmowych.

Indywidualne faktury PrestaShop nigdy nie są usuwane: pozostają generowane i dostępne w Twoim zapleczu oraz w historii zamówienia. Jedynie e-mail wysyłany do klienta B2B jest odchudzany o indywidualny PDF.

## Instalacja

Zainstaluj moduł jak każdy inny moduł PrestaShop, z poziomu **Moduły > Menedżer modułów > Wgraj moduł**, wysyłając plik ZIP. Przy instalacji moduł tworzy swoje tabele, zakładkę administracyjną i losowy token dla crona. Nie jest wymagana żadna zależność Composer.

## Konfiguracja

Przejdź do **Moduły > Menedżer modułów**, a następnie kliknij **Konfiguruj** obok modułu zbiorczego fakturowania. Strona konfiguracji gromadzi wszystkie ustawienia.

### Grupy klientów B2B

Zaznacz grupę lub grupy klientów traktowanych jako firmowi. Tylko klienci należący do tych grup mają zamówienia konsolidowane, otrzymują fakturę zbiorczą i mają dostęp do strefy „Moje faktury zbiorcze". To ustawienie definiuje Twój zakres B2B.

### Uwzględniane statusy zamówień

Wybierz statusy zamówień, które kwalifikują zamówienie do konsolidacji (domyślnie: płatność zaakceptowana, w przygotowaniu, wysłane, dostarczone). Zamówienie, którego bieżący status nie znajduje się na tej liście, jest pomijane przy generowaniu.

### Dzień generowania

Wybierz dzień miesiąca (od 1 do 28), w którym cron uruchamia generowanie za poprzedni miesiąc. Dzień z zakresu 1-28 gwarantuje, że data istnieje w każdym miesiącu.

### Prefiks i numeracja

Zdefiniuj prefiks numeracji (domyślnie `REC`). Faktury zbiorcze są numerowane sekwencyjnie w formacie `PREFIKS-RRRR-00042`, przez dedykowany licznik. Numery nigdy nie są używane ponownie, nawet po usunięciu faktury.

### Wysyłka automatyczna i czyszczenie e-maili

Dwa przełączniki sterują zachowaniem wysyłki:

- **Automatyczna wysyłka e-mailem**: przy generowaniu (przez cron lub ręcznie) faktura zbiorcza jest wysyłana do klienta z załączonym PDF.
- **Usuwanie faktury indywidualnej z e-maili zamówień**: dla klientów B2B PDF faktury indywidualnej jest usuwany z e-maili zamówień, aby pozostawić tylko jedną czystą wysyłkę, miesięczną fakturę zbiorczą.

### Adnotacje prawne i warunki płatności

Dwa wielojęzyczne pola tekstowe pozwalają dostosować adnotacje prawne (domyślny tekst odwołuje się do art. 289 I-3 francuskiego CGI dotyczącego okresowej faktury zbiorczej; dostosuj go do przepisów właściwych dla Twojej działalności) oraz warunki płatności wyświetlane w stopce faktury. Teksty można wpisać w każdym języku sklepu.

## Automatyzacja przez cron

Automatyczne generowanie opiera się na adresie URL crona chronionym tokenem. Pobierz pełny adres (z tokenem) z panelu informacyjnego na stronie konfiguracji, a następnie zaplanuj go w harmonogramie zadań serwera. Przykładowy wpis crontab dla codziennego uruchomienia:

```
0 6 * * * wget -q -O /dev/null "https://twojsklep.tld/module/dfdeferredinvoicing/cron?token=TWOJ_TOKEN"
```

Cron jest **idempotentny**: generuje fakturę klienta tylko wtedy, gdy nie istnieje ona jeszcze dla danego okresu. Możesz więc uruchamiać go codziennie bez ryzyka, faktyczne przetwarzanie poprzedniego miesiąca wyzwala wyłącznie skonfigurowany dzień generowania.

### Parametry opcjonalne

- `&force=1`: wymusza generowanie niezależnie od dnia miesiąca.
- `&month=6&year=2026`: celuje w konkretny okres (przydatne do ponownego przetworzenia minionego miesiąca).

Odpowiedź jest zwracana w formacie JSON, z liczbą przetworzonych klientów, utworzonych faktur i skonsolidowanych zamówień.

Aby przetestować od razu, otwórz adres crona z `&force=1` w przeglądarce: otrzymasz podsumowanie JSON generowania bez czekania na zaplanowany dzień.

## Codzienne użytkowanie

### Zakładka „Faktury zbiorcze"

Zakładka **Faktury zbiorcze** jest dodawana w menu **Zamówienia**. Wykazuje wszystkie wygenerowane faktury zbiorcze, z numerem, klientem, okresem, liczbą zamówień, sumą brutto i statusem wysyłki e-maila. Każda pozycja pozwala pobrać PDF, ponownie wysłać e-mail lub usunąć fakturę.

### Generowanie ręczne

Na górze tej zakładki panel pozwala ręcznie wygenerować okres (miesiąc i rok, wstępnie ustawione na poprzedni miesiąc) dla wszystkich klientów B2B lub dla wybranego klienta. Przydaje się to do jednorazowego nadrobienia zaległości lub wystawienia faktury klientowi na żądanie.

### Strefa klienta

Klienci firmowi mają w swoim koncie link „Moje faktury zbiorcze", gdzie znajdują i pobierają wszystkie swoje skonsolidowane faktury. Link pojawia się tylko dla klientów należących do skonfigurowanych grup B2B.

## Zawartość faktury zbiorczej

Każda faktura zawiera: dane sklepu i adres rozliczeniowy klienta (nazwa firmy, numer VAT), szczegóły zamówienie po zamówieniu (data, numer, oryginalny numer faktury PrestaShop, kwota), podział VAT według stawek (produkty i koszty wysyłki) z pozycją korygującą zaokrąglenie w razie minimalnej różnicy, następnie sumy netto / VAT / brutto, a na końcu Twoje warunki płatności i adnotacje prawne.

Zamówienia są grupowane według waluty: klient, który zamawiał w dwóch różnych walutach w tym samym okresie, otrzymuje jedną fakturę zbiorczą na walutę.

## Gwarancje i ograniczenia

- **Ochrona przed duplikatami**: każde zamówienie jest zapisywane w tabeli powiązań, gdzie jest unikalne. Zamówienie już skonsolidowane nigdy nie może trafić do innej faktury zbiorczej.
- **Usuwanie**: usunięcie faktury zbiorczej zwalnia jej zamówienia, które znów kwalifikują się do nowej konsolidacji. Usunięty numer nie jest jednak nadawany ponownie.
- **Faktury indywidualne**: pozostają widoczne w historii zamówienia po stronie klienta; odchudzany jest tylko e-mail. Ich ukrycie zepsułoby księgowość PrestaShop.
- **Podział VAT**: rozkład według stawek jest odtwarzany z pozycji zamówienia i dostawy; może być przybliżony w rzadkim przypadku, gdy jeden produkt kumuluje kilka nałożonych podatków.

## Zgodność

Zbiorcze fakturowanie jest zgodne z PrestaShop 8.0 do 9.x, w pojedynczym sklepie i w multisklepie, w pięciu językach katalogu (francuski, angielski, hiszpański, niemiecki, włoski), bez żadnej zależności Composer.
