Integracja WooCommerce w DC Accountant

Ten kurs jest niezbędnym poradnikiem dla osób posiadających sklep internetowych na platformie Woocommerce.

Dowiesz się w nim jak skutecznie zautomatyzować wystawianie faktur oraz ich wysyłanie w pluginie DC Accountant.

Wtyczka DC Accountant integruje się z WooCommerce na trzech poziomach:

  1. Ustawienia automatyzacji — osobna strona w menu DC Accountant (page=dc-accountant-woocommerce): automatyczne wystawianie FV przy zmianie statusu zamówienia oraz opcjonalna wysyłka PDF e-mailem.
  2. Lista zamówień WC — przycisk „Wystaw FV” / „Zobacz fakturę” przy każdym zamówieniu.
  3. Metabox w edycji zamówienia — wystawianie, podgląd PDF, wysyłka do klienta, przejście do edycji FV w DC.

Integracja działa, gdy WooCommerce jest aktywne. Ustawienia automatyzacji możesz zapisać nawet bez WC — automat zacznie działać dopiero po włączeniu sklepu.

 

Część A — Ustawienia WooCommerce w DC Accountant

Jak otworzyć stronę ustawień

  1. W lewym menu WordPress kliknij DC Accountant.
  2. Kliknij pozycję WooCommerce (ikona koszyka).

Możesz też wejść z Kokpitu — kafelek WooCommerce.

Bezpośredni adres URL:

http://twoja-domena.pl/wp-admin/admin.php?page=dc-accountant-woocommerce

Screen: lewe menu
Screen: lewe menu

Hero strony:

  • Tytuł: WooCommerce
  • Podtytuł: Automatyczne faktury i wysyłka powiązane ze statusami zamówień
  • Breadcrumb: DC Accountant → WooCommerce
Screen: przegląd ustawień integracji z Woocommerce
Screen: przegląd ustawień integracji z Woocommerce

Jeśli WooCommerce nie jest aktywne, na górze pojawia się ostrzeżenie: WooCommerce nieaktywne. Możesz mimo to zapisać ustawienia — automat zacznie działać po włączeniu WooCommerce.

Po udanym zapisie widać komunikat: Ustawienia WooCommerce zapisane. (parametr URL updated=1).

 

Sekcja 1: Automatyczne wystawianie faktur

Nagłówek sekcji: Automatyczne wystawianie faktur
Podtytuł: „Faktura DC powstaje przy przejściu zamówienia na wybrany status”.

Przełącznik: Włącz automatyczne wystawianie FV do zamówienia

Pole formularza: wc_auto_invoice (checkbox, wartość 1). Klasa JS: dc-js-wc-auto-invoice.

Gdy przełącznik jest wyłączony (domyślnie), faktury nie powstają automatycznie — możesz je nadal wystawiać ręcznie z listy zamówień lub metaboxa.

Screen: switch - autowystawianie wyłączone
Screen: switch - autowystawianie wyłączone

Kliknij przełącznik, aby go włączyć. Po włączeniu odsłania się blok zależny (klasa dc-js-wc-auto-invoice-deps) z listą statusów zamówienia oraz druga sekcja — automatyczna wysyłka e-mail.

Screen: switch - autowystawianie włączone
Screen: switch - autowystawianie włączone

Checkboxy: statusy zamówienia

Pod przełącznikiem widoczny jest hint:

Wybierz statusy zamówienia, przy których ma powstać faktura (jeśli jeszcze nie istnieje):

Pola: wc_auto_invoice_statuses[] — grupa checkboxów (role group, aria-label „Statusy zamówienia”).

Screen: checkboxy z wiązaniem statusów zamówienia
Screen: checkboxy z wiązaniem statusów zamówienia

Lista statusów pochodzi z WooCommerce (wc_get_order_statuses()). Typowe pozycje:

Slug (zapis w ustawieniach) Etykieta PL (przykład)
pending Oczekujące na płatność
processing W trakcie realizacji
on-hold Wstrzymane
completed Zrealizowane
cancelled Anulowane
refunded Zwrócone
failed Nieudane

Domyślnie zaznaczone (przy pierwszym uruchomieniu, gdy brak zapisanych wartości): processing oraz completed.

Jak działa automat: przy zmianie statusu zamówienia (woocommerce_order_status_changed) wtyczka sprawdza, czy nowy status jest na liście. Jeśli tak i faktura jeszcze nie istnieje — wystawia FV. Jeśli faktura już jest — nie tworzy duplikatu. Błąd trafia do notatki zamówienia: „DC Accountant (auto): nie wystawiono faktury — …”.

Praktyczna rada: zaznacz status, przy którym masz pewność płatności / realizacji (np. tylko completed albo processing po płatności online). Unikaj pending i failed, chyba że świadomie chcesz FV już na etapie oczekiwania.

 

Sekcja 2: Automatyczne wysyłanie faktury

Ta sekcja jest widoczna tylko gdy włączone jest automatyczne wystawianie FV.

Nagłówek: Automatyczne wysyłanie faktury
Podtytuł: „Osobny e-mail z PDF — tylko gdy auto-wystawianie jest włączone”.

Przełącznik: Wysyłaj fakturę e-mailem zaraz po automatycznym wystawieniu

Pole: wc_auto_send. Klasa JS: dc-js-wc-auto-send.

Gdy auto-wystawianie jest włączone, a auto-wysyłka jeszcze nie:

Screen: switch - autowysyłka wyłączona
Screen: switch - autowysyłka wyłączona

Kliknij przełącznik, aby włączyć. Odsłania się blok dc-js-wc-auto-send-deps z szablonem e-maila.

Screen: switch - autowysyłka włączona
Screen: switch - autowysyłka włączona

Ważne przy zapisie: jeśli wyłączysz auto-wystawianie, system przy zapisie wymusza też wyłączenie auto-wysyłki (wc_auto_send = 0). Wysyłka ma sens tylko w parze z wystawianiem.

Automat wysyła e-mail tylko dla nowo utworzonej faktury (nie przy kolejnej zmianie statusu, gdy FV już istniała). Sukces / błąd trafia do notatek zamówienia WC.

Placeholdery w szablonie e-mail

Niebieski box informacyjny wymienia dostępne placeholdery:

Screen: placeholdery w szablonie FV
Screen: placeholdery w szablonie FV
Placeholder Znaczenie
{number} Numer faktury DC Accountant (np. FV/12/2026).
{amount} Kwota brutto faktury.
{due_date} Termin płatności z dokumentu.
{order_number} Numer zamówienia WooCommerce widoczny dla klienta.
{order_id} Wewnętrzne ID zamówienia w bazie.

Pole: Temat wiadomości

Etykieta: Temat wiadomości. Name: wc_mail_subject. Zwykłe pole tekstowe.

Screen: temat wiadomości
Screen: temat wiadomości

Domyślna wartość (gdy puste przy zapisie przywracana):

Faktura {number} — zamówienie {order_number}

Pole: Treść wiadomości

Etykieta: Treść wiadomości. Name: wc_mail_body. Edytor WordPress (TinyMCE + Quicktags), bez przycisku mediów, wysokość ok. 280 px.

Screen: edytor treści wiadomości
Screen: edytor treści wiadomości

Domyślna treść (skrót):

  • „Dzień dobry,”
  • informacja o fakturze {number} do zamówienia {order_number}
  • Kwota: {amount}, Termin płatności: {due_date}
  • „Pozdrawiamy”

Pod edytorem hint: PDF faktury zostanie dołączony jako załącznik.

Jeśli przy zapisie temat lub treść są puste, wtyczka wstawia wartości domyślne.

 

Zapis ustawień

Na dole formularza kliknij:

Zapisz ustawienia WooCommerce

Screen: przycisk zapisz ustawienia
Screen: przycisk zapisz ustawienia

Formularz wysyła POST z nonce dc_accountant_woocommerce i ukrytym polem dc_accountant_woocommerce=1. Po zapisie następuje przekierowanie z ?updated=1.

 

Podsumowanie opcji strony ustawień

Kontrolka Name Typ Cel
Włącz automatyczne wystawianie FV… wc_auto_invoice switch Włącza listener statusów zamówień.
Statusy zamówienia wc_auto_invoice_statuses[] checkboxy Przy których statusach tworzyć FV.
Wysyłaj fakturę e-mailem… wc_auto_send switch Po auto-FV wysyła PDF (tylko nowa FV).
Temat wiadomości wc_mail_subject text Subject osobnego maila WC→klient.
Treść wiadomości wc_mail_body edytor WYSIWYG Body maila; PDF jako załącznik.
Zapisz ustawienia WooCommerce submit Zapis do repozytorium ustawień DC.

 

Część B — Ręczne wystawianie z listy zamówień

Nawet przy wyłączonej automatyce możesz wystawiać faktury ręcznie.

Przejdź do: WooCommerce → Zamówienia (HPOS: admin.php?page=wc-orders).

Screen: lista zamówień
Screen: lista zamówień

W kolumnie akcji każdego wiersza zamówienia pojawia się dodatkowy przycisk DC Accountant:

  • Jeśli brak faktury — przycisk Wystaw FV (ikona dokumentu). Kliknięcie wywołuje AJAX dc_acc_wc_issue_invoice z nonce.
  • Jeśli faktura istnieje — przycisk Zobacz fakturę otwiera PDF w nowej karcie.

Po wystawieniu FV pojawia się komunikat administracyjny (notice):

  • Faktura została wystawiona.
  • Faktura dla tego zamówienia już istnieje.
  • Operacja nie powiodła się. (notice-error)

 

Część C — Metabox w edycji zamówienia

Otwórz zamówienie klikając numer zamówienia na liście.

Screen: edycja zamówienia
Screen: edycja zamówienia

 

 

Stan: brak faktury

Tekst: Brak faktury dla tego zamówienia.

Przycisk primary: Wystaw FV — ten sam mechanizm co na liście zamówień.

 

Stan: faktura wystawiona

  • Numer: numer FV z DC Accountant.
  • Data wystawienia: data z dokumentu.
  • Pierwsze wysłanie: data pierwszego e-maila (jeśli wysłano).
  • Alternatywnie: Faktura jeszcze nie była wysłana do klienta.
Screen: metabox dla faktur w zamówieniach Woocommerce
Screen: metabox dla faktur w zamówieniach Woocommerce

 

Przyciski akcji w metaboxie

  • Zobacz fakturę — PDF w nowej karcie (dc_acc_download_pdf).
  • Wyślij klientowi — AJAX dc_acc_wc_send_invoice; wysyła PDF na e-mail klienta. Przy ręcznej wysyłce używany jest szablon z ogólnych Ustawień DC (wiadomości faktury), natomiast przy auto-wysyłce z tej strony — szablon wc_mail_*.
  • Edytuj w DC — link do formularza faktury: admin.php?page=dc-accountant-invoices&action=edit&id=…

 

Co dzieje się przy wystawianiu FV (ręcznie i automatycznie)

  1. System mapuje dane billingowe zamówienia na klienta DC Accountant (tworzy lub aktualizuje).
  2. Pozycje zamówienia (produkty WC) trafiają na fakturę jako pozycje.
  3. Nadawany jest kolejny numer FV (Ustawienia → prefiks i ostatni numer).
  4. Powiązanie zamówienie↔faktura zapisywane jest w bazie (ExternalLinkRepository, źródło woocommerce).
  5. Przy automacie: opcjonalnie od razu wychodzi e-mail z PDF (szablon z tej strony).

 

Wymagania i wskazówki

  • Przed integracją uzupełnij Ustawienia DC (firma, numeracja, szablon PDF) oraz — jeśli używasz auto-maila — szablon na stronie WooCommerce w DC.
  • Upewnij się, że zamówienie ma komplet danych billingowych (NIP jeśli potrzebny).
  • Duplikat FV — system blokuje ponowne wystawienie; użyj „Zobacz fakturę” lub „Edytuj w DC”.
  • Wysyłka e-mail wymaga działającej poczty WordPress (wp_mail).
  • Faktura jest w walucie głównej DC Accountant.
  • Auto-FV uruchamia się przy zmianie statusu na wybrany — samo utworzenie zamówienia już w tym statusie może nie odpalić hooka; wtedy wystaw ręcznie lub zmień status i wróć.
  • Sprawdzaj notatki zamówienia w WC — tam lądują komunikaty sukcesu/błędu automatu.