# GAPLI — dokumentacja modułów WordPress

Moduły instaluje się i aktualizuje we wtyczce Gapli Full Dropshipping w kokpicie WordPressa (menu Gapli → Moduły). Każdy rozszerza sklep WooCommerce połączony z GAPLI o jedną funkcję. Sklep łączy się z GAPLI przez moduł Gapli Status Połączenia — większość pozostałych modułów korzysta z zapisanego przez niego tokenu.

---

## Gapli Full Dropshipping

> Moduł WordPress/WooCommerce GAPLI (`gapli-full-dropshipping`) · kategoria: Podstawa i monitoring · aktualna wersja 1.9.11 · WordPress 6.0+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/full-dropshipping

Wtyczka główna. Instaluje, włącza i aktualizuje wszystkie pozostałe moduły GAPLI oraz ustawia WooCommerce tak, jak wymaga tego współpraca z GAPLI.

### Gdzie go znajdziesz

Menu „Gapli” → „Moduły”. Pozostałe moduły dokładają swoje ekrany do tego samego menu „Gapli”. Po pierwszej aktywacji wtyczka otwiera ekran powitalny.

### Pierwsze uruchomienie

1. Zainstaluj i włącz wtyczkę w WordPressie (Wtyczki → Dodaj nową → Wyślij wtyczkę na serwer).
2. Na ekranie powitalnym kliknij „Akceptuję i proszę o pobranie i włączenie modułów Gapli” — wtyczka pobierze wymagane moduły.
3. Na ekranie „Moduły” pobierz i włącz moduły, których potrzebujesz. Przycisk „Dokumentacja” przy każdym z nich prowadzi do tej dokumentacji.
4. Zostaw włączony przełącznik „Auto-aktualizacje” (domyślnie włączony) — sklep będzie sam instalował nowe wersje modułów.

### Co dzieje się automatycznie

- Co kilka minut sprawdza dostępność aktualizacji i — przy włączonych auto-aktualizacjach — sama je instaluje.
- Ustawia bezpośrednie odnośniki na „Nazwa wpisu” (/%postname%/), bez tego połączenie z GAPLI nie działa.
- Ustawia podatki WooCommerce (ceny z VAT, stawki VAT kraju rynku), domyślny kraj sklepu oraz walutę i jej format według rynku.

### Wymagania i powiązane moduły

- Wymagany moduł: Gapli Status Połączenia — bez niego sklep nie połączy się z panelem GAPLI.

### Gdy coś nie działa

- **„Sklep ma odnośniki bezpośrednie ustawione na »Zwykłe«”** — Wejdź w Ustawienia → Bezpośrednie odnośniki, wybierz „Nazwa wpisu” i zapisz.
- **„Ustawiliśmy ładne odnośniki, ale serwer ich nie zastosował”** — Kliknij „Zapisz zmiany” w Ustawienia → Bezpośrednie odnośniki. Jeśli to nie pomaga, poproś hosting o sprawdzenie, czy WordPress może zapisywać plik .htaccess.
- **„Brakuje wymaganego modułu”** — Na ekranie Gapli → Moduły pobierz i włącz moduł oznaczony jako wymagany.

---

## Gapli Status Połączenia

> Moduł WordPress/WooCommerce GAPLI (`gapli-status-polaczenia`) · kategoria: Podstawa i monitoring · aktualna wersja 1.6.2 · WordPress 5.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/status-polaczenia

Łączy sklep z panelem GAPLI. Panel regularnie sprawdza połączenie i odczytuje wersje modułów oraz dane rynku. Moduł wymagany.

### Gdzie go znajdziesz

Gapli → Status Połączenia. Ekran pokazuje status, ID sklepu, czas ostatniego sprawdzenia, token weryfikacyjny (z przyciskiem „Resetuj token”), ostatni błąd i adres endpointu.

### Pierwsze uruchomienie

1. Włącz moduł na ekranie Gapli → Moduły.
2. W panelu GAPLI wejdź w Twoje Sklepy i podłącz sklep — panel sam zapisze token w WordPressie. Niczego nie wpisujesz ręcznie.
3. Wróć na ekran Status Połączenia i sprawdź, czy status jest aktywny, a pole „Ostatni ping” pokazuje świeżą datę.

### Co dzieje się automatycznie

- Odpowiada na sprawdzenia połączenia wysyłane przez panel GAPLI (endpointy gapli/v1/ping, gapli/v1/status, gapli/v1/register).
- Wyłącza cache strony dla tych adresów, żeby wtyczki cache nie zwracały starej odpowiedzi.
- Przy aktywacji naprawia ustawienie bezpośrednich odnośników.

### Wymagania i powiązane moduły

- Gapli Full Dropshipping — przez nią ekran modułu pojawia się w menu.
- Z tokenu zapisanego przez ten moduł korzystają Category Manager, Fast Products, Pages i Inventory Sync.

### Shortcody

#### Diagnostyka

Oba shortcody widzi tylko zalogowany administrator — pozostali odwiedzający dostają komunikat o braku uprawnień. Wstaw je na prywatną stronę roboczą, nie na stronę publiczną.

- `[gapli_status]` — Stan połączenia sklepu z GAPLI: ✅ Połączony, ⏳ Oczekiwanie, ❌ Brak połączenia albo 🚨 Błąd.

- `[gapli_modules]` — Lista zainstalowanych modułów GAPLI z ich wersjami.
  - Gdy brak danych: „Brak zainstalowanych modułów Gapli.”

### Gdy coś nie działa

- **„Sklep jest już powiązany z innym kontem”** — Kliknij „Resetuj token” na ekranie Status Połączenia i podłącz sklep ponownie z właściwego konta w panelu GAPLI.
- **Ostatni błąd: invalid_token** — Token w sklepie i w panelu się nie zgadzają. Zresetuj token i połącz sklep od nowa.
- **Panel GAPLI nie widzi sklepu, a adresy /wp-json/ zwracają 404** — Bezpośrednie odnośniki są ustawione na „Zwykłe”. Zmień je na „Nazwa wpisu” w Ustawienia → Bezpośrednie odnośniki.

---

## Gapli System Check

> Moduł WordPress/WooCommerce GAPLI (`gapli-system-check`) · kategoria: Podstawa i monitoring · aktualna wersja 1.0.20 · WordPress 6.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/system-check

Sprawdza, czy hosting spełnia wymagania GAPLI, i pilnuje, żeby kolejka zadań WooCommerce (Action Scheduler) nie zapychała bazy danych.

### Gdzie go znajdziesz

Gapli → System Check. Bez wtyczki Full Dropshipping moduł tworzy własne menu „Gapli System Check”.

### Pierwsze uruchomienie

1. Włącz moduł i kliknij „Rozpocznij sprawdzanie”.
2. Przejrzyj raport: ✅ oznacza spełnione wymaganie, ⚠️ — działa, ale poniżej zalecanego poziomu, ❌ — wymaga poprawki u hostingu.
3. Gdy panel GAPLI dostaje z API sklepu stare dane, kliknij „Odetnij API od cache i wyczyść pamięć”.
4. Gdy zadania WooCommerce stoją w miejscu, kliknij „Wyczyść zablokowane akcje Action Scheduler”.

### Co dzieje się automatycznie

- Co 15 minut czyści zakończone i zablokowane zadania Action Schedulera; przy ponad 1000 zaległych zadaniach — co 5 minut.
- Gdy tabele Action Schedulera przekroczą 50 tys. wpisów, wykonuje jednorazowe czyszczenie awaryjne.
- Skraca przechowywanie logów Action Schedulera do 60 sekund (WooCommerce domyślnie trzyma je 30 dni).

### Wymagania i powiązane moduły

- PHP co najmniej 7.4, zalecane 8.1 lub nowsze.
- memory_limit co najmniej 256M, zalecane 512M.
- Raport sprawdza też rozszerzenia PHP, konfigurację serwera, obsługę metod HTTP i nagłówki CORS.

### Gdy coś nie działa

- **W raporcie są pozycje oznaczone ❌** — Przekaż raport hostingowi — większość wymagań (wersja PHP, limit pamięci, rozszerzenia) zmienia się w panelu hostingu.

---

## Gapli Command Center

> Moduł WordPress/WooCommerce GAPLI (`gapli-command-center`) · kategoria: Podstawa i monitoring · aktualna wersja 1.0.4 · WordPress 6.0+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/command-center

Kokpit sklepu w WordPressie: sprzedaż, zamówienia, stan magazynu, status modułów GAPLI i zdrowie systemu w jednym miejscu.

### Gdzie go znajdziesz

Gapli → Kokpit (pierwsza pozycja menu Gapli). Na pulpicie WordPressa pojawia się też widżet „🛒 Gapli Dropshipping”.

### Pierwsze uruchomienie

1. Włącz moduł — nie wymaga konfiguracji.

### Co dzieje się automatycznie

- Pokazuje liczbę produktów, zamówienia i przychód z dzisiaj, dostępność magazynu oraz wykres sprzedaży z 7, 14 lub 30 dni.
- Sprawdza, czy działają moduły podstawowe: Full Dropshipping, Status Połączenia, System Check, Fast Products, Categories Manager, Inventory Sync i Order Sync.
- W sekcji „Zdrowie systemu” ostrzega o problemach z połączeniem, zadaniami cyklicznymi i pamięcią serwera.

### Wymagania i powiązane moduły

- WooCommerce — bez niego moduł się nie uruchamia.
- Gapli Full Dropshipping — bez niej ekran modułu nie pojawi się w menu.

### Gdy coś nie działa

- **„Brak tokena weryfikacyjnego Gapli…”** — Połącz sklep z panelem GAPLI na ekranie Gapli → Status Połączenia.
- **„WP-CRON aktywny — zalecane… CRON systemowy”** — Synchronizacje działają, ale tylko przy odwiedzinach sklepu. Ustaw u hostingu systemowy cron wywołujący wp-cron.php co kilka minut.
- **„Limit pamięci… zalecane min. 256M”** — Poproś hosting o podniesienie memory_limit PHP do co najmniej 256M.

---

## Gapli Categories Manager

> Moduł WordPress/WooCommerce GAPLI (`gapli-category-manager`) · kategoria: Produkty i kategorie · aktualna wersja 1.0.10 · WordPress 6.0+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/category-manager

Pozwala panelowi GAPLI tworzyć, zmieniać i usuwać kategorie WooCommerce, wysyłać ich obrazki i przypisywać kategorie produktom.

### Gdzie go znajdziesz

Gapli → Kategorie (bez Full Dropshipping: menu „Gapli Categories”). Ekran ma charakter informacyjny — kategoriami zarządzasz z panelu GAPLI.

### Pierwsze uruchomienie

1. Włącz moduł — nie wymaga konfiguracji.
2. Upewnij się, że sklep jest połączony na ekranie Gapli → Status Połączenia.

### Co dzieje się automatycznie

- Udostępnia panelowi GAPLI endpointy kategorii (tworzenie, edycja, usuwanie, obrazki, kategoria domyślna).
- Przypisuje kategorie produktom partiami do 500 produktów naraz.

### Wymagania i powiązane moduły

- WooCommerce.
- Gapli Status Połączenia — moduł korzysta z tokenu zapisanego przy podłączeniu sklepu do panelu GAPLI.

### Gdy coś nie działa

- **„WooCommerce nie jest aktywne”** — Zainstaluj i włącz WooCommerce.
- **„Brak zapisanego tokenu weryfikacyjnego”** — Połącz sklep z panelem GAPLI (Gapli → Status Połączenia).
- **„Nie można usunąć kategorii, która ma podkategorie”** — Najpierw usuń lub przenieś podkategorie, potem kategorię nadrzędną.

---

## Gapli Fast Products

> Moduł WordPress/WooCommerce GAPLI (`gapli-fast-products`) · kategoria: Produkty i kategorie · aktualna wersja 1.10.1 · WordPress 6.0+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/fast-products

Odbiera produkty wysyłane z panelu GAPLI i tworzy albo aktualizuje je w WooCommerce. Umożliwia też panelowi pobranie listy produktów, ich usunięcie i podmianę zdjęć.

### Gdzie go znajdziesz

Moduł nie ma własnego ekranu — działa w tle. Produkty dodajesz do sklepu z panelu GAPLI.

### Pierwsze uruchomienie

1. Włącz moduł — nie wymaga konfiguracji.
2. Sprawdź w WooCommerce → Ustawienia → Podatek opcję „Ceny wprowadzone z podatkiem”: od niej zależy, czy ceny z GAPLI zapisują się jako brutto, czy netto.

### Co dzieje się automatycznie

- Tworzy i aktualizuje produkty, warianty, kategorie i zdjęcia przesłane z panelu GAPLI.
- Gdy produkt zostaje zamieniony na warianty, ustawia przekierowanie 301 ze starego adresu karty produktu.
- Zapisuje tytuł i opis SEO do pól Yoast SEO, jeśli wtyczka jest zainstalowana.

### Wymagania i powiązane moduły

- WooCommerce.
- Gapli Status Połączenia — moduł korzysta z tokenu zapisanego przy podłączeniu sklepu do panelu GAPLI.
- Zalecany Gapli External Images — przy nim zdjęcia nie trafiają do biblioteki mediów WordPressa, co odciąża bazę i serwer.

### Gdy coś nie działa

- **„Gapli Fast Products: Wymaga aktywnej wtyczki WooCommerce”** — Włącz WooCommerce i zaktualizuj je do wymaganej wersji.
- **Panel GAPLI zgłasza „Nieprawidłowy token weryfikacyjny”** — Zresetuj token na ekranie Gapli → Status Połączenia i podłącz sklep ponownie.
- **Panel GAPLI zgłasza „Kategoria o ID … nie istnieje”** — Kategoria została usunięta w WooCommerce. Wyślij kategorie ponownie z panelu GAPLI.

---

## Gapli External Images

> Moduł WordPress/WooCommerce GAPLI (`gapli-external-images`) · kategoria: Produkty i kategorie · aktualna wersja 1.0.14 · WordPress 6.0+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/external-images

Wyświetla zdjęcia produktów prosto z CDN GAPLI lub serwera hurtowni, bez kopiowania ich do biblioteki mediów WordPressa. Odciąża bazę danych i dysk sklepu i przyspiesza import produktów.

### Gdzie go znajdziesz

Gapli → External Images. W edycji produktu pojawia się też okno „🌐 Zdjęcia External (Gapli)”.

### Pierwsze uruchomienie

1. Włącz moduł. Domyślny „Tryb pracy” to External Images — nowe zdjęcia z GAPLI nie trafiają już do biblioteki mediów.
2. „Lazy Loading” (domyślnie włączony) i „Domyślne wymiary” (800×800 px) zwykle zostawiasz bez zmian.
3. Jeśli sklep ma już produkty ze zdjęciami w bibliotece mediów, przejdź migrację w sekcji migracji: „Skanuj”, potem „Migracja” (paczki po 100 produktów).
4. Dopiero po sprawdzeniu, że zdjęcia w sklepie wyświetlają się poprawnie, użyj kroku „Usuń stare CDN attachments”. Tego kroku nie da się cofnąć.

### Co dzieje się automatycznie

- Gdy ręcznie zmienisz zdjęcie produktu w WordPressie, produkt dostaje oznaczenie „custom” i synchronizacja z GAPLI już go nie nadpisuje.
- Udostępnia zdjęcia modułom Product Image Studio, BWI Lider i Store Builder.

### Wymagania i powiązane moduły

- WooCommerce.
- Gapli Full Dropshipping — bez niej ekran modułu nie pojawi się w menu.

### Gdy coś nie działa

- **„Moduł działa w trybie media_library. Przełącz na external…”** — Zmień „Tryb pracy” na External Images i zapisz ustawienia, a dopiero potem uruchom migrację.
- **Produkt nie dostaje nowych zdjęć z GAPLI** — Produkt ma oznaczenie „custom”, bo jego zdjęcia zmieniono ręcznie. W oknie „🌐 Zdjęcia External (Gapli)” kliknij „🔄 Przywróć External Images”.

---

## Gapli Inventory Sync

> Moduł WordPress/WooCommerce GAPLI (`gapli-inventory-sync`) · kategoria: Stany i ceny · aktualna wersja 1.9.1 · WordPress 6.0+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/inventory-sync

Co kilka minut pobiera z GAPLI aktualne stany magazynowe oraz ceny (zwykłą i promocyjną) produktów GAPLI w sklepie.

### Gdzie go znajdziesz

Gapli → 📦 Sync Magazynu (bez Full Dropshipping: WooCommerce → 📦 Sync Magazynu).

### Pierwsze uruchomienie

1. Włącz moduł. Synchronizacja startuje od razu z ustawieniami domyślnymi.
2. „Interwał (minuty)” — domyślnie 5; do wyboru 1, 2, 5, 10, 15, 30 lub 60 minut.
3. „Strategia usuwania” — co zrobić z produktem, którego hurtownia już nie ma: wyzerować stan (domyślnie), zmienić w szkic albo przenieść do kosza.
4. „Dni bez stanu” — po ilu dniach bez stanu produkt trafia do kosza (domyślnie 14).
5. „Dni w koszu” — po ilu dniach kosz jest opróżniany (domyślnie 7). Uwaga: to trwałe usunięcie produktu.

### Co dzieje się automatycznie

- Cyklicznie odpytuje GAPLI o zmiany stanów i cen i zapisuje je w produktach.
- Rozpoznaje produkty GAPLI po SKU zakończonym podkreślnikiem i liczbą, np. ABC_315.

### Wymagania i powiązane moduły

- WooCommerce.
- Gapli Status Połączenia — moduł korzysta z tokenu zapisanego przy podłączeniu sklepu do panelu GAPLI.

### Gdy coś nie działa

- **W logu: „Brak tokenu weryfikacyjnego. Zarejestruj sklep w Gapli Dashboard.”** — Połącz sklep z panelem GAPLI (Gapli → Status Połączenia).
- **Stany aktualizują się z opóźnieniem nawet kilku godzin** — WordPress uruchamia zadania tylko przy odwiedzinach sklepu. Ustaw u hostingu systemowy cron (albo w usłudze typu cron-job.org) wywołujący wp-cron.php co kilka minut.
- **Własnym produktom zeruje się stan** — Moduł traktuje jako produkt GAPLI każdy produkt z SKU zakończonym „_liczba”. Zmień SKU własnych produktów tak, żeby nie kończyło się tym wzorcem.

---

## Gapli Shipping

> Moduł WordPress/WooCommerce GAPLI (`gapli-shipping`) · kategoria: Zamówienia i dostawa · aktualna wersja 1.9.0 · WordPress 6.0+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/shipping

Metody i koszty dostawy liczy GAPLI — strefy, progi darmowej dostawy, gabaryty i punkty odbioru. Sklep nie przechowuje własnych cenników, tylko pyta GAPLI o stawkę dla konkretnego koszyka.

### Gdzie go znajdziesz

WooCommerce → Gapli — dostawa (ekran diagnostyczny) oraz metoda „Gapli — dostawa” w strefach wysyłki: WooCommerce → Ustawienia → Wysyłka.

### Pierwsze uruchomienie

1. Upewnij się, że sklep jest połączony z GAPLI (Gapli → Status Połączenia).
2. Włącz moduł — sam doda metodę „Gapli — dostawa” do każdej strefy wysyłki.
3. Na ekranie WooCommerce → Gapli — dostawa kliknij „Odśwież konfigurację z GAPLI” i sprawdź, czy pojawiły się strefy i metody.
4. Złóż próbne zamówienie i sprawdź, czy w koszyku widać metody i ceny dostawy, a przy paczkomatach — wybór punktu odbioru.

### Co dzieje się automatycznie

- Wyłącza w strefach z metodą GAPLI wszystkie inne metody dostawy — przy aktywacji, przy każdym zapisie ustawień wysyłki i co godzinę. Ceny dostawy ustawia się centralnie w GAPLI, nie w sklepie.
- Przechowuje konfigurację przez godzinę; gdy GAPLI chwilowo nie odpowiada, używa ostatniej znanej.
- Na karcie produktu pokazuje „Dostawa od X” albo „Darmowa dostawa”.
- Obsługuje kasę klasyczną i blokową, łącznie z wyborem punktu odbioru.

### Wymagania i powiązane moduły

- Gapli Status Połączenia — wymagany.
- Po wyłączeniu modułu metody dostawy wyłączone przez GAPLI nie wracają same — trzeba je włączyć ręcznie w strefach wysyłki.

### Gdy coś nie działa

- **„Sklep nie jest połączony z GAPLI”** — Dokończ połączenie na ekranie Gapli → Status Połączenia.
- **„GAPLI nie zwróciło żadnej strefy”** — Rynek sklepu nie ma aktywnej strefy z cennikiem. Napisz do obsługi GAPLI.
- **Klient widzi „Wybierz punkt odbioru dla metody…”** — To prawidłowe zachowanie — przy dostawie do paczkomatu lub punktu klient musi wskazać punkt przed złożeniem zamówienia.

---

## Gapli Order Sync

> Moduł WordPress/WooCommerce GAPLI (`gapli-order-sync`) · kategoria: Zamówienia i dostawa · aktualna wersja 1.4.2 · WordPress 6.0+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/order-sync

Wysyła nowe zamówienia WooCommerce do GAPLI do realizacji i pobiera z GAPLI zmiany statusów oraz numery przesyłek.

### Gdzie go znajdziesz

Gapli → 🔄 Sync Zamówień (bez Full Dropshipping: WooCommerce → 🔄 Sync Zamówień).

### Pierwsze uruchomienie

1. Upewnij się, że sklep jest połączony z GAPLI (Gapli → Status Połączenia).
2. Włącz moduł. Domyślnie włączone są: „Moduł aktywny”, „Push (WC → Gapli)” i „Pull (Gapli → WC)”.
3. „Interwał synchronizacji” — domyślnie 5 minut; do wyboru 2, 5, 10, 15 lub 30 minut.
4. Po pierwszym zamówieniu sprawdź na karcie zamówienia notatkę „✅ … (Gapli ID: …)” — oznacza, że zamówienie dotarło do GAPLI.

### Co dzieje się automatycznie

- Każde nowe zamówienie trafia do kolejki i jest wysyłane do GAPLI w kolejnym cyklu. Nieudana wysyłka jest ponawiana do 5 razy.
- Dodaje do zamówienia notatki z numerami przesyłek.
- Zmienia status zamówienia według GAPLI: w realizacji → „W trakcie realizacji”, wysłane/doręczone → „Zrealizowane”, anulowane → „Anulowane”. Statusu nigdy nie cofa.
- Przyciski „Push teraz” i „Pull teraz” uruchamiają synchronizację od razu.

### Wymagania i powiązane moduły

- WooCommerce — bez wymaganej wersji moduł nie da się włączyć.
- Gapli Status Połączenia — moduł korzysta z tokenu zapisanego przy podłączeniu sklepu do panelu GAPLI.

### Gdy coś nie działa

- **„❌ Brak tokenu weryfikacyjnego — skonfiguruj wtyczkę Gapli Status Połączenia najpierw”** — Połącz sklep z panelem GAPLI na ekranie Gapli → Status Połączenia.
- **W logach: „przekroczono max prób (5)”** — Zamówienie nie będzie już ponawiane automatycznie. Usuń przyczynę błędu podaną w logu i kliknij „Push teraz” albo zgłoś zamówienie do obsługi GAPLI.
- **Statusy i numery przesyłek pojawiają się z dużym opóźnieniem** — WordPress uruchamia zadania tylko przy odwiedzinach sklepu. Ustaw u hostingu systemowy cron wywołujący wp-cron.php co kilka minut.

---

## Gapli Payments

> Moduł WordPress/WooCommerce GAPLI (`gapli-payments`) · kategoria: Płatności · aktualna wersja 2.7.0 · WordPress 6.0+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/gapli-payments

Płatności online obsługiwane centralnie przez GAPLI: BLIK, karta, Apple Pay, Google Pay, Przelewy24 i Link. Sklep nie potrzebuje własnego konta u operatora płatności ani kluczy API.

### Gdzie go znajdziesz

WooCommerce → Ustawienia → Płatności → GAPLI Payments (link „Ustawienia” znajdziesz też na liście wtyczek). Osobnego menu moduł nie ma.

### Pierwsze uruchomienie

1. Upewnij się, że sklep jest połączony z GAPLI (Gapli → Status Połączenia).
2. Włącz moduł i sprawdź w WooCommerce → Ustawienia → Płatności, że „GAPLI Payments” jest włączone.
3. Opcjonalnie zmień „Nazwę metody płatności” (domyślnie „Płatność online”) i „Opis”, które widzi klient w kasie.
4. „Adres API GAPLI” zostaw bez zmian (https://gapli.com) — zmieniaj tylko na polecenie obsługi GAPLI.
5. Przycisk „Kup teraz” oraz Apple Pay / Google Pay na karcie produktu są domyślnie włączone; portfele pokazują się klientom z urządzeniem, które je obsługuje.

### Co dzieje się automatycznie

- Tworzy sesję płatności i po zapłacie sam oznacza zamówienie jako opłacone na podstawie powiadomienia z GAPLI.
- Na liście zamówień dodaje kolumnę „Kanał płatności”, a na karcie zamówienia — opis kanału.
- Klient może zgłosić zwrot lub anulowanie w „Moje konto” do 30 dni od zapłaty.

### Wymagania i powiązane moduły

- Gapli Status Połączenia — wymagany.
- Płatności muszą być włączone dla rynku sklepu po stronie GAPLI.
- Obsługuje nowe przechowywanie zamówień WooCommerce (HPOS) i kasę blokową.

### Gdy coś nie działa

- **Metoda płatności nie pojawia się w kasie** — Sklep nie jest połączony albo płatności nie są włączone dla jego rynku. Sprawdź Status Połączenia; jeśli jest aktywny, napisz do obsługi GAPLI. Zmiana po stronie GAPLI jest widoczna w sklepie po około 5 minutach.
- **„Zwrotów nie wykonuje się w sklepie…”** — Zwroty płatności realizuje GAPLI. Klient zgłasza zwrot w „Moje konto”, a Ty obsługujesz go w panelu GAPLI.
- **Klient widzi „Nie udało się przygotować płatności”** — Klient może spróbować ponownie albo wybrać inną metodę. Jeśli problem się powtarza, zgłoś go do obsługi GAPLI z numerem zamówienia.

---

## Gapli Pages

> Moduł WordPress/WooCommerce GAPLI (`gapli-pages`) · kategoria: Strony i treści · aktualna wersja 1.6.7 · WordPress 6.2+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/gapli-pages

Pobiera z GAPLI strony sklepu (regulamin, polityki, informacje) i dane firmy, udostępnia je jako shortcody i ustawia polskie treści zgód w kasie WooCommerce.

### Gdzie go znajdziesz

Gapli → Gapli Pages (do wersji 1.6.6 pozycja nazywała się „Pages Sync”). Na liście Strony w WordPressie pojawia się dodatkowa kolumna i filtry stron pobranych z GAPLI.

### Pierwsze uruchomienie

1. Włącz moduł. Rynek sklepu przychodzi z modułu Status Połączenia — niczego nie wpisujesz.
2. Kliknij „Force Sync Pages Now”, żeby od razu pobrać strony, i „Sync Company Data”, żeby pobrać dane firmy.

### Co dzieje się automatycznie

- Dwa razy dziennie synchronizuje strony z GAPLI. Synchronizacja nadpisuje ręczne zmiany w tych stronach — zmieniaj je w GAPLI, nie w WordPressie.
- Co godzinę odświeża dane firmy używane przez shortcody.
- Wyświetla strony produktów OnePage pod adresem /gapli-product/{id}/{slug}.

### Wymagania i powiązane moduły

- Gapli Status Połączenia (dane rynku) i Gapli Full Dropshipping (ekran w menu).

### Shortcody

#### Jak działają

- Shortcode to znacznik w nawiasach kwadratowych, np. [gapli_company_nip]. Wpisujesz go w treść strony, wpisu, widżetu tekstowego albo w Regulamin — WordPress przy wyświetlaniu podmienia go na aktualną wartość. W edytorze blokowym użyj bloku „Shortcode” albo wpisz znacznik w zwykły akapit.
- Dane pochodzą z GAPLI: to dane sprzedawcy przypisanego do rynku sklepu (firma, adres, kontakt, rynek). Moduł pobiera je co godzinę i zapisuje lokalnie w bazie sklepu, więc strona nie odpytuje GAPLI przy każdym wyświetleniu. Od razu odświeżysz je przyciskiem „Sync Company Data” na ekranie Gapli → Gapli Pages.
- Danych nie zmienisz w WordPressie — zmiana w GAPLI trafia do wszystkich sklepów rynku przy najbliższej synchronizacji. Dzięki temu Regulamin i Polityka prywatności zawsze mają aktualny NIP, adres i kontakt.
- Firma ma dwa komplety kontaktów: dane rejestrowe (administracyjne) i obsługę klienta. Shortcody publiczne — [gapli_company_email], [gapli_company_telefon], [gapli_shop_email] i bloki — pokazują OBSŁUGĘ KLIENTA, a gdy jej nie ustawiono, dane rejestrowe. Dane rejestrowe bez podmiany dają tylko warianty z końcówką _glowny.
- Parametry wpisuj w prostych cudzysłowach: [gapli_company_email format="link"]. Moduł sam poprawia cudzysłowy drukarskie („ ” ’) wewnątrz [gapli_…], które wstawiają edytory tekstu, ale proste cudzysłowy są pewniejsze w innych miejscach.
- Gdy w danych GAPLI brakuje wartości, shortcode wstawia pusty tekst — strona się nie psuje, ale zostaje dziura. Wyjątki (z wartością zastępczą) opisano przy poszczególnych shortcodach.
- Starsze dokumenty z placeholderami {{TELEFON_FIRMY}}, {{EMAIL_FIRMY}}, {{KRS}}, {{kraje_dostawy}} i {{liczba_dni_na_platnosc}} są poprawiane automatycznie — także w Regulaminie wyświetlanym w kasie WooCommerce.
- Jeśli na stronie widać sam znacznik w nawiasach, moduł Gapli Pages jest wyłączony albo nieaktualny, albo w nazwie jest literówka.

#### Sklep

Dane samego sklepu internetowego — nie mylić z danymi rejestrowymi firmy.

- `[gapli_shop_name]` — Nazwa sklepu, czyli tytuł witryny z Ustawienia → Ogólne → „Tytuł witryny”. Używana w nagłówkach dokumentów, np. „Regulamin sklepu internetowego [gapli_shop_name]”. To nie jest nazwa rejestrowa firmy — do niej służy [gapli_company_name].
  - Gdy brak danych: Nazwa firmy z GAPLI, a gdy i jej brak — domena sklepu. Nigdy nie zostaje pusta.
  - Przykład: `Regulamin sklepu internetowego [gapli_shop_name]`

- `[gapli_shop_email]` — Adres e-mail, na który ma pisać kupujący — e-mail obsługi klienta firmy z GAPLI.
  - Gdy brak danych: E-mail rejestrowy firmy.
  - Parametr `format` (link; domyślnie: — (zwykły tekst)) — format="link" (albo równoważne link="true") wstawia klikalny odnośnik mailto: zamiast samego adresu.
  - Przykład: `Napisz do nas: [gapli_shop_email format="link"]`

- `[gapli_store_domain]` — Domena sklepu bez https:// i końcowego ukośnika, np. mojsklep.pl.
  - Przykład: `Sklep internetowy dostępny pod adresem [gapli_store_domain]`

#### Rynek

Dane rynku, na którym działa sklep (kraj, waluta, warunki z Regulaminu).

- `[gapli_market_name]` — Nazwa rynku, np. Polska.

- `[gapli_market_country_code]` — Kod kraju rynku, np. PL.

- `[gapli_market_currency]` — Waluta rynku, np. PLN.

- `[gapli_market_flag]` — Flaga rynku (emoji).

- `[gapli_market_kraje_dostawy]` — Kraje, do których sklep wysyła — tekst do Regulaminu, np. „Polska, Czechy, Słowacja”.
  - Przykład: `Dostawa realizowana jest na terenie: [gapli_market_kraje_dostawy].`

- `[gapli_market_dni_platnosc]` — Liczba dni, w których kupujący ma opłacić zamówienie — liczba do Regulaminu.
  - Przykład: `Zamówienie należy opłacić w ciągu [gapli_market_dni_platnosc] dni.`

- `[gapli_market_id]` — Wewnętrzny identyfikator rynku w GAPLI — przydatny głównie przy diagnozie.

#### Firma — dane rejestrowe

- `[gapli_company_name]` — Pełna nazwa rejestrowa firmy sprzedawcy.

- `[gapli_company_forma_prawna]` — Forma prawna, np. prosta spółka akcyjna.

- `[gapli_company_nip]` — NIP.

- `[gapli_company_regon]` — REGON.

- `[gapli_company_krs]` — Numer KRS.

- `[gapli_company_vat_id]` — Numer VAT UE (z prefiksem kraju).

- `[gapli_company_number]` — Numer rejestrowy firmy w kraju rynku (dla rynków spoza Polski).

- `[gapli_company_data_zalozenia]` — Data założenia firmy.
  - Parametr `format` (format daty PHP, np. d.m.Y, Y-m-d, d.m.Y H:i; domyślnie: d.m.Y) — Jak zapisać datę. d = dzień, m = miesiąc, Y = rok, H:i = godzina i minuty.
  - Przykład: `Działamy od [gapli_company_data_zalozenia format="Y"] roku.`

- `[gapli_company_description]` — Opis firmy ustawiony w GAPLI.

- `[gapli_company_website]` — Adres strony WWW firmy.
  - Parametr `format` (link; domyślnie: — (zwykły tekst)) — format="link" (albo równoważne link="true") wstawia klikalny odnośnik otwierany w nowej karcie.

- `[gapli_company_logo_url]` — Sam adres URL logo — do wstawienia np. w atrybut src własnego obrazka.

- `[gapli_company_logo]` — Logo firmy jako gotowy obrazek.
  - Parametr `width` (liczba pikseli; domyślnie: — (oryginał)) — Szerokość obrazka.
  - Parametr `height` (liczba pikseli; domyślnie: — (oryginał)) — Wysokość obrazka.
  - Parametr `alt` (dowolny tekst; domyślnie: „Logo <nazwa firmy>”) — Tekst alternatywny dla czytników ekranu i SEO.
  - Parametr `class` (nazwa klasy CSS; domyślnie: gapli-company-logo) — Klasa CSS bloku — przydaje się do własnego stylowania.
  - Przykład: `[gapli_company_logo width="160"]`

- `[gapli_company_id]` — Wewnętrzny identyfikator firmy w GAPLI — przydatny głównie przy diagnozie.

#### Kontakt

Warianty bez końcówki _glowny pokazują obsługę klienta (a gdy jej nie ustawiono — dane rejestrowe). Do strony Kontakt, stopki i Regulaminu używaj właśnie ich.

- `[gapli_company_email]` (alias: `[gapli_company_email_obslugi]`) — E-mail obsługi klienta.
  - Gdy brak danych: E-mail rejestrowy firmy.
  - Parametr `format` (link; domyślnie: — (zwykły tekst)) — format="link" (albo równoważne link="true") wstawia klikalny odnośnik mailto: zamiast samego adresu.
  - Przykład: `E-mail: [gapli_company_email format="link"]`

- `[gapli_company_telefon]` (alias: `[gapli_company_telefon_obslugi]`) — Telefon obsługi klienta.
  - Gdy brak danych: Telefon rejestrowy firmy.
  - Parametr `format` (link; domyślnie: — (zwykły tekst)) — format="link" (albo równoważne link="true") wstawia klikalny odnośnik tel: — na telefonie od razu wybiera numer.
  - Przykład: `Zadzwoń: [gapli_company_telefon format="link"]`

- `[gapli_company_email_glowny]` — E-mail rejestrowy (administracyjny) firmy — bez podmiany na obsługę klienta. Na stronach dla klientów zwykle niepotrzebny.
  - Parametr `format` (link; domyślnie: — (zwykły tekst)) — format="link" (albo równoważne link="true") wstawia klikalny odnośnik mailto: zamiast samego adresu.

- `[gapli_company_telefon_glowny]` — Telefon rejestrowy (administracyjny) firmy — bez podmiany na obsługę klienta.
  - Parametr `format` (link; domyślnie: — (zwykły tekst)) — format="link" (albo równoważne link="true") wstawia klikalny odnośnik tel: — na telefonie od razu wybiera numer.

- `[gapli_company_email_iod]` — E-mail Inspektora Ochrony Danych — do Polityki prywatności.
  - Parametr `format` (link; domyślnie: — (zwykły tekst)) — format="link" (albo równoważne link="true") wstawia klikalny odnośnik mailto: zamiast samego adresu.
  - Przykład: `W sprawach danych osobowych: [gapli_company_email_iod format="link"]`

#### Adres

Adres rejestrowy firmy — pełny albo w częściach — oraz osobny adres do zwrotów.

- `[gapli_address_full]` — Pełny adres rejestrowy w jednym ciągu.

- `[gapli_return_address]` — Adres, na który klient odsyła towar przy zwrocie lub reklamacji — domyślny magazyn firmy. Często inny niż adres rejestrowy, dlatego w formularzu odstąpienia i dokumentach zwrotów używaj tego shortcodu, a nie [gapli_address_full].
  - Gdy brak danych: Adres rejestrowy firmy, żeby dokument nigdy nie został bez adresu.
  - Przykład: `Towar należy odesłać na adres: [gapli_return_address]`

- `[gapli_address_street]` — Ulica.

- `[gapli_address_building_number]` — Numer budynku.

- `[gapli_address_apartment_number]` — Numer lokalu.

- `[gapli_address_postal_code]` — Kod pocztowy.

- `[gapli_address_city]` — Miejscowość.

- `[gapli_address_wojewodztwo]` — Województwo / region.

- `[gapli_address_country]` — Kraj.

- `[gapli_address_name]` — Nazwa adresu (np. nazwa siedziby), jeśli ustawiono.

- `[gapli_address_type]` — Typ adresu w GAPLI (np. siedziba).

- `[gapli_address_opening_hours]` — Godziny otwarcia — każdy dzień w osobnej linii, np. „Poniedziałek: 9:00–17:00”. Dni bez godzin są pomijane.

- `[gapli_address_contact_data]` — Dodatkowe dane kontaktowe przypisane do adresu — każda pozycja w osobnej linii.

- `[gapli_address_gps]` — Współrzędne GPS adresu.

- `[gapli_address_notes]` — Notatki do adresu.

- `[gapli_address_id]` — Wewnętrzny identyfikator adresu w GAPLI — przydatny głównie przy diagnozie.

#### Gotowe bloki

Wstawiają od razu sformatowany fragment HTML — najszybszy sposób na stronę Kontakt albo stopkę.

- `[gapli_company_info]` — Wizytówka firmy: nazwa jako nagłówek, a pod nią NIP, REGON, KRS, e-mail i telefon obsługi klienta (klikalne) oraz strona WWW. Pozycje bez wartości są pomijane.
  - Gdy brak danych: Gdy moduł nie pobrał jeszcze danych firmy — tekst „Brak danych firmy.”
  - Parametr `show_nip` (true / false; domyślnie: true) — Czy pokazać NIP.
  - Parametr `show_regon` (true / false; domyślnie: true) — Czy pokazać REGON.
  - Parametr `show_krs` (true / false; domyślnie: true) — Czy pokazać KRS.
  - Parametr `show_email` (true / false; domyślnie: true) — Czy pokazać e-mail.
  - Parametr `show_phone` (true / false; domyślnie: true) — Czy pokazać telefon.
  - Parametr `show_website` (true / false; domyślnie: true) — Czy pokazać stronę WWW.
  - Parametr `class` (nazwa klasy CSS; domyślnie: gapli-company-info) — Klasa CSS bloku — przydaje się do własnego stylowania.
  - Przykład: `[gapli_company_info show_regon="false" show_website="false"]`

- `[gapli_company_contact]` — Blok kontaktowy: nagłówek, e-mail 📧 i telefon 📞 obsługi klienta oraz strona WWW 🌐 — wszystko klikalne.
  - Parametr `title` (dowolny tekst lub pusty; domyślnie: Kontakt) — Nagłówek bloku. title="" usuwa nagłówek.
  - Parametr `class` (nazwa klasy CSS; domyślnie: gapli-company-contact) — Klasa CSS bloku — przydaje się do własnego stylowania.
  - Przykład: `[gapli_company_contact title="Obsługa klienta"]`

- `[gapli_company_address_block]` — Blok adresowy: nagłówek, pogrubiona nazwa firmy i pełny adres rejestrowy.
  - Gdy brak danych: Nic — gdy firma nie ma adresu, blok się nie pojawia.
  - Parametr `title` (dowolny tekst lub pusty; domyślnie: Adres) — Nagłówek bloku. title="" usuwa nagłówek.
  - Parametr `class` (nazwa klasy CSS; domyślnie: gapli-company-address) — Klasa CSS bloku — przydaje się do własnego stylowania.
  - Przykład: `[gapli_company_address_block title="Siedziba"]`

#### Daty i stan synchronizacji

Daty dotyczące bieżącej strony i danych firmy — np. „Regulamin obowiązuje od …”.

- `[gapli_page_updated_at]` — Kiedy treść tej strony zmieniono w GAPLI. Działa na stronach pobranych z GAPLI.
  - Parametr `format` (format daty PHP, np. d.m.Y, Y-m-d, d.m.Y H:i; domyślnie: d.m.Y H:i) — Jak zapisać datę. d = dzień, m = miesiąc, Y = rok, H:i = godzina i minuty.
  - Przykład: `Ostatnia zmiana regulaminu: [gapli_page_updated_at format="d.m.Y"]`

- `[gapli_page_last_sync]` — Kiedy sklep ostatnio pobrał tę stronę z GAPLI.
  - Parametr `format` (format daty PHP, np. d.m.Y, Y-m-d, d.m.Y H:i; domyślnie: d.m.Y H:i) — Jak zapisać datę. d = dzień, m = miesiąc, Y = rok, H:i = godzina i minuty.

- `[gapli_page_force_updated]` — Kiedy stronę ostatnio pobrano przyciskiem „Force Sync Pages Now”.
  - Parametr `format` (format daty PHP, np. d.m.Y, Y-m-d, d.m.Y H:i; domyślnie: d.m.Y H:i) — Jak zapisać datę. d = dzień, m = miesiąc, Y = rok, H:i = godzina i minuty.

- `[gapli_page_wordpress_updated]` — Data ostatniej zmiany strony w WordPressie (także zmiany zrobionej przez synchronizację).
  - Parametr `format` (format daty PHP, np. d.m.Y, Y-m-d, d.m.Y H:i; domyślnie: d.m.Y H:i) — Jak zapisać datę. d = dzień, m = miesiąc, Y = rok, H:i = godzina i minuty.

- `[gapli_company_synced_at]` — Kiedy sklep ostatnio pobrał dane firmy z GAPLI.
  - Parametr `format` (format daty PHP, np. d.m.Y, Y-m-d, d.m.Y H:i; domyślnie: d.m.Y H:i) — Jak zapisać datę. d = dzień, m = miesiąc, Y = rok, H:i = godzina i minuty.

- `[gapli_company_updated_at]` — Kiedy dane firmy zmieniono w GAPLI.
  - Parametr `format` (format daty PHP, np. d.m.Y, Y-m-d, d.m.Y H:i; domyślnie: d.m.Y H:i) — Jak zapisać datę. d = dzień, m = miesiąc, Y = rok, H:i = godzina i minuty.

- `[gapli_company_active]` — Czy firma jest aktywna w GAPLI.
  - Parametr `yes_text` (dowolny tekst; domyślnie: Aktywna) — Tekst, gdy warunek jest spełniony.
  - Parametr `no_text` (dowolny tekst; domyślnie: Nieaktywna) — Tekst, gdy warunek nie jest spełniony.

- `[gapli_company_is_default]` — Czy to domyślna firma rynku.
  - Parametr `yes_text` (dowolny tekst; domyślnie: Domyślna) — Tekst, gdy warunek jest spełniony.
  - Parametr `no_text` (dowolny tekst; domyślnie: Zwykła) — Tekst, gdy warunek nie jest spełniony.

### Gdy coś nie działa

- **„Market not found”** — Sklep nie jest połączony z GAPLI. Sprawdź ekran Gapli → Status Połączenia.
- **„Gapli Pages – Błąd synchronizacji”** — Wykonaj kroki podane w komunikacie, a potem kliknij „Force Sync Pages Now”.
- **Na stronie widać shortcode jako zwykły tekst albo pole jest puste** — Tekst w nawiasach kwadratowych oznacza wyłączony lub nieaktualny moduł — włącz go i zaktualizuj. Puste pole — kliknij „Sync Company Data”.

---

## Gapli Google Merchant

> Moduł WordPress/WooCommerce GAPLI (`gapli-google-merchant`) · kategoria: Marketing · aktualna wersja 1.1.3 · WordPress 6.0+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/google-merchant

Generuje plik XML z produktami dla Google Merchant Center (darmowe wyniki i reklamy w Google Zakupy) i dodaje na kartach produktów dane strukturalne Product (JSON-LD).

### Gdzie go znajdziesz

Gapli → 🛒 Google Merchant, zakładki: Ustawienia, Kategorie, Atrybuty, Status feeda, Filtry.

### Pierwsze uruchomienie

1. Włącz moduł. Feed i dane strukturalne są domyślnie włączone, a feed odświeża się co 6 godzin.
2. Na zakładce Kategorie przypisz kategoriom WooCommerce kategorie Google — przycisk podpowiedzi dobiera je automatycznie.
3. Na zakładce Atrybuty sprawdź źródła danych: marka z atrybutu pa_brand, GTIN/EAN z pola _gtin (moduł sprawdza też _ean, _global_unique_id, _barcode), MPN z SKU.
4. Na zakładce Status feeda skopiuj adres feedu: https://<domena-sklepu>/gapli-feed/google-merchant.xml.
5. W Google Merchant Center dodaj źródło danych produktów typu „plik pod adresem URL” i wklej ten adres.

### Co dzieje się automatycznie

- Odświeża feed co 1, 3, 6 lub 12 godzin albo raz dziennie (domyślnie co 6 godzin). W feedzie są tylko opublikowane produkty.
- Pomija produkty bez zdjęcia (domyślnie) — opcjonalnie także produkty bez GTIN.
- Gdy pliku jeszcze nie ma, generuje go przy pierwszym wejściu na adres feedu.

### Wymagania i powiązane moduły

- Gapli Full Dropshipping — bez niej ekran modułu nie pojawi się w menu.
- Rozszerzenie PHP XMLWriter.
- Zalecany Gapli AI Hub — przy nim podpowiedzi kategorii Google robi AI, bez niego moduł dopasowuje po nazwie.
- Gdy działa Yoast SEO, Rank Math lub SEOPress, moduł nie dodaje własnych danych JSON-LD, żeby ich nie dublować.

### Gdy coś nie działa

- **„Wymagane jest rozszerzenie PHP XMLWriter”** — Poproś hosting o włączenie rozszerzenia XMLWriter.
- **„WP-Cron jest wyłączony na tym serwerze”** — Ustaw u hostingu systemowy cron albo generuj feed ręcznie przyciskiem „Regeneruj feed teraz” na zakładce Status feeda.
- **Pod adresem feedu jest odpowiedź „Feed is being generated”** — Feed jest właśnie tworzony. Spróbuj ponownie za kilka minut.

---

## Gapli Meta Pixel

> Moduł WordPress/WooCommerce GAPLI (`gapli-meta-pixel`) · kategoria: Marketing · aktualna wersja 1.0.4 · WordPress 6.0+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/meta-pixel

Meta (Facebook/Instagram) Pixel w przeglądarce i Conversions API po stronie serwera, z dopasowaniem klientów (Advanced Matching) i katalogiem produktów do reklam dynamicznych.

### Gdzie go znajdziesz

Gapli → 📊 Meta Pixel, zakładki: Ogólne, Eventy, Katalog DPA, Advanced Matching, Diagnostyka.

### Pierwsze uruchomienie

1. W Meta Events Manager skopiuj identyfikator Pixela (15–16 cyfr) i wklej w polu „Pixel ID”.
2. W Events Manager → Settings → Conversions API kliknij „Generate Access Token” i wklej token w polu „Conversions API Access Token”.
3. Kliknij „Test CAPI” na zakładce Diagnostyka i sprawdź, czy połączenie działa.
4. Jeśli sklep pokazuje baner zgód na cookies, włącz „Wymagaj zgody na cookies (RODO)” — domyślnie ta opcja jest wyłączona.
5. Dla reklam dynamicznych dodaj w Meta Commerce Manager katalog z adresu https://<domena-sklepu>/gapli-meta-catalog/.

### Co dzieje się automatycznie

- Wysyła zdarzenia PageView, ViewContent, AddToCart, InitiateCheckout, Purchase i Search — z przeglądarki i z serwera, z deduplikacją.
- Nie śledzi zalogowanych administratorów.
- Co 6 godzin odświeża katalog produktów (tylko produkty dostępne w magazynie, identyfikator = SKU, ceny brutto).

### Wymagania i powiązane moduły

- Sklep musi działać na HTTPS — Meta tego wymaga.

### Gdy coś nie działa

- **Diagnostyka: „Pixel ID: Nie skonfigurowano” albo „Połączenie CAPI: błąd”** — Sprawdź Pixel ID i token, a potem kliknij „Test CAPI”. Token wygenerowany dla innego Pixela nie zadziała.
- **„Tryb testowy jest AKTYWNY. Eventy nie są liczone w produkcji”** — Po zakończeniu testów kliknij „Wyłącz” przy trybie testowym.
- **„SSL: Brak — Meta wymaga HTTPS”** — Włącz certyfikat SSL u hostingu i ustaw adres sklepu na https:// w Ustawienia → Ogólne.

---

## Gapli Cart Recovery

> Moduł WordPress/WooCommerce GAPLI (`gapli-cart-recovery`) · kategoria: Marketing · aktualna wersja 1.0.8 · WordPress 6.0+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/cart-recovery

Wykrywa porzucone koszyki i wysyła klientom sekwencję przypomnień e-mail lub SMS, opcjonalnie z kuponem rabatowym. Link w wiadomości przywraca koszyk i prowadzi prosto do kasy.

### Gdzie go znajdziesz

Gapli → 🛒 Cart Recovery, zakładki: Dashboard, Sekwencje, Szablony, Kanały, AI, Diagnostyka.

### Pierwsze uruchomienie

1. Na zakładce Kanały ustaw nadawcę: „Nadawca (From)”, „Email nadawcy” (adres z domeny sklepu, inaczej wiadomości trafią do spamu) i „Reply-To”.
2. Jeśli chcesz wysyłać SMS-y, wybierz dostawcę (Twilio, SMSApi.pl lub Webhook) i wpisz „API Key / SID” oraz „API Secret / Token”.
3. Na zakładce Sekwencje sprawdź kroki. Domyślnie: e-mail po 30 min, e-mail po 3 h, SMS po 24 h (wyłączony, kupon 5%), e-mail po 72 h (kupon 10%).
4. Włącz główny przełącznik na zakładce Sekwencje.
5. Na zakładce Sekwencje, w sekcji „Exit-intent”, zdecyduj o popupie przy wychodzeniu ze strony (domyślnie włączony w koszyku i kasie): na których stronach ma się pokazywać, po ilu sekundach bezczynności na telefonie (domyślnie 10) i przez ile godzin nie pokazywać go ponownie temu samemu klientowi (domyślnie 24).
6. Na zakładce Diagnostyka upewnij się, że nie ma ostrzeżeń.

### Co dzieje się automatycznie

- Co 15 minut wyszukuje koszyki porzucone na dłużej niż 30 minut i wysyła kolejne kroki sekwencji.
- Tworzy jednorazowe kupony z prefiksem „GAPLI-”, ważne 48 godzin.
- Wysyła wiadomości tylko klientom, którzy zaznaczyli zgodę w koszyku (zgoda jest domyślnie wymagana).
- Usuwa dane porzuconych koszyków po 90 dniach.
- Exit-intent: gdy klient z niepustym koszykiem wyjeżdża kursorem poza górną krawędź strony, wraca na kartę przeglądarki albo (na telefonie) przestaje przewijać, pokazuje okienko z produktami z koszyka i przyciskiem „Dokończ zakupy”.

### Wymagania i powiązane moduły

- Gapli Full Dropshipping — bez niej ekran modułu nie pojawi się w menu.
- Zalecany Gapli AI Hub — personalizuje treść wiadomości. Bez niego moduł wysyła szablony z zakładki Szablony.

### Gdy coś nie działa

- **Diagnostyka: „WP-Cron wyłączony w konfiguracji”** — Bez zadań cyklicznych żadna wiadomość nie wyjdzie. Ustaw u hostingu systemowy cron wywołujący wp-cron.php.
- **„Główny przełącznik jest wyłączony”** — Włącz go na zakładce Sekwencje.
- **Ostrzeżenie przy kroku SMS** — Kanał SMS nie jest skonfigurowany, więc krok zostanie pominięty. Uzupełnij dane dostawcy na zakładce Kanały albo wyłącz ten krok.

---

## Gapli Smart Cart OS

> Moduł WordPress/WooCommerce GAPLI (`gapli-smart-cart`) · kategoria: Sprzedaż w koszyku · aktualna wersja 1.2.1 · WordPress 6.0+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/smart-cart

Zwiększa wartość koszyka i pomaga domknąć sprzedaż: pływający widżet i wysuwany koszyk, pasek do darmowej dostawy, uproszczona kasa z ofertą dodatkową (Order Bump), strona podziękowania z upsellem i licznik zakupów na karcie produktu.

### Gdzie go znajdziesz

Gapli → 🛒 Smart Cart OS (bez Full Dropshipping: WooCommerce → 🛒 Smart Cart OS), zakładki: Ogólne, Karta produktu, Koszyk, Checkout, Upsell, Thank You, Płatności, Tracking.

### Pierwsze uruchomienie

1. Najpierw zainstaluj i skonfiguruj Gapli Payments — Smart Cart go wymaga.
2. Włącz moduł. Wszystkie funkcje poza „Kuponem na następne zakupy” są domyślnie włączone.
3. Na zakładce Koszyk sprawdź „Próg zapasowy (zł)” (domyślnie 200). Pasek darmowej dostawy sam bierze próg z ustawień dostawy, jeśli jest skonfigurowany — wartość zapasowa działa tylko bez niego.
4. Na zakładkach Checkout i Upsell sprawdź „Rabat (%)” oferty dodatkowej (domyślnie 20), „Timer (minuty)” (15) i „Min. marża (%)” (15).
5. Przejdź jako klient całą ścieżkę: karta produktu → koszyk → kasa → strona podziękowania.

### Co dzieje się automatycznie

- Zostawia w kasie wyłącznie płatności GAPLI — wyłącza wszystkie inne bramki płatności i nie pozwala ich ponownie włączyć, dopóki moduł jest aktywny.
- Włącza zakupy bez zakładania konta.
- Licznik zakupów na karcie produktu pokazuje sprzedaż z ostatnich 30 dni (ustawienie „Okno w dniach”, 1–90).
- Zakładka Tracking: przełącznik „DataLayer (GTM)” wysyła do Google Tag Managera zdarzenia otwarcia koszyka, dodania upsellu, oferty dodatkowej i zakupu.

### Wymagania i powiązane moduły

- Gapli Payments — wymagany.
- Zalecany Gapli Shipping (próg darmowej dostawy) i Gapli Status Połączenia (licznik zakupów).

### Gdy coś nie działa

- **„Moduł GAPLI Payments jest nieaktywny…” albo „…jest wymagany…”** — Kliknij „Aktywuj GAPLI Payments” albo zainstaluj moduł na ekranie Gapli → Moduły.
- **Klient widzi w kasie „System płatności jest w trakcie konfiguracji…”** — Żadna płatność GAPLI nie jest aktywna. Sprawdź WooCommerce → Ustawienia → Płatności → GAPLI Payments i połączenie sklepu.
- **Zniknęły inne metody płatności** — To celowe działanie modułu. Jeśli potrzebujesz innej bramki, wyłącz Smart Cart OS.

---

## Gapli AI Hub

> Moduł WordPress/WooCommerce GAPLI (`gapli-ai-hub`) · kategoria: AI · aktualna wersja 1.6.4 · WordPress 6.0+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/ai-hub

Jedno miejsce na klucze API dostawców AI (Anthropic, OpenAI, Google, OpenRouter) oraz kontrolę kosztów i budżetu. Korzystają z niego Google Merchant, Cart Recovery i Product Image Studio.

### Gdzie go znajdziesz

Gapli → 🤖 AI Hub, zakładki: Dostawcy AI, Modele, Domyślne, Koszty, Limity, Diagnostyka.

### Pierwsze uruchomienie

1. Na zakładce Dostawcy AI wpisz „Klucz API” co najmniej jednego dostawcy i włącz przełącznik „Aktywny”. Link „Pobierz klucz z …” prowadzi do strony dostawcy.
2. Kliknij „Testuj połączenie”, żeby sprawdzić klucz.
3. Na zakładce Limity ustaw budżet. Domyślnie: 10 USD dziennie, 200 USD miesięcznie, alert przy 80% wykorzystania. W polu „E-mail powiadomień” wpisz adres, na który ma przyjść alert (domyślnie e-mail administratora WordPressa; puste pole wyłącza e-maile).
4. Na zakładce Domyślne wybierz modele dla Google Merchant, Cart Recovery i Product Image Studio.

### Co dzieje się automatycznie

- Co 6 godzin zlicza zużycie i sprawdza budżet; raz dziennie testuje klucze API.
- Po przekroczeniu progu alertu pokazuje komunikat w kokpicie WordPressa i wysyła e-mail na „E-mail powiadomień” — najwyżej raz na dobę dla budżetu dziennego i raz na miesiąc dla miesięcznego.
- Po przekroczeniu budżetu przełącza na tańszy model (auto-fallback, domyślnie włączony) albo odmawia kolejnych zapytań.

### Wymagania i powiązane moduły

- Gapli Full Dropshipping — bez niej ekran modułu nie pojawi się w menu.
- Własny klucz API u wybranego dostawcy AI — koszty zapytań rozlicza dostawca.

### Gdy coś nie działa

- **„Dzienny/Miesięczny budżet AI wykorzystany w X%”** — Podnieś limit na zakładce Limity albo poczekaj na nowy dzień lub miesiąc.
- **„🚨 Wykryto problem z kluczami API dostawców AI”** — Popraw klucz wskazanego dostawcy i kliknij „Testuj połączenie”. Sprawdź też, czy konto u dostawcy ma środki.
- **„Brak aktywnych dostawców AI!”** — Włącz przełącznik „Aktywny” przy co najmniej jednym dostawcy z poprawnym kluczem.

---

## Gapli Product Image Studio

> Moduł WordPress/WooCommerce GAPLI (`gapli-product-image-studio`) · kategoria: AI · aktualna wersja 1.0.12 · WordPress 6.0+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/product-image-studio

Przerabia zdjęcia produktów przez AI na profesjonalne packshoty — na podstawie istniejących zdjęć, tytułu i opisu produktu. Pracuje w projektach przypisanych do kategorii, partiami w tle.

### Gdzie go znajdziesz

Gapli → 🎨 Image Studio, zakładki: Projekty, Ustawienia, Historia, Podgląd.

### Pierwsze uruchomienie

1. Zainstaluj Gapli AI Hub i dodaj w nim klucz dostawcy, który generuje obrazy (Google, OpenAI, Recraft lub Ideogram).
2. Na zakładce Projekty utwórz projekt: „Nazwa projektu”, „Kategoria produktów” (albo „Cała baza produktów”), „Rozmiar zdjęcia”, „Dodatkowe instrukcje” i „Model AI do generowania zdjęć”.
3. Sprawdź wynik na zakładce Podgląd, zanim przetworzysz całą kategorię.
4. Nowy projekt startuje wstrzymany — uruchom go, gdy podgląd Ci odpowiada.
5. Na zakładce Ustawienia ustaw „Limit budżetu dziennego” (domyślnie 5 USD). Opcja „Backup oryginalnych zdjęć” jest domyślnie włączona — zostaw ją.

### Co dzieje się automatycznie

- Co 30 minut (ustawienie „Interwał CRON”) przetwarza aktywne projekty partiami po 5 produktów.
- Pomija produkty już przetworzone i generuje metadane SEO zdjęć po polsku.
- Zatrzymuje się po wyczerpaniu dziennego budżetu, a ukończone projekty oznacza jako zakończone.

### Wymagania i powiązane moduły

- Gapli AI Hub z aktywnym dostawcą generującym obrazy — wymagany.
- Gapli Full Dropshipping — bez niej ekran modułu nie pojawi się w menu.
- Rozszerzenie PHP GD lub Imagick.
- Współpracuje z Gapli External Images.

### Gdy coś nie działa

- **„Wymaga aktywnego modułu Gapli AI Hub…”** — Zainstaluj i włącz AI Hub na ekranie Gapli → Moduły, a potem dodaj w nim klucz API.
- **„❌ NIE ZAPLANOWANY – CRON nie jest zaplanowany!”** — Zapisz ustawienia na zakładce Ustawienia — moduł sam zaplanuje zadanie.
- **Przy włączaniu: „wymaga rozszerzenia GD lub Imagick”** — Poproś hosting o włączenie rozszerzenia PHP GD albo Imagick.

---

## Gapli Store Builder

> Moduł WordPress/WooCommerce GAPLI (`gapli-store-builder`) · kategoria: Wygląd i budowa sklepu · aktualna wersja 2.3.4 · WordPress 6.4+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/store-builder

Kreator AI, który w kilkanaście minut stawia kompletny sklep WooCommerce: preset branżowy, styl, motyw Gapli Starter, strony sklepu, ustawienia SEO i treści napisane przez AI. Zawiera też Launch Checklist — listę kontrolną przed startem sprzedaży.

### Gdzie go znajdziesz

Gapli → 🏗️ Store Builder, zakładki: Dashboard, Kreator AI, Strony, Treści AI, Launch Checklist, Ustawienia. Dopóki nie ukończysz kreatora, każda zakładka prowadzi do kreatora.

### Pierwsze uruchomienie

1. Zainstaluj Gapli AI Hub i dodaj w nim klucz co najmniej jednego dostawcy AI — bez tego treści AI nie powstaną.
2. Krok 1 — Branża: Elektronika & Technologia, Beauty & Kosmetyki, Moda & Odzież, Sport & Fitness albo Dom & Ogród.
3. Krok 2 — Styl: Modern E-commerce, Hyper Minimalism, Premium Luxury, Scandinavian albo Glassmorphism.
4. Krok 3 — Marka: „Nazwa sklepu”, „Dla kogo jest Twój sklep?”, „Styl komunikacji”, „Poziom cenowy” i „Zasięg marki”. Kliknij „🚀 Zbuduj sklep!”.
5. Krok 4 — Generowanie: kreator zapisuje konfigurację, stosuje preset branżowy, instaluje motyw Gapli Starter, tworzy strony O nas, Kontakt oraz Zwroty i reklamacje, ustawia stronę główną i SEO.
6. Krok 5 — Treści AI: wygeneruj stronę główną, stronę O nas, dokumenty prawne i meta SEO — pojedynczo albo przyciskiem „Generuj wszystkie treści jednocześnie” (ok. 1–2 minuty).
7. Przejdź do zakładki Launch Checklist i uzupełnij wszystko, co nie jest odhaczone.
8. Chcesz przejść kreator jeszcze raz? Na zakładce Ustawienia kliknij „Resetuj wizarda” — kreator wróci do kroku 1. Strony, motyw i wygenerowane treści zostają bez zmian, dopóki nie zbudujesz sklepu ponownie.

### Co dzieje się automatycznie

- Krok SEO nadpisuje nazwę i opis witryny, włącza widoczność dla wyszukiwarek i ustawia bezpośrednie odnośniki „Nazwa wpisu”.
- Launch Checklist sprawdza: favicon, logo, aktywny motyw Gapli Starter, stronę główną, politykę prywatności, regulamin, min. 10 opublikowanych produktów, min. 3 kategorie, aktywną bramkę płatności, metody dostawy, własny tytuł i opis strony oraz HTTPS — i podaje wynik w procentach.

### Wymagania i powiązane moduły

- Gapli AI Hub — wymagany do wszystkich funkcji AI.
- Gapli Full Dropshipping — bez niej ekran modułu nie pojawi się w menu.
- Motyw Gapli Starter — kreator instaluje go sam; ręcznie zrobisz to w Ustawieniach przyciskiem „Zainstaluj i aktywuj”.
- Treść stron najwygodniej edytujesz potem w module Gapli BWI Lider.

### Gdy coś nie działa

- **„Moduł Gapli AI Hub wymagany”** — Kliknij „Przejdź do modułów →”, zainstaluj AI Hub i dodaj w nim klucz API.
- **„Nie udało się zainstalować motywu Gapli Starter”** — Na zakładce Ustawienia kliknij „Zainstaluj i aktywuj”. Jeśli to nie pomaga, hosting blokuje pobieranie plików lub zapis w katalogu motywów — sprawdź to w Gapli → System Check.
- **„Sklep utworzony z N ostrzeżeniami”** — Sklep działa, ale część kroków się nie udała. Przejrzyj Launch Checklist i uzupełnij brakujące pozycje.

---

## Gapli Theme Settings

> Moduł WordPress/WooCommerce GAPLI (`gapli-theme-settings`) · kategoria: Wygląd i budowa sklepu · aktualna wersja 1.1.0 · WordPress 6.4+ · WooCommerce 9.6+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/theme-settings

Panel wyglądu motywu Gapli Starter: kolor akcentu, zaokrąglenia, fonty, przyklejony nagłówek, pasek ogłoszeń, wygląd kart produktów, ustawienia wydajności i własny CSS.

### Gdzie go znajdziesz

Gapli → 🎨 Motyw (od wersji 1.0.3; wcześniejsze wersje nie pokazywały tej pozycji w menu — zaktualizuj moduł). Bez Full Dropshipping: Wygląd → 🎨 Motyw. Zakładki: Wygląd, Header, WooCommerce, Performance, Zaawansowane.

### Pierwsze uruchomienie

1. Upewnij się, że aktywny jest motyw Gapli Starter (Wygląd → Motywy).
2. Gotowy wariant stylu motywu wybierasz w Wygląd → Edytor → Style albo w kreatorze Store Builder. Theme Settings nakłada na niego Twoje kolory i fonty.
3. Na zakładce Wygląd ustaw kolor akcentu, zaokrąglenie rogów i fonty nagłówków oraz tekstu.
4. Na zakładce Header włącz przyklejony nagłówek i pasek ogłoszeń (tekst, kolor tła, kolor tekstu).
5. Na zakładce WooCommerce wybierz styl karty produktu, liczbę produktów w rzędzie (na ekranach od 782 px), animację przycisku koszyka i wyraźniejszą plakietkę promocji.
6. Na zakładce Performance zdecyduj o lazy loadingu obrazów, wyświetlaniu tekstu przed załadowaniem fontu i adresach do wcześniejszego połączenia (preconnect). Na zakładce Zaawansowane możesz dopisać własny CSS.
7. Kliknij „Zapisz ustawienia” na każdej zakładce, którą zmieniasz — zapis jednej zakładki nie rusza pozostałych. „Resetuj do domyślnych” przywraca ustawienia fabryczne wszystkich zakładek.

### Co dzieje się automatycznie

- Wstawia ustawienia wyglądu do sklepu jako CSS — zmiany widać od razu po zapisaniu.
- Rejestruje miejsca na menu: Menu główne, Menu stopki i Menu mobilne (Wygląd → Menu).

### Wymagania i powiązane moduły

- Motyw Gapli Starter — pasek ogłoszeń wyświetla tylko on; pozostałe ustawienia są dopasowane do jego układu.

### Gdy coś nie działa

- **„⚠️ Motyw Gapli Starter nie jest aktywny!”** — Włącz motyw w Wygląd → Motywy albo zainstaluj go przez Gapli → 🏗️ Store Builder → Ustawienia.
- **Nie ma pozycji „🎨 Motyw” w menu Gapli** — Masz wersję 1.0.2 lub starszą. Na ekranie Gapli → Moduły kliknij „Sprawdź aktualizacje” i zaktualizuj Gapli Theme Settings.
- **Po zapisaniu jednej zakładki wróciły domyślne kolory lub fonty** — Tak działały wersje do 1.0.3 — zapis zakładki kasował ustawienia pozostałych. Zaktualizuj moduł do 1.1.0 i ustaw zakładki ponownie.
- **Nie ma zakładek Footer i AI, Quick View, Cookie Bar ani Custom JS** — Usunięte w wersji 1.1.0 — te pola były zapisywane, ale nic w sklepie z nich nie korzystało. Stopkę zmienisz w Wygląd → Edytor, w części szablonu „Stopka”.

---

## Gapli BWI Lider

> Moduł WordPress/WooCommerce GAPLI (`gapli-bwi-lider`) · kategoria: Wygląd i budowa sklepu · aktualna wersja 1.1.2 · WordPress 6.4+ · WooCommerce 10.0+ · PHP 8.0+  
> Wersja HTML: https://gapli.com/docs/bwi-lider

Edytor stron oparty na sekcjach z asystentem AI, wbudowany w ekran Stron WordPressa: podgląd na żywo, wspólny nagłówek i stopka, AI Designer, polecenia głosowe i generowanie grafik.

### Gdzie go znajdziesz

Gapli → 🏗️ BWI Lider oraz przycisk „GAPLI BWI LIDER” i baner „🚀 Otwórz edytor BWI Lider” przy edycji każdej strony. Wspólne sekcje znajdziesz w podstronie „Sekcje Globalne”.

### Pierwsze uruchomienie

1. Zainstaluj Gapli AI Hub i dodaj klucz dostawcy AI.
2. W AI Hub na zakładce Domyślne wybierz modele „BWI Lider — AI Designer” i „BWI Lider — Generator obrazów”.
3. W „Sekcje Globalne” dodaj nagłówek („Dodaj Header”) i stopkę („Dodaj Footer”) — pojawią się na wszystkich stronach BWI i w sklepie.
4. Otwórz dowolną stronę i kliknij „🚀 Otwórz edytor BWI Lider”. Buduj stronę z gotowych sekcji (Hero, Korzyści, Opinie, CTA, FAQ, Kontakt) albo opisz AI, czego potrzebujesz.

### Co dzieje się automatycznie

- Na stronach zbudowanych w BWI Lider zastępuje treść strony sekcjami z edytora.
- Wstawia wspólny nagłówek i stopkę na stronach BWI oraz na stronach sklepu WooCommerce.

### Wymagania i powiązane moduły

- Gapli AI Hub — wymagany do funkcji AI.
- Gapli Full Dropshipping — bez niej ekran modułu nie pojawi się w menu.
- Zalecane: Gapli Store Builder (dane produktów dla AI) i Gapli External Images (zdjęcia).

### Gdy coś nie działa

- **„AI Hub wymagany” albo „Gapli AI Hub nie jest aktywny”** — Kliknij „Zainstaluj AI Hub →”, włącz moduł i dodaj w nim klucz API.
- **„Prompt jest wymagany”** — Opisz w polu AI, co ma powstać — np. „sekcja z trzema korzyściami dostawy w 24 h”.
