Aplikacja do obsługi zleceń B2B: role, uprawnienia i wyceny

Jak zaprojektować aplikację do obsługi zleceń B2B na przykładzie Service Quotes. Opisujemy role, przydział pracowników i wycenę z materiałów i czasu pracy.

Aplikacja do obsługi zleceń B2B musi przede wszystkim jasno rozdzielić, kto co robi. Klient zgłasza zlecenie i płaci. Menedżer przydziela ludzi i pilnuje rozliczeń, a pracownik wykonuje usługę i zapisuje jej przebieg. Z tego podziału wynikają uprawnienia, statusy zlecenia i sposób liczenia wyceny.

Pokazujemy to na przykładzie Service Quotes. To aplikacja, którą zbudowaliśmy dla firmy usługowej obsługującej klientów na kontraktach B2B. Opis funkcji znajdziesz w realizacji Service Quotes. W tym wpisie skupiamy się na decyzjach projektowych, które trzeba podjąć w każdym systemie tego typu.

Jakie role potrzebuje system zleceń B2B?

W Service Quotes są trzy rodzaje kont i każde ma inne uprawnienia:

Rola Co robi w systemie Czego nie widzi albo nie może zmienić
Klient Tworzy zlecenie wykonania usługi pod wskazanym adresem, przegląda swoje zlecenia, wyceny i płatności, płaci online Zleceń innych klientów, danych pracowników, ustawień firmy
Pracownik Realizuje zlecenia, do których przydzielił go menedżer, rejestruje przebieg pracy: materiały, ilość, cenę, czas i stawkę za typ pracy Zarządzania kontami i klientami, listy wycen i płatności
Menedżer Zarządza kontami, pracownikami, ich specjalizacjami i klientami, przydziela pracowników do zleceń, przegląda wyceny i płatności Brak ograniczeń (pełny dostęp w ramach firmy)

Na etapie projektu pierwsze pytanie brzmi: czy wystarczą role, czy potrzebne są uprawnienia nadawane każdej osobie osobno. Przy trzech wyraźnie różnych grupach użytkowników role łatwiej zrozumieć i przetestować. Łatwiej też wyjaśnić je klientowi. Uprawnienia „per osoba” warto rozważać dopiero wtedy, gdy w jednej roli pojawiają się wyjątki, np. menedżer, który nie powinien widzieć płatności.

Drugie pytanie: czy klient B2B to jedna osoba, czy firma z wieloma pracownikami. Jeśli po stronie klienta zlecenia zgłasza kilka osób, trzeba zdecydować, czy widzą nawzajem swoje zlecenia. Trzeba też ustalić, kto u klienta może płacić. Tę decyzję najlepiej podjąć przed budową bazy danych, bo zmiana później dotyka niemal każdego ekranu.

Jak przydzielać pracowników do zleceń?

W Service Quotes menedżer czyta opis zlecenia i przydziela do niego pracowników, którzy mają wymagane specjalizacje. Specjalizacje są osobnym słownikiem, którym zarządza menedżer.

Takie rozwiązanie ma dwie zalety. Po pierwsze, menedżer nie musi pamiętać, kto ma jakie uprawnienia zawodowe. System pokazuje tylko pasujące osoby. Po drugie, słownik specjalizacji można później wykorzystać w raportach (np. które usługi są najczęściej zamawiane).

W Service Quotes decyzję o przydziale podejmuje menedżer. Automatyczny przydział brzmi atrakcyjnie, ale wymaga danych, których na starcie zwykle nie ma: dostępności pracowników, czasu dojazdu, priorytetów klientów. Dobrą praktyką jest zacząć od ręcznego przydziału z podpowiedziami. Automatyzację warto dodać, gdy wiadomo, według jakich reguł menedżer faktycznie decyduje.

Jak system liczy wycenę?

W Service Quotes wycena powstaje dopiero po wykonaniu zlecenia. W trakcie pracy pracownik rejestruje w systemie wykorzystane materiały, ich ilość i cenę. Zapisuje też czas pracy i stawkę godzinową za konkretny typ pracy. Po zakończeniu zlecenia system sam podlicza koszty pracy i materiałów i tworzy dla klienta szczegółową wycenę. Na jej podstawie klient płaci online, a płatność zamyka proces.

Ten model pasuje do usług, w których zakres pracy wychodzi dopiero na miejscu. Zasady rozliczeń (stawki za typy prac) są wtedy uzgodnione wcześniej w kontrakcie. Klient nie akceptuje oferty przed każdym zleceniem. Dostaje rozliczenie zgodne z umową.

Przy projektowaniu wyceny trzeba odpowiedzieć na kilka pytań:

  • Skąd pochodzą stawki? Czy pracownik wpisuje je ręcznie, wybiera z cennika, czy cennik jest inny dla każdego klienta B2B?
  • Kto może poprawić pozycje? Pomyłka pracownika w ilości materiału nie powinna trafić do klienta bez kontroli.
  • Co się dzieje po zmianie ceny materiału? Wycena wystawiona wcześniej musi pokazywać cenę z dnia wykonania, nawet gdy cennik już się zmienił. Dlatego cenę warto zapisywać przy pozycji wyceny. Samo odwołanie do cennika nie wystarczy.
  • Jak wygląda wycena dla klienta? Klient B2B zwykle przekazuje ją dalej (do księgowości, do przełożonego), więc musi być czytelna bez logowania się do systemu.

Statusy zlecenia

Statusy zlecenia to umowa między rolami. Każdy status mówi, kto teraz odpowiada za kolejny krok. Przykładowy układ dla procesu takiego jak w Service Quotes:

Status Kto odpowiada za kolejny krok
Zgłoszone Menedżer: zapoznaje się z opisem i przydziela pracowników
Przydzielone Pracownik: jedzie pod wskazany adres i rozpoczyna pracę
W realizacji Pracownik: rejestruje materiały i czas pracy
Wycenione Klient: przegląda wycenę i płaci
Opłacone Nikt, zlecenie jest zamknięte

Każde przejście między statusami warto zapisywać z datą i autorem. W sporze z klientem B2B historia zlecenia („kto, co i kiedy zmienił”) jest często ważniejsza niż sam stan końcowy.

Płatności online w aplikacji B2B

Klient Service Quotes płaci online za wycenę, a lista płatności jest widoczna dla klienta i menedżera. Przy płatnościach w systemie B2B trzeba kilka spraw ustalić z księgowością firmy. Co jest dokumentem rozliczeniowym: wycena, faktura czy oba? Jak oznaczyć płatność częściową lub zwrot? Czy płatność ma automatycznie zmieniać status zlecenia?

Status powinien zmieniać się dopiero po potwierdzeniu płatności przez operatora. Samo kliknięcie przycisku przez klienta nie wystarcza. Szerzej o płatnościach i subskrypcjach piszemy we wpisie płatności i subskrypcje w aplikacji SaaS. Przykładem jest tam platforma Offer Exchange.

Technologie w Service Quotes

Aplikacja działa na Next.js i React z TypeScript po stronie interfejsu, .NET Core po stronie serwera i bazie PostgreSQL. Interfejs korzysta z Tailwind CSS, a całość uruchamiamy w kontenerach Docker za serwerem Nginx. Ten sam zestaw wykorzystaliśmy w platformie Offer Exchange.

Interfejs jest oddzielony od API (warstwy, przez którą interfejs komunikuje się z serwerem). To ma praktyczną zaletę: logika rozliczeń jest w jednym module na serwerze. Kolejny interfejs, np. aplikacja dla pracowników w terenie, nie wymaga jej przepisywania.

Kiedy własny system zleceń ma sens

Gotowe programy do obsługi zleceń dobrze sprawdzają się w typowych procesach. Własny system ma sens, gdy rozliczenia wynikają z indywidualnych kontraktów B2B. Także wtedy, gdy klient ma sam zgłaszać zlecenia i płacić w tej samej aplikacji. Trzeci powód to przydział zależny od specjalizacji, których gotowy program nie przewiduje. Szersze porównanie znajdziesz we wpisie oprogramowanie dedykowane czy gotowe. Jak budujemy takie systemy, opisujemy na stronie aplikacji webowych dla firm.

Jeśli Twoja firma obsługuje zlecenia mailem i arkuszem, zacznij od przygotowania do pierwszej rozmowy o nowym systemie. Potem napisz do nas. Pomożemy ustalić role, statusy i zasady wyceny, zanim powstanie pierwszy ekran.

Conetso Healthcare,

Harmonogram IT nowej przychodni w pięciu etapach

Wyjaśniamy, kiedy włączyć IT w budowę nowej przychodni lub pracowni i co zamówić najpierw. Opisujemy pięć etapów prac i listę kontrolną przed otwarciem.

Napisz do nas

Porozmawiajmy o Twojej aplikacji

Opisz pomysł albo proces, który aplikacja ma usprawnić. Odpowiemy najpóźniej w ciągu jednego dnia roboczego. Możesz też zadzwonić: +48 81 820 05 09.

Administratorem danych jest CONETSO GROUP Sp. z o.o. Dane z formularza przetwarzamy, żeby odpowiedzieć na wiadomość. Szczegóły i Twoje prawa opisuje polityka prywatności.

Szukaj na stronie