StriveLab
Strony internetowe
Usługi
RealizacjeO mnieBlogPorozmawiajmy
PL
EN

Astro

Ultraszybkie projekty, łączące lekkość ze skalowalnością.

Next.js

Elastyczne i wydajne narzędzia dla biznesu, które dotrzymają kroku Twojemu rozwojowi.

React

Połączenie intuicyjności z wydajnością, które zapewnia bezproblemową skalowalność kodu.

SEO & Performance

Audyt techniczny i optymalizacja pod kątem SEO i GEO.

Automatyzacja AI

Bezpieczne automatyzacje procesów i agenci AI w n8n, Make i Claude.

QA & Automation

Testy automatyczne komponentów i E2E w Cypress.

Doradztwo produktowe

Połączenie perspektywy produktu, developera i marketingu w jednym miejscu

StriveLab
Strony internetowe
Usługi
RealizacjeO mnieBlogPorozmawiajmy
PL
EN

Astro

Ultraszybkie projekty, łączące lekkość ze skalowalnością.

Next.js

Elastyczne i wydajne narzędzia dla biznesu, które dotrzymają kroku Twojemu rozwojowi.

React

Połączenie intuicyjności z wydajnością, które zapewnia bezproblemową skalowalność kodu.

SEO & Performance

Audyt techniczny i optymalizacja pod kątem SEO i GEO.

Automatyzacja AI

Bezpieczne automatyzacje procesów i agenci AI w n8n, Make i Claude.

QA & Automation

Testy automatyczne komponentów i E2E w Cypress.

Doradztwo produktowe

Połączenie perspektywy produktu, developera i marketingu w jednym miejscu

Astro

Ultraszybkie projekty, łączące lekkość ze skalowalnością.

Next.js

Elastyczne i wydajne narzędzia dla biznesu, które dotrzymają kroku Twojemu rozwojowi.

React

Połączenie intuicyjności z wydajnością, które zapewnia bezproblemową skalowalność kodu.

SEO & Performance

Audyt techniczny i optymalizacja pod kątem SEO i GEO.

Automatyzacja AI

Bezpieczne automatyzacje procesów i agenci AI w n8n, Make i Claude.

QA & Automation

Testy automatyczne komponentów i E2E w Cypress.

Doradztwo produktowe

Połączenie perspektywy produktu, developera i marketingu w jednym miejscu

RealizacjeO mnieBlog
Porozmawiajmy
PL
EN

Nowoczesne strony internetowe dla firm, które myślą odważnie.

Przewiń do góry

Nazwa

StriveLab Maciej Sala

NIP

6772218995

REGON

524008527

E-mail

contact@strivelab.pl

Usługi główne
  • Tworzenie stron internetowych
  • Strony internetowe Next.js
  • Strony internetowe Astro
  • Strony internetowe React
Inne usługi
  • Usługi
  • SEO & Performance Sprint
  • QA & Stabilizacja
  • Konsultacje Product / Delivery
  • Automatyzacja Procesów AI
  • Aplikacje webowe Next.js
  • Współpraca ciągła
Strony
  • O mnie
  • Usługi
  • Realizacje
  • Blog

© 2026 StriveLab.pl

Polityka prywatności
WordPress

WooCommerce od zera — konfiguracja sklepu, płatności i wysyłki krok po kroku

Jak skonfigurować WooCommerce od zera: produkty, płatności, wysyłka, podatki, REST API, HPOS i checklista przed startem sprzedaży.

OpublikujLinkedInFacebookWyślij
Autor
Maciej Sala
Opublikowano
6 marca 2025 09:00
Czytanie
5 min czytania
Aktualizacja
25 maja 2026 10:55

WooCommerce to najczęstsza odpowiedź WordPressa na e-commerce, stworzona specjalnie dla małych i średnich sklepów. Potrafi dowieźć naprawdę bardzo wiele, ale tylko wtedy, gdy konfiguracja płatności, wysyłki, podatków i całego checkoutu jest zrobiona od początku do końca dokładnie.

Artykuł w skrócie

  • WooCommerce to WordPress z e-commerce — rdzenna integracja z CMS oznacza elastyczność, ale też konieczność zadbania o wydajność i bezpieczeństwo
  • HPOS (High Performance Order Storage) — nowy system przechowywania zamówień w dedykowanych tabelach; włącz po weryfikacji zgodności wtyczek
  • Płatności przez hooki — woocommerce_payment_gateways i woocommerce_available_payment_gateways pozwalają dodawać i warunkowo ukrywać metody płatności
  • REST API WooCommerce — pełne CRUD na produktach, zamówieniach i klientach przez Consumer Key + Consumer Secret; baza dla podejścia headless
  • Checklist przed startem — SSL, strony koszyka/checkout, VAT 23% dla Polski, maile transakcyjne, warianty produktów; zawsze przetestuj cały proces zamówienia w trybie testowym

W tym artykule przeprowadzę Cię przez konfigurację sklepu od zera do działającego MVP.

Instalacja

WooCommerce to wtyczka WordPress, instalujesz standardowo:

Code
Panel WP → Wtyczki → Dodaj nową → Szukaj "WooCommerce" → Zainstaluj → Aktywuj

Po aktywacji uruchamia się kreator, który możesz pominąć — pokażę konfigurację manualną, która daje więcej kontroli nad całością.

Struktura WooCommerce

Po instalacji pojawią się:

Code
wp-content/
├── plugins/
│   └── woocommerce/           # Core wtyczki
└── uploads/
    └── woocommerce_uploads/   # Pliki do pobrania, logi

Oraz nowe strony:

StronaShortcodeFunkcja
Sklep(brak shortcode)Ustawiana w WooCommerce → Ustawienia → Zaawansowane
Koszyk[woocommerce_cart]Koszyk zakupowy
Zamówienie[woocommerce_checkout]Finalizacja
Moje konto[woocommerce_my_account]Panel klienta
Uwaga

Strona sklepu nie wymaga shortcode — WooCommerce obsługuje ją przez własne query. [products] to osobny shortcode do wyświetlania produktów na dowolnej podstronie (np. landing page). Od WooCommerce 8.3+ dostępne są też bloki natywne: Cart Block i Checkout Block, które zastępują shortcode w edytorze bloków i są domyślne na nowych instalacjach.

Podstawowe ustawienia

Wszystko w: WooCommerce → Ustawienia

Zakładka: Ogólne

Code
Adres sklepu:
├── Kraj: Polska
├── Województwo: (domyślne dla wysyłki)
└── Lokalizacje sprzedaży: Sprzedaż do wszystkich krajów
                           lub: Sprzedaż do wybranych krajów

Opcje walutowe:
├── Waluta: Polski złoty (zł)
├── Pozycja waluty: Prawo ze spacją (100 zł)
├── Separator tysięcy: (spacja)
└── Separator dziesiętny: ,

Zakładka: Produkty

Code
Strony sklepu:
├── Strona sklepu: Sklep (stworzona automatycznie)
└── Przekierowanie do koszyka: ❌ (lepszy UX bez przekierowania)

Wymiary:
├── Jednostka wagi: kg
└── Jednostka wymiarów: cm

Recenzje:
├── Włącz recenzje: ✓
├── Tylko zweryfikowani: ✓ (kupili produkt)
└── Oceny gwiazdkowe: ✓

Zakładka: Podatki

Dla Polski podatek VAT:

Code
Włącz podatki: ✓

Ceny z podatkiem:
├── "Tak, będę wprowadzać ceny z podatkiem"
└── Wyświetlaj ceny: "Z podatkiem"

Stawki standardowe:
| Kod kraju | Stawka | Nazwa  | Priorytet | Zastosowanie                      |
|-----------|--------|--------|-----------|-----------------------------------|
| PL        | 23     | VAT    | 1         | Standardowa                       |
| PL        | 8      | VAT 8% | 1         | Usługi budowlane, gastronomia     |
| PL        | 5      | VAT 5% | 1         | Żywność nieprzetworzona, książki, leki |

Zakładka: Wysyłka

Code
Strefy wysyłki:
├── Polska
│   ├── Kurier: 15 zł (stała stawka)
│   ├── Paczkomat: 12 zł
│   └── Darmowa wysyłka: powyżej 200 zł
└── Europa
    └── Kurier międzynarodowy: 50 zł

Zakładka: Płatności

Wbudowane metody:

MetodaProdukcja?Uwagi
Przelew bankowy✓Zamówienia oczekujące
Płatność przy odbiorze✓Pobranie
Czeki❌Nieużywane w PL

Dla prawdziwych płatności online potrzebujesz wtyczki:

  • Przelewy24 — najpopularniejszy w PL,
  • PayU — BLIK, karty,
  • Stripe — międzynarodowo, karty,
  • PayPal — dla klientów zagranicznych.
Code
// Przykład: Po instalacji wtyczki Przelewy24
WooCommerce → Ustawienia → Płatności → Przelewy24
├── Włącz: ✓
├── ID sprzedawcy: XXXXX
├── CRC: YYYYY
└── Tryb testowy: ✓ (na start)

Produkty — typy i konfiguracja

WooCommerce obsługuje różne typy produktów:

Produkt prosty

Code
Tytuł: Koszulka Basic
Opis: Bawełniana koszulka...
Cena regularna: 79 zł
Cena promocyjna: 59 zł (opcjonalnie)

Dane produktu:
├── Ogólne: Ceny
├── Magazyn: SKU, stan magazynowy
├── Wysyłka: Waga, wymiary
├── Powiązane: Upsells, cross-sells
└── Zaawansowane: Notatka, kolejność menu

Produkt z wariantami

Code
Tytuł: Koszulka Basic
Atrybuty:
├── Rozmiar: S, M, L, XL (używane do wariantów: ✓)
└── Kolor: Czarny, Biały, Szary (używane do wariantów: ✓)

Warianty (generowane automatycznie):
├── S/Czarny: 79 zł, SKU: KB-S-BLK
├── S/Biały: 79 zł, SKU: KB-S-WHT
├── M/Czarny: 79 zł, SKU: KB-M-BLK
└── ...

Produkt wirtualny (cyfrowy)

Code
Tytuł: E-book "Frontend dla początkujących"
Wirtualny: ✓ (brak wysyłki)
Do pobrania: ✓

Pliki do pobrania:
├── Nazwa: E-book PDF
└── URL: /wp-content/uploads/woocommerce_uploads/ebook.pdf

Limit pobrań: 3
Wygaśnięcie: 30 dni

Produkt zewnętrzny/afiliacyjny

Code
Tytuł: Laptop XYZ
URL produktu: https://partner.pl/laptop-xyz
Tekst przycisku: "Kup na Partner.pl"
Cena: 3499 zł

Produkt grupowany

Zestaw kilku osobnych produktów wyświetlanych na jednej stronie, a klient dodaje je do koszyka indywidualnie.

Code
Tytuł: Zestaw kuchenny
Produkty w zestawie:
├── Nóż szefa kuchni (osobny produkt prosty)
├── Deska do krojenia (osobny produkt prosty)
└── Ostrzałka (osobny produkt prosty)

Każdy produkt w zestawie ma własną cenę i SKU — produkt grupowany sam w sobie nie ma ceny.

REST API WooCommerce

WooCommerce ma rozbudowane API, czyli Application Programming Interface, definiuje sposób komunikacji między aplikacjami lub modułami. Tu chodzi o konwencje plików Next.js, które zamieniają eksportowaną funkcję w gotowy plik sitemap.xml lub robots.txt., które jest idealne do headless:

Włączenie API

Code
WooCommerce → Ustawienia → Zaawansowane → REST API → Dodaj klucz
├── Opis: Frontend App
├── Użytkownik: admin
└── Uprawnienia: Odczyt/Zapis

Otrzymujesz:

  • Consumer Key: ck_xxxxx
  • Consumer Secret: cs_xxxxx

Przykłady zapytań

Code
// lib/woocommerce.ts
const WOO_URL = 'https://twojsklep.pl/wp-json/wc/v3'
const CONSUMER_KEY = process.env.WC_CONSUMER_KEY
const CONSUMER_SECRET = process.env.WC_CONSUMER_SECRET
 
async function wooFetch(endpoint: string) {
  // btoa() dostępne globalnie od Node.js 16+
  // alternatywnie: Buffer.from(`${CONSUMER_KEY}:${CONSUMER_SECRET}`).toString('base64')
  const credentials = btoa(`${CONSUMER_KEY}:${CONSUMER_SECRET}`)
  const response = await fetch(`${WOO_URL}${endpoint}`, {
    headers: {
      Authorization: `Basic ${credentials}`,
    },
  })
  return response.json()
}
 
// Pobierz produkty
const products = await wooFetch('/products?per_page=10')
 
// Pobierz kategorie
const categories = await wooFetch('/products/categories')
 
// Pobierz zamówienia
const orders = await wooFetch('/orders?status=processing')

Popularne endpointy

EndpointMetodaOpis
/productsGETLista produktów
/products/{id}GETSzczegóły produktu
/ordersGET/POSTZamówienia
/customersGET/POSTKlienci
/couponsGET/POSTKupony
/shipping/zonesGETStrefy wysyłki

Jeśli budujesz headless storefront, pamiętaj o ważnym rozróżnieniu:

  • REST API to interfejs udostępniający dane przez standardowe metody HTTP (GET, POST...) pod adresami zasobów — w WordPressie domyślnie pod /wp-json/. świetnie nadaje się do integracji administracyjnych, ERP, synchronizacji katalogu i operacji backendowych.
  • Store API lepiej pasuje do frontendu sklepu, koszyka i checkoutu w architekturze headless.

To detal, o którym łatwo zapomnieć na początku, a później kończy się przepisywaniem połowy integracji.

HPOS i kompatybilność wtyczek

Nowoczesne sklepy WooCommerce powinny brać pod uwagę High-Performance Order Storage (HPOS), czyli nowy model przechowywania zamówień w dedykowanych tabelach. Dla większych sklepów to ważny krok w stronę lepszej wydajności i przewidywalności.

Przed uruchomieniem HPOS sprawdź jednak:

  • czy bramka płatności go wspiera,
  • czy integracje księgowe i magazynowe są kompatybilne,
  • czy custom pluginy nie zakładają starego modelu danych w wp_posts i wp_postmeta.

Od WooCommerce 8.2+ HPOS jest domyślnie włączone na nowych instalacjach — nie musisz go ręcznie aktywować. W praktyce to jeden z najważniejszych punktów checklisty: jeśli masz starszy sklep lub niekompatybilną wtyczkę, możesz HPOS tymczasowo wyłączyć, ale na nowych instalacjach zostaw domyślne ustawienie.

Customizacja — hooks WooCommerce

WooCommerce rozszerza system hooks WordPressa:

Popularne akcje

Code
// Przed formularzem koszyka
add_action('woocommerce_before_cart', function() {
    echo '<div class="free-shipping-notice">';
    echo 'Darmowa wysyłka od 200 zł!';
    echo '</div>';
});
 
// Po dodaniu do koszyka
add_action('woocommerce_add_to_cart', function($cart_item_key, $product_id, $quantity) {
    // Tracking, analytics...
    error_log("Dodano produkt $product_id x$quantity");
}, 10, 3);
 
// Po złożeniu zamówienia
add_action('woocommerce_thankyou', function($order_id) {
    $order = wc_get_order($order_id);
    // Integracja z CRM, email marketing...
});

Popularne filtry

Code
// Modyfikacja ceny wyświetlanej
add_filter('woocommerce_get_price_html', function($price, $product) {
    if ($product->is_on_sale()) {
        return '<span class="sale-badge">SALE</span> ' . $price;
    }
    return $price;
}, 10, 2);
 
// Dodanie pola do checkout
add_filter('woocommerce_checkout_fields', function($fields) {
    $fields['billing']['billing_nip'] = [
        'label'       => 'NIP (opcjonalnie)',
        'placeholder' => '000-000-00-00',
        'required'    => false,
        'priority'    => 35,
    ];
    return $fields;
});
 
// Modyfikacja tekstu przycisku
add_filter('woocommerce_product_single_add_to_cart_text', function() {
    return 'Dodaj do koszyka 🛒';
});

Szablony WooCommerce

Aby nadpisać szablon WooCommerce w swoim motywie:

Code
wp-content/themes/moj-motyw/
└── woocommerce/           # Folder z nadpisanymi szablonami
    ├── single-product.php # Strona produktu
    ├── archive-product.php # Listing produktów
    ├── cart/
    │   └── cart.php       # Koszyk
    └── checkout/
        └── form-checkout.php # Formularz zamówienia

Oryginały znajdziesz w:

Code
wp-content/plugins/woocommerce/templates/

Przykład nadpisania

Code
<!-- woocommerce/single-product.php -->
<?php get_header(); ?>
 
<main class="product-page">
    <?php while (have_posts()) : the_post(); ?>
        <?php wc_get_template_part('content', 'single-product'); ?>
    <?php endwhile; ?>
</main>
 
<?php get_footer('shop'); ?>

Najczęstsze problemy

1. Strona koszyka nie działa

Sprawdź, czy strony są poprawnie przypisane:

Code
WooCommerce → Ustawienia → Zaawansowane → Ustawienia stron

2. Brak płatności

Sprawdź, czy metoda płatności jest włączona w ustawieniach oraz czy strona ma certyfikat SSL — WooCommerce wymaga HTTPS do płatności online.

3. Złe ceny (podatki)

Code
Ustawienia → Podatki → Ceny podawane z podatkiem

Ustawienie musi być spójne z tym, jak wprowadzasz ceny produktów — albo wszędzie z VAT, albo wszędzie bez.

4. Problemy z wariantami

Atrybuty muszą być oznaczone jako "Używane do wariantów" przed wygenerowaniem kombinacji — możesz to ustawić w zakładce Atrybuty w edytorze produktu.

Checklist przed startem całości

Code
□ SSL (HTTPS) skonfigurowany,
□ Dane firmy (adres, NIP) uzupełnione,
□ Podatki skonfigurowane dla PL,
□ Minimum 1 metoda płatności aktywna,
□ Minimum 1 metoda wysyłki aktywna,
□ Strony (koszyk, checkout, konto) poprawnie przypisane,
□ Emaile transakcyjne działają,
□ Polityka prywatności i regulamin,
□ Backup bazy danych,
□ Tryb testowy płatności → Produkcja,

Co sprawdzić przed startem sprzedaży

Konfiguracja produktów i płatności to dopiero początek, ponieważ przed odpaleniem sklepu musisz sprawdzić jeszcze:

  • emaile transakcyjne i ich dostarczalność,
  • podatki i stawki wysyłki dla realnych scenariuszy,
  • statusy zamówień po płatności i zwrocie,
  • kopie zapasowe i środowisko stagingowe,
  • wydajność checkoutu na mobile,
  • zgodność regulaminów, polityki prywatności i checkboxów zgód z lokalnymi wymaganiami.

Werdykt Labu

WooCommerce to potężne narzędzie, ale wymaga przemyślanej konfiguracji:

  • Produkty — wybierz odpowiedni typ (prosty, z wariantami, wirtualny),
  • Płatności — mogą to być np Przelewy24 lub PayU (dla PL),
  • Wysyłka — strefy oraz metody,
  • Podatki — VAT 23% jako domyślny,
  • Customizacja — przez hooks oraz nadpisywanie szablonów,
  • Headless — REST API do integracji z React/Next.js.

Podstawowa konfiguracja to 1-2 godziny, a zaawansowany sklep z integracjami — kilka dni, ale framework daje bardzo solidne fundamenty.

  • Instalacja1 min
  • Struktura WooCommerce1 min
  • Podstawowe ustawienia1 min
  • Produkty — typy i konfiguracja1 min
  • REST API WooCommerce1 min
  • HPOS i kompatybilność wtyczek1 min
  • Customizacja — hooks WooCommerce1 min
  • Szablony WooCommerce1 min
  • Najczęstsze problemy1 min
  • Checklist przed startem całości1 min
  • Co sprawdzić przed startem sprzedaży1 min
  • Werdykt Labu1 min

Często zadawane pytania

Źródła i dokumentacjaZweryfikowano: 13 maja 2026

Materiały wykorzystane do weryfikacji artykułu „WooCommerce od zera — konfiguracja sklepu, płatności i wysyłki krok po kroku”:

WooCommerce: Shipping Zones, WooCommerce: Taxes, WooCommerce Developer Docs: High-Performance Order Storage, WooCommerce Developer Docs: REST API, WordPress — instalacja i podstawy.

Maciej Sala

O autorze

Maciej Sala

Maciej Sala — Product Manager i Frontend Developer z bogatym doświadczeniem w marketingu internetowym oraz SEO. Na co dzień pracuje z Reactem, Next.js i TypeScriptem, a ostatnio także z Astro i narzędziami do automatyzacji procesów AI. Sprawnie łączy perspektywę produktową z praktycznym podejściem do kodu. Przez kilka lat był związany z branżą gier wideo jako project manager i game designer. Absolwent historii na Uniwersytecie Jagiellońskim oraz studiów podyplomowych z marketingu internetowego na AGH w Krakowie. Po godzinach trenuje na siłowni, maluje figurki i rozwija własne projekty side-projecty.

Moje artykułyWięcej o mnie

Pomagam przekładać takie tematy na konkretne wdrożenia w frontendzie, SEO, analityce i procesie produktowym.

Skontaktuj się ze mną

Biblioteka wiedzy

Czytaj dalej

Zobacz więcej wpisów
REST API WordPressa — integracja z React i Next.js
REST API WordPressa — integracja z React i Next.js

Jak połączyć WordPress z nowoczesnym frontendem bez typowych pułapek? REST API, autentykacja, custom endpoints, cache i praktyczne przykłady z Next.js.

Maciej Sala

Maciej Sala

Founder Strivelab

29 stycznia 2025
WordPress: instalacja i podstawy — kompletny przewodnik
WordPress: instalacja i podstawy — kompletny przewodnik

WordPress od podstaw: instalacja lokalna i produkcyjna, wp-config.php, motywy, wtyczki, hooki, REST API, bezpieczeństwo, wydajność i workflow aktualizacji.

Maciej Sala

Maciej Sala

Founder Strivelab

17 lutego 2026
Next.js vs WordPress w 2026 — kiedy polecam jedno, a kiedy drugie
Next.js vs WordPress w 2026 — kiedy polecam jedno, a kiedy drugie

Next.js vs WordPress w 2026 — obiektywne porównanie dla firm, freelancerów i agencji. Wydajność, SEO, bezpieczeństwo, koszty, łatwość edycji — kiedy który wybrać i dlaczego.

Maciej Sala

Maciej Sala

Founder Strivelab

10 kwietnia 2026
Poprzedni wpisREST API WordPressa — integracja z React i Next.jsJak połączyć WordPress z nowoczesnym frontendem bez typowych pułapek? REST API, autentykacja, custom endpoints, cache i praktyczne przykłady z Next.js.
Maciej Sala

Maciej Sala

Founder Strivelab

29 stycznia 2025
Następny wpis10 sztuczek w JavaScript, które sprawią, że Twój kod będzie 10x czytelniejszyPoznaj 10 technik JavaScript, które realnie poprawiają czytelność kodu. Optional chaining, nullish coalescing, destrukturyzacja, metody tablic i więcej.
Maciej Sala

Maciej Sala

Founder Strivelab

12 czerwca 2025