W Odoo portal jest modułem dostępnym domyślnie. Pozwala nadać klientowi lub dostawcy konto zewnętrzne, z którego podgląda on wybrane dokumenty ze swojej relacji z firmą: oferty, zamówienia, faktury, zadania. Użytkownik portalu nie jest użytkownikiem wewnętrznym — nie wchodzi do zaplecza systemu i nie jest liczony do puli płatnych użytkowników. Zakres tego, co zobaczy, nie jest jednak stały: buduje się z zainstalowanych aplikacji.
Trzy typy użytkownika
Odoo rozróżnia użytkowników Wewnętrznych (Internal), Portalu (Portal) i Publicznych (Public). Portal to użytkownik zewnętrzny z gotowym, zamkniętym zestawem uprawnień — administrator nie wybiera dla niego grup dostępu tak jak dla pracownika. Domyślnie ma dostęp wyłącznie do odczytu i nie edytuje dokumentów w bazie. Od tej zasady są wyjątki, które opisuję niżej — pojawiają się dopiero wraz z konkretnymi aplikacjami.
Hasło portalu jest niezależne od konta na odoo.com, nawet gdy oba używają tego samego adresu e-mail.
Nadanie dostępu — krok po kroku
Procedura zaczyna się w aplikacji Kontakty.
- Otworzyć Kontakty i wybrać istniejący kontakt lub utworzyć nowy przyciskiem Nowy.
- Kliknąć menu Działania (Actions) obok nazwy rekordu i wybrać Przyznaj dostęp do portalu (Grant portal access).
- W oknie Zarządzanie dostępem do portalu (Portal Access Management) sprawdzić trzy pola:
- Kontakt – wypełniane automatycznie nazwą z rekordu.
- E-mail – adres, którym klient będzie się logował. Musi być uzupełniony i unikalny.
- Ostatnie uwierzytelnienie – data ostatniego logowania; puste, gdy klient nigdy się nie logował.
- Kliknąć Przyznaj dostęp (Grant Access).
Klient dostaje wiadomość z linkiem do ustawienia hasła i od tego momentu loguje się pod adresem /my.

[okno Zarządzanie dostępem do portalu z polami Kontakt / E-mail / Ostatnie uwierzytelnienie]
Uwaga dla wdrożeń B2B: nadanie dostępu na rekordzie firmy obejmuje wszystkie powiązane z nią osoby kontaktowe. Pojedyncze kontakty można następnie usunąć z listy. Żeby nadać dostęp kilku osobom naraz, wystarczy wejść w listę kontaktów firmy, wybrać Działania → Przyznaj dostęp do portalu i kliknąć Przyznaj dostęp przy wybranych osobach.
Odebranie dostępu przebiega tą samą ścieżką — w oknie pojawia się wtedy przycisk Odbierz dostęp (Revoke Access).
Rejestracja na zaproszenie zamiast rejestracji otwartej
Jeżeli w bazie jest zainstalowana Strona internetowa, sposób zakładania kont kontroluje jedno ustawienie: Strona internetowa → Konfiguracja → Ustawienia, sekcja Ogólne, pole Konto klienta:
- Na zaproszenie (On invitation) – konto powstaje wyłącznie z zaproszenia wysłanego przez firmę.
- Bezpłatna rejestracja (Free sign up) – konto zakłada każdy odwiedzający i domyślnie dostaje dostęp do portalu.
Dla sprzedaży B2B właściwy jest wariant Na zaproszenie. To on pozwala trzymać ceny poza publiczną częścią serwisu i wpuszczać wyłącznie zaproszonych odbiorców. Uzupełnia go ustawienie Dostęp do e-commerce (Ecommerce Access) w sekcji eCommerce — wybór Zalogowani użytkownicy ukrywa cały sklep przed anonimowym ruchem.
Co portal daje bez dodatkowych aplikacji
Sam moduł portalu obsługuje konto, nie treść biznesową. Po zalogowaniu klient ma pod /my:
- Kafelki z licznikami dokumentów — pojawiają się tylko dla tych aplikacji, które są zainstalowane.
- Edytuj informacje — imię i nazwisko, e-mail, telefon, nazwa firmy, adres korespondencyjny oraz preferencja dostarczania faktur. Zapis przyciskiem Zapisz adres. Po wygenerowaniu pierwszych dokumentów kraj kontaktu przestaje być edytowalny po stronie klienta — zmienia go administrator.
- Połączenie i bezpieczeństwo — zmiana hasła, włączenie uwierzytelniania dwuskładnikowego, wylogowanie ze wszystkich urządzeń oraz trwałe usunięcie konta. W wersji 19 doszło zarządzanie kluczami dostępu (passkeys).
- Dokumenty udostępnione przez chatter — plik lub rekord wysłany do klienta z panelu zaplecza. Warto pamiętać, że taki link działa na podpisanym tokenie, więc odbiorca otworzy dokument nawet bez konta portalowego. Konto jest potrzebne dopiero do przeglądu historii.
Jak kolejne aplikacje rozszerzają portal
Każda aplikacja dokłada własne adresy i własny kafelek. To jest sedno planowania portalu: zakres portalu to suma zainstalowanych aplikacji, nie osobna konfiguracja.
Sprzedaż
Dodaje Oferty i Zamówienia sprzedaży. Klient pobiera PDF, komentuje w chatterze, a po włączeniu opcji Podpis online w Sprzedaż → Konfiguracja → Ustawienia — akceptuje ofertę przyciskiem Podpisz i zaakceptuj albo ją odrzuca. Podpis rysuje, wpisuje automatycznie lub wgrywa z pliku. Włączona płatność online pozwala od razu opłacić zaliczkę.
Fakturowanie / Księgowość
Dodaje Faktury i płatności. Widoczne są faktury sprzedaży i korekty — ale wyłącznie zaksięgowane. Szkice i dokumenty anulowane nie trafiają do portalu. Z aktywnym dostawcą płatności klient płaci fakturę z poziomu portalu i zarządza zapisanymi metodami płatności.
Magazyn
Nie tworzy własnej zakładki, za to wzbogaca stronę zamówienia sprzedaży o sekcję Ostatnie zlecenia dostawy ze statusami (przygotowanie, wysłane, anulowane), listę Zwrotów oraz Incoterms. Klient sam sprawdza, co zostało wysłane, zamiast pytać o to opiekuna.
Zakupy
To portal po stronie dostawcy: Zapytania ofertowe i Zamówienia zakupu. Po włączeniu Przypomnienia o odbiorze w Zakupy → Konfiguracja → Ustawienia dostawca dostaje automatyczną wiadomość i potwierdza lub koryguje planowane daty dostawy bezpośrednio w portalu. To pierwszy standardowy przypadek, w którym użytkownik zewnętrzny zapisuje dane w systemie.
Projekt
Zakres reguluje pole Widoczność na karcie Ustawienia projektu. Wariant Zaproszeni użytkownicy portalu i wszyscy użytkownicy wewnętrzni otwiera przycisk Udostępnij projekt, a w nim trzy tryby dostępu współpracownika: Odczyt, Edycja z ograniczonym dostępem (tylko obserwowane zadania) i Edycja. Dołożenie Kart pracy dodaje klientowi podgląd zarejestrowanych godzin.
Strona internetowa i e-commerce
Dokłada Moje konto z historią zamówień, adresami dostawy i ponownym zamówieniem. To, które typy dokumentów w ogóle się tam pokazują, ustawia się w edytorze strony — na karcie Stylstrony Moje konto włącza się i wyłącza poszczególne sekcje.
W wersji Odoo Enterprise repertuar rośnie dalej: zgłoszenia serwisowe, subskrypcje z samoobsługową zmianą planu, dokumenty do podpisu, współdzielone przestrzenie plików. Mechanizm pozostaje ten sam — aplikacja rejestruje własną sekcję portalu.
Pułapka widoczności w relacjach B2B
Standardowe reguły dostępu portalu opierają się na dwóch warunkach naraz: kontakt musi być obserwatorem dokumentu, a porównanie idzie po partnerze nadrzędnym. W praktyce reguła dla faktur brzmi „obserwatorzy dokumentu zawierają się w drzewie firmy użytkownika".
Ma to dwie konsekwencje, o których warto uprzedzić klienta przed uruchomieniem portalu:
- Dokument wystawiony na firmę, ale bez kontaktu w obserwatorach, nie pojawi się w portalu. Jeśli czegoś brakuje, w pierwszej kolejności sprawdzamy listę obserwujących, nie uprawnienia.
- Każda osoba kontaktowa firmy widzi wszystkie dokumenty tej firmy, także te adresowane do innych osób z tej samej organizacji. Dla działu zakupów jest to zwykle zaleta. Dla firmy z rozdzielonymi oddziałami — problem, który rozwiązuje się rozdzieleniem kontrahentów, a nie ustawieniem w portalu.
Różnice między wersjami
Układ okna nadawania dostępu zmieniał się między wydaniami — w starszych wersjach była to lista kontaktów z polem wyboru i przyciskiem zatwierdzającym, w 19 są osobne przyciski Przyznaj dostęp i Odbierz dostęp. Klucze dostępu w sekcji bezpieczeństwa to nowość wersji 19. Same reguły widoczności dokumentów pozostają spójne od kilku wydań.

[przykład portalu klienta B2B]
Na koniec
Portal w Odoo nie jest osobnym produktem do wdrożenia, tylko warstwą, która odsłania to, co i tak już jest w systemie. Dlatego decyzja „co klient ma widzieć" zapada nie w konfiguracji portalu, lecz wcześniej — przy wyborze aplikacji i przy ustaleniu, kto z ramienia klienta jest obserwatorem dokumentów. Uruchomienie portalu bez tego ustalenia zwykle kończy się jednym z dwóch efektów: klient nie widzi nic albo widzi więcej, niż zakładaliśmy.