Skip to content
Łatwe · 5 kroków · ~7 min

WooCommerce

Łączymy się z natywnym REST API WooCommerce w Twoim WordPressie. Potrzebujesz pary kluczy (consumer_key + consumer_secret), które wygenerujesz w panelu WP.

0. Co musisz mieć

  • WooCommerce 3.5+ (sprawdź w WP Admin → Plugins → WooCommerce)
  • Sklep dostępny po HTTPS — Woo REST API odrzuca klucze nad zwykłym HTTP od wersji 3.0+
  • Konto WordPress z rolą Administrator (zwykły Sklep Manager wystarczy)
  • Permalinks ustawione na Post name lub inne „ładne" (WP Admin → Settings → Permalinks) — bez tego REST API zwróci 404
1

Wygeneruj klucze REST API

  1. WP Admin → WooCommerceSettings.
  2. Zakładka Advanced → podzakładka REST API.
  3. Kliknij „Add key".
  4. Wypełnij:
    • Description: BidBil integration
    • User: wybierz siebie (lub dedykowanego usera „bidbil-api")
    • Permissions: Read/Write (Write jest konieczne — push zamówień modyfikuje stany)
  5. Kliknij „Generate API key".
  6. WP pokaże dwie wartości:
    • Consumer key: ck_xxxxxxxxxxxxxxxxxxx
    • Consumer secret: cs_xxxxxxxxxxxxxxxxxxx
  7. Skopiuj obie. Secret pokaże się TYLKO raz — jeśli zgubisz, trzeba wygenerować nowy.
📸 Tu byłby zrzut ekranu

WP Admin → WooCommerce → Settings → Advanced → REST API → przycisk „Add key" w prawym górnym rogu.

Tylko Read? Jeśli wybierzesz tylko Read, import produktów będzie działać, ale push zamówień się NIE uda. Daj Read/Write.

2

Dodaj integrację w BidBil

  1. Wejdź na /profile/settings/integrations/new (konto firmowe wymagane).
  2. Platforma: WooCommerce.
  3. Nazwa: dowolna, np. Mój sklep WP.
  4. URL sklepu: pełen adres bez slasha na końcu, np. https://twojsklep.pl. Nie doklejaj /wp-json ani /wp-admin — sami doklejamy.
  5. Consumer key: wklej ck_... z kroku 1.
  6. Consumer secret: wklej cs_... z kroku 1.
  7. Kliknij Utwórz, potem na liście integracji Test połączenia.

HTTPS jest twardy. Jeśli sklep chodzi tylko po HTTP, Woo zwróci 401 mimo poprawnych kluczy. Postaw certyfikat (Let's Encrypt jest darmowy, większość hostingów ma w panelu).

3

Mapowanie kategorii

  1. Na stronie integracji: sekcja „Mapowanie kategorii"„Pobierz kategorie sklepu".
  2. Lista pokaże wszystkie kategorie WooCommerce z pełną ścieżką (np. Sprzęt → Kije bilardowe).
  3. Dla każdej wybierz pasujący odpowiednik z BidBil. Pomiń = produkty z tej kategorii nie pójdą.
  4. Min. 1 mapowanie wymagane do aktywacji.
  5. Zapisz.
4

Mapowanie atrybutów

Woo ma atrybuty produktów (kolor, rozmiar, marka itd.) — te które zdefiniowałeś jako globalne lub per produkt.

  1. Sekcja „Mapowanie atrybutów"„Skanuj atrybuty produktów".
  2. System pobierze próbkę produktów i wyświetli wykryte atrybuty + propozycje (auto-match po nazwie).
  3. Sprawdź sugestie. Atrybuty BidBil dla wybranej kategorii zobaczysz w dropdownie.
  4. Zapisz.

Brand jako atrybut? Jeśli używasz pluginu typu „Perfect Brands" lub natywnego pola brand, BidBil widzi to jako atrybut o nazwie „Marka". Auto-match podpowie do BidBil-owego „Marka" jeśli kategoria taki ma.

5

Aktywacja

  1. Aktywuj w prawym górnym rogu strony integracji.
  2. Pierwszy import startuje w ciągu ≤15 minut.
  3. Pierwsze produkty trafiają jako oczekujące na akceptację. Admin BidBil sprawdza pierwszą partię i oznacza Twoją integrację jako zaufaną.
  4. Po tym kolejne importy idą od razu na żywo.

Bonus: numery przesyłek do buyera

Woo natywnie nie ma pola „tracking number" na zamówieniu. BidBil odczytuje je z meta_data pod kluczami które dodają popularne pluginy:

  • Advanced Shipment Tracking (AST): klucz _aftership_tracking_number + _aftership_tracking_provider_name
  • WC Shipment Tracking (oficjalny Woo plugin): klucz _tracking_number + _tracking_provider

Gdy oznaczysz w Woo paczkę jako wysłaną (status Completed) i wpiszesz tracking, BidBil w cyklu mirror (~5 min) automatycznie:

  • Ustawi Sale.Status = 20 (Wysłane) na BidBil
  • Skopiuje tracking number + nazwę kuriera
  • Wyśle email do buyera z numerem przesyłki

Jeśli nie używasz żadnego z plugin-ów, tracking nie trafi do buyera. Możesz wpisać go ręcznie w BidBil-owej karcie zamówienia (na liście „Sprzedane").

Coś poszło nie tak?

HTTP 401 mimo poprawnych kluczy? 403 na /wp-json/wc/v3/products?

Rozwiązywanie problemów →