Cenniki B2B w Magento 2: jak działa Price List w Kowal B2B Suite?
Cenniki B2B w Magento 2 pozwalają ustalać ceny dla konkretnych firm, produktów i wielkości zamówienia. W Kowal B2B Suite funkcja Price List łączy wspólne cenniki dla wielu kontrahentów z indywidualnymi cenami kontraktowymi. Handlowiec określa warunki, a mechanizm cenowy dobiera właściwą kwotę dla firmy, kanału sprzedaży, SKU, waluty i zamawianej ilości.
To przydatne, gdy dystrybutor, instalator i stały odbiorca kupują ten sam produkt na różnych zasadach. Poniżej wyjaśniamy działanie cenników, kolejność wyboru ceny, konfigurację oraz sześć scenariuszy zastosowania. Opis odpowiada implementacji Kowal B2B Suite sprawdzonej w listopadzie 2026 r.
Czym jest Price List w Kowal B2B Suite?
Price List to nazwany zestaw cen przypisany do określonego website Magento i waluty. Cennik zawiera pozycje identyfikowane przez SKU produktu, cenę oraz minimalną ilość, od której dana cena obowiązuje. Ten sam produkt może wystąpić w nim kilka razy, jeżeli dla każdego wpisu określisz inny próg ilościowy.
Cennik przypisujesz do firmy B2B. Jeden zestaw cen może obsługiwać wielu kontrahentów, a jedna firma może korzystać z kilku cenników. O kolejności ich sprawdzania decyduje priorytet zapisany na przypisaniu cennika do firmy.
| Element | Co określa | Przykład |
|---|---|---|
| Cennik | Nazwę, website, walutę i aktywność zestawu cen | „Instalatorzy — Polska”, PLN, aktywny |
| Pozycja cennika | SKU, cenę jednostkową i minimalną ilość | FILTR-A: 90 PLN od 10 sztuk |
| Przypisanie do firmy | Firmę, website, cennik i priorytet | Firma Alfa, cennik instalatorów, priorytet 10 |
| Cena kontraktowa | Indywidualną cenę dla firmy, website, SKU, waluty i progu ilościowego | Firma Alfa: FILTR-A za 88 PLN od 1 sztuki |
Taki podział pomaga utrzymywać wspólną ofertę dla segmentu klientów i jednocześnie zapisywać wyjątki wynegocjowane z konkretną firmą.
Jak Magento wybiera cenę B2B? Kolejność ma znaczenie
Mechanizm Kowal B2B Suite sprawdza najpierw, czy B2B jest włączone dla danego website oraz czy firma ma z nim aktywne powiązanie. Następnie ustala cenę w następującej kolejności:
- Cena kontraktowa firmy. Muszą pasować firma, website, SKU i waluta. Spośród dostępnych progów wybierany jest najwyższy próg minimalnej ilości, który nie przekracza zamawianej liczby sztuk.
- Cenniki przypisane do firmy. Są sprawdzane według rosnącej wartości priorytetu. Cennik z priorytetem 10 jest sprawdzany przed cennikiem z priorytetem 100. Mechanizm pomija cenniki nieaktywne, w innej walucie lub bez pasującej pozycji dla SKU i ilości. Zwraca cenę z pierwszego pasującego cennika.
- Cena katalogowa Magento. Gdy nie znaleziono ceny B2B, bazowy mechanizm zwraca źródło katalogowe. W koszyku moduł usuwa wcześniej nałożoną własną cenę B2B, pozostawiając dalsze wyliczenie standardowemu mechanizmowi Magento.
Priorytet określa pierwszeństwo cennika. System nie porównuje wszystkich kwot w celu znalezienia najtańszej. Podobnie pasująca cena kontraktowa ma pierwszeństwo przed ceną z cennika, nawet jeśli jest od niej wyższa. Warto więc ustalać priorytety zgodnie z polityką handlową i nadawać różne wartości cennikom, których zakresy się pokrywają.
Jak skonfigurować cennik B2B w Magento 2
- Przygotuj kontekst firmy. Włącz B2B dla właściwego website i sprawdź aktywne powiązanie firmy z tym kanałem.
- Utwórz cennik. W obszarze Pricing podaj czytelną nazwę, wybierz website i walutę oraz ustaw aktywność.
- Dodaj pozycje. Wskaż istniejące SKU, cenę jednostkową i dodatnią minimalną ilość. Pozycje możesz wprowadzać pojedynczo albo importować z CSV.
- Przypisz cennik do firmy. Wybierz firmę i website oraz ustaw priorytet. Formularz sprawdza, czy wybrany cennik należy do tego samego website.
- Dodaj uzgodnione wyjątki. Jeżeli jedna firma ma osobną umowę na wybrane SKU, zapisz dla nich ceny kontraktowe.
- Sprawdź wynik. Użyj Explain Price dla konkretnej firmy, SKU, waluty i ilości. Następnie sprawdź zachowanie koszyka oraz wymagające indeksu widoki lub integracje.
Nazwy takie jak „Dystrybutorzy PL”, „Serwisy partnerskie EUR” czy „Oferta projektowa Alfa” są zwykle wygodniejsze w obsłudze niż kolejne numery cenników. Ułatwiają też rozpoznanie, dlaczego firma ma przypisany dany zestaw warunków.
Scenariusz 1: jeden produkt, różne ceny dla segmentów klientów
Producent sprzedaje filtr FILTR-A firmom instalacyjnym oraz dystrybutorom. Tworzy dwa cenniki i przypisuje je do odpowiednich firm. Oba dotyczą tego samego website i waluty PLN.
| Odbiorca | Przypisany cennik | Cena FILTR-A od 1 sztuki |
|---|---|---|
| Firma instalacyjna Alfa | Instalatorzy PL | 92 PLN |
| Dystrybutor Beta | Dystrybutorzy PL | 84 PLN |
| Firma bez pasującej ceny B2B | Brak pasującej pozycji | Źródło katalogowe Magento |
Każda kolejna firma z segmentu może otrzymać istniejący cennik. Gdy zmieniasz cenę w „Instalatorzy PL”, aktualizujesz wspólny zestaw warunków dla przypisanych firm. Indywidualne ceny kontraktowe nadal zachowują pierwszeństwo.
Wszystkie kwoty i nazwy firm w przykładach są ilustracyjne. Dla czytelności przyjmujemy konfigurację cen netto i pomijamy podatki, dostawę oraz dodatkowe rabaty. W docelowym sklepie sposób wprowadzania i prezentacji kwot musi odpowiadać konfiguracji podatkowej Magento.
Scenariusz 2: progi ilościowe dla zamówień hurtowych
Hurtownia chce premiować większe zamówienia jednego produktu. W cenniku „Partnerzy PL” zapisuje trzy pozycje dla tego samego SKU:
| Minimalna ilość | Cena jednostkowa | Zakres w tym przykładzie |
|---|---|---|
| 1 | 95 PLN | 1–9 sztuk |
| 10 | 90 PLN | 10–49 sztuk |
| 50 | 86 PLN | Od 50 sztuk |
Dla 12 sztuk mechanizm wybierze próg 10 i cenę 90 PLN za sztukę. Dla 80 sztuk wybierze próg 50 i cenę 86 PLN, co daje 6 880 PLN za pozycję. Przy cenie 95 PLN byłoby to 7 600 PLN, czyli o 720 PLN więcej.
Wybrana cena dotyczy całej ilości danej pozycji. Nie jest to naliczanie progresywne, w którym pierwszych dziewięć sztuk kosztuje 95 PLN, a kolejne mają inną cenę. Próg odnosi się do ilości produktu przekazanej do wyceny; nie sumuje automatycznie różnych SKU ani zakupów z poprzednich zamówień.
W standardowej integracji koszyka moduł ponownie stosuje ceny B2B przy przeliczaniu podsumowań. Zmiana ilości może więc zmienić wybrany próg.
Scenariusz 3: cennik projektowy uzupełniony cennikiem bazowym
Firma Alfa ma dwa przypisania: „Projekt Alfa” z priorytetem 10 oraz „Partnerzy PL” z priorytetem 100. Cennik projektowy obejmuje tylko produkty objęte danym projektem, a bazowy zapewnia ceny pozostałego asortymentu.
| SKU | Projekt Alfa, priorytet 10 | Partnerzy PL, priorytet 100 | Wybrana cena |
|---|---|---|---|
| FILTR-A | 85 PLN od 1 sztuki | 80 PLN od 1 sztuki | 85 PLN z cennika projektowego |
| ZAWOR-B | Brak pozycji | 44 PLN od 1 sztuki | 44 PLN z cennika bazowego |
Pierwszy wiersz pokazuje znaczenie priorytetu: wygrywa cennik projektowy mimo wyższej kwoty. W drugim mechanizm przechodzi dalej, ponieważ w pierwszym cenniku nie ma pasującej pozycji. Tak samo może postąpić, gdy zamawiana ilość jest niższa od wszystkich progów zapisanych dla danego SKU w pierwszym cenniku.
To użyteczne rozwiązanie dla krótkiej listy wyjątków od szerokiej oferty bazowej. Przed wdrożeniem przetestuj produkty obecne w obu cennikach oraz te, które występują tylko w jednym.
Scenariusz 4: cena kontraktowa dla kluczowego kontrahenta
Firma ma w cenniku FILTR-A za 82 PLN, ale umowa handlowa przewiduje osobną cenę kontraktową 88 PLN od jednej sztuki. Dla pasującej firmy, website i waluty moduł wybierze 88 PLN z kontraktu.
O wyniku decyduje pierwszeństwo uzgodnionej ceny kontraktowej. Jeżeli kontrakt zawiera kolejne progi, np. 88 PLN od 1 sztuki i 79 PLN od 100 sztuk, zamówienie 120 sztuk otrzyma cenę kontraktową 79 PLN.
Gdy cena kontraktowa zaczyna się dopiero od 100 sztuk, zamówienie 20 sztuk nie spełnia jej progu. Wówczas mechanizm może przejść do cenników przypisanych firmie. Pozwala to łączyć standardowe warunki codziennych zakupów z osobną umową na duże dostawy.
Scenariusz 5: osobne ceny dla kanałów i walut
Firma obsługuje rynek polski i eksport. Wprowadza cennik PLN oraz cennik EUR, a przypisania ustala we właściwych website Magento. Przykładowo FILTR-A może kosztować 95 PLN w jednym cenniku i 22 EUR w drugim.
Przy wycenie w EUR mechanizm pomija cenniki zapisane w PLN. Ceny kontraktowe także muszą pasować do żądanej waluty. Kwoty w cennikach są zapisanymi warunkami handlowymi w danej walucie; resolver B2B nie przelicza automatycznie cennika PLN na EUR.
Możesz więc utrzymywać odrębną politykę cenową dla rynku eksportowego. Jeśli nie istnieje pasująca cena w żądanej walucie, wycena przechodzi do kolejnego źródła. Warto sprawdzić ten przypadek przed udostępnieniem klientom przełącznika walut.
Scenariusz 6: aktualizacja setek pozycji przez CSV
Gdy dostawca aktualizuje ofertę, ręczna edycja każdej pozycji zajmuje dużo czasu. W obszarze pozycji cennika można wyeksportować aktualne dane, przygotować nowe kwoty i zaimportować plik do wybranego cennika.
Wymagane nagłówki to sku i price. Kolumna min_qty określa próg ilościowy; jeśli jej wartość jest pusta lub kolumny nie ma, importer przyjmuje 1. Przykładowy plik:
sku,price,min_qty
FILTR-A,95.00,1
FILTR-A,90.00,10
FILTR-A,86.00,50
ZAWOR-B,44.00,1
Użyj przecinków jako separatorów kolumn i kropek w liczbach dziesiętnych. SKU muszą odpowiadać produktom istniejącym w Magento.
Importer dopasowuje istniejący wpis po kombinacji cennik + SKU + minimalna ilość. Jeżeli znajdzie taki wpis, aktualizuje go; w przeciwnym razie tworzy nowy. Zmiana samego progu może zatem utworzyć dodatkową pozycję zamiast zastąpić poprzednią.
Po imporcie otrzymujesz liczbę utworzonych, zaktualizowanych i pominiętych pozycji oraz komunikaty błędów z numerami wierszy. Import przetwarza wiersze osobno, dlatego błędna pozycja nie oznacza automatycznego wycofania pozostałych zapisów. Nie usuwa też wpisów tylko dlatego, że zabrakło ich w pliku. Przy wymianie całego cennika sprawdź więc również stare SKU i progi.
Eksport obejmuje dodatkowo identyfikator zewnętrzny oraz pola dat. Identyfikator może ułatwiać powiązanie danych z systemem zewnętrznym; sam import CSV nie stanowi automatycznej synchronizacji z ERP.
Jak sprawdzić, skąd pochodzi cena? Explain Price i indeks cen
Narzędzie Explain Price pozwala podać firmę, website, SKU, walutę i ilość, a następnie zobaczyć wynik wyceny. Pokazuje kwotę, źródło ceny, identyfikator źródła oraz szczegóły dopasowania. Dla ceny z cennika obejmują one identyfikator cennika, priorytet i wybrany próg ilościowy.
To dobry punkt wyjścia do odpowiedzi na pytanie klienta: „Dlaczego ten produkt kosztuje u mnie inaczej?”. Sprawdzenie konkretnego kontekstu pomaga wykryć brak przypisania, nieaktywny cennik, inną walutę, wyższy priorytet konkurencyjnego cennika albo aktywną cenę kontraktową.
Moduł udostępnia również indeks cen B2B i jego przebudowę. Po większych aktualizacjach sprawdź aktualność indeksu tam, gdzie korzystają z niego widoki, raporty lub integracje. Do weryfikacji konkretnego wyniku używaj Explain Price i testu koszyka, ponieważ wynik musi odpowiadać pełnemu kontekstowi zamówienia.
Cenniki, koszyk i oferty RFQ
Integracja ze standardowym koszykiem ustala firmę zalogowanego kupującego, website, walutę koszyka i ilość pozycji. Pasującą cenę kontraktową lub cennikową stosuje jako własną cenę pozycji. Przeliczenie następuje po dodaniu produktu oraz przed obliczaniem podsumowań.
Mechanizm jest także wykorzystywany przy podpowiadaniu cen produktów w ofertach RFQ. Handlowiec może rozpocząć przygotowanie oferty od warunków przypisanych firmie. Gdy źródłem jest katalog Magento, podpowiedzi RFQ uwzględniają cenę końcową w kontekście wybranego sklepu, grupy klienta i ilości. Dla cen kontraktowych i cennikowych używana jest kwota zapisana w żądanej walucie.
Sposób prezentacji netto i brutto oraz współdziałanie z promocjami należy sprawdzić w docelowej konfiguracji sklepu. Sam wybór ceny B2B nie oznacza automatycznego połączenia wszystkich rabatów katalogowych i koszykowych.
O czym pamiętać przed uruchomieniem cenników?
- Daty ważności: w sprawdzonej wersji pola
valid_fromivalid_tosą zapisywane, ale główny resolver ceny nie filtruje po nich ofert. Samo wpisanie dat nie zapewnia automatycznej aktywacji ani wygaśnięcia promocji. Czasowe akcje wymagają odpowiedniej obsługi aktywności lub rozszerzenia mechanizmu. - Jednoznaczne priorytety: dla nakładających się cenników stosuj różne wartości i sprawdzaj wynik. Niższa liczba oznacza wcześniejsze sprawdzenie.
- Waluta i website: przygotuj ceny dla rzeczywistych kanałów i walut, w których kupują klienci.
- Progi ilościowe: sprawdź ilości tuż poniżej progu, dokładnie na progu oraz powyżej niego.
- Ceny kontraktowe: przejrzyj wyjątki przed zmianą wspólnego cennika, ponieważ mogą nadal mieć pierwszeństwo.
- Import: zweryfikuj raport, próbkę produktów i stare pozycje, których nie było w nowym pliku.
Najczęstsze pytania o cenniki B2B w Magento 2
Czy jeden cennik można przypisać do wielu firm?
Tak. Przypisania łączą firmy z istniejącymi cennikami. Pozwala to utrzymywać wspólny zestaw cen np. dla instalatorów lub dystrybutorów.
Czy firma może mieć kilka cenników jednocześnie?
Tak. Mechanizm sprawdza je według rosnącej wartości priorytetu przypisania i wybiera pierwszy aktywny cennik z pasującą walutą, SKU oraz progiem ilościowym.
Czy moduł zawsze wybiera najniższą cenę?
Nie. Najpierw stosuje pasującą cenę kontraktową, następnie kolejność cenników. W obrębie dopasowanego źródła wybiera najwyższy próg minimalnej ilości, który został osiągnięty.
Co się stanie, gdy produktu nie ma w cenniku?
Mechanizm sprawdzi kolejne przypisane cenniki. Jeśli również w nich nie znajdzie pasującej pozycji i nie ma ceny kontraktowej, przejdzie do źródła katalogowego Magento.
Czy ceny można aktualizować z Excela?
Tak, po zapisaniu danych w poprawnym pliku CSV. Import pozycji cennika obsługuje SKU, cenę i progi ilościowe, a wynik wskazuje utworzone, zaktualizowane oraz pominięte wpisy.
Czy cennik jest tym samym co grupa klientów Magento?
Nie. Cennik w Kowal B2B Suite jest przypisywany do firmy w danym website. Grupy klientów Magento są osobnym mechanizmem; ich rola w podatkach i promocjach wymaga spójnej konfiguracji z warunkami B2B.
Zaplanuj politykę cenową dla swoich kontrahentów
Dobrze przygotowany cennik pozwala przenieść powtarzalne ustalenia handlowe do sklepu: wspólne warunki dla segmentów, progi ilościowe i indywidualne wyjątki dla kluczowych firm. Handlowcy mogą skupić się na negocjacjach, a standardowe zamówienia korzystają z wcześniej ustalonych zasad.
Sprawdź pełny zakres Kowal B2B Suite dla Magento 2 lub porozmawiaj z nami o wdrożeniu cenników B2B. Punktem wyjścia może być próbka Twojego obecnego cennika oraz dwa lub trzy rzeczywiste scenariusze zamówień.
Przeczytaj także: jak ograniczyć ręczną obsługę sprzedaży B2B w Magento 2 i ile kosztuje ręczna obsługa zamówienia B2B.