PrestaShop – integracja z MetaKocka

Zaktualizowano 24.07.2026


Nawiązanie połączenia w celu wymiany/synchronizacji danych

Integracja sklepu internetowego działającego na platformie PrestaShop z systemem MetaKocka umożliwia:

  • automatyczne przesyłanie zamówień wraz ze wszystkimi danymi klienta (odbiorca, płatnik, forma płatności, rabaty oraz zamówione produkty),
  • synchronizację produktów (produkty mogą być przesyłane ze sklepu internetowego do MetaKocka wraz ze wszystkimi danymi, które zostały już wprowadzone w sklepie internetowym),
  • automatyczną synchronizację stanów magazynowych.

Faktury generowane są automatycznie na podstawie przesłanych zamówień, bez konieczności wykonywania dodatkowych czynności. Są one również weryfikowane w systemie FURS dla prawnie określonych metod płatności, a w przypadku wydanych towarów stan magazynowy jest odpowiednio zmniejszany i aktualizowany również w sklepie internetowym (jeżeli taka opcja została skonfigurowana).


Uzyskanie kluczy API

Aby ustanowić połączenie ze sklepem internetowym PrestaShop, należy uzyskać następujące dane:

  • adres sklepu internetowego,
  • klucz dostępu do usługi internetowej (PrestaShop WebService Key).

Klucz dostępu do usługi internetowej pozostaje aktywny do momentu jego anulowania.


Procedura krok po kroku:

1. Zaloguj się do panelu administracyjnego sklepu internetowego PrestaShop, a następnie w lewym menu, w sekcji Konfiguracja, wybierz:

Parametry zaawansowane (Advanced Parameters)

2. Z dostępnych opcji wybierz:

Webservice.



3. Na tej stronie w prawym górnym rogu wybierz opcję: „Add new webservice key” (Dodaj nowy klucz usługi internetowej).



4. Otworzy się strona dodawania nowego klucza dostępu do usługi internetowej.

5. Pole „Key” jest parametrem obowiązkowym. Można wprowadzić klucz ręcznie lub wygenerować go automatycznie, klikając przycisk „Generate” (zalecana opcja).

6. Pole „Key description” służy do wpisania własnego opisu przeznaczenia klucza. W tym przypadku opis powinien brzmieć:

„Connection with MetaKocka service”

7. Następnie należy wybrać status nowego klucza. Może on być:

  • aktywny (Yes),
  • nieaktywny (No).

W przypadku połączenia z MetaKocka klucz musi zostać aktywowany, ponieważ w przeciwnym razie połączenie może nie działać poprawnie.

8. Ostatnim krokiem dodawania nowego klucza dostępu do usługi internetowej sklepu PrestaShop jest wybór uprawnień, które MetaKocka będzie posiadać.

W tym przypadku wystarczy zaznaczyć wszystkie opcje:

  • View (GET),
  • Modify (PUT).


9. Po zakończeniu wyboru uprawnień kliknij „Save”, aby zapisać ustawienia i aktywować klucz.


10. Następnie w interfejsie internetowym MetaKocka należy wprowadzić adres sklepu internetowego oraz właśnie utworzony klucz.

Przejdź do:

Ustawienia / Połączenia (1)

następnie:

  • dodaj połączenie dla PrestaShop (2),
  • wprowadź adres URL swojego sklepu internetowego (3),
  • wprowadź klucz otrzymany ze sklepu internetowego (4),
  • zapisz ustawienia (5).

Po zapisaniu kliknij „Test połączenia”, aby sprawdzić, czy integracja działa poprawnie.



Mapowanie produktów według kodów

Pole „Reference” jest używane jako kod produktu.




Problemy z połączeniem

Błąd 401 Unauthorized

W przypadku otrzymania błędu „401 Unauthorized error” należy wprowadzić odpowiednie zmiany w konfiguracji Apache.

Opis problemu oraz rozwiązanie dostępne są pod poniższymi linkami:

https://github.com/Bukimedia/PrestaSharp/issues/177
https://stackoverflow.com/questions/31411979/401-error-when-connecting-to-prestashop-webservice-from-android
http://forge.prestashop.com/browse/PSCSX-4818


Szybkie rozwiązanie:

Należy wprowadzić zmiany w pliku .htaccess znajdującym się w głównym katalogu sklepu internetowego.

Przed zmianą:


RewriteRule . - [E=REWRITEBASE:/]

RewriteRule ^api$ api/ [L]


Po zmianie (dodano pogrubioną linię): 


RewriteRule . - [E=REWRITEBASE:/]

RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]

RewriteRule ^api$ api/ [L]


Nieprawidłowy klucz a problemy z dostępem do API

Jeżeli Apache nie jest poprawnie skonfigurowany w sklepie, otrzymasz następujący błąd:

401 Unauthorized

Jeżeli klucz jest nieprawidłowy, odpowiedź również będzie miała kod 401, ale z następującą zawartością:

 {"errors":[{"code":20,"message":"Authentification key is not active"},{"code":21,"message":"No permission for this authentication key"}]}


Symulacja wywołania za pomocą klienta REST

Funkcjonalność można sprawdzić za pomocą klienta REST w następujący sposób:

Przykład:

  • adres sklepu internetowego:
    http://18.196.116.84
  • wartość klucza:
1234

Należy utworzyć adres URL do testu połączenia:

http://18.196.116.84/api/configurations/?display=full&output_format=JSON

Następnie należy przekonwertować klucz do formatu Base64 (np. za pomocą strony https://www.base64encode.org/) i umieścić go w nagłówku Authorization z wartością:

Basic NEY2VjgzVDFLRURSQkpLWEkxWlVaRQ=

Po wykonaniu wywołania powinna zostać zwrócona odpowiedź zawierająca dane.

Przykład działania został przedstawiony na poniższym obrazku.


Czy ten artykuł był pomocny?

To wspaniale!

Dziękujemy za opinię

Przepraszamy, że nie udało nam się pomóc!

Dziękujemy za opinię

Daj nam znać, jak możemy ulepszyć ten artykuł!

Wybierz co najmniej jeden powód
Wymagana weryfikacja captcha.

Wysłano opinię

Doceniamy Twój wysiłek i postaramy się naprawić artykuł