Sklepy internetowe

Dostępne w edycji: PRO

Sklepy internetowe

Sklepy internetowe - Faktura VAT 2027

Integracja z platformami sprzedaży internetowej — zamówienia trafiają do programu bez ręcznego przepisywania.

Obsługiwane platformy

WooCommerce, PrestaShop, BaseLinker oraz Allegro.

Jak to działa

  1. Konfigurujesz połączenie ze sklepem (adres, klucze dostępu).
  2. Program pobiera zamówienia wraz z danymi kupujących i pozycjami.
  3. Zamówienie zamieniasz na fakturę albo paragon jednym poleceniem.
  4. Wystawiony dokument możesz odesłać do klienta i wysłać do KSeF.

Wszystkie operacje uruchamiasz ręcznie — program nie łączy się ze sklepem sam w tle. Pobierasz zamówienia wtedy, kiedy chcesz.

Co zyskujesz

  • brak przepisywania — dane kupującego i pozycje pochodzą wprost ze sklepu,
  • jedna ewidencja — sprzedaż ze sklepu i stacjonarna w tym samym rejestrze VAT,
  • stany magazynowe pod kontrolą — patrz sekcja niżej.

Stany magazynowe (wszystkie platformy)

Dwie niezależne funkcje, obie domyślnie wyłączone — włączasz je świadomie:

1. Sprzedaż ze sklepu zdejmuje towar z magazynu. Gdy w Konfiguracja → Magazyn włączysz „Automatycznie wystawiaj WZ/PZ do faktury”, faktura wystawiona z zamówienia utworzy dokument WZ i zdejmie towar ze stanu. Bez tej opcji stan zdejmiesz ręcznie poleceniem „Drukuj WZ do faktury” z listy dokumentów. Funkcja wymaga modułu Magazyn (edycja PRO).

2. Wysyłanie stanów z programu do sklepu. W konfiguracji połączenia zaznacz „Pozwól wysyłać stany magazynowe do sklepu” i wskaż magazyn (puste = magazyn domyślny).

Konfiguracja połączenia z WooCommerce — opcje synchronizacji

W PrestaShop okno wygląda podobnie — różni się polami dostępowymi (klucz webservice zamiast pary klucz/sekret) i adresem z końcówką /api/:

Konfiguracja połączenia z PrestaShop

Allegro nie ma pary klucz/sekret nadawanej w panelu sklepu — zamiast tego podajesz dane własnej aplikacji (Client ID i Client Secret) i jednorazowo potwierdzasz dostęp przyciskiem „Autoryzuj w Allegro”. Jak ją zarejestrować, opisano niżej.

Konfiguracja połączenia z Allegro

Następnie na zakładce Towary użyj przycisku Wyślij stany.

Zakładka Towary — przycisk Wyślij stany

Do sklepu trafia ilość dostępna, czyli stan pomniejszony o rezerwacje z zamówień — towar obiecany jednemu klientowi nie zostanie zaoferowany drugiemu.

Towary dopasowywane są po indeksie towaru, więc musi być taki sam po obu stronach:

SklepPole w sklepie
WooCommerceSKU
PrestaShopReference (Referencja)
AllegroSygnatura oferty (pole „Reference number” przy wystawianiu)
BaseLinkerSKU produktu w katalogu

Indeksy, których sklep nie zna, program wypisze po zakończeniu — takie towary wyślij najpierw przyciskiem „>>”.

Program wysyła tylko te towary, których stan faktycznie się zmienił. Jeśli po synchronizacji zobaczysz „zaktualizowano 12, pominięto bez zmian 480”, to znaczy, że 480 pozycji miało w sklepie już poprawny stan — nie ma powodu wysyłać ich ponownie.

W przypadku Allegro ma to dodatkowe znaczenie: Allegro nie przyjmuje stanów paczkami, każda oferta aktualizowana jest osobno. Dlatego przy pierwszej synchronizacji dużej kartoteki program wysyła maksymalnie 500 ofert na jedno uruchomienie i pokazuje, ile pozycji zostało — wystarczy kliknąć „Wyślij stany” ponownie, żeby dokończyć. Kolejne synchronizacje są już krótkie, bo dotyczą tylko tego, co się zmieniło.

Ilości ułamkowe (kg, metry, litry) zamieniane są na liczby całkowite, bo sklepy nie przyjmują ułamków. Stan zaokrągla się w dół, żeby nie oferować więcej niż mamy — z jednym wyjątkiem: gdy zostało mniej niż 1 (np. 0,5 kg), do sklepu idzie 1. Zaokrąglenie do zera pokazałoby „brak towaru” mimo realnego stanu na magazynie.

Osobna opcja „Nadpisuj ceny istniejących towarów w sklepie” decyduje, czy eksport towarów ma zmieniać ceny już istniejących produktów. Domyślnie wyłączona, bo sklep często ma własne promocje i ceny.

Import faktur z BaseLinkera

BaseLinker potrafi wystawiać faktury po swojej stronie. Jeśli tak pracujesz, przycisk Pobierz faktury (Alt+U) pobiera gotowe faktury zamiast zamówień — każda trafia do listy jako osobny wiersz z klientem i pozycjami, a stąd wystawiasz z niej dokument w programie.

Dwie rzeczy działają tu inaczej niż przy zamówieniach:

  • Kontrahent dopasowywany po NIP — faktury zwykle mają NIP nabywcy, więc program najpierw szuka firmy po numerze, a dopiero potem po nazwie.
  • Zaznaczenie „Numery dokumentów ze sklepu” sprawia, że dokument zachowa numer nadany w BaseLinkerze. Domyślnie opcja jest wyłączona i numer nadaje numeracja programu.

Gdy faktura z BaseLinkera nie ma pozycji, program tworzy jedną pozycję zbiorczą na pełną wartość — dokument da się wystawić bez ręcznego uzupełniania.

Czego integracja nie robi

  • nie pobiera ze sklepu zwrotów ani korekt — korektę wystawiasz w programie,
  • nie pobiera wariantów produktu (rozmiar, kolor) jako osobnych pozycji,
  • nie odsyła do sklepu statusu realizacji ani numeru przesyłki,
  • nie synchronizuje stanów ze sklepu do programu — źródłem prawdy o stanie jest magazyn w programie.

Konfiguracja połączenia

Dane dostępowe generuje się w panelu sklepu. Klucz musi mieć uprawnienia odczytu i zapisu, jeśli chcesz wysyłać stany albo towary — sam odczyt wystarczy tylko do pobierania zamówień.

WooCommerce — w panelu sklepu: WooCommerce → Ustawienia → Zaawansowane → REST API. Dostajesz parę: Consumer key (wpisz w polu „Klucz API”) i Consumer secret (pole „Sekret API / hasło”). W polu adresu podaj adres sklepu, np. https://twoj-sklep.pl.

PrestaShop — w panelu sklepu: Zaawansowane → Webservice. Najpierw włącz opcję „Włącz webservice PrestaShop”, potem dodaj nowy klucz i zaznacz uprawnienia dla zasobów products i stock_availables (a dla zamówień także orders, customers, addresses, order_states). Klucz wpisz w polu „Klucz API” — pole sekretu zostaw puste. W polu adresu podaj adres z końcówką /api/, np. https://twoj-sklep.pl/api/.

Allegro — połączenie działa inaczej niż w pozostałych sklepach: nie podajesz loginu ani hasła do Allegro, tylko rejestrujesz własną aplikację i potwierdzasz dostęp w przeglądarce.

  1. Wejdź na https://apps.developer.allegro.pl i zaloguj się swoim kontem Allegro.
  2. Zarejestruj nową aplikację. Zaznacz opcję „Aplikacja będzie działać w środowisku bez dostępu do przeglądarki albo klawiatury” — bez tego program nie będzie mógł się połączyć, a typu aplikacji nie da się później zmienić.
  3. Zaznacz uprawnienia do odczytu i zapisu ofert oraz odczytu zamówień.
  4. Otrzymane Client ID wpisz w polu „Użytkownik”, a Client Secret w polu „Sekret API / hasło”. Pole adresu zostaw puste.
  5. Kliknij „Autoryzuj w Allegro” — program pokaże kod, który zatwierdzasz na stronie Allegro. Po zatwierdzeniu pole „Klucz API” wypełni się samo.

Połączenie odnawia się samoczynnie, więc autoryzację wykonujesz raz.

Dopasowanie działa po sygnaturze oferty: przy wystawianiu oferty w Allegro wpisz w polu „Reference number” ten sam indeks, który towar ma w programie. Oferty bez sygnatury program pominie i wypisze je po synchronizacji.

BaseLinker — token wygenerujesz w panelu BaseLinkera: Moje konto → API. Wklej go w polu „Klucz API”; pola adresu, użytkownika i sekretu zostaw puste.

Stany trafiają do katalogu domyślnego i jego magazynu własnego. BaseLinker pozwala też podpiąć magazyny zewnętrzne (z podłączonych sklepów) — do nich stanów zapisać się nie da i program takiego magazynu nie użyje. Dopasowanie odbywa się po SKU produktu w katalogu.

Konfiguracja połączenia z BaseLinkerem