Spis treści 22 sekcji

WooCommerce REST API łączy sklep z systemami i usługami zewnętrznymi.1 Przez ten interfejs integracja uzyskuje dostęp między innymi do produktów, zamówień i klientów2.
Poniżej znajdziesz opis wymiany danych, konfiguracji dostępu oraz diagnozowania błędów.

Czym jest uwierzytelnianie w API WooCommerce i jak pomaga diagnozować błędy żądań?

Uwierzytelnianie w API WooCommerce pozwala sklepowi rozpoznać integrację, zanim udostępni jej zasób. Gdy żądanie się nie powiedzie, warto osobno sprawdzić dane dostępowe i adres: to różne przyczyny błędu.
Kod 401 może wskazywać na błędne klucze API, a 404 – na nieistniejący zasób lub trasę3.

W Basic Authentication klucz consumer key jest nazwą użytkownika, a consumer secret hasłem.3 OAuth 1.0a potwierdza tożsamość nadawcy podpisem żądania. Przy diagnozie odróżnij błąd podpisu od braku uprawnień.
Parametr oauth_timestamp powinien zawierać liczbę sekund od 1 stycznia 1970 roku, czyli początku epoki Unix4.

Jak odczytywać, dodawać, edytować i usuwać dane sklepu przez API?

Metoda HTTP mówi sklepowi, co zrobić z danymi. Tabela pokazuje skutek każdej z metod. GET odczytuje zasób, POST go tworzy, PUT aktualizuje, a DELETE usuwa5.

MetodaOperacja na danych
GETPobiera dane bez ich zmiany.
POSTTworzy wpis.
PUTAktualizuje wpis.
DELETEUsuwa wpis.

Metody GET, POST, PUT i DELETE służą kolejno do odczytu, tworzenia, aktualizacji i usuwania danych.6,7 Wybrana metoda określa więc oczekiwany wynik żądania.
Żądanie PUT wysłane pod /products/{id} aktualizuje produkt o wskazanym identyfikatorze5.

Jak sprawdzić, czy endpoint przyjmuje żądania?

Endpoint jest adresem konkretnego zasobu API. Aby sprawdzić dostęp, wyślij pod niego żądanie z prawidłowym uwierzytelnieniem. Wybierz też metodę odpowiednią do planowanej operacji3.

  • Adres endpointu musi prowadzić do zasobu obsługiwanego przez integrację. Porównaj go z adresem zapisanym w konfiguracji.
  • Żądanie odczytu pozwala obejrzeć odpowiedź bez zmieniania danych sklepu. Zapisz odpowiedź serwera i komunikat błędu.
  • Wynik żądania wymaga osobnego sprawdzenia adresu, uwierzytelnienia oraz uprawnień. Dotarcie do serwera nie oznacza jeszcze dostępu do zasobu.

Odpowiedź endpointu podpowiada, czy przyjrzeć się adresowi, danym dostępowym czy uprawnieniom. Kod HTTP 404 może oznaczać nieistniejącą trasę lub zasób, więc zacznij od adresu żądania3.

Co oznaczają błędy 401, 403 i 404 oraz jak ustalić ich przyczynę?

Kody odpowiedzi API pomagają odróżnić błędy uwierzytelnienia od problemów z uprawnieniami i adresem zasobu. Tabela przypisuje każdemu kodowi kierunek diagnozy. Przy 401 sprawdź uwierzytelnienie i uprawnienia, przy 403 uprawnienia rozpoznanego użytkownika, a przy 404 adres zasobu8.

KodZnaczenie i kierunek diagnozy
401 UnauthorizedMoże wskazywać na błędne klucze API, podpis lub brak dostępu użytkownika do żądanego zasobu.
403 ForbiddenOznacza odmowę dostępu; sprawdź uprawnienia użytkownika i reguły blokujące żądanie.
404 Not FoundOznacza, że adres nie prowadzi do dostępnego zasobu; sprawdź endpoint i identyfikator zasobu.

Dane w tabeli: 3

Diagnozę błędu API zacznij od kodu odpowiedzi. Następnie sprawdź dane dostępowe, uprawnienia lub adres, zależnie od otrzymanego statusu. W odpowiedzi JSON odczytaj również pola code, message i data.status3.

Uwierzytelnianie identyfikuje nadawcę żądania, a kod odpowiedzi wyjaśnia, dlaczego operacja się nie powiodła. Klucz API może mieć jeden z trzech poziomów dostępu: odczyt, zapis albo odczyt i zapis1.

Czym jest WooCommerce REST API i jak działa?

WooCommerce REST API działa w architekturze REST: sklep wymienia dane przez żądania i odpowiedzi HTTP. Integracja wskazuje zasób, a sklep uwzględnia metodę żądania oraz uprawnienia nadawcy.
W wersji v3 ścieżka bazowa w adresie sklepu to /wp-json/wc/v3/3.

Do korzystania z WooCommerce REST API nie trzeba instalować wtyczki WP REST API.3 Osobna wtyczka może połączyć sklep z wybranym systemem, ale nie jest warunkiem działania interfejsu. WordPress od wersji 4.7 zawiera w rdzeniu endpointy treści REST API9.

Jak zbudowana jest architektura WooCommerce REST API?

Architektura WooCommerce REST API opiera dostęp do danych na zasobach i ich adresach. System zewnętrzny wysyła żądanie HTTP, wybiera operację metodą żądania i odbiera odpowiedź sklepu.
Adres /products/{id} prowadzi do pojedynczego produktu; w miejscu {id} podaje się jego identyfikator5.

Podział na zasoby pozwala kierować żądania do właściwych danych, zamiast obejmować nimi cały sklep. Parametr per_page ustala liczbę rekordów na stronie wyników: domyślnie 10, maksymalnie 10010.

Jak WooCommerce przetwarza żądania API?

WooCommerce odczytuje adres, metodę i dane dostępowe żądania API. Potem sprawdza uprawnienia, wykonuje dozwoloną operację na zasobie i zwraca wynik albo błąd.
Kod HTTP 403 może oznaczać, że sklep rozpoznał nadawcę, lecz nie pozwala mu wykonać tej operacji8.

Odpowiedź API przekazuje integracji wynik żądania. Udane pobranie zasobu metodą GET może zakończyć się statusem HTTP 200 OK3.

Czym są zasoby sklepu dostępne przez REST API WooCommerce?

Zasoby WooCommerce REST API obejmują odrębne kategorie danych sklepu, między innymi produkty, zamówienia i klientów. Integracja wybiera adres potrzebnej kategorii, zamiast odwoływać się naraz do wszystkich danych. Poniższe adresy dotyczą wersji v3 interfejsu.

Tabela zestawia adresy produktów, zamówień i klientów z danymi dostępnymi pod każdym z nich.

ZasóbAdresRodzaj danych
Produkty/wp-json/wc/v3/productsDane produktów sklepu
Zamówienia/wp-json/wc/v3/ordersDane zamówień
Klienci/wp-json/wc/v3/customersDane klientów

Notatki do zamówień i powiązane z nimi zwroty można tworzyć, przeglądać oraz usuwać przez WooCommerce REST API.11 Powiązanie z zamówieniem pozwala obsługiwać je w kontekście konkretnej transakcji.

Przez WooCommerce REST API można przeglądać raporty, metody wysyłki i elementy stanu systemu.11 Strefy wysyłki można również tworzyć, aktualizować i usuwać11.

Dobór zasobu API zależy od zadania integracji: może ona pracować na danych sprzedażowych, danych klientów albo konfiguracji wysyłki. Produkty w wersji v3 są dostępne pod adresem /wp-json/wc/v3/products.

Możliwości i ograniczenia API WooCommerce: kiedy użyć REST API, a kiedy Store API?

REST API służy integracjom zarządzającym danymi sklepu, a Store API obsługuje funkcje dla kupującego, takie jak koszyk i proces zakupowy. Wybór zależy od zadania: pracy na zapleczu albo obsługi bieżącej sesji klienta.
Przy pobieraniu większych zbiorów przez REST API uwzględnij limit 100 elementów na żądanie7.

Tabela porównuje zastosowanie obu interfejsów, ich ograniczenia oraz zadania, do których nie pasują.

InterfejsZastosowanieOgraniczenieDla kogo nie
REST APIIntegracja zarządzająca danymi sklepuDomyślnie 100 elementów na żądanie.Dla integracji obsługującej koszyk w sesji kupującego
Store APIFunkcje sklepu używane przez kupującegoNie zastępuje dostępu do zarządzania danymi zapleczaDla integracji administrującej danymi sklepu

Dane w tabeli: 7

Dlaczego programiści, agencje i operatorzy sklepów korzystają z API?

Programiści, agencje i operatorzy sklepów używają API, by wymieniać dane z innymi systemami bez ręcznego przepisywania wpisów. Integracja może pobrać dane potrzebne do pracy, a później przekazać zmiany do sklepu. Zakres dostępu dobierz do zadania: system zaplecza potrzebuje innego interfejsu niż koszyk kupującego12. Przy pobieraniu danych przez REST API parametr per_page przyjmuje maksymalnie 100 rekordów.

Jakie ograniczenia trzeba uwzględnić przy korzystaniu z REST API?

WooCommerce REST API wymaga kontroli uprawnień i dzielenia większych zbiorów danych na kolejne żądania. Integracja pobierająca katalog lub historię zamówień powinna obsługiwać paginację, czyli pobieranie wyników partiami. Parametr per_page domyślnie wynosi 10, a maksymalnie 100. Przy zapisie sprawdzaj błędy, by nie uznać nieudanego żądania za wykonaną zmianę.

Wybór interfejsu zależy od tego, czy integracja zarządza danymi sklepu, czy wspiera zakupy klienta. Limit 100 rekordów na stronę wyników wpływa z kolei na pobieranie większych zbiorów.

REST, JSON i endpointy: techniczne podstawy wymiany danych

WooCommerce REST API wymienia dane przez żądania HTTP wysyłane do endpointów i odpowiedzi w formacie JSON. Format ten zapisuje dane jako pary nazw i wartości. Metoda HTTP określa operację, a struktura JSON pozwala integracji rozpoznać pola odpowiedzi.
W wersji v3 żądania używają ścieżki bazowej /wp-json/wc/v3/.

Format danych ma znaczenie przy przekazywaniu wartości do innego systemu. Tekst, liczba całkowita i data wymagają różnej obsługi. Tabela pokazuje, jak WooCommerce REST API zapisuje poszczególne typy danych.

Typ danychFormat w odpowiedzi API
DataFormat ISO8601.
Kwota dziesiętnaCiąg znaków z 2 miejscami po przecinku.
Liczba sztukLiczba całkowita.

Dane w tabeli: 3

Integracja musi odczytywać wartości zgodnie z formatem odpowiedzi API. Kwota jest ciągiem znaków z 2 miejscami po przecinku, a liczba sztuk – liczbą całkowitą.

Jak utworzyć, skonfigurować i bezpiecznie przetestować API WooCommerce?

Przygotowanie WooCommerce REST API obejmuje ustawienie adresów sklepu, zabezpieczenie połączenia i nadanie dostępu integracji. Na koniec wykonaj żądanie kontrolne. Własny endpoint potrzebuje osobnej trasy i reguły uprawnień; wygenerowanie klucza nie tworzy trasy.
Sklep musi korzystać z WooCommerce w wersji 3.5 lub nowszej.

Jak krok po kroku skonfigurować dostęp do interfejsu?

Dostęp do WooCommerce REST API skonfiguruj dla użytkownika z uprawnieniami odpowiadającymi zadaniom integracji. Sklep musi używać WooCommerce w wersji 3.5 lub nowszej.

  • Bezpośrednie odnośniki sklepu ustaw jako przyjazne adresy, aby trasy API działały pod właściwymi adresami.
  • Certyfikat SSL zastosuj do połączenia HTTPS, które chroni dane dostępowe przesyłane między sklepem a integracją.
  • Klucz API przypisz właściwemu użytkownikowi. Nadaj mu poziom dostępu odpowiadający zadaniom integracji.
  • Żądanie kontrolne wyślij do zasobu, z którego integracja ma korzystać. Następnie odczytaj odpowiedź serwera.

Poprawna odpowiedź na żądanie kontrolne potwierdza dostęp do wybranego zasobu dla sprawdzonej operacji3.

Jakie wymagania musi spełnić sklep przed konfiguracją API?

Sklep WooCommerce musi działać w wersji 3.5 lub nowszej i używać przyjaznych bezpośrednich odnośników. Domyślne odnośniki nie działają z WooCommerce REST API.3 Połączenie HTTPS chroni przesyłane dane uwierzytelniające. Użytkownik przypisany do integracji potrzebuje uprawnień do zasobów, na których będzie ona pracować.

Jak bezpiecznie przetestować własny endpoint?

Własny endpoint sprawdź najpierw w środowisku testowym. Dzięki temu żądanie zmieniające dane nie wpłynie na działający sklep. Prawidłowe żądanie odczytu może otrzymać kod HTTP 200 OK.

  • Żądanie odczytu wykonaj jako pierwsze. Zapisz kod odpowiedzi i zwrócone dane.
  • Kontrolę uprawnień sprawdź osobno dla użytkownika, który może wykonać operację, i dla użytkownika bez takiego dostępu.
  • Żądanie zapisu wyślij dla danych testowych. Porównaj wynik z oczekiwaną zmianą.
  • Logi serwera przejrzyj pod kątem błędów wykonania. Nie zapisuj w nich sekretów dostępowych.

Test endpointu kończy się, gdy odpowiedź, uprawnienia i stan danych po żądaniu odpowiadają planowanej operacji.

Jak utworzyć własny endpoint w WooCommerce?

Własny endpoint WooCommerce utwórz jako trasę API obsługiwaną przez kod rozszerzenia lub własnej wtyczki. Nadaj mu przestrzeń nazw odrębną od trasy bazowej v3.

  • Przestrzeń nazw odróżnia własną trasę od tras innych rozszerzeń.
  • Trasa i metody określają adres zasobu oraz rodzaje dozwolonych żądań.
  • Funkcja obsługi wykonuje operację i przygotowuje odpowiedź API.
  • Kontrola uprawnień decyduje, czy nadawca może wykonać wskazaną operację.

Trasę API rejestruje się przez rest_api_init. Trzeba określić przestrzeń nazw, trasę, metody, funkcję obsługi i uprawnienia.13 Własny endpoint spełnia swoje zadanie dopiero po sprawdzeniu odpowiedzi oraz kontroli dostępu.

Zastosowania API WooCommerce w integracjach i typowe wyzwania

WooCommerce REST API pozwala automatyzować wymianę danych ze systemami obsługującymi sprzedaż, magazyn i dokumenty. Przed połączeniem ustal źródło danych, moment synchronizacji i sposób obsługi błędów.
Przy pobieraniu większych zbiorów uwzględnij maksymalnie 100 rekordów na stronę wyników.

Jakie podstawy warto znać przed wdrożeniem integracji?

Integracja WooCommerce API wymaga wyboru zasobu, kierunku przepływu danych i uprawnień. Przy połączeniu z systemem CRM, czyli narzędziem do zarządzania relacjami z klientami, ustal zakres wymiany w obie strony. Wskazanie źródła danych chroni zmiany przed nadpisaniem podczas synchronizacji.
Pobieranie wyników przez REST API wymaga paginacji po przekroczeniu 100 rekordów.

Jakie korzyści daje automatyzacja wymiany danych sklepu?

Automatyzacja przez WooCommerce REST API zmniejsza potrzebę ręcznego przenoszenia danych między sklepem a innym systemem. Interfejs może obsłużyć synchronizację stanów magazynowych, automatyczne wystawianie faktur oraz zbiorczą zmianę cen i opisów produktów.7 Każdy taki proces potrzebuje reguły określającej, które zmiany system zewnętrzny przekazuje do sklepu14.
Przy zbiorczym pobieraniu danych limit wynosi 100 rekordów na stronę.

Do czego można wykorzystać REST API w bardziej złożonych integracjach?

WooCommerce REST API może uczestniczyć w procesie, w którym zmiana w sklepie uruchamia działanie innego systemu. Integracja może powiązać zamówienie z obsługą magazynową albo przekazaniem danych do CRM. Zapisz identyfikator obsługiwanej operacji, by ponowione żądanie nie utworzyło kolejnego zadania.
Żądanie GET może zwrócić HTTP 200 OK, lecz udany odczyt nie potwierdza późniejszego zapisu.

Jak rozpoznawać typowe problemy z działaniem integracji?

Problem z integracją WooCommerce API diagnozuj, porównując żądanie, odpowiedź serwera i dane zapisane w sklepie. Kody 401, 403 i 404 kierują uwagę odpowiednio na dostęp, uprawnienia lub adres zasobu.

  • Log żądania powinien zawierać adres zasobu, metodę i kod odpowiedzi, ale nie dane dostępowe. Porównanie tych informacji pokaże, gdzie zatrzymała się wymiana.
  • Wtyczka bezpieczeństwa WordPress lub zapora może blokować żądania WooCommerce API.7 Log blokad pomoże odróżnić ten przypadek od błędu przesyłanych danych.

Diagnoza integracji polega na ustaleniu, czy problem wystąpił podczas dostarczania żądania, jego obsługi czy zapisu wyniku.

Jak skonfigurować webhooki do powiadomień o zdarzeniach w sklepie?

Webhook WooCommerce powiadamia system zewnętrzny o wybranym zdarzeniu bez czekania na zapytanie z tego systemu. Odbiorca potrzebuje adresu, pod którym przyjmie powiadomienie.
To inny mechanizm niż pobieranie danych przez ścieżkę REST API /wp-json/wc/v3/.

  • Webhook WooCommerce utwórz w panelu sklepu: „WooCommerce → Ustawienia → Zaawansowane → Webhooki”.
  • Temat webhooka powiąż ze zdarzeniem, o którym chcesz powiadamiać system zewnętrzny, na przykład ze zmianą zamówienia.
  • Adres dostarczenia ustaw na adres odbiorcy przyjmującego żądania. Korzystaj z połączenia HTTPS.
  • Sekret webhooka zapisz również u odbiorcy. Dzięki niemu odbiorca zweryfikuje podpis powiadomienia.
  • Status webhooka ustaw jako aktywny. Wywołaj zdarzenie na danych testowych, a potem sprawdź zapis dostarczenia i odpowiedź odbiorcy.

Odbiorca webhooka powinien sprawdzać podpis i rozpoznawać powtórnie dostarczone powiadomienia. Dzięki temu nie wykona tej samej operacji ponownie.

Obsługa JSONP w starszych integracjach: zgodność i bezpieczeństwo

JSONP to starszy sposób pobierania danych między witrynami. Przeglądarka wykonuje w nim odpowiedź jako skrypt wywołujący wskazaną funkcję. Odpowiedź JSON z WooCommerce REST API działa inaczej: integracja odczytuje ją jako dane.
Ścieżka bazowa interfejsu w wersji v3 to /wp-json/wc/v3/.

Starsza integracja WooCommerce korzystająca z JSONP wymaga sprawdzenia, gdzie odpowiedź zmienia się w wywołanie funkcji. Wykonywanie odpowiedzi jako skryptu niesie ryzyko związane z niezaufaną treścią. Sekrety umieszczone w kodzie przeglądarki stają się zaś widoczne dla użytkownika3.

Modernizacja integracji oznacza zastąpienie JSONP wymianą danych JSON i przeniesienie operacji wymagających sekretów na serwer. Zgodność ze starszym połączeniem nie uzasadnia ujawniania danych dostępowych w przeglądarce.

Historia wersji API a zgodność istniejących integracji

Wersja WooCommerce API wpływa na zgodność integracji. System zewnętrzny korzysta bowiem z określonych tras, pól i sposobu obsługi żądań. Po zmianie wersji sklepu sprawdź używane operacje.
Wersja v3 używa ścieżki bazowej /wp-json/wc/v3/.

Audyt zgodności obejmuje adresy tras, metody żądań, wymagane pola i format odpowiedzi. Porównaj je z dokumentacją wersji używanej przez sklep, by wskazać potrzebne zmiany. Dla tras v3 punktem odniesienia jest ścieżka /wp-json/wc/v3/.

Aktualizację integracji przetestuj na danych testowych przed wdrożeniem w działającym sklepie. Sprawdź zarówno odpowiedź, jak i stan danych po operacji.
Zgodność API oznacza wykonanie zamierzonych operacji, nie tylko nawiązanie połączenia15.

Dokumentacja i specyfikacja API jako punkt odniesienia przy integracji

Dokumentacja WooCommerce API opisuje operacje, wymagane dane i odpowiedzi. Specyfikacja własnego endpointu wyjaśnia działanie trasy dodanej przez sklep lub rozszerzenie. Zestaw opis żądania z faktyczną odpowiedzią, by wychwycić różnice w nazwach pól i regułach dostępu.
Dla tras WooCommerce w wersji v3 punktem odniesienia jest ścieżka /wp-json/wc/v3/.

Jak dokumentować własne endpointy i sposób ich użycia?

Własny endpoint dokumentuj jako umowę między sklepem a integracją. Zapisz jego adres, dozwolone operacje, wymagania dostępu i format danych. Jeśli opisujesz również trasy WooCommerce w wersji v3, odróżnij je od własnej przestrzeni nazw.

  • Adres i przeznaczenie endpointu wskazują zasób, którego dotyczy trasa, oraz jej zastosowanie w integracji.
  • Metody i uprawnienia określają dozwolone operacje i użytkowników, którzy mogą je wykonać.
  • Struktura żądania obejmuje wymagane pola, ich typy i przykładowe wartości bez danych klientów oraz sekretów.
  • Struktura odpowiedzi opisuje zwracane pola i błędy, aby integracja mogła obsłużyć każdy wynik.
  • Zmiany w działaniu trasy zapisuj wraz z informacją o integracjach korzystających z endpointu.

Opis endpointu ułatwia odtworzenie poprawnego żądania i ocenę wpływu zmiany trasy na połączone systemy3.

Bramki płatności w WooCommerce: miejsce API w obsłudze transakcji

Bramka płatności WooCommerce odpowiada za kontakt z dostawcą płatności. API sklepu może natomiast przekazywać dane zamówienia innym systemom. Utworzenie lub zmiana zamówienia przez API nie potwierdza rozliczenia transakcji przez dostawcę.
W wersji v3 dane zamówień są dostępne pod /wp-json/wc/v3/orders.

Potwierdzenie płatności powinno pochodzić z integracji bramki z dostawcą, a nie z deklaracji przesłanej do sklepu przez inny system. Integracja obsługująca zamówienie musi rozróżniać jego status, status płatności i identyfikator transakcji od dostawcy. To ogranicza ryzyko rozpoczęcia realizacji przed potwierdzeniem zapłaty16.

API WooCommerce wymienia w tym procesie dane sklepu. Rozliczenie i potwierdzenie transakcji należą do integracji bramki płatności.

WooCommerce jako wtyczka WordPressa: podstawa działania sklepu

WooCommerce to wtyczka WordPressa, która dodaje obsługę produktów, koszyka i zamówień. WordPress pozostaje systemem zarządzania treścią, a WooCommerce zapewnia funkcje sprzedażowe.
Od wersji 4.7 WordPress zawiera w rdzeniu endpointy treści REST API.

Motyw WordPressa odpowiada za wygląd sklepu, a dodatkowe wtyczki mogą rozszerzać jego działanie. Zmiana szablonu nie zastąpi konfiguracji płatności i wysyłki. Podobnie instalacja modułu integracyjnego nie określi sama zakresu wymienianych danych.

Integracja sklepu zależy od współpracy WooCommerce z WordPressem, aktywnym motywem i pozostałymi wtyczkami. Przy szukaniu przyczyny problemu odróżnij błąd wyglądu od błędu zakupów lub wymiany danych.

Dane dostępowe do API: wymagane uprawnienia i sposób ich nadawania

Klucz WooCommerce REST API przypisujesz do wybranego użytkownika, nadając mu opis i poziom uprawnień.1 Dostępne są trzy poziomy: odczyt, zapis oraz odczyt i zapis. Wybierz zakres odpowiadający operacjom integracji.

Tabela porównuje poziomy uprawnień klucza według operacji na danych.

UprawnienieZakres operacji
ReadPobieranie danych sklepu.
WriteTworzenie i aktualizowanie danych sklepu.
Read/WritePobieranie, tworzenie i aktualizowanie danych sklepu.

Dane w tabeli: 1

Użytkownik WordPress przypisany do klucza musi pozostać w sklepie. Po usunięciu konta klucz przestaje działać i nie można przenieść go na inną osobę.7 Zanim usuniesz konto używane przez integrację, przypisz jej nowy klucz.

Dostęp integracji zależy od uprawnienia klucza oraz konta użytkownika, do którego go przypisano. Jeden z trzech poziomów dostępu dobierz do operacji wykonywanych przez system.

Jak wykonać pierwszy test połączenia z API?

Połączenie z WooCommerce REST API przetestuj żądaniem odczytu. Sprawdzisz dostęp bez zmieniania danych sklepu. Postman lub Insomnia pomogą przygotować żądanie HTTP i obejrzeć odpowiedź.
Udany odczyt może zwrócić kod HTTP 200 OK.

  • Adres żądania ustaw na zasób sklepu, do którego integracja ma mieć dostęp.
  • Metodę GET wybierz na początek. Pobiera dane bez ich modyfikowania.
  • Uwierzytelnienie skonfiguruj danymi dostępowymi integracji. Nie umieszczaj sekretu w udostępnianej kolekcji żądań.
  • Żądanie testowe wyślij do sklepu. Odczytaj kod odpowiedzi i treść komunikatu.
  • Odpowiedź API porównaj z oczekiwanym zasobem. Przy błędzie sprawdź adres, metodę i dostęp integracji.

Udany test połączenia potwierdza odczyt wybranego zasobu. Nie dowodzi jeszcze, że integracja może ten zasób zmienić.

Hosting a działanie integracji sklepu: przykład Raidboxes

Hosting sklepu WooCommerce ma znaczenie dla integracji: serwer przyjmuje żądania API i przygotowuje odpowiedzi. Raidboxes jest przykładem dostawcy hostingu, którego środowisko warto uwzględnić podczas diagnozy.
Błąd HTTP 404 może wskazywać na adres trasy lub zasobu.

Diagnoza po stronie hostingu obejmuje dostępność sklepu, czas odpowiedzi i błędy zapisane w logach. Jeśli żądanie nie dociera do WooCommerce, sprawdź połączenie i konfigurację serwera. Gdy dociera, lecz kończy się błędem aplikacji, uwzględnij też kod sklepu.

Ocena środowiska hostingowego powinna wynikać z przebiegu żądań integracji. Samo otwarcie strony sklepu w przeglądarce nie wystarcza.

Szybkość żądań i stabilność procesów wymiany danych

Żądania WooCommerce API wymagają obsługi odpowiedzi także wtedy, gdy serwer działa wolno lub połączenie się urywa. Czas odpowiedzi zależy między innymi od pracy sklepu, ilości danych i obciążenia serwera.
Przy pobieraniu wyników per_page pozwala ustawić maksymalnie 100 rekordów na stronę.

Stabilna synchronizacja zapisuje wynik żądania i odróżnia zakończoną operację od tej o nieznanym rezultacie. Przed ponowieniem zapisu sprawdź, czy sklep wykonał już poprzednie żądanie. Upływ czasu oczekiwania po stronie integracji nie dowodzi, że operacja się nie odbyła.

Monitorowanie wymiany danych obejmuje czas odpowiedzi, błędy i zgodność danych po synchronizacji. Osobna obserwacja tych sygnałów pozwala odróżnić wolne połączenie od błędnej aktualizacji.

Bezpieczeństwo integracji: kontrola dostępu i ochrona danych

Integracja WooCommerce API chroni dane sklepu przez szyfrowanie połączenia, ograniczanie uprawnień i zabezpieczanie sekretów. HTTPS szyfruje dane przesyłane między sklepem a systemem zewnętrznym.
Klucz może mieć jeden z trzech poziomów dostępu: odczyt, zapis albo odczyt i zapis.

  • Uprawnienia integracji ogranicz do operacji potrzebnych jej do pracy. Mniejszy zakres dostępu zmniejsza skutki ujawnienia danych uwierzytelniających17.
  • Sekrety dostępowe przechowuj poza kodem widocznym w przeglądarce i publicznym repozytorium. Nie ujawniaj ich także w logach żądań.
  • Dane klientów przekazuj tylko systemom, które używają ich w określonym procesie. Dobierz zakres pól do tego procesu18.

Ochrona integracji obejmuje zabezpieczenie połączenia oraz kontrolę dostępu zarówno w sklepie, jak i w systemie odbierającym.

Gdzie znaleźć i jak wygenerować klucze API WooCommerce?

Klucze WooCommerce REST API wygenerujesz w panelu sklepu: WooCommerce → Ustawienia → Zaawansowane → REST API.1
Kluczowi możesz nadać jeden z trzech poziomów dostępu: odczyt, zapis albo odczyt i zapis.

  • Nowy klucz API utwórz w sekcji REST API.
  • Opis klucza powiąż z integracją, która będzie go używać.
  • Użytkownika i uprawnienia dobierz do operacji wykonywanych przez integrację.
  • Wygenerowane dane dostępowe zapisz bezpiecznie. Przekaż je wyłącznie do konfiguracji właściwej integracji.

Gotowy klucz pozwala integracji wysyłać żądania w granicach nadanych uprawnień.

Czym różni się API od REST API?

API to ogólna nazwa interfejsu komunikacji między programami. REST API jest rodzajem API opartym na zasobach i żądaniach HTTP. Każde REST API jest więc API, ale nie każde API działa w architekturze REST.
Wersja v3 WooCommerce REST API używa ścieżki bazowej /wp-json/wc/v3/.

WooCommerce REST API pozwala integracjom korzystać z zasobów sklepu przez ich adresy i metody HTTP. Przy planowaniu połączenia ogólna nazwa „API” nie określa dostępnych operacji. Dopiero wskazanie konkretnego interfejsu pozwala ustalić wymagania dostępu.

Najczęściej zadawane pytania

Czym jest WordPress REST API?

To interfejs WordPressa udostępniający endpointy treści. WordPress zawiera je w rdzeniu od wersji 4.7.

Od czego zacząć korzystanie z WooCommerce REST API?

Sprawdź wersję WooCommerce, ustaw przyjazne bezpośrednie odnośniki i HTTPS, a następnie przypisz klucz API użytkownikowi z odpowiednimi uprawnieniami. Zacznij od żądania kontrolnego do potrzebnego zasobu.

Jak pobrać listę produktów przez API?

Wyślij żądanie GET pod adres /wp-json/wc/v3/products z prawidłowym uwierzytelnieniem. Przy dłuższej liście pobieraj kolejne strony wyników.

Jakie operacje na produktach można wykonać przez REST API?

Możesz pobrać produkt metodą GET, utworzyć go przez POST, zaktualizować przez PUT lub usunąć przez DELETE. Do aktualizacji pojedynczego produktu służy adres /products/{id} z jego identyfikatorem.

Jak dodać pojedynczy produkt za pomocą WooCommerce API?

Wyślij żądanie POST do zasobu produktów `/wp-json/wc/v3/products`. POST tworzy nowy wpis.

Jak zmienić dane konkretnego produktu przez WooCommerce API?

Wyślij żądanie PUT pod adres `/products/{id}`, zastępując `{id}` identyfikatorem produktu. Ta metoda aktualizuje wskazany produkt.

Jak dodać klienta za pomocą WooCommerce API?

Użyj żądania POST skierowanego do zasobu klientów: `/wp-json/wc/v3/customers`. POST służy do tworzenia wpisu.

Jak pobrać klienta po jego ID przez WooCommerce API?

Artykuł wskazuje zasób klientów `/wp-json/wc/v3/customers`, ale nie podaje dokładnej ścieżki ani parametru pobierania klienta po ID.

Źródła

  1. ↑WooCommerce REST API Documentation – WooCommerce https://woocommerce.com/document/woocommerce-rest-api/
  2. ↑WooCommerce Developer Docs – Getting Started with WooCommerce APIs https://developer.woocommerce.com/docs/apis/
  3. ↑WooCommerce REST API | WooCommerce developer docs https://developer.woocommerce.com/docs/apis/rest-api/
  4. ↑RFC 5849 – The OAuth 1.0 Protocol https://www.rfc-editor.org/rfc/rfc5849.html
  5. ↑WooCommerce Developer Docs – Products https://developer.woocommerce.com/docs/apis/rest-api/v3/products/
  6. ↑WooCommerce API for your online shop https://raidboxes.io/en/blog/ecommerce/woocommerce-api/
  7. ↑WooCommerce API comprehensive guide https://www.hostinger.com/tutorials/how-to-generate-woocommerce-api/
  8. ↑WordPress Developer Resources – rest_authorization_required_code() https://developer.wordpress.org/reference/functions/rest_authorization_required_code/
  9. ↑WordPress Developer Resources – Discovery https://developer.wordpress.org/rest-api/using-the-rest-api/discovery/
  10. ↑WooCommerce Code Reference – WC_REST_CRUD_Controller https://woocommerce.github.io/code-reference/files/woocommerce-includes-rest-api-controllers-version3-class-wc-rest-crud-controller.html
  11. ↑REST API v3 | WooCommerce developer docs https://developer.woocommerce.com/docs/apis/rest-api/v3/
  12. ↑dokumentacja WooCommerce Store API. ([developer.woocommerce.com](developer.woocommerce.com https://developer.woocommerce.com/docs/apis/store-api/
  13. ↑How do I create an API in WooCommerce? – White Label Coders https://whitelabelcoders.com/blog/how-do-i-create-an-api-in-woocommerce/
  14. ↑dokumentacja integracji Dolibarr dostępna w WooCommerce — synchronizacja danych i tworzenie faktury w zewnętrznym systemie. ([woocommerce.com](woocommerce.com https://woocommerce.com/document/dolibarr-integration/
  15. ↑dokumentacja WooCommerce — testowanie konfliktów i zmian na kopii sklepu przed wdrożeniem. ([woocommerce.com](woocommerce.com https://woocommerce.com/document/how-to-test-for-conflicts/
  16. ↑dokumentacja WooCommerce Payment Gateway API — obsługa potwierdzonej płatności przez bramkę. ([developer.woocommerce.com](developer.woocommerce.com https://developer.woocommerce.com/docs/features/payments/payment-gateway-api/
  17. ↑dokumentacja uwierzytelniania WooCommerce REST API — poziomy dostępu klucza oraz role i uprawnienia przypisanego użytkownika. ([developer.woocommerce.com](developer.woocommerce.com https://developer.woocommerce.com/docs/apis/rest-api/authentication
  18. ↑wytyczne Europejskiej Rady Ochrony Danych dotyczące minimalizacji danych. ([edpb.europa.eu](edpb.europa.eu https://www.edpb.europa.eu/sites/default/files/files/file1/edpb_guidelines_201904_dataprotection_by_design_and_by_default_v2.0_en.pdf