Jak połączyć OpenCart z easySales: kompletny przewodnik integracji

Połącz swój sklep OpenCart z easySales w trzech krokach — uruchom kreatora w easySales i pobierz moduł OpenCart, zainstaluj go i odśwież modyfikacje w panelu OpenCart, a następnie wklej token z easySales z powrotem do modułu. Scentralizuj zamówienia, synchronizuj stany, automatycznie generuj faktury i listy przewozowe i wystawiaj ten sam katalog jako oferty na każdym marketplace.

Dlaczego warto połączyć OpenCart z easySales

Sprzedajesz w OpenCart i chcesz jedno miejsce do zarządzania zamówieniami, wystawiania faktur, wysyłania listów przewozowych do kurierów i ponownego wykorzystywania tych samych produktów jako ofert na marketplace'ach? easySales obsługuje to wszystko z jednego pulpitu.

Po połączeniu easySales pobiera produkty i opcje z OpenCart i centralizuje przychodzące zamówienia. Stamtąd wystawiasz faktury, tworzysz listy przewozowe z dowolnym obsługiwanym kurierem i zamieniasz te produkty w oferty na eMAG, Allegro, Kaufland, Trendyol i 80+ innych kanałów. Stan magazynowy i statusy zamówień pozostają zsynchronizowane w obu kierunkach.

Uruchamiasz kreatora w easySales, pobierasz moduł OpenCart pasujący do wersji sklepu, instalujesz go w panelu OpenCart, a następnie wklejasz token z easySales z powrotem do modułu — bez kodu, bez dostępu FTP, bez zmian motywu.

Jak działa konektor OpenCart

easySales łączy się z OpenCart poprzez mały moduł .ocmod.zip, który pobierasz z konta easySales i instalujesz przez panel OpenCart. Moduł udostępnia prywatny endpoint, który easySales wywołuje, aby odczytać katalog i zamówienia, oraz rejestruje dwa webhooki, dzięki czemu zmiany zamówień i stanów docierają do easySales niemal w czasie rzeczywistym.

Moduł nigdy nie łączy się na zewnątrz. easySales rozmawia z nim, uwierzytelniany tokenem generowanym przez easySales dla każdego sklepu. Dane dostępowe do bazy OpenCart, hasła administratora i sekrety bramek płatniczych pozostają wewnątrz twojej instalacji OpenCart.

Które wersje OpenCart obsługuje easySales

easySales dostarcza oddzielny build modułu dla każdej głównej wersji OpenCart, aby integracja pasowała do API sklepu i układu panelu:

  • OpenCart 1.5.6.4
  • OpenCart 2.0.0.0 – 2.1.0.2
  • OpenCart 2.2.0.0
  • OpenCart 2.3.0.0 – 2.3.0.2
  • OpenCart 3.0.0 – 3.0.2.0
  • OpenCart 4.0 – 4.1.0.3

Kreator wybiera build, gdy wybierzesz wersję. Jeśli jesteś na patchu między dwiema z tych wersji (na przykład 2.3.0.1), zostanie zastosowany build dla najbliższej niższej wersji. Rozgałęzione dystrybucje OpenCart i starsze patche 1.5.x nie są oficjalnie obsługiwane — moduł może się zainstalować, ale ścieżki admina mogą się różnić.

Interaktywny przewodnik

Nie chce ci się czytać? Skorzystaj z interaktywnego przewodnika.

Interaktywny przewodnik — połącz OpenCart z easySales

Wymagania wstępne — co przygotować przed rozpoczęciem

Kilka wymagań zapobiega pomijaniu produktów przy imporcie.

Dostęp administratora OpenCart

Potrzebujesz uprawnień administratora w sklepie, aby zainstalować moduł, odświeżyć modyfikacje i odczytać wygenerowany token.

Obsługiwana wersja OpenCart

easySales dostarcza buildy dla OpenCart 1.5, 2.0–2.1, 2.2, 2.3, 3.0 i 4.0. Rozgałęzione dystrybucje i nieobsługiwane poziomy patchy mogą się zainstalować, ale nie są gwarantowane.

Publicznie dostępna witryna

easySales wywołuje sklep OpenCart, aby odczytać katalog i zamówienia, więc witryna musi być dostępna z publicznego internetu — nie za HTTP basic auth, IP allow-listą ani stroną maintenance.

Unikalne SKU na produkt i sprzedawalną opcję

Dwa produkty z tym samym SKU kolidują — tylko jeden jest importowany. Sprawdź i zdeduplikuj przed połączeniem, w tym między kombinacjami opcji sprzedawanymi oddzielnie.

Numeryczny stan na produkt

Stan musi być wartością numeryczną dla każdego produktu.

Krok 1 — Uruchom kreatora w easySales i pobierz moduł

W easySales przejdź do Integracje → Sklepy online → Połącz sklep, następnie wybierz OpenCart i wskaż wersję sklepu. Kreator otwiera się na kroku Pobierz moduł.

Kreator easySales Połącz sklep na kroku Pobierz moduł z wybranym OpenCart, widocznym selektorem wersji i podświetlonym przyciskiem pobierania modułu
Po wybraniu OpenCart i twojej wersji kreator otwiera się na kroku Pobierz moduł — kliknij, aby pobrać pasujące archiwum `.ocmod.zip`.

Kliknij przycisk pobierania, aby uzyskać archiwum modułu (easysales.ocmod.zip lub nazwę specyficzną dla wersji, np. 2market-oc3x.ocmod.zip). Pozostaw tę kartę otwartą — wrócisz do niej w Kroku 3, aby zakończyć konfigurację.

Krok 2 — Prześlij i zainstaluj moduł w OpenCart

W panelu OpenCart przejdź do Rozszerzenia → Instalator. Kliknij Prześlij, wybierz archiwum .ocmod.zip, które właśnie pobrałeś, i poczekaj na zielone potwierdzenie "sukces".

Ekran panelu OpenCart Rozszerzenia → Instalator z podświetlonym przyciskiem Prześlij i gotowym do przesłania archiwum easySales `.ocmod.zip`
W panelu OpenCart otwórz Rozszerzenia → Instalator i prześlij archiwum `.ocmod.zip` easySales.

Następnie otwórz Rozszerzenia → Rozszerzenia, filtruj po Modules w górnym rozwijanym, znajdź easySales na liście i kliknij zielony przycisk Zainstaluj (+). Po instalacji kliknij niebieski przycisk Edytuj (ołówek), aby otworzyć ustawienia modułu — zobaczysz pole Token. Pozostaw tę kartę otwartą; w następnym kroku wkleisz tu token z easySales.

Krok 3 — Skonfiguruj witrynę w easySales i wklej token w OpenCart

Wróć do karty easySales — kreator jest teraz na kroku Konfiguracja i wyświetla wygenerowany token. Skopiuj token, przełącz się z powrotem na OpenCart i wklej go w polu Token na stronie edycji modułu easySales. Ustaw Status na Enabled, pozostaw inne domyślne wartości, a następnie kliknij Zapisz w OpenCart.

Strona edycji modułu easySales w panelu OpenCart z tokenem z easySales wklejonym w polu Token i Status ustawionym na Enabled
Wklej token z easySales w polu Token na stronie edycji modułu easySales w OpenCart i ustaw Status na Enabled.

Z powrotem w easySales zakończ konfigurację witryny. Formularz pod kreatorem zbiera wszystko, czego easySales potrzebuje do prowadzenia integracji.

Nazwa i URL witryny

  • Nazwa witryny — etykieta, którą wybierasz. Widoczna tylko w easySales.
  • URL witryny — twoja witryna OpenCart. Użyj dokładnego URL, pod którym działa OpenCart, w tym https:// i prefiksu www, jeśli twoja domena go używa. Jeśli OpenCart żyje w podkatalogu (example.com/shop), dołącz go.

VAT i VAT dla wysyłki

Jeśli jesteś podatnikiem VAT, wprowadź stawkę, która ma zastosowanie do twoich produktów, oraz oddzielną stawkę dla wysyłki (na przykład 23 dla standardowej stawki polskiej, lub 21 dla aktualnej standardowej stawki rumuńskiej). Pozostaw puste, jeśli nie. Klasy podatkowe OpenCart nie są automatycznie wykrywane — stawka, którą ustawisz tutaj, jest tą, której easySales używa na fakturach i wychodzących ofertach marketplace.

Język i waluta

Wybierz język witryny (rumuński, bułgarski, węgierski, polski lub angielski) i walutę (RON, BGN, HUF, PLN lub EUR). Działają jako domyślne dla importowanych produktów i jako fallback, gdy zamówienie nie niesie wyraźnej waluty. Nigdy nie nadpisują pojedynczych zamówień — każde zamówienie zachowuje walutę zgłoszoną przez OpenCart.

Źródło stanu magazynowego produktów

Najważniejsza decyzja w formularzu. Mówi easySales, gdzie znajduje się miarodajna wartość stanu:

  • Witryna — OpenCart jest źródłem prawdy. easySales czyta stan z OpenCart i nigdy go nie nadpisuje.
  • easySales — easySales jest źródłem prawdy. Zmiany stanu w easySales (sprzedaż, ręczne edycje, odpisy z marketplace) są wysyłane do OpenCart.
  • Połączona integracja — twój stan magazynowy znajduje się w systemie zewnętrznym już połączonym z easySales (oprogramowanie księgowe, ERP, partner fulfilment i wiele innych). easySales czyta stan z tej integracji i wysyła go do OpenCart. Najpierw połącz integrację i zadeklaruj jej magazyn — inaczej nie możesz wybrać tej opcji.

Prowadzisz operację na wielu magazynach? Przełącz formularz w tryb Zaawansowany magazyn. Zamiast wiązać sklep z jednym źródłem stanu, wybierz jeden lub więcej magazynów easySales i zdefiniuj, jak ich stan jest agregowany, priorytetyzowany lub dzielony na kanały.

Domyślny typ paczki

Używany przy generowaniu listu przewozowego, gdy zamówienie nie określa paczki. Wybierz typ pasujący do większości twoich zamówień.

Krok 4 — Odśwież modyfikacje OpenCart i sfinalizuj w easySales

To krok specyficzny dla OpenCart, który łapie większość nowych połączeń, i musi być ostatnią rzeczą, którą robisz.

Otwórz Rozszerzenia → Modyfikacje w panelu OpenCart i kliknij niebieski przycisk Odśwież w prawym górnym rogu. OpenCart kompiluje nadpisania ocmod przy odświeżaniu — dopóki nie klikniesz, moduł jest zainstalowany, ale jego hooki nie są aktywne.

Teraz wróć do easySales i kliknij Zapisz, aby sfinalizować połączenie. easySales testuje połączenie, rejestruje webhooki na twojej witrynie OpenCart i zaczyna importować katalog.

Co dzieje się automatycznie po zapisaniu

easySales zajmuje się konfiguracją webhooków i importem początkowym.

  1. Dwa webhooki są rejestrowane na twojej witrynie OpenCart: jeden do zmian zamówień i jeden do zmian stanu. Każde zamówienie utworzone, zaktualizowane lub anulowane w OpenCart dociera do easySales niemal w czasie rzeczywistym, to samo dotyczy aktualizacji stanu.
  2. Twój katalog produktów jest importowany — produkty i ich kombinacje opcji pojawiają się w Sklepy online → Produkty, gdzie możesz je przeglądać, edytować i zamieniać w oferty na marketplace'ach.
  3. Przychodzące zamówienia OpenCart pojawiają się na ekranie Zamówienia, gdzie wystawiasz faktury, listy przewozowe i uruchamiasz procesy automatyzacji.
  4. Stan synchronizuje się według wybranego źródła. Jeśli wybrałeś easySales, push'e stanu zaczynają działać ciągle, a twoja witryna OpenCart odzwierciedla scentralizowany magazyn.
OpenCart → easySales easySales → OpenCart
Zamówienia (tworzenie, aktualizacja, anulowanie) Aktualizacje stanu
Produkty i kombinacje opcji Zmiany statusu zamówienia
Poziomy stanu Status fulfilment z generowania listu przewozowego
Ceny produktów
Kategorie
Pola niestandardowe zamówienia (NIP, ID paczkomatu, wybór kuriera)
Dane klienta i adresy
URL-e obrazów
Synchronizacja dwukierunkowa — zamówienia przychodzące, stan/status/fulfilment wychodzące.

Dostrajanie połączenia OpenCart

Po zapisaniu otwórz zakładkę Preferencje witryny OpenCart. Dwie grupy ustawień zasługują na szybki przegląd.

Order Behavior

  • Allow reopening completed orders — domyślnie statusy końcowe, takie jak "Complete", nie mogą wracać do "Processing". Włącz, jeśli musisz ponownie otwierać zamówienia.
  • Allow reopening cancelled orders — ta sama logika dla anulowanych zamówień (przydatne, gdy tymczasowo anulowane, nieopłacone zamówienie zostaje ostatecznie opłacone).

Synchronization

  • Fetch orders — automatyczny import nowych zamówień OpenCart.
  • Update order status on OpenCart — wypycha zmiany statusu z easySales z powrotem do OpenCart, aby oba systemy pozostały zsynchronizowane.
  • Update product stock on OpenCart — wypycha poziomy stanu easySales do twojej witryny OpenCart. Wyłącz, jeśli OpenCart jest twoim źródłem stanu.

Kliknij Zapisz u dołu strony, aby zastosować zmiany.

Opcje, paczkomaty i inne osobliwości OpenCart

Kilka zachowań specyficznych dla OpenCart, które warto znać:

  • Opcje produktu. Produkty OpenCart niosą opcje (rozmiar, kolor itp.) z opcjonalnymi SKU dla każdej opcji. easySales importuje każdą sprzedawalną kombinację jako oddzielną wariację powiązaną z produktem nadrzędnym przez SKU. Jeśli twój sklep używa opcji bez SKU, te produkty są importowane jako jeden wpis — ustaw SKU dla opcji przed połączeniem, jeśli chcesz, aby były indywidualnie śledzone na marketplace'ach.
  • Paczkomaty. Jeśli twój sklep używa obsługiwanego rozszerzenia paczkomatów (Sameday EasyBox, InPost i inne sieci paczkomatów na rynkach, które obsługujemy), easySales automatycznie odczytuje identyfikator paczkomatu z pól niestandardowych zamówienia. Nie jest wymagana konfiguracja. Paczkomat jest następnie używany jako punkt dostawy przy generowaniu listu przewozowego.
  • Niestandardowe metody płatności. OpenCart pozwala dodawać dowolną metodę płatności poprzez rozszerzenia. easySales automatycznie mapuje standardowe metody (przelew bankowy, COD, karta przez popularne bramki). Niestandardowe metody przychodzą jako Unknown — skontaktuj się ze wsparciem, aby rozszerzyć mapowanie dla twojej konkretnej bramki.
  • URL-e obrazów. OpenCart serwuje obrazy z image/catalog/... względem katalogu głównego witryny. Moduł przepisuje je na bezwzględne URL-e przy eksporcie. Jeśli obrazy produktów nie pojawiają się w easySales, najczęstszą przyczyną są brakujące pliki na dysku — OpenCart rejestruje ścieżkę nawet gdy plik zniknął.
  • Cache modyfikacji. Jeśli zmieniasz rozszerzenia lub motywy panelu OpenCart po zainstalowaniu modułu easySales, odśwież ponownie Rozszerzenia → Modyfikacje. OpenCart milcząco wyłącza nadpisania ocmod przy niektórych aktualizacjach panelu.
  • Aktualizacje modułu. Gdy nowa wersja modułu jest opublikowana, easySales pokazuje czerwone ostrzeżenie w Preferencjach witryny. Pobierz nowy build, usuń stary moduł z panelu OpenCart (Rozszerzenia → Rozszerzenia → Modules → Odinstaluj), następnie zainstaluj nowe archiwum, postępując ponownie zgodnie z Krokiem 2. Zapisz zarówno w OpenCart, jak i w easySales, następnie odśwież Rozszerzenia → Modyfikacje.
  • Prefiks serii faktur. Jeśli chcesz konkretną serię faktur na dokumentach generowanych w dół po OpenCart, ustaw ją w panelu OpenCart w Settings → Option → Checkout → Invoice Prefix. easySales odczytuje tę wartość razem z zamówieniem.

Jesteś połączony — co dalej

Gdy zamówienia zaczną przychodzić, następnym krokiem jest automatyzacja. Skonfiguruj procesy do generowania faktur, tworzenia listów przewozowych i wysyłania powiadomień o śledzeniu. Jeśli sprzedajesz też na marketplace'ach, zamień katalog OpenCart w oferty i pozwól easySales je wypchnąć.

Karta nie jest wymagana
14 dni darmowego okresu testowego
Anuluj w dowolnym momencie

Połącz swój sklep OpenCart w kilka minut

Wypróbuj easySales bezpłatnie przez 14 dni. Bez karty kredytowej i bez zmian w kodzie.

Często zadawane pytania

Cztery przyczyny obejmują większość przypadków. Najczęstsza: Rozszerzenia → Modyfikacje nigdy nie zostały odświeżone po instalacji i konfiguracji modułu — dopóki nie klikniesz Odśwież, hooki modułu nie są aktywne. Druga: status modułu easySales nie jest ustawiony na Enabled w Rozszerzenia → Rozszerzenia → Modules. Trzecia: token zapisany w OpenCart nie pasuje do tego w easySales. Czwarta: twoja witryna nie jest dostępna z publicznego internetu — staging za HTTP basic auth, IP allow-listą lub stronami maintenance milcząco blokuje webhooki. Jeśli wszystkie cztery są w porządku, otwórz stronę Błędy w easySales, aby znaleźć zamówienia, które nie przeszły walidacji przy imporcie (brakujące pole adresu lub SKU produktu, który nie istnieje w easySales, to typowe przyczyny).

Tak — easySales dostarcza oddzielny moduł `.ocmod.zip` dla każdej głównej wersji OpenCart: 1.5.6.4, 2.0–2.1, 2.2, 2.3, 3.0 i 4.0. Kreator wybiera odpowiedni build, gdy wybierzesz swoją wersję. Jeśli jesteś na patchu między dwiema obsługiwanymi wersjami (na przykład 2.3.0.1), stosowany jest build dla najbliższej niższej wersji. Mocno rozgałęzione dystrybucje OpenCart nie są oficjalnie obsługiwane — moduł może się zainstalować, ale ścieżki admina mogą się różnić i nie możemy zagwarantować tego samego zachowania.

easySales odczytuje status zamówienia OpenCart, gdy zamówienie przychodzi, i mapuje go wewnętrznie na stan płatności easySales. Standardowe statusy OpenCart (Complete, Processing, Pending, Cancelled) są mapowane automatycznie. Jeśli zmieniłeś nazwy statusów lub dodałeś niestandardowe, których easySales nie rozpoznaje, skontaktuj się ze wsparciem, aby rozszerzyć mapowanie dla twojego sklepu. Niestandardowe bramki płatności domyślnie przychodzą jako Unknown — również skontaktuj się ze wsparciem, aby rozszerzyć mapowanie dla twojej konkretnej bramki. Zamówienia za pobraniem zazwyczaj pozostają nieopłacone, dopóki kurier nie potwierdzi dostawy i nie przesuniesz statusu ręcznie lub przez proces automatyzacji.

Produkty OpenCart niosą opcje (rozmiar, kolor, materiał itp.) z opcjonalnymi SKU dla każdej opcji. easySales importuje każdą sprzedawalną kombinację jako oddzielną wariację powiązaną z produktem nadrzędnym przez SKU. Rodzic dostarcza tytuł, opis, obrazy i cechy; każda wariacja niesie własne SKU, cenę, stan i wartości atrybutów. Jeśli twój sklep używa opcji bez SKU (domyślne OpenCart), te produkty są importowane jako jeden wpis — ustaw SKU dla opcji przed połączeniem, jeśli chcesz, aby były indywidualnie śledzone na marketplace'ach.

OpenCart serwuje obrazy z ścieżki `image/catalog/...` względem katalogu głównego witryny. Moduł easySales przepisuje je na bezwzględne URL-e przy eksporcie. Najczęstszą przyczyną brakujących obrazów jest fakt, że OpenCart rejestruje ścieżkę w bazie danych nawet gdy plik nie jest już na dysku — typowa pozostałość po zmianach motywu lub ręcznym zarządzaniu plikami. Zaudytuj produkty w panelu OpenCart i prześlij ponownie brakujące pliki, następnie uruchom ręczne ponowne pobranie produktu w easySales. Jeśli obrazy istnieją, ale nadal nie docierają do easySales, twoja witryna może być za HTTP basic auth lub CDN z ochroną hotlink — easySales pobiera przez publiczny HTTPS i nie podąża za URL-ami chronionymi auth.

Tak — jeśli twój sklep używa obsługiwanego rozszerzenia paczkomatów (Sameday EasyBox, InPost i inne sieci paczkomatów na rynkach, które obsługujemy), easySales automatycznie odczytuje identyfikator paczkomatu z pól niestandardowych zamówienia OpenCart. Nie jest wymagana dodatkowa konfiguracja — paczkomat jest używany jako punkt dostawy przy generowaniu listu przewozowego. Sieć paczkomatów nie jest jeszcze na liście automatycznego wykrywania lub przechowywana w niestandardowym polu? Skontaktuj się ze wsparciem, aby ją rozszerzyć.

Tylko nowe. Zamówienia przepływają przez webhook, który moduł easySales rejestruje, gdy zapisujesz połączenie — uruchamia się dla każdego zamówienia utworzonego lub zaktualizowanego w OpenCart od tego momentu. Zamówienia złożone przed skonfigurowaniem połączenia nie są automatycznie uzupełniane. Jeśli potrzebujesz historycznych zamówień w easySales do raportowania lub kontynuowanej realizacji, skontaktuj się ze wsparciem, aby omówić jednorazowy import.

Czy ten przewodnik był pomocny?