# Płatność zaliczką: zaliczka przy zamówieniu i reszta przy odbiorze

> Instalacja Zainstaluj moduł w Moduły > Menedżer modułów > Załaduj moduł, wysyłając plik ZIP, albo skopiuj folder dfdeposit do katalogu /modules/ sklepu i kliknij Zainstaluj. Podczas instalacji moduł: tworzy swoje…

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

## Instalacja

Zainstaluj moduł w **Moduły > Menedżer modułów > Załaduj moduł**, wysyłając plik ZIP, albo skopiuj folder `dfdeposit` do katalogu `/modules/` sklepu i kliknij Zainstaluj.

Podczas instalacji moduł:

- tworzy swoje tabele (zaliczki, transakcje Stripe, reguły stawek);
- tworzy pięć statusów zamówień: **Oczekiwanie na zaliczkę**, **Zaliczka otrzymana, pozostała kwota do zapłaty**, **Wezwanie do zapłaty reszty**, **Gotowe do odbioru, reszta do zapłaty** i **Wysłane, reszta do zapłaty**;
- dodaje menu **Zamówienia > Zaliczki** oraz ekran **Stawki zaliczek**, dostępny z tego menu i z konfiguracji;
- rejestruje swoje hooki: metody płatności, strona produktu, koszyk, potwierdzenie zamówienia, konto klienta, strona zamówienia w panelu i faktura PDF.

Przy odinstalowaniu tabele są celowo zachowywane: numeracja faktur zaliczkowych i korygujących musi pozostać ciągła po ponownej instalacji modułu.

## Kontrola konfiguracji

Strona konfiguracji zaczyna się od listy kontroli w kolorze zielonym, pomarańczowym lub czerwonym: gotowa metoda płatności, klucz Stripe zaakceptowany przez Stripe, wciąż aktywny tryb testowy, wpisany sekret webhooka i data ostatniego zdarzenia, ostatnie uruchomienie crona, obecność statusów wysyłających prośbę o dopłatę, status oznaczony jako opłacony wśród nich, dane prawne na fakturach. Popraw każdą czerwoną linię przed rozpoczęciem sprzedaży.

Przycisk **Przetestuj klucz Stripe** odpytuje Stripe kluczem wybranego trybu. Test uruchamia się też automatycznie przy zapisie, gdy klucz się zmienia. Adresy URL webhooka i crona kopiuje się przyciskiem **Kopiuj**.

## Zasady zaliczki

### Stawka i kwota minimalna

**Stawka zaliczki**: część ceny kwalifikujących się produktów płacona przy zamówieniu, od 1 do 99 %. **Minimalna kwota zamówienia** (z VAT): poniżej niej opcja zaliczki jest ukryta. 0 oznacza brak minimum.

### Kwalifikujące się kategorie i inne produkty

Pozostaw listę pustą, aby oferować zaliczkę w całym katalogu, lub wybierz odpowiednie kategorie. Ustawienie **Inne produkty w koszyku** decyduje o produktach niekwalifikujących się w koszyku mieszanym: **Opłacane w całości w ramach zaliczki** (doliczane w 100 % do kwoty zaliczki) lub **Ukryj opcję zaliczki**.

### Koszty wysyłki i zaokrąglanie

Koszty wysyłki mogą być **opłacane z pozostałą kwotą** (domyślnie), **opłacane z zaliczką** lub **dzielone według stawki zaliczki**. Zaokrąglanie odbywa się do grosza lub w górę do pełnej jednostki, np. 748 zł zamiast 747,35 zł.

### Grupy klientów i wyświetlanie

**Grupy klientów**: tylko wybrane grupy widzą opcję, na przykład klienci firmowi przy sprzęcie profesjonalnym. Puste = wszyscy klienci. **Pokazuj na stronach produktów** dodaje pod przyciskiem koszyka linię w rodzaju „Zamów z zaliczką 30 %: 747,00 zł teraz, 1 743,00 zł przy wysyłce lub odbiorze”. **Pokazuj w koszyku** dodaje do podsumowania podział na zaliczkę i pozostałą kwotę.

## Stawki według produktu, kategorii lub marki

Otwórz **Stawki zaliczek** z listy zaliczek lub z konfiguracji i kliknij **Dodaj stawkę**. Każda reguła dotyczy jednego celu: produktu (wyszukiwanie po nazwie, indeksie lub ID), kategorii lub marki, ze stawką od 0 do 99 %.

Kolejność pierwszeństwa: reguła produktu, potem reguła najgłębszej kategorii spośród kategorii produktu, następnie reguła marki, a na końcu stawka domyślna z konfiguracji. Stawka **0 %** wyklucza cel: produkt jest opłacany w całości w ramach zaliczki. Reguła obowiązuje nawet wtedy, gdy kategoria produktu nie należy do kwalifikujących się kategorii.

Gdy koszyk zawiera produkty o różnych stawkach, zaliczka jest liczona pozycja po pozycji. Klient i faktura pokazują wtedy stawkę efektywną, na przykład 48,39 %.

## Pozostała kwota

### Statusy wysyłające prośbę o dopłatę

Gdy zamówienie z opłaconą zaliczką otrzyma jeden z tych statusów, klient dostaje e-mail z prośbą o dopłatę i linkiem do płatności. Domyślnie: **Wezwanie do zapłaty reszty**, **Gotowe do odbioru, reszta do zapłaty** i **Wysłane, reszta do zapłaty**.

Nie używaj natywnego statusu **Wysłane** dla zamówienia z nieopłaconą resztą: w PrestaShop jest on oznaczony jako opłacony, więc PrestaShop automatycznie rejestruje resztę jako zapłaconą. Użyj statusu **Wysłane, reszta do zapłaty**. Kontrola konfiguracji ostrzega przed statusem oznaczonym jako opłacony.

### Status po pełnej płatności

Status nadawany, gdy pozostała kwota spada do zera (domyślnie Płatność zaakceptowana), oraz drugi dla zamówień już wysłanych (domyślnie Wysłane). W tym momencie PrestaShop generuje fakturę końcową.

### Przypomnienia i powiadomienia

**Przypomnienie co** X dni i **Maksymalna liczba przypomnień** sterują e-mailami przypominającymi wysyłanymi przez zadanie cron. **Powiadomienia dla zespołu**: adresy oddzielone przecinkami, powiadamiane, gdy klient zapłaci online zaliczkę lub pozostałą kwotę, gdy zaliczka wpłynie w nieoczekiwanej kwocie i gdy zostanie złożone zamówienie z przelewem.

### Inne sposoby zapłaty pozostałej kwoty

Dowolny tekst dla każdego języka, wyświetlany na stronie dopłaty i w e-mailach, np. „Pozostałą kwotę można też zapłacić kartą lub gotówką przy odbiorze w warsztacie”.

## Płatność kartą (Stripe)

1. Zaznacz **Włącz płatność kartą** i wybierz tryb **Test** lub **Produkcja**.
2. Wklej klucz tajny wybranego trybu (`sk_test_`, `sk_live_` lub klucz ograniczony `rk_`). Zapisane klucze są maskowane.
3. W panelu Stripe, Programiści > Webhooki, utwórz endpoint z adresem URL podanym w konfiguracji oraz zdarzeniami `checkout.session.completed` i `checkout.session.async_payment_succeeded`.
4. Skopiuj sekret podpisu `whsec_` do pola **Sekret podpisu webhooka**.

Klient jest przekierowywany na stronę Stripe Checkout. Po powrocie zamówienie powstaje natychmiast. Jeśli klient zamknie kartę przed powrotem, zamówienie tworzy webhook. Każda sesja jest przetwarzana tylko raz.

Po pierwszej płatności testowej linia „Ostatnie zdarzenie Stripe otrzymano” w kontroli powinna zmienić kolor na zielony. Jeśli pozostaje pomarańczowa, sprawdź adres URL i zdarzenia endpointu.

## Przelew bankowy

Zaznacz **Oferuj zaliczkę przelewem** i podaj właściciela rachunku, IBAN, BIC oraz nazwę banku. Zamówienie powstaje w statusie **Oczekiwanie na zaliczkę**; klient widzi Twoje dane bankowe na stronie potwierdzenia i otrzymuje je e-mailem, z numerem zamówienia jako tytułem przelewu.

**Pokazuj dane bankowe dla pozostałej kwoty** dodaje przelew jako sposób zapłaty reszty. **Anuluj nieopłacone zamówienia z przelewem po** X dniach: zadanie cron anuluje zamówienia wciąż oczekujące na zaliczkę bez żadnej płatności, a zapas wraca do sprzedaży. 0 wyłącza to anulowanie.

## Faktura zaliczkowa

**Prefiks numeracji** (domyślnie AC) i **Prefiks faktur korygujących** (domyślnie AVAC) muszą się różnić. **Następny numer (minimum)** pozwala kontynuować istniejącą numerację: następna faktura otrzyma tę wartość, jeśli jest wyższa niż ostatni wystawiony numer. **Dane prawne**: tekst dla każdego języka drukowany na dole każdej faktury zaliczkowej (nazwa firmy, NIP, REGON, warunki płatności).

## Zadanie cron

Zaplanuj raz dziennie adres URL crona podany w konfiguracji, na przykład o 6:00. Wysyła on przypomnienia o dopłacie i anuluje wygasłe zamówienia z przelewem, dla wszystkich sklepów. Kontrola konfiguracji pokazuje jego ostatnie uruchomienie.

## Ścieżka klienta

1. Przy zamówieniu klient wybiera „Zapłać zaliczkę X zł kartą” lub „przelewem”. Szczegóły pokazują sumę, zaliczkę, pozostałą kwotę i pasek podziału.
2. Po płatności kartą zamówienie przechodzi do statusu **Zaliczka otrzymana, pozostała kwota do zapłaty**, a faktura zaliczkowa jest wystawiana i dołączana do e-maila. Przy przelewie zamówienie czeka na Twoje potwierdzenie.
3. Gdy zamówienie osiągnie status wysyłający prośbę o dopłatę, klient dostaje link do strony dopłaty: płatność kartą, dane bankowe i Twoje wskazówki.
4. Po zapłacie reszty zamówienie przechodzi do statusu końcowego, a klient otrzymuje e-mail z potwierdzeniem.

Postęp w trzech krokach (Zaliczka opłacona, Zamówienie gotowe i prośba o dopłatę, W pełni opłacone) jest widoczny na stronie potwierdzenia, w szczegółach zamówienia na koncie klienta i na stronie dopłaty. Klient może zapłacić resztę ze swojego konta jeszcze przed prośbą o dopłatę.

## Zarządzanie zaliczkami w panelu

### Zamówienia > Zaliczki

Na górze cztery wskaźniki: pozostałe należności, wysłane prośby o dopłatę, przelewy do potwierdzenia i zaliczki otrzymane w tym miesiącu. Dla każdego zamówienia lista pokazuje stawkę, sumę, zaliczkę, zapłaconą kwotę, pozostałą kwotę, status i fakturę zaliczkową. Zaznacz kilka zamówień i wybierz **Poproś o dopłatę**, aby wysłać linki za jednym razem, na przykład w dniu, gdy partia jest gotowa do odbioru.

### Panel „Zaliczka i pozostała kwota” na stronie zamówienia

- **Potwierdź zaliczkę**: dla otrzymanego przelewu wpisz kwotę, metodę i numer. Płatność zostaje zarejestrowana, a faktura zaliczkowa wystawiona i wysłana.
- **Poproś o dopłatę teraz** lub **Wyślij ponownie link do płatności**, wraz z linkiem do skopiowania.
- **Zarejestruj płatność pozostałej kwoty**: przelew, czek, gotówka, karta w sklepie lub przy odbiorze. Gdy pozostała kwota spadnie do zera, zamówienie przechodzi do statusu końcowego, a klient zostaje powiadomiony.
- **Anuluj fakturę zaliczkową (faktura korygująca)**: dla anulowanego zamówienia wystawia numerowaną fakturę korygującą. Sam zwrot środków wykonuje się w Stripe lub przelewem.

## Fakturowanie

Faktura zaliczkowa zawiera adres rozliczeniowy, numer zamówienia, stawkę, jedną linię na każdą stawkę VAT z kwotą netto, VAT i brutto, metodę płatności i pozostałą kwotę. Rozbicie VAT jest liczone proporcjonalnie do stawek zamówienia, łącznie z wysyłką i opakowaniem, i ustalane w chwili wystawienia. Klient pobiera ją ze swojego konta, administrator z listy lub ze strony zamówienia.

Końcowa faktura PrestaShop powstaje po zapłacie pozostałej kwoty, z blokiem przypominającym fakturę zaliczkową. Faktura korygująca zawiera kwoty faktury zaliczkowej ze znakiem minus i numer anulowanej faktury.

W Polsce fakturę zaliczkową i fakturę korygującą warto skonsultować z księgowym, zwłaszcza w kontekście KSeF. Treść danych prawnych ustawiasz w konfiguracji.

## Rozwiązywanie problemów

### Opcja zaliczki nie pojawia się przy zamówieniu

Sprawdź kolejno: gotową metodę płatności (klucz Stripe lub IBAN), grupę klienta, kwotę minimalną, kwalifikujące się kategorie i reguły 0 % oraz ustawienie „Ukryj opcję zaliczki”, jeśli koszyk zawiera produkt niekwalifikujący się.

### Płatność kartą nie utworzyła zamówienia

Sekret webhooka prawdopodobnie nie jest wpisany lub jest błędny albo endpoint nie nasłuchuje właściwych zdarzeń. Płatność pozostaje widoczna w Stripe. Po poprawieniu webhooka wyślij zdarzenie ponownie z panelu Stripe: zamówienie zostanie utworzone.

### Zamówienie ma status „Błąd płatności”

Kwota zapłacona kartą nie odpowiada oczekiwanej zaliczce, zwykle dlatego, że koszyk zmienił się w trakcie płatności. Sprawdź płatności zamówienia, a następnie potwierdź zaliczkę w panelu strony zamówienia lub zwróć środki klientowi.

### Przypomnienia nie są wysyłane

Zadanie cron nie działa lub odstęp przypomnień ustawiono na 0. Kontrola konfiguracji pokazuje datę ostatniego uruchomienia.

### Pozostała kwota jest oznaczona jako zapłacona, choć klient nic nie wpłacił

Do zamówienia zastosowano status oznaczony jako opłacony (Płatność zaakceptowana, Wysłane): PrestaShop rejestruje wtedy resztę jako zapłaconą. Sprawdź płatności zamówienia i przy kolejnych zamówieniach używaj statusów modułu.

## Zgodność

- PrestaShop od 8.0 do 9.x, ten sam plik ZIP obsługuje obie gałęzie.
- Wiele sklepów, wiele walut (waluty bez miejsc dziesiętnych obsługiwane w Stripe) i wiele języków.
- Architektura ModuleAdminController, API Stripe wywoływane bezpośrednio, bez zależności Composer.
- Interfejs, e-maile i pliki PDF po francusku, angielsku, hiszpańsku, niemiecku, włosku, niderlandzku, polsku i portugalsku.
