Przejdź do głównej zawartości

System faktur

Moduł faktur generuje dokumenty sprzedażowe bezpośrednio w WooCommerce. Obsługuje cztery typy dokumentów, automatyczną numerację i PDF.

Standardowa faktura VAT z danymi:

  • dane sprzedawcy i nabywcy (w tym NIP obu stron)
  • pozycje z nazwą, ilością, ceną netto, stawką VAT, kwotą VAT i ceną brutto
  • podsumowanie z rozbiciem na stawki VAT
  • numer faktury, datę wystawienia i datę sprzedaży
  • termin i formę płatności

Korekta do wcześniejszej faktury. Zawiera:

  • numer i datę faktury korygowanej
  • pozycje przed korektą i po korekcie
  • różnicę wartości
  • powód korekty

Wystaw korektę z panelu zamówienia lub przez REST API.

Uproszczony dokument dla klientów bez NIP. Zawiera pozycje z cenami brutto i podsumowanie.

Dokument dołączany do przesyłki. Zawiera listę produktów i ilości, bez cen.

Przejdź do WooCommerce > Ustawienia > Polski > Moduły PRO > Faktury.

PoleOpis
Nazwa firmyPełna nazwa firmy sprzedawcy
NIPNumer identyfikacji podatkowej sprzedawcy
AdresUlica, numer, kod pocztowy, miasto
Numer konta bankowegoNumer rachunku do przelewów
E-mail kontaktowyAdres e-mail widoczny na fakturze

Dostępne strategie numeracji:

StrategiaFormatPrzykład
RocznaFV/{numer}/{rok}FV/1/2026
MiesięcznaFV/{numer}/{miesiąc}/{rok}FV/1/04/2026
CiągłaFV/{numer}FV/1
Własny wzorzecDefiniowany przez użytkownikaFV/2026/04/001

Dostępne tokeny w formacie własnym:

  • {numer} - kolejny numer faktury (z zerowaniem wg strategii)
  • {rok} - rok czterocyfrowy
  • {miesiac} - miesiąc dwucyfrowy
  • {dzien} - dzień dwucyfrowy
  • {id_zamowienia} - ID zamówienia WooCommerce

Włącz opcję Automatyczne generowanie faktury, aby plugin tworzył fakturę po zmianie statusu na “Zrealizowane”.

Możesz też włączyć automatyczne dołączanie PDF faktury do e-maila “Zamówienie zrealizowane”.

PDF jest generowany biblioteką TCPDF. Szablon zawiera:

  • logo firmy (opcjonalne, konfigurowalne w ustawieniach)
  • dane sprzedawcy i nabywcy
  • tabelę pozycji z kolumnami VAT
  • podsumowanie z rozbiciem na stawki VAT
  • stopkę z danymi firmy

Plugin używa czcionki DejaVu Sans z obsługą polskich znaków. Dodatkowa konfiguracja nie jest potrzebna.

Cykl statusów faktury:

Draft (Szkic) → Issued (Wystawiona) → Sent (Wysłana) → Paid (Opłacona)
→ Cancelled (Anulowana)
StatusOpis
DraftFaktura utworzona, ale jeszcze nie wystawiona. Można edytować
IssuedFaktura wystawiona z nadanym numerem. Nie można edytować
SentFaktura wysłana do klienta (e-mail lub KSeF)
PaidFaktura opłacona
CancelledFaktura anulowana. Wymaga wystawienia korekty

W panelu zamówienia moduł dodaje meta box “Faktury” z funkcjami:

  • Wystaw fakturę - generuje fakturę na podstawie danych zamówienia
  • Pobierz PDF - pobiera fakturę w formacie PDF
  • Wyślij do klienta - wysyła fakturę e-mailem
  • Wystaw korektę - tworzy fakturę korygującą
  • Historia - lista wszystkich dokumentów powiązanych z zamówieniem

Każda pozycja faktury zawiera szczegółowe dane VAT:

  • cena netto jednostkowa
  • stawka VAT (23%, 8%, 5%, 0%, zw., np., oo.)
  • kwota VAT jednostkowa
  • wartość netto
  • wartość brutto

Plugin pobiera stawki VAT z konfiguracji WooCommerce Tax. Obsługuje wiele stawek na jednej fakturze.

Endpointy REST API do zarządzania fakturami:

GET /wp-json/polski-pro/v1/invoices

Parametry query:

ParametrTypOpis
order_idintFiltruj po ID zamówienia
statusstringFiltruj po statusie (draft, issued, sent, paid, cancelled)
typestringFiltruj po typie (invoice, correction, receipt, packing_slip)
date_fromstringData od (YYYY-MM-DD)
date_tostringData do (YYYY-MM-DD)
per_pageintLiczba wyników na stronę (domyślnie 20)
pageintNumer strony
POST /wp-json/polski-pro/v1/invoices
{
"order_id": 123,
"type": "invoice",
"auto_number": true
}
GET /wp-json/polski-pro/v1/invoices/{id}/pdf

Zwraca plik PDF jako application/pdf z nagłówkiem Content-Disposition: attachment.

POST /wp-json/polski-pro/v1/invoices/{id}/correction
{
"reason": "Zmiana danych nabywcy",
"items": [
{
"product_id": 45,
"quantity": 1,
"net_price": 100.00,
"vat_rate": 23
}
]
}
GET /wp-json/polski-pro/v1/invoices/stats

Zwraca statystyki faktur: łączna liczba, wartości netto/brutto, rozbicie na statusy.

Akcja wywoływana przed wygenerowaniem faktury.

/**
* @param int $order_id ID zamówienia
* @param string $type Typ dokumentu (invoice, correction, receipt, packing_slip)
*/
do_action('polski_pro/invoices/before_generate', int $order_id, string $type);

Przykład:

add_action('polski_pro/invoices/before_generate', function (int $order_id, string $type): void {
if ($type === 'invoice') {
// Logowanie generowania faktury
error_log("Generowanie faktury dla zamówienia #{$order_id}");
}
}, 10, 2);

Filtruje format numeru faktury.

/**
* @param string $number Wygenerowany numer faktury
* @param string $type Typ dokumentu
* @param int $order_id ID zamówienia
*/
apply_filters('polski_pro/invoices/number_format', string $number, string $type, int $order_id): string;

Przykład:

add_filter('polski_pro/invoices/number_format', function (string $number, string $type, int $order_id): string {
if ($type === 'correction') {
return 'KOR/' . $number;
}
return $number;
}, 10, 3);

Filtruje dane przekazywane do szablonu PDF.

/**
* @param array $data Dane faktury (seller, buyer, items, totals)
* @param int $invoice_id ID faktury
*/
apply_filters('polski_pro/invoices/pdf_content', array $data, int $invoice_id): array;

Przykład:

add_filter('polski_pro/invoices/pdf_content', function (array $data, int $invoice_id): array {
$data['footer_note'] = 'Dziękujemy za zakupy!';
return $data;
}, 10, 2);
  1. Sprawdź, czy rozszerzenie PHP mbstring jest zainstalowane
  2. Upewnij się, że katalog wp-content/uploads/polski-pro/invoices/ ma uprawnienia do zapisu (755)
  3. Zweryfikuj, czy dane sprzedawcy są uzupełnione w ustawieniach

Numeracja resetuje się zgodnie ze strategią: roczna - 1 stycznia, miesięczna - 1. dnia miesiąca. Chcesz ciągłą numerację? Wybierz strategię “Ciągła”.

Sprawdź konfigurację WooCommerce Tax. Upewnij się, że stawki VAT dla Polski są poprawnie ustawione.

Ta strona ma wyłącznie charakter informacyjny i nie stanowi porady prawnej. Przed wdrożeniem skonsultuj się z prawnikiem. Polski for WooCommerce jest oprogramowaniem open source (GPLv2) dostarczanym bez gwarancji.