== Changelog ==
= 3.7.4 – 2026-09-11 =
Fixed:
* Pobieranie danych GUS uzupełnia dodatkowe pole nazwy firmy w bloku wFirmy, także przy wyłączonym standardowym polu WooCommerce; ręczna korekta tej nazwy po pobraniu jest zachowana
* Adresy w kasie blokowej są aktualizowane przez stan koszyka WooCommerce, również przy wspólnym adresie dostawy i rozliczeń, bez równoległego zapisu szkicu zamówienia
= 3.7.3 – 2026-09-10 =
Fixed:
* Naprawiono wpisywanie numeru NIP w kasie blokowej z Fakturami WooCommerce PRO i wFirmą: synchronizacja WooGUS nie przerywa aktualizacji pola przez React
* Bieżący numer i jawne wyczyszczenie pola z bloków Faktur PRO i wFirmy mają pierwszeństwo przed starszą kopią danych WooGUS przy zapisie i walidacji zamówienia
* Zgoda na fakturę jest zapisywana w formacie wymaganym przez Faktury PRO, aby poprawny numer NIP nie kończył się pominięciem faktury
Changed:
* Zaktualizowano deklarację przetestowanej zgodności z WooCommerce do 11.1.0
= 3.7.2 – 2026-09-07 =
Added:
* Automatyczna synchronizacja tokenu sklepu z API GUS na podstawie niezależnej weryfikacji uprawnień WPDesk po stronie serwera
* Aktywacja istniejących instalacji po aktualizacji, bez wyłączania i ponownego włączania wtyczki; pierwsza próba planowana w tle przy wczytaniu nowej wersji
* Osobny status autoryzacji API, termin następnej automatycznej próby oraz identyfikator weryfikacji w Pomocy i raporcie diagnostycznym, bez ujawniania tokenu
Fixed:
* Bieżący NIP w kasie klasycznej ma pierwszeństwo przed danymi konta i sesji; zmiana, usunięcie i pobranie numeru ponownie przeliczają VAT
* Kasa blokowa przesyła aktualną wartość zewnętrznego pola NIP, a domyślne parametry Store API nie udają jawnego usunięcia numeru; brak wymaganego NIP zwraca błąd walidacji 400 zamiast błędu serwera 500
* Numery VAT UE zachowują litery podczas zapisu danych konta; starsza kasa blokowa rozpoznaje kod kraju z danych WooCommerce i nie ucina zagranicznego numeru do 10 znaków
* Panel weryfikacji nie sugeruje brakującego numeru VAT sklepu, gdy został już skonfigurowany
* Zablokowano automatyczne nadawanie ról z uprawnieniami innymi niż read / level_0, również przy spreparowanym zapisie ustawień i zmianie uprawnień roli
* Rozdzielono bufor VIES według kraju i numeru VAT sklepu; zgodność kraju jest sprawdzana przed odczytem, a stare potwierdzenia nie są ponownie używane
* Zwolnienie VAT uwzględnia kraj dostawy i wszystkie produkty; dostawy krajowe oraz koszyki wirtualne, mieszane i niekompletne nie otrzymują automatycznego zwolnienia
* Wyłączenie opcji VAT usuwa zwolnienie wcześniej nadane przez WooGUS w bieżącej sesji
* Odpowiedź GUS wymaga nazwy firmy i NIP zgodnego z zapytaniem; niepoprawna odpowiedź oznacza niedostępność usługi, a REST nie ujawnia treści wewnętrznych wyjątków
* Wymóg NIP działa także dla pustego zewnętrznego pola w kasie blokowej; jawne wyczyszczenie usuwa właściwe meta i stary numer z sesji, a częściowe żądanie zachowuje dane
* Ponowne sprawdzenie zastępuje cały wynik, bez identyfikatora i danych poprzedniej firmy; rola nie jest nadawana na podstawie potwierdzenia innego numeru
* Ponawianie synchronizacji po błędach połączenia i braku gotowego endpointu API, z co najmniej 15-minutowym odstępem i bez uznawania awarii za odmowę licencji
* Synchronizacja z API także wtedy, gdy mechanizm aktualizacji wykorzystuje istniejący wpis i nie pobiera nowej odpowiedzi WPDesk
* Unieważnianie bufora błędów GUS po uzyskaniu nowego potwierdzenia autoryzacji oraz lokalnego statusu po zmianie tokenu lub domeny
* Ochrona przed równoległymi próbami rejestracji i nieprawidłowymi odpowiedziami serwera; połączenia licencyjne zawsze weryfikują certyfikat TLS
* Zgodność sanitizacji pól kasy z PHP 7.4 oraz obsługa pustych danych formularza podczas prefiksowania pól
Changed:
* Skorygowano minimalne wymagania do WordPress 6.4 i WooCommerce 8.9 ze względu na publiczne API pól kasy blokowej; zachowano PHP 7.4
* Odświeżono szablon tłumaczeń, w tym komunikaty diagnostyki i synchronizacji licencji
= 3.7.1 – 2026-09-04 =
* Dodano diagnostykę połączenia z API GUS i raport do skopiowania, bez klucza API, numeru NIP i danych firmy
* Raport rozróżnia błędy DNS, połączenia, czasu oczekiwania, SSL/TLS oraz odpowiedzi HTTP API; stan rejestracji jest prezentowany osobno
* Dodano możliwość wyłączenia i ponownego włączenia weryfikacji certyfikatu SSL wyłącznie dla API GUS. Ustawienie obowiązuje do ręcznej zmiany; domyślnie weryfikacja jest włączona
* Dodano opcjonalną próbę porównawczą bez weryfikacji certyfikatu po wykryciu błędu TLS, bez zmiany zapisanego ustawienia
* Rozdzielono bufor wyników GUS dla połączeń z weryfikacją certyfikatu i bez niej
* Uporządkowano zakładkę Pomoc: test połączenia, raport, ustawienie SSL, stan rejestracji oraz dokumentacja i wsparcie
* Zmieniono domyślny komunikat błędu endpointu REST, aby nie przypisywał każdego problemu z połączeniem awarii serwera GUS
= 3.7.0 – 2026-09-03 =
* Dodano weryfikację numerów VAT UE w rejestrze VIES: kraj z adresu rozliczeniowego decyduje, czy pytany jest GUS czy VIES
* Dodano wspólną warstwę rejestrów (wooGus\Registry): jeden kontrakt weryfikacji i danych firmy dla GUS i VIES
* Dodano zapis dowodu weryfikacji przy zamówieniu: wynik, rejestr, data i identyfikator zapytania z VIES
* Dodano panel weryfikacji w widoku zamówienia z ponownym sprawdzeniem numeru
* Dodano kolumnę weryfikacji na liście zamówień i eksport zestawienia do CSV
* Dodano opcjonalną stawkę 0% dla dostaw wewnątrzwspólnotowych (domyślnie wyłączona, wymaga potwierdzenia numeru w VIES)
* Dodano tryb sprzedaży wyłącznie dla firm z wymaganiem numeru NIP przy zamówieniu i własną treścią komunikatu
* Dodano automatyczne przypisywanie dodatkowej roli klientom posiadającym konto po potwierdzeniu numeru przez rejestr. Funkcja nie tworzy kont przy zakupach gościnnych
* Dodano pole „NIP / dane z GUS” do edytorów Gravity Forms, WPForms i Fluent Forms: rolę pola wybiera się z listy, bez znajomości klas CSS
* Dodano skrótkod [woogus_gus] dla formularzy osadzonych ręcznie w szablonie motywu
* Dodano panel w edytorze Contact Form 7: pole GUS wstawia się z listy, bez wpisywania klas CSS
* Dodano integrację z CartFlows
* Dodano zakładkę ustawień „Firmy z Unii Europejskiej”
* Dodano opcję „Dodaj pole NIP w kasie blokowej” dla wtyczek do faktur obsługujących wyłącznie kasę klasyczną
* Dodano ostrzeżenie w ustawieniach, gdy wykryta wtyczka do faktur dokłada drugie pole na NIP
* Dodano bufor wyników weryfikacji (24 h dla potwierdzonych, 15 min przy niedostępnym rejestrze)
* Dodano pole NIP i pobieranie danych firmy przy zakładaniu konta klienta w panelu
* Dodano współpracę z wtyczkami Fakturownia i iFirma: numer zapisuje się pod ich kluczem meta
* Dodano narzędzia jakości: PHPStan poziom 9, PHPCS, PHPUnit (449 testów), szkielet testów E2E Playwright
* Naprawiono zapis numeru NIP z kasy blokowej: odwrócona kolejność argumentów w woocommerce_set_additional_field_value powodowała, że zapis nie wykonywał się wcale
* Naprawiono odczyt adresu z żądania Store API pod kluczem billing_address
* Naprawiono brak weryfikacji numeru z pola wtyczki fakturowej w kasie blokowej
* Naprawiono podwójną walidację numeru NIP w kasie blokowej: została jedna ścieżka
* Naprawiono dublowanie przycisku pobierania danych, gdy obok pola wtyczki działa własne pole wtyczki GUS
* Naprawiono zgodę „Chcę fakturę VAT” w panelu: było pole tekstowe zamiast pola wyboru
* Naprawiono rozpoznawanie wtyczki do faktur niezależnie od nazwy katalogu instalacji
* Uzupełniono brakujące sprawdzenie nonce w zapisie numeru do sesji koszyka
* Usunięto liczniki opcji z kart ustawień: sugerowały postęp konfiguracji, choć liczyły wszystkie wypełnione pola
* Dodano zakładkę ustawień „Sprzedaż dla firm”: wymóg numeru dotyczy każdego zamówienia, także z kraju bez rejestru, więc nie mieszka już przy ustawieniach VIES
* Dodano tłumaczenia wtyczki: szablon languages/woogus.pot oraz obsługę WPML i Polylang dla tekstów ustawianych w panelu (wpml-config.xml)
* Zebrano wszystkie komunikaty widoczne dla klienta w zakładce „Komunikaty”: wcześniej były w trzech miejscach naraz
* Zmieniono zależność stawki 0%: wymaga teraz włączonego sprawdzania numerów VAT UE, bo bez potwierdzenia z rejestru zwolnienie nie przysługuje
* Naprawiono rejestrację sklepu w panelu WPDesk: po włączeniu wtyczki domena trafiała tam dopiero przy najbliższym oknie sprawdzania aktualizacji, czyli nawet po godzinie; przez ten czas pobieranie danych kończyło się komunikatem o nieaktywnej wtyczce
* Dodano ostrzeżenie, gdy katalog wtyczki ma nazwę inną niż woocommerce-gus: przy takiej nazwie rejestracja i aktualizacje nie działają, a powstaje ona sama po wgraniu paczki w rodzaju „woocommerce-gus (5).zip”
* Dodano zakładkę „Pomoc” ze stanem wtyczki, podpowiedziami na najczęstsze zgłoszenia i kontaktem do wsparcia
* Dodano podgląd stanu rejestracji wraz z przyciskiem ponownego sprawdzenia
* Naprawiono brak tłumaczeń: wtyczka nigdy nie ładowała plików .po, więc każdy tekst zwracał polski oryginał niezależnie od języka sklepu
* Naprawiono ekran ustawień, który pokazywał treść dwóch zakładek naraz
* Naprawiono pole GUS w edytorze Gravity Forms: błąd skryptu uniemożliwiał zapisanie wybranej roli
* Naprawiono umiejscowienie pola GUS w WPForms: trafiało do grupy pól płatnej wersji i wyglądało na zablokowane
* Naprawiono podgląd pola w edytorze WPForms: przycisk pobierania zostawał przy polach uzupełnianych z rejestru
* Zaktualizowano opis wtyczki widoczny na liście wtyczek i w readme
* Ujednolicono styl kodu w całym repozytorium (PSR-12 z wyjątkiem nazw metod będących callbackami hooków WordPressa)
* Naprawiono klucz bufora weryfikacji: wyniki różnych krajów oraz zapytania VIES z różnym numerem VAT UE sklepu nie współdzielą wpisu
* Zablokowano zwolnienie z VAT, gdy prefiks numeru VAT UE nie zgadza się z krajem adresu rozliczeniowego
* Wyłączenie VIES zatrzymuje również awaryjne zapytania do tego rejestru po niedostępności GUS
* Odpowiedzi HTTP 400, 408 i 409 pośrednika GUS są traktowane jako niedostępność usługi, a nie błędny numer klienta
* Naprawiono ekran wymagań na PHP 7.3, zapis i odczyt wszystkich 45 ustawień oraz respektowanie widoczności pola nazwy firmy z WooCommerce
* Eksport CSV obejmuje wszystkie zamówienia zamiast kończyć bez ostrzeżenia po 5000 rekordach
* Naprawiono role pól formularzy, zakres ładowania skryptów i obsługę własnych komunikatów administratora
* Endpoint REST pobierania danych firmy odrzuca żądania bez prawidłowego nonce wygenerowanego przez sklep
= 3.6.0 – 2026-03-30 =
* Dodano pola NIP i danych firmy (nazwa, adres, kod pocztowy, miasto) na stronie rejestracji WooCommerce
* Dodano automatyczne pobieranie danych z GUS na stronie rejestracji po wpisaniu NIP
* Dodano zapis danych firmy do profilu użytkownika (billing) przy rejestracji
* Dodano walidację NIP (10 cyfr) przy rejestracji
* Dodano tab „Rejestracja” w ustawieniach: konfiguracja pól, wymagalność, włączanie/wyłączanie
* Naprawiono wyświetlanie NIP na stronie Moje Konto → Adres rozliczeniowy
* Naprawiono duplikat pola NIP na stronie edycji adresu (Blocks vs klasyczne)
* Ukryto checkbox „Chcę fakturę VAT” na stronie edycji adresu: NIP zawsze widoczny
* Synchronizacja NIP między kluczami meta przy zapisie adresu
* Naprawiono ukrywanie przycisku GUS na stronach bez pola wyboru kraju
= 3.5.6 – 2026-02-27 =
* Naprawiono brak przycisku “Pobierz dane z GUS” przy integracji z Flexible Checkout Fields
* Naprawiono zgodność z PHP 8.5: preg_replace null, dynamiczne property, undefined array key, filter_input null
* Naprawiono błąd pierwszeństwa operatorów (int) vs ?? w Connect.php
* Naprawiono Response.php: metody czytające string jako tablicę, getLocalNumber() zwracający bool
* Naprawiono brak isset() przy $_POST w ContactForm7.php + sanityzacja danych
* Naprawiono filtr woocommerce_set_additional_field_value: callback teraz zwraca wartość
* Dodano strict comparison w in_array() i EXTR_SKIP w extract()
* Zaktualizowano WC tested up to: 10.5.2, Tested with PHP: 8.5
= 3.5.5 – 2025-11-03 =
* Dodano przycisk “Pobierz dane z GUS” w panelu administracyjnym WordPress przy edycji zamówienia
* Dodano wsparcie dla wielu pól NIP w panelu admina (_billing_vat_number, _billing_nip, billing_nip, _billing_tax_number)
* Poprawiono obsługę integracji z wtyczką Flexible Invoices w panelu administracyjnym
* Poprawiono wykrywanie typu adresu – priorytet ID/name pola nad lokalizacją wizualną
* Dodano inteligentne wypełnianie obu sekcji (shipping i billing) gdy istnieje tylko jedno pole NIP
* Dodano walidację pustej odpowiedzi z API GUS z informacją o sprawdzeniu klucza API
* Naprawiono błąd parsowania JSON w AJAX (gus-admin.js) – dodano dataType: ‘json’
* Dodano obsługę nowego formatu odpowiedzi WordPress (wp_send_json_success)
* Dodano wizualne potwierdzenie sukcesu (zielony przycisk) po pobraniu danych w panelu admina
= 3.5.4 – 2025-11-02 =
* Poprawiono wykrywanie i obsługę pól NIP w checkout blokowym dla wielu sekcji adresowych
* Dodano automatyczne dodawanie przycisku “Pobierz dane z GUS” przy każdym polu NIP (shipping i billing)
* Dodano inteligentne wypełnianie pól – każdy przycisk wypełnia tylko swoją sekcję
* Dodano automatyczne przenoszenie pola NIP pod pole “Nazwa firmy” w każdej sekcji
* Poprawiono wykrywanie typu adresu (shipping/billing) na podstawie położenia pola w DOM
* Dodano zabezpieczenie przed wielokrotną inicjalizacją tego samego pola NIP
* Ulepszone MutationObserver do obsługi dynamicznie renderowanych pól React
= 3.5.3.1 – 2025-10-13 =
* Poprawiono metodę licencyjną: poprawne sprawdzanie statusu licencji i obsługa błędów po stronie API
* Drobne optymalizacje inicjalizacji klasy licencji
* Ulepszono logowanie błędów w przypadku nieprawidłowej odpowiedzi serwera
= 3.5.3 – 2025-10-13 =
* Naprawiono walidację NIP dla checkout blokowego
* Dodano metodę validate_nip_for_blocks() w BlocksFieldProvider
* Walidacja długości numeru NIP (10 cyfr) działa dla WooCommerce Blocks
* Walidacja poprawności numeru NIP z GUS działa dla WooCommerce Blocks
* Błędy walidacji są wyświetlane jako wyjątki i blokują składanie zamówienia
* Walidacja uruchamia się przed zapisaniem zamówienia (priority 5)
* Integracja z WooCommerce Store API do walidacji pól checkout blokowego
* Hook woocommerce_store_api_checkout_update_order_from_request z priorytetem 5
* Metoda validate_nip_with_gus() do sprawdzania NIP z API GUS
= 3.3.0 – 2025-04-18 =
* Wsparcie dla Woocommerce 9.8.1
* Wsparcie dla WordPress 6.8
* Wsparcie dla Woocommerce Checkout Blocks
* Wsparcie dla PHP 8.4
* Poprawiono wyświetlanie się przycisku pobrania danych z nip w innych miejscach
= 3.2.10 – 2024-07-06 =
* Dodano zapis numeru nip do sesji
* Dodano odczyt numeru nip z sesji / danych użytkownika w zamówieniu
* Poprawiono integrację z szablonem DIVI
* Dodano wsparcie dla Woocommerce 9.0.2
* Dodano wsparcie dla wordpress 6.5.5
= 3.2.9.1 – 2024-03-02 =
* Poprawiono integracje z moje konto woocommerce
= 3.2.9 – 2024-02-12 =
* Dodano przycisk do pobierania nip w zamówieniu
= 3.2.7 – 2024-01-13 =
* Poprawiono integrację z contact form 7
* Dodano wsparcie dla woocommerce 8.4
= 3.2.6 – 2023-10-27 =
* Dodano pobieranie za pomocą numeru nip w ustawieniach użytkownika
= 3.2.5 – 2023-10-19 =
* Dodano automatyczne odświeżanie metod wysyłki i płatności po automatycznym uzupełnieniu pól na podstawie numeru NIP.
* Dodano wsparcie dla woocommerce 8.2
= 3.2.4 – 2023-09-14 =
* Poprawiono wyświetlanie przycisku do pobrania danych gus w przypadku zmiany kraju
= 3.2.3 – 2023-09-04 =
* Poprawiono walidację pola nip przy integracji z Flexible Checkout Fields
= 3.2.2 – 2023-08-29 =
* Poprawiono integrację z Flexible Checkout Fields Free
= 3.2.1 – 2023-08-28 =
* Poprawiono integrację z Flexible Checkout Fields Pro
= 3.2.0 – 2023-08-24 =
* Dodano integrację z Flexible Checkout Fields
* Dodano wsparcie dla woocommerce 8.0
* Dodano obsługę wydajnych zamówień (High performance order storage)
= 3.1.2 – 2023-08-10 =
* Poprawiony problem integracji z wersją demo
= 3.1.1 – 2023-07-05 =
* Poprawiony problem z aktywacją
= 3.1.0 – 2023-07-05 =
* Wsparcie dla nowego systemu licencji
= 2.8.8 – 2022-06-21 =
* Poprawiono połączenie z serwerem gus
= 2.8.7 – 2022-01-19 =
* Poprawiono pobieranie numeru nip w zamówieniu
* Poprawki w kodzie js dla panelu administratora
= 2.8.6 – 2021-12-10 =
* Naprawiono błędne dodanie styli i skryptów
= 2.8.5 – 2021-11-08 =
* Dodano Placeholder dla numeru nip
* Zmieniono css
= 2.8.4 – 2021-10-13 =
* Dodano pobieranie danych z gus w koncie użytkownika
= 2.8.2 – 2021-09-30 =
* Dodano edycję numeru nip na koncie użytkownika
= 2.8.1 – 2021-09-13 =
* Dodano wsparcie dla woocommerce 5.7
= 2.8 – 2021-09-10 =
* Dodano wsparcie dla woocommerce 5.6
= 2.2.7 – 2021-08-10 =
* Poprawiono integrację licencji
= 2.2.6 – 2021-08-04 =
* Poprawiono integrację licencji
= 2.2.5 – 2021-08-04 =
* Zmieniono nazwy folderów w integracji wpdesk
= 2.2.4 – 2021-08-03 =
* Poprawiono pobieranie danych z serwera gus
= 2.2.3 – 2021-08-02 =
* Dodano obsługę FakturaXL by K&M Web-Design
* Dodano zabezpieczenie pobierania danych
* Naprawiono błąd przy integracji z contact form 7
* Usunięto folder post
* Zmieniono sposób pobierania danych na wp_ajax
= 2.2.2 – 2021-06-15 =
* Dodano wsparcie dla ifirma
* Dodano wsparcie dla nowych pól contact form 7
* Naprawiono błąd przy integracji z contact form 7
= 2.0 – 2021-06-15 =
* Pierwsze wydanie w wpdesk