Udostępnij ceny handlowe każdemu, kto zaznaczy pole „firma”, a zbudujesz kupon rabatowy, nie kanał sprzedaży B2B. W ciągu tygodnia klienci indywidualni znajdą formularz, podadzą się za firmę i zaczną płacić ceny hurtowe za zamówienia pojedynczych sztuk. Wniosek o konto handlowe jest bramką, która to zatrzymuje: wymaga od klienta potwierdzenia, że naprawdę prowadzi firmę, zanim PrestaShop pokaże mu niższą cenę albo kategorię z ograniczonym dostępem. Ten poradnik dotyczy budowania i obsługi takiej bramki konkretnie w PrestaShop, jakie dane zbierać, jak weryfikować je bez poświęcania całego dnia na jednego zgłaszającego i dokładnie gdzie w panelu administracyjnym włącza się przełącznik, który przyznaje albo odbiera dostęp.

To jeden element szerszej konfiguracji B2B. Jeśli nadal zastanawiasz się, czy w ogóle prowadzić sprzedaż B2B na PrestaShop i jak łączą się poszczególne elementy, zacznij od artykułu sprzedaż B2B na PrestaShop; ten tekst zakłada, że decyzja już zapadła, i skupia się wyłącznie na procesie zgłoszenia i akceptacji.

Najpierw włącz tryb B2B. Zmienia on to, o co formularz może pytać

Zanim zaprojektujesz wniosek, włącz natywny tryb B2B PrestaShop w sekcji Parametry sklepu → Ustawienia klienta, przełącznikiem Włącz tryb B2B (wartość konfiguracji PS_B2B_ENABLE). Co to właściwie daje? Udostępnia pola konta firmowego, które PrestaShop potrafi już przechowywać, SIRET, APE i inne dane klientów B2B, dzięki czemu zbierasz weryfikowalne informacje do właściwych kolumn bazy danych, zamiast wpisywać je w dowolnym komentarzu tekstowym, którego później nie da się sensownie przeszukać. Nazwa firmy i numer VAT nie pojawiają się magicznie dzięki trybowi B2B: firma jest standardowym polem klienta/adresu, a numer VAT jest przechowywany w obiekcie Address i wyświetlany zgodnie z konfiguracją kraju/adresu. Tryb B2B rozszerza natomiast zestaw pól konta firmowego i pokazuje je w czytelny sposób podczas przeglądania konta w panelu administracyjnym.

Udostępnia też w rekordzie klienta pola takie jak dopuszczalne saldo należności i maksymalna liczba dni płatności. One dotyczą fakturowania, nie onboardingu, jeśli planujesz pozwolić zatwierdzonym kontom handlowym płacić później, to osobna decyzja opisana w artykule odroczone terminy płatności. Przy samym wniosku możesz je pominąć.

Jakie dane powinien naprawdę zbierać wniosek handlowy

Ustawienia wymagań konta firmowego w zapleczu PrestaShop wymagające nazwy firmy, numeru VAT i referencji handlowych
Ustal z góry, jakie dane biznesowe musi podać każdy wniosek o konto firmowe: nazwę firmy, numer VAT i co najmniej jedną referencję handlową.

Kusi, żeby zapytać o wszystko. Oprzyj się temu, każde dodatkowe pole to część rzetelnych kupujących, którzy zrezygnują w połowie. Zadaniem formularza jest zebranie dokładnie tych danych, które pozwalają zweryfikować firmę i podjąć decyzję. Nic więcej. Rozsądna podstawa:

  • Nazwa firmy i numer rejestrowy / SIRET, kręgosłup całej weryfikacji. Wszystko inne sprawdzasz względem tej informacji. Tryb B2B PrestaShop daje natywnie pole SIRET; w innych krajach wykorzystasz je do tego celu albo dodasz pole na numer firmy.
  • Numer VAT, pojedyncze pole o największej wartości, bo w przypadku firm z UE można je automatycznie sprawdzić w kilka sekund w VIES (więcej o tym niżej).
  • Adres firmy, powinien zgadzać się z danymi rejestrowymi. Firma handlowa działająca z mieszkania nie musi być powodem do odrzucenia, ale rozbieżność jest sygnałem, któremu warto się przyjrzeć.
  • Branża / co sprzedają, najszybszy filtr trafności. Hurtownia elektroniki nie musi wysyłać towaru fryzjerowi w cenie handlowej.
  • Strona internetowa albo potwierdzenie obecności firmy, trzydziestosekundowy test, czy za nazwą stoi realnie działająca firma.

Nie dodawaj do wniosku pytań typu „szacowany miesięczny wolumen” i podobnych pól służących do ustalania progów. Deklarowany wolumen jest mało wiarygodny i to zły moment, poziomy klientów ustawiasz na podstawie rzeczywistej historii zakupów po zatwierdzeniu, a to zadanie dla grup klientów opisane w artykule grupy klientów w PrestaShop, nie pytanie onboardingowe.

Jak dodać te pola do formularza rejestracji

Tryb B2B PrestaShop po włączeniu udostępnia pola konta firmowego, takie jak SIRET i APE; pole firma istnieje już jako pole klienta/adresu, a numer VAT jest przechowywany na adresie i wyświetlany zgodnie z konfiguracją kraju/adresu, a nie dodawany bezwarunkowo do każdego formularza, więc przy konfiguracji unijnej lub francuskiej być może nie trzeba niczego budować. Luka pojawia się wtedy, gdy bramka handlowa wymaga informacji, których PrestaShop nie modeluje: listy rozwijanej „co sprzedajesz”, pola referencji handlowej, checkboxa potwierdzającego odsprzedaż zamiast osobistego zużycia albo przesłania pliku z zaświadczeniem rejestrowym.

Właśnie tu swoje miejsce ma moduł zbudowany specjalnie do obsługi wniosków handlowych, nasz moduł Trade Account dodaje pola firmowe i proces akceptacji jako funkcję panelu administracyjnego, zamiast wymagać nadpisywania CustomerFormatter. W standardzie dodanie pola do formularza rejestracji oznacza nadpisanie klasy CustomerFormatter (albo implementację hooka additionalCustomerFormFields) oraz dodanie pasującej kolumny do tabeli klientów, da się to zrobić, ale to teren deweloperski. Dobry moduł pól rejestracyjnych pozwala dodać dokładnie te pola z panelu administracyjnego, dzięki czemu zgłaszający podają dane firmowe od razu podczas zakładania konta, a Ty nie musisz później dopytywać ich mailowo. Praktyczny efekt: wniosek jest rejestracją, dane trafiają na konto, a Ty przeglądasz jeden kompletny rekord zamiast sklejać niedokończoną rejestrację z osobnym zgłoszeniem z formularza.

Etap weryfikacji. Automatycznie tam, gdzie się da, ręcznie tam, gdzie trzeba

Zebranie danych to łatwiejsza połowa. Bramka działa tylko wtedy, gdy faktycznie je sprawdzasz, a sztuka polega na podzieleniu pracy na część, którą maszyna wykona natychmiast, i część, którą człowiek załatwi w mniej niż minutę.

Natychmiastowa kontrola to numer VAT. W przypadku firm z UE poprawny numer VAT zweryfikowany w unijnej usłudze VIES (endpoint SOAP checkVat pod adresem ec.europa.eu) w kilka sekund mówi, że to zarejestrowana, aktywna firma, i potwierdza jej nazwę prawną. Rdzeń PrestaShop samodzielnie nie weryfikuje numerów VAT w VIES. Standardowe pole jest polem tekstowym bez sprawdzania na żywo. Automatyzacja tej kontroli (i jednoczesne użycie poprawnego numeru VAT do obsługi zwolnienia z podatku) to temat sam w sobie; mechanikę opisujemy w artykule automatyzacja zwolnienia podatkowego za pomocą sprawdzania unijnego VAT, a nasz moduł Automatic EU VAT Checker wykonuje sprawdzenie w VIES na żywo, którego nie ma w rdzeniu PrestaShop. Dla bramki handlowej istotne jest po prostu to: numer VAT, który przechodzi VIES, to Twój najmocniejszy pojedynczy sygnał, a nic Cię nie kosztuje.

Ręczna kontrola obejmuje wszystko, czego VIES Ci nie powie. Czy strona internetowa pasuje do firmy? Czy branża jest taką, której faktycznie sprzedajesz w cenach handlowych? Czy adres wygląda jak adres firmy? W większości zgłoszeń to rzut oka na 30-60 sekund, nie pięciominutowe dochodzenie, potwierdzasz, nie audytujesz. Prawdziwe sprawdzanie zostaw dla przypadków, które wyglądają podejrzanie: świeżo zarejestrowany VAT, darmowa domena e-mail zamiast firmowej, „hurtownik” bez obecności w internecie.

Szybkość jest tu częścią produktu. Trzydniowa weryfikacja po cichu oddaje rzetelnych kupujących konkurentowi, który zatwierdził ich tego samego popołudnia. Traktuj akceptację tego samego dnia roboczego jako cel i zaprojektuj formularz tak, aby dawał Ci wszystko, czego potrzebujesz do decyzji za jednym podejściem, bez czekania na maila z dodatkowymi informacjami.

Przyznanie dostępu: gdzie w PrestaShop naprawdę otwierasz bramkę

To mechaniczne serce całego procesu i warto być precyzyjnym, bo ścieżka w panelu administracyjnym za pierwszym razem nie jest oczywista. Dostępem w PrestaShop zarządzają grupy klientów, a dostęp handlowy oznacza przeniesienie zatwierdzonego zgłaszającego z grupy domyślnej do Twojej grupy handlowej.

  1. Nowi rejestrujący trafiają do grupy domyślnej. Domyślnie jest to Customer (id grupy 3), ustawione wartością konfiguracji PS_CUSTOMER_GROUP. Widzą ceny detaliczne i żadnych kategorii z ograniczonym dostępem, dokładnie tak powinno być, dopóki ich wniosek czeka na decyzję. Mogą kupować od razu; po prostu nie widzą jeszcze cen handlowych.
  2. Utwórz grupę lub grupy handlowe w sekcji Parametry sklepu → Ustawienia klienta → Grupy → Dodaj nową grupę (starsze instalacje mogą mieć to menu w innym miejscu). Tutaj przypinasz rzeczywistą korzyść, obniżkę ceny, sposób wyświetlania podatku, widoczność kategorii z ograniczonym dostępem. Mechanika cenowa jest opisana w artykule grupy klientów, a to, czy kupujący handlowi widzą ceny netto czy brutto, jest osobnym przełącznikiem omówionym w artykule wyświetlanie podatku netto vs brutto.
  3. Po akceptacji edytuj klienta w sekcji Klienci → Klienci, otwórz konto i w części Dostęp grupowy zaznacz grupę handlową oraz ustaw ją jako Grupę domyślną. Zapisanie tej zmiany jest momentem otwarcia bramki: obniżka ceny z grupy, odblokowane kategorie oraz wyświetlanie cen z podatkiem albo bez podatku zaczną działać przy następnym wczytaniu strony przez klienta. (Członkostwo w grupie steruje obniżkami, dostępem do kategorii i wyświetlaniem netto/brutto, faktyczne zwolnienie z VAT to osobna sprawa zależna od reguł podatkowych oraz logiki adresu/kraju albo od dedykowanego modułu, nie od samego przypisania do grupy). Nic więcej nie trzeba publikować.

Szczegół, który często umyka: to pole Grupa domyślna, a nie tylko checkboxy Dostęp grupowy, steruje domyślnymi cenami i wyświetlaniem podatku dla tego klienta. Zaznacz pole, ale zostaw domyślną grupę jako „Customer”, a dostaniesz zgłoszenia do wsparcia z pytaniem, dlaczego cena handlowa się nie pokazuje. Ustaw grupę domyślną na grupę handlową.

Nie pozwól, żeby akceptacje się piętrzyły, włącz powiadomienia

Bramka, której nikt nie pilnuje, zamienia się w zaległości, a zaległości w utraconych klientów. Chcesz wiedzieć od razu, gdy powstaje konto firmowe, żeby zweryfikować i zatwierdzić zgłaszającego, póki jest jeszcze zaangażowany. PrestaShop wywołuje hook actionCustomerAccountAdd przy każdej rejestracji, a dane istotne dla B2B (firma, VAT) są w rekordzie, dlatego powiadomienie o nowych rejestracjach firmowych naturalnie pasuje albo do małego modułu własnego podpiętego pod to zdarzenie, albo do modułu rejestracyjnego, który oznacza zgłaszających biznesowych za Ciebie. Cel jest prosty: zamienić „powinienem kiedyś sprawdzić panel administracyjny” na „mail powiedział mi, że czeka wniosek”, bo to różnica między akceptacją tego samego dnia a trzydniowym opóźnieniem, którego nawet nie zauważysz.

Jak odrzucać wnioski bez palenia mostów

Nie każdy wniosek przejdzie, a sposób, w jaki mówisz „nie”, ma większe znaczenie, niż wielu sprzedawców zakłada. Odrzucony dziś zgłaszający może za tydzień wrócić z prawidłowym wnioskiem. Najczęstsze i uzasadnione powody odrzucenia:

  • Numer VAT nie przechodzi VIES albo zarejestrowana nazwa nie zgadza się z wnioskiem.
  • Osoba prywatna podająca się za firmę wyłącznie po to, żeby uzyskać niższe ceny. Najczęstszy przypadek i dokładnie ten, który bramka ma wychwycić.
  • Firma z branży, której nie obsługujesz na warunkach handlowych.
  • Informacje, których po prostu nie da się zweryfikować, brak śladu firmy, brak obecności w internecie, darmowy e-mail i niejasny opis działalności.

Odrzucaj z konkretnym powodem, który pozwala wrócić do sprawy, zamiast milczeć: „Nie mogliśmy zweryfikować rejestracji firmy na podstawie podanych danych, prześlij numer VAT albo zaświadczenie rejestrowe, a sprawdzimy ponownie”. Technicznie odrzucenie jest brakiem działania: zostawiasz konto w domyślnej grupie Customer. Klient zachowuje działające konto detaliczne, co jest właściwym wynikiem, realna firma, która dziś kupuje detalicznie, w następnym kwartale może kwalifikować się do warunków handlowych.

Ponowne zamknięcie bramki: odebranie dostępu i przegląd

Przyznanie dostępu to jednorazowa czynność; utrzymanie rzetelnej listy kont handlowych to praca ciągła i właśnie ten krok większość sklepów pomija. Konto handlowe nie jest przywilejem dożywotnim, firmy zamykają się, zmieniają branżę albo po cichu przestają zamawiać, nadal zachowując rabat. Ten sam element panelu administracyjnego, który otwiera bramkę, zamyka ją: edytuj klienta, usuń grupę handlową z Dostęp grupowy, przywróć Grupę domyślną na Customer, a przy następnej wizycie klient znów zobaczy ceny detaliczne. Dane nie znikają; po prostu odbierasz korzyść.

  • Okresowa ponowna weryfikacja. Raz w roku wyrywkowo sprawdź, czy długoletnie konta handlowe nadal należą do aktywnych, zarejestrowanych firm. Rozwiązana spółka nie powinna zachowywać cen hurtowych.
  • Wypatruj nadużyć. Konto handlowe składające małe zamówienia po jednej sztuce, wyglądające jak prezenty, często należy do klienta indywidualnego, który przeszedł przez bramkę. Historia zamówień klienta w PrestaShop (Klienci → Klienci → zobacz) wystarczy, żeby zauważyć wzorzec.
  • Zmieniaj poziomy na podstawie realnej historii, nie obietnic. Na pytanie o wolumen, którego nie zadałeś w formularzu, odpowiadają rzeczywiste zamówienia. Awansuj, albo obniżaj poziom, między progami handlowymi na podstawie tego, co klient faktycznie kupił, co znów jest operacją na grupach klientów: pokazywanie różnych cen różnym klientom.

Dobrze wdrożony wniosek handlowy przestaje być formularzem, a staje się panelem kontroli: decydujesz, kto widzi ceny hurtowe, widzisz, dlaczego każde konto je otrzymało, i możesz odebrać dostęp dwoma kliknięciami, gdy powód przestaje obowiązywać. O to właśnie chodzi w bramce, nie o zmuszanie klientów biznesowych do skakania przez przeszkody, lecz o pewność, że niższa cena, którą oddajesz, trafia wyłącznie do kupujących, dla których była przeznaczona.

Dwie sąsiednie decyzje domykają konfigurację B2B: czy zatwierdzone konta handlowe widzą ceny netto czy brutto, oraz czy mogą płacić na fakturę zamiast z góry. Oba ustawienia są osobnymi przełącznikami, niezależnymi od samej bramki handlowej. (Ujawnienie: Trade Account, Automatic EU VAT Checker, Tax Display Switcher i B2B Deferred Payment Terms to moduły, które tworzymy i sprzedajemy.)

Najczęściej zadawane pytania

Co właściwie zmienia włączenie trybu B2B w PrestaShop?

Włączenie Włącz tryb B2B w sekcji Parametry sklepu → Ustawienia klienta (wartość PS_B2B_ENABLE) udostępnia pola konta firmowego, takie jak SIRET i APE, dzięki czemu zbierasz weryfikowalne dane do właściwych kolumn bazy danych, a nie do dowolnego pola komentarza. Nie tworzy magicznie nazwy firmy ani numeru VAT. Firma jest standardowym polem klienta/adresu, a numer VAT jest przechowywany w obiekcie Address, ale czytelnie pokazuje pola firmowe podczas przeglądania konta.

Gdzie w PrestaShop faktycznie przyznaje się ceny handlowe?

Przez grupy klientów. Nowi rejestrujący trafiają do domyślnej grupy Customer (id 3, ustawione przez PS_CUSTOMER_GROUP). Po akceptacji edytuj klienta w sekcji Klienci → Klienci, zaznacz swoją grupę handlową w Dostęp grupowy i, krok, który często umyka, ustaw ją jako Grupę domyślną. To Grupa domyślna, nie sam checkbox, steruje cenami i wyświetlaniem podatku; zaznacz pole, ale zostaw domyślną grupę jako „Customer”, a dostaniesz zgłoszenia z pytaniem, dlaczego cena handlowa się nie pokazuje.

Jak szybko zweryfikować klienta biznesowego?

Podziel pracę. Natychmiastowa kontrola to numer VAT zweryfikowany w unijnej usłudze VIES (endpoint checkVat pod adresem ec.europa.eu), w kilka sekund potwierdza, że to zarejestrowana, aktywna firma, i zwraca jej nazwę prawną. Rdzeń PrestaShop nie wykonuje takiego sprawdzenia, więc potrzebny jest moduł albo kontrola zewnętrzna. Ręczna kontrola obejmuje wszystko, czego VIES nie powie: czy strona pasuje, czy branża jest taką, której sprzedajesz w cenach handlowych, czy adres wygląda jak adres firmy, rzut oka na 30-60 sekund, nie pięciominutowy audyt. Traktuj akceptację tego samego dnia roboczego jako cel.

Jak później odebrać dostęp handlowy?

Ten sam element, który otwiera bramkę, ją zamyka: edytuj klienta, usuń grupę handlową z Dostęp grupowy, przywróć Grupę domyślną na Customer, a przy następnej wizycie klient znów zobaczy ceny detaliczne. Dane nie znikają, po prostu odbierasz korzyść. Długoletnie konta handlowe warto ponownie weryfikować mniej więcej raz w roku, bo firmy zamykają się albo zmieniają branżę, nadal zachowując rabat.

Jak odrzucić wniosek, żeby nie stracić klienta?

Odrzucaj z konkretnym powodem, który pozwala wrócić do sprawy, zamiast milczeć: „Nie mogliśmy zweryfikować rejestracji firmy, prześlij numer VAT albo zaświadczenie rejestrowe, a sprawdzimy ponownie”. Technicznie odrzucenie jest brakiem działania, zostawiasz konto w domyślnej grupie Customer, więc klient zachowuje działające konto detaliczne. Realna firma, która dziś kupuje detalicznie, w następnym kwartale może kwalifikować się do warunków handlowych.

David Miller

David Miller

Założyciel, mypresta.rocks
O autorze

David Miller to specjalista PrestaShop z ponad dekadą praktycznego doświadczenia i założyciel mypresta.rocks, studia programistycznego z miasta Tychy. Tworzy i utrzymuje katalog 159 modułów PrestaShop, w tym 21 pakietów „Revolution" obejmujących SEO, checkout, bezpieczeństwo, wydajność, marketing, wyszukiwanie, wsparcie i operacje magazynowe, które każdego dnia usprawniają realne sklepy, testowanych na PrestaShop 1.7.8, 8.x i 9.x. Sprawuje również opiekę nad sklepami produkcyjnymi, dlatego jego pracę ocenia się po realnej sprzedaży, a nie po wersjach demo. Jego doświadczenie obejmuje pełen zakres e-commerce, wydajność, bezpieczeństwo, SEO i marketing, oraz wykracza poza PrestaShop, sięgając WooCommerce, Shopify i systemów tworzonych na zamówienie. Na blogu pisze o technicznej stronie PrestaShop: co platforma naprawdę robi pod maską, co psuje się na produkcji i które rozwiązania faktycznie się sprawdzają.

Udostępnij ten wpis:

Komentarze

Brak komentarzy. Bądź pierwszy!

Spodobał Ci się ten artykuł?

Otrzymuj nasze najnowsze porady, przewodniki i aktualizacje modułów prosto na swoją skrzynkę.

Możesz zrezygnować w każdej chwili. Dane kontaktowe znajdziesz w naszej nocie prawnej.

Ładowanie...
Do góry