
Sprawdzone i zaktualizowane w czerwcu 2026 — natywne narzędzia eksportu, Menedżer SQL oraz pułapki kodowania CSV zweryfikowane w PrestaShop 1.7, 8 i 9.
Prędzej czy później każdy sklep PrestaShop trafia na ten sam mur: dane, których potrzebujesz, są w sklepie, ale ludzie i systemy, które mają z nich korzystać, są gdzie indziej. Księgowy chce wartości zamówień rozbite według stawek podatku. Magazyn potrzebuje dzisiejszych niewysłanych zamówień jako listy kompletacyjnej. Ty chcesz faktury z poprzedniego kwartału w arkuszu, który da się sortować i analizować tabelą przestawną. PrestaShop przechowuje to wszystko — pytanie brzmi, jak wyciągnąć z panelu administracyjnego czysty plik CSV, który nie przyjdzie z krzakami, rozjechanymi kolumnami albo w formie, której program księgowy odmówi importu.
Ten poradnik dotyczy konkretnie eksportu zamówień i faktur do CSV: tego, co faktycznie dają natywne narzędzia PrestaShop, jakie pułapki kodowania i ustawień regionalnych po cichu psują takie pliki oraz jak pobrać dokładnie te kolumny, których potrzebujesz. Eksport katalogu produktów to osobny temat, z własnymi niuansami — o nim przeczytasz w artykule import i eksport produktów w PrestaShop.
Co PrestaShop daje od razu po instalacji

PrestaShop ma dwa natywne sposoby eksportowania danych zamówień, a większość sprzedawców zna tylko ten słabszy.
Przycisk Eksport na stronie listy
Otwórz Zamówienia → Zamówienia, a w górnym pasku narzędzi zobaczysz przycisk Eksport. Klikasz go i PrestaShop przekazuje CSV z listą zamówień dokładnie w takiej postaci, w jakiej pokazuje ją tabela — i właśnie w tym tkwi haczyk. Eksportuje widoczne kolumny listy (numer referencyjny, klient, suma, płatność, status, data), z uwzględnieniem filtrów ustawionych w tabeli, i nic więcej. Nie dodasz numeru VAT z adresu rozliczeniowego, nie rozbijesz sumy na netto i podatek, nie pobierzesz pozycji produktów. To zrzut ekranu w formie pliku, a nie narzędzie raportowe. Taki sam przycisk istnieje w Klienci → Klienci oraz w katalogu, z tym samym ograniczeniem do stałych kolumn.
Menedżer SQL — mocne narzędzie, o którym mało kto mówi
Druga droga jest ukryta pod Parametry zaawansowane → Baza danych → Menedżer SQL. Pozwala napisać zapytanie SQL tylko do odczytu, typu SELECT, bezpośrednio do bazy danych i wyeksportować wynik prosto do CSV. Chcesz każde zamówienie z poprzedniego miesiąca z numerem VAT klienta, sumą faktury rozbitą na wartości bez podatku i z podatkiem oraz nazwą przewoźnika? To jedno zapytanie łączące ps_orders, ps_customer, ps_address i ps_order_invoice, które Menedżer SQL eksportuje jednym kliknięciem.
Uczciwy haczyk: wymaga to SQL. Tabele zamówień nie są intuicyjne — sumy są rozłożone na kilka kolumn (total_paid, total_paid_tax_incl, total_paid_tax_excl), dane faktury siedzą w osobnej tabeli ps_order_invoice powiązanej z zamówieniem, a rozbicia podatku są rozsiane po ps_order_detail_tax. Źle ustawione złączenie może po cichu podwoić wiersze albo pominąć zamówienia, które nie mają jeszcze faktury. Przy jednorazowej prośbie z księgowości to najpotężniejsze narzędzie w rdzeniu; przy raporcie uruchamianym co miesiąc ręczne poprawianie SQL szybko zaczyna męczyć — i właśnie tę lukę wypełnia dalsza część poradnika.
Żeby pokazać to konkretnie, poniżej jest zapytanie tylko do odczytu, które możesz wkleić do Menedżera SQL dla miesięcznego eksportu księgowego — numer referencyjny zamówienia, sumy netto i brutto oraz numer faktury dla jednego zakresu dat:
SELECT o.id_order,
o.reference,
o.total_paid_tax_excl,
o.total_paid_tax_incl,
oi.number AS invoice_number,
o.date_add
FROM ps_orders o
LEFT JOIN ps_order_invoice oi
ON oi.id_order = o.id_order
WHERE o.date_add >= '2026-06-01 00:00:00'
AND o.date_add < '2026-07-01 00:00:00'
ORDER BY o.id_order;
LEFT JOIN ma znaczenie: zostawia zamówienia, które nie mają jeszcze faktury (zapytanie z INNER JOIN po cichu by je usunęło). Zapytanie tylko czyta dane — niczego nie zapisuje. Dodaj AND o.valid = 1, jeśli chcesz uwzględnić wyłącznie zamówienia, które PrestaShop traktuje jako realną sprzedaż. To wystarcza do okazjonalnego eksportu; problem zaczyna się wtedy, gdy co tydzień uruchamiasz to samo zapytanie, formatujesz wynik i wysyłasz plik e-mailem — właśnie tę powtarzalność usuwają poniższe eksportery bez SQL.
Pułapki, które psują CSV z PrestaShop
Większość skarg w stylu „eksport jest zepsuty” nie dotyczy brakujących danych — chodzi o plik, który otwiera się niepoprawnie. Niemal zawsze odpowiadają za to trzy rzeczy i warto je rozumieć, bo tak samo potrafią ugryźć natywny eksport, eksport z Menedżera SQL i dowolny moduł.
| Pułapka | Co widzisz | Dlaczego tak się dzieje |
|---|---|---|
| Brak BOM dla UTF-8 | „Müller” zmienia się w „Müller”, „Łódź” po dwukliku w plik w Excelu zamienia się w mojibake | Excel zakłada kodowanie zgodne z ustawieniami regionalnymi systemu, a nie UTF-8, jeśli plik nie zaczyna się od znacznika kolejności bajtów, który mu to podpowiada |
| Konflikt separatora z przecinkiem dziesiętnym | Suma €1.299,00 rozlewa się na dwie kolumny albo całe wiersze przesuwają się w bok | W ustawieniach z przecinkiem dziesiętnym (DE, FR, PL) arkusz traktuje przecinek jako separator kolumn, więc separator CSV zderza się z formatem liczby |
| Nieujęte w cudzysłów pola tekstowe | Adres z przecinkiem („12, Rue de la Paix”) rozpada się na dwie kolumny, a każda następna kolumna się przesuwa | Pola tekstowe, które zawierają znak separatora, muszą być otoczone cudzysłowami; bez tego struktura wiersza się rozsypuje |
Poprawki są mało efektowne, ale bezwzględne: zapisuj plik jako UTF-8 z BOM, żeby Excel poprawnie odczytywał znaki diakrytyczne po dwukliku; zostaw kropki jako separator dziesiętny i pozwól programowi importującemu dostosować format lokalnie; obejmuj cudzysłowami każde pole tekstowe, które może zawierać przecinek, cudzysłów albo znak nowej linii. Dobrze zbudowany eksport robi wszystkie trzy rzeczy za Ciebie. Kiedy tworzysz własny eksport przez Menedżera SQL, zwłaszcza o BOM łatwo zapomnieć — dlatego te same dane wyglądają poprawnie w Google Sheets, a w Excelu u współpracownika są zniekształcone.
Poza wbudowanym eksportem: wybór kolumn i filtrów
Prawdziwa codzienna potrzeba nie brzmi „wszystkie zamówienia”, tylko „te zamówienia, z tymi kolumnami”. Różne zadania wymagają różnych układów tych samych danych i właśnie tego nie potrafi natywny Eksport z listy. Dlatego powstał nasz Orders CSV List Exporter: dodaje w panelu administracyjnym pełny ekran eksportu, na którym wybierasz kolumny i zawężasz wiersze bez pisania ani jednej linii SQL.
Co to oznacza w praktyce? Wybierasz kolumny pogrupowane tematycznie — informacje o zamówieniu, numery faktur i dokumentów dostawy, sumy (każda wartość bez podatku i z podatkiem osobno), klient, pełne adresy dostawy i faktury wraz z numerem VAT oraz pozycje produktów — i zaznaczasz tylko te, których wymaga dany raport. Następnie zawężasz wiersze według zakresu dat, jednego lub kilku statusów zamówienia oraz metody płatności, w dowolnej kombinacji. „Wszystkie opłacone i wysłane zamówienia z poprzedniego miesiąca, z numerami faktur i sumami rozbitymi na podatki” staje się kilkoma kliknięciami zamiast zapytaniem. Moduł zapisuje UTF-8 z BOM i poprawnym cytowaniem pól, więc plik otwiera się czysto w Excelu za pierwszym razem — opisane wyżej pułapki są obsłużone za Ciebie. Działa w całości z panelu administracyjnego i czyta bieżące dane bez dotykania rdzenia, więc aktualizacja nie powinna go złamać.
Powiedzmy precyzyjnie, czym to jest, a czym nie jest: to eksport na żądanie, uruchamiany wtedy, gdy go potrzebujesz, z wybranymi przez Ciebie kolumnami i filtrami — nie harmonogram, wysyłka na FTP ani automatyczny pipeline e-mailowy. Jeśli celem jest plik gotowy dla księgowości albo magazynu, pobierany w kilka sekund bez SQL, dokładnie tę pracę wykonuje.
Faktury wymagają osobnego eksportu
Dane faktur to nie po prostu „zamówienia pod inną nazwą”. Faktura jest prawnym dokumentem księgowym z własnym kolejnym numerem, własną datą, własnym rozbiciem według stawek podatku i nie zawsze musi odpowiadać zamówieniu jeden do jednego. W księgowości zwykle chcesz, żeby jednostką była faktura, a nie zamówienie — dlatego nasz Invoice CSV List Exporter jest osobnym narzędziem, filtrującym po zakresie dat, statusie zamówienia i metodzie płatności oraz generującym CSV ułożony pod import księgowy, a nie kompletację magazynową.
Warto zaznaczyć jedną rzecz u źródła: eksport jest tak czysty, jak numeracja, na której się opiera. Jeśli numery faktur mają luki albo zaczynają się od nowa — co często zdarza się po testach albo gdy domyślna sekwencja PrestaShop resetuje się w nietypowy sposób — księgowy odrzuci plik bez względu na to, jak porządny jest sam CSV. Sekwencyjna numeracja bez luk to zadanie dla naszego modułu Invoice Number i warto ją uporządkować zanim zaczniesz eksportować dane do raportów podatkowych.
Typowe eksporty i jak je ułożyć
Miesięczna księgowość
Ustaw filtr na zakres dat danego miesiąca i statusy, które liczą się jako realna sprzedaż (zwykle Płatność przyjęta, Wysłane, Dostarczone — nie Anulowane ani Błąd płatności). Uwzględnij numer faktury, datę faktury, sumy netto i brutto oraz numer VAT klienta. Przekaż taki plik księgowemu albo zaimportuj go bezpośrednio do programu księgowego. Wykonanie tego z eksportera faktur utrzymuje właściwą jednostkę dla ksiąg.
Listy kompletacyjne dla magazynu
Ustaw filtr na dzisiejszą datę i statusy „do przygotowania”, uwzględnij pozycje produktów, ilości i adres dostawy, a pomiń wszystko, co finansowe. To zasadniczo zadanie realizacji zamówień; jeśli kompletacja i pakowanie są miejscem, w którym ucieka czas, eksport jest jednym elementem większego obrazu opisanego w artykule procesy obsługi zamówień, które oszczędzają godziny.
Raportowanie VAT i OSS
Dla deklaracji unijnego punktu kompleksowej obsługi (OSS) potrzebujesz sprzedaży rozbitej według kraju przeznaczenia i stawki podatku. Wyeksportuj sumy faktur z krajem dostawy oraz kwotami podatku według stawek, a następnie przygotuj tabelę przestawną w arkuszu według kraju. To ten eksport, w którym BOM i obsługa separatora dziesiętnego mają największe znaczenie — pomyłka z przecinkiem dziesiętnym może po cichu zawyżyć sumę dla całego kraju.
Segmentacja klientów
Eksport klientów i ich historii zakupów do platformy marketingowej to powiązana, ale osobna potrzeba — pobiera dane z listy klientów, nie z zamówień, i zasila narzędzia e-mailowe, a nie księgowość. Zamiast rozciągać ten poradnik na kolejny obszar, zostawmy go jako osobny temat; tutaj eksport zamówień służy finansom i realizacji zamówień.
Najczęściej zadawane pytania
Jak wyeksportować zamówienia z PrestaShop do CSV?
Są dwie natywne drogi. Przycisk Eksport w Zamówienia → Zamówienia daje widoczne kolumny tabeli, z uwzględnieniem filtrów — szybko, ale bez możliwości dodania pól takich jak numer VAT albo rozbicia sum na netto i podatek. Pełną kontrolę daje Parametry zaawansowane → Baza danych → Menedżer SQL, który uruchamia zapytanie SELECT tylko do odczytu i eksportuje wynik; to najpotężniejsze narzędzie w rdzeniu, ale wymaga SQL. Do powtarzalnych eksportów bez SQL, z wybranymi kolumnami i filtrami, Orders CSV List Exporter dodaje pełny ekran eksportu.
Dlaczego wyeksportowany CSV pokazuje krzaki, na przykład „Müller”?
Excel odczytuje plik według ustawień regionalnych systemu zamiast jako UTF-8, bo plik nie ma znacznika kolejności bajtów (BOM). Zapisz CSV jako UTF-8 z BOM, a nazwy ze znakami diakrytycznymi będą poprawnie widoczne po dwukliku. To pułapka, o której łatwo zapomnieć przy własnym eksporcie przez Menedżera SQL — dlatego ten sam plik wygląda dobrze w Google Sheets, ale w Excelu u współpracownika jest zniekształcony.
Dlaczego część wierszy przesuwa się w bok albo dzieli na dodatkowe kolumny?
Są dwie przyczyny. W ustawieniach z przecinkiem dziesiętnym (DE, FR, PL) suma taka jak €1.299,00 zderza się z przecinkiem jako separatorem CSV i rozlewa po kolumnach — zostaw kropki jako separator dziesiętny i pozwól programowi importującemu dostosować format lokalnie. Każde pole tekstowe zawierające przecinek („12, Rue de la Paix”) musi też być objęte cudzysłowami, inaczej rozbija wiersz. Dobrze zbudowany eksport obejmuje cudzysłowami każde pole tekstowe, które może zawierać separator, cudzysłów albo znak nowej linii.
Czy dla księgowego eksportować zamówienia czy faktury?
Zwykle faktury. Faktura jest dokumentem prawnym z własnym kolejnym numerem, datą i rozbiciem według stawek podatku, a do tego nie zawsze odpowiada zamówieniu jeden do jednego — dlatego w księgach jednostką powinna być faktura. Invoice CSV List Exporter generuje CSV ułożony pod import księgowy. Najpierw upewnij się, że numeracja faktur nie ma luk (testy często je zostawiają); moduł Invoice Number rozwiązuje ten problem i warto go uporządkować przed eksportem do raportów podatkowych.
Kiedy warto automatyzować eksporty zamiast uruchamiać je ręcznie?
Gdy ktoś loguje się, uruchamia ten sam eksport z tymi samymi filtrami, formatuje go i wysyła tej samej osobie co tydzień — to proces, nie pojedyncze zadanie. Przy naprawdę bieżącym przepływie system-system, na przykład gdy zamówienia mają trafiać do ERP w momencie złożenia, właściwą drogą jest web service API PrestaShop, a Zapier albo Make mogą przekazywać pliki dalej. Poniżej tego progu szybki, filtrowany, poprawnie zakodowany eksport na żądanie jest mniej kruchy niż pipeline, który trzeba utrzymywać.
Kiedy automatyzować, a kiedy nie zawracać sobie tym głowy
Ręczne eksporty są całkowicie w porządku przy okazjonalnych potrzebach — jednorazowej prośbie z księgowości czy analizie ad hoc. Uczciwym testem jest częstotliwość i powtarzalność: jeśli ktoś z zespołu loguje się do panelu administracyjnego, uruchamia ten sam eksport z tymi samymi filtrami, poprawia format pliku i wysyła go tej samej osobie co tydzień, to proces wart automatyzacji, a nie zadanie warte ręcznego wykonywania. Web service API PrestaShop jest drogą dla naprawdę bieżącego przepływu danych między systemami (zamówienia wysyłane do ERP w momencie złożenia), a narzędzia takie jak Zapier czy Make mogą przekazać wygenerowany plik dalej. Dla wszystkiego poniżej tego progu szybki, filtrowany, poprawnie zakodowany eksport na żądanie jest nie tylko wystarczający — jest mniej kruchy niż pipeline, który trzeba utrzymywać.
Zasada stojąca za tym wszystkim jest prosta: PrestaShop już przechowuje czyste, uporządkowane dane zamówień i faktur. Dobry eksport sprowadza się głównie do dwóch rzeczy — pobrania dokładnie tych kolumn i wierszy, których wymaga dane zadanie, oraz zapisania pliku tak, żeby poprawnie otworzył się w kolejnym programie. Gdy te dwie rzeczy są zrobione dobrze, „wyciąganie danych” przestaje być powracającym bólem głowy i staje się zadaniem na trzydzieści sekund.
Komentarze
Brak komentarzy. Bądź pierwszy!
Bądź pierwszy: zadaj pytanie albo podziel się przydatną opinią.
Dodaj komentarz
Dodaj pytanie, szczegół montażu albo opinię, która może pomóc innemu czytelnikowi.