Przewodnik po aplikacji
Panel administratora platformy — przewodnik
Przewodnik po panelu administratora taadaam.com: co robi każdy ekran, każde pole i każdy przycisk oraz co dzieje się po kliknięciu.
AdministratorOstatnia aktualizacja: 5 września 2026
Zanim zaczniesz
Ten przewodnik jest dla osób, które pracują w panelu administratora platformy taadaam.com, czyli pod adresem /admin. To miejsce, w którym opiekujesz się całą platformą: kontami ludzi, firmami i restauracjami, bazą składników, alergenami, regułami zdrowotnymi, pieniędzmi i rozliczeniami.
Każdy rozdział opisuje jeden ekran z menu po lewej stronie, w tej samej kolejności co w panelu. Najpierw mówimy, po co ten ekran jest i kto go widzi, potem co widać na ekranie, potem każde pole po kolei, potem kroki krok po kroku, a na końcu co dzieje się w tle i co zrobić, gdy coś nie działa.
Piszemy prosto i krótko. Trudne słowa tłumaczymy w słowniczku na początku. Jeśli szukasz konkretnego ekranu, użyj spisu treści — kotwice mają stałe nazwy, więc link do rozdziału można wysłać koledze.
Dwie zasady, o których nie wolno zapomnieć. Po pierwsze: każda rola platformowa musi mieć włączoną weryfikację dwuskładnikową (kod z aplikacji). Po drugie: platforma nie stawia diagnoz i nie pokazuje diagnoz użytkowników — administrator widzi liczby i statusy, nigdy czyjejś choroby.
Tę stronę możesz wydrukować (Ctrl+P). Spis treści i przyciski nie trafią na kartkę, a zwinięte bloki wydrukują się rozwinięte.
Pulpit
Gdzie to znajdę: /admin/dashboardDla kogo: Role platformowe z prawem odczytu analityki: właściciel platformy, administrator platformy, finanse i audytor. Wsparcie, redaktor wartości odżywczych i recenzent reguł nie mają tu wstępu i zostają odesłani na stronę główną.
Pulpit to pierwsza strona po wejściu do panelu. Pokazuje w kilku kaflach, jak ma się cała platforma: czy ludzie mogą zamawiać zgodnie ze swoimi ograniczeniami, ile jest zamówień i pieniędzy oraz jak kompletne są dane o jedzeniu. Nic tu nie zmieniasz — to tablica z licznikami.
Co widzisz na ekranie
- Sekcja North Star z sześcioma kaflami: Zgodne zamówienia, Wskaźnik wyjątków, Odpowiedzi na wydarzenia, Rekonsyliacja portfeli, Kompletność danych menu, SLA restauracji.
- Każdy kafel North Star pokazuje procent albo znak myślnika, gdy nie ma jeszcze danych do policzenia.
- Sekcja KPI platformy z ośmioma kaflami: GMV (30 dni), Zamówienia, Aktywni użytkownicy, Wolumen zasileń, Aktywne firmy, Aktywne restauracje, Zamówienia / użytkownika, Pokrycie dopasowania.
- Pod kaflami jedno zdanie: Wydarzenia utworzone w okresie, z liczbą.
- Wykres GMV i zamówienia (6 miesięcy) z dwiema seriami: Zamówienia i GMV.
- Sekcja KPI żywieniowe z czterema kaflami: Zweryfikowane wartości odżywcze, Kompletność map alergenowych, Wskaźnik UNKNOWN, Reguły po terminie recenzji.
- Podtytuł strony przypomina, że metryki okresowe liczone są za ostatnie 30 dni.
Krok po kroku
- Zacznij od North Star Spójrz na Zgodne zamówienia i Wskaźnik wyjątków. Pierwszy mówi, jak często ludzie dostają jedzenie pasujące do ich ograniczeń. Drugi mówi, jak często coś poszło nie tak i trzeba było ratować sytuację ręcznie.
- Sprawdź rekonsyliację portfeli Jeśli kafel Rekonsyliacja portfeli nie pokazuje pełnej zgodności, wejdź na ekran Płatności i portfele i znajdź firmę z rozbieżnością. To zawsze sprawa pilna, bo dotyczy pieniędzy.
- Zajrzyj w KPI żywieniowe Wysoki Wskaźnik UNKNOWN oznacza, że wiele składników nie ma wypełnionych alergenów. To bezpośrednio blokuje ludziom wybór dań. Napraw to na ekranie Jakość danych i w macierzy alergenów składnika.
- Pilnuj terminów recenzji reguł Kafel Reguły po terminie recenzji pokazuje, ile schorzeń ma przeterminowany przegląd specjalisty. Każde takie schorzenie wymaga nowej wersji reguł i recenzji.
Gdy coś nie działa
Dlaczego w kaflu widzę myślnik zamiast liczby?
To znaczy, że nie ma z czego policzyć wskaźnika, na przykład nie było jeszcze żadnego zamówienia w oknie 30 dni. Myślnik to brak danych, a nie zero.
Liczby na pulpicie nie zgadzają się z raportem księgowym.
Pulpit liczy ostatnie 30 dni, a raport liczy zakres dat, który sam wybierasz. Porównuj zawsze ten sam okres.
Po kliknięciu Pulpit wracam na stronę główną.
Twoja rola nie ma uprawnienia do odczytu analityki. Poproś administratora platformy o rolę z dostępem do analityki albo korzystaj z ekranów, które widzisz w menu.
Użytkownicy
Gdzie to znajdę: /admin/usersDla kogo: Role z prawem listowania kont: właściciel platformy, administrator platformy, wsparcie i audytor.
To spis wszystkich kont ludzi w systemie — pracowników firm, zespołów restauracji i zespołu platformy. Tutaj znajdujesz konto, żeby wejść w jego szczegóły: nadać rolę, zablokować, wylogować albo wejść w tryb wsparcia.
Co widzisz na ekranie
- Pole wyszukiwania z podpowiedzią Szukaj po nazwie lub e-mailu — działa jako zwykły formularz, więc szukasz klawiszem Enter.
- Tabela z kolumnami: Nazwa, E-mail, Role, Status, Utworzono, Akcje.
- Kolumny Nazwa, E-mail i Utworzono można sortować kliknięciem w nagłówek. Domyślnie lista jest posortowana od najnowszych kont.
- W kolumnie Role widzisz plakietki z rolami platformowymi konta; zwykły użytkownik ma tylko rolę podstawową.
- W kolumnie Status widzisz zieloną plakietkę Aktywny albo czerwoną Zbanowany.
- Po prawej link Zobacz, który otwiera szczegóły konta. Nazwa w pierwszej kolumnie też jest linkiem.
- Na dole paginacja. Gdy nic nie pasuje, pojawia się pusty stan Brak użytkowników.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleSzukaj po nazwie lub e-mailu… | Po coZawęża listę do kont, których nazwa albo adres e-mail zawiera wpisany tekst. | Jak wypełnićWpisz fragment nazwiska albo adresu, na przykład kowal, i naciśnij Enter. Wielkość liter nie ma znaczenia. | Co się stanieStrona przeładowuje się z frazą w adresie, więc możesz taki wynik zapisać w zakładkach albo wysłać koledze. Puste pole i Enter czyszczą filtr. | WymaganeNie | Uwaga |
Krok po kroku
- Znajdź konto Wpisz fragment nazwy albo e-maila i naciśnij Enter. Jeśli nie wiesz, czego szukać, posortuj po dacie utworzenia i przejrzyj najnowsze konta.
- Otwórz szczegóły Kliknij nazwę albo link Zobacz. Wszystkie działania na koncie — role, blokada, sesje, impersonacja — są w szczegółach, nie na liście.
Gdy coś nie działa
Nie widzę pozycji Użytkownicy w menu.
Twoja rola nie ma prawa listowania kont. Menu ukrywa pozycje, do których nie masz uprawnień.
Szukam po numerze telefonu i nic nie znajduję.
Wyszukiwarka przeszukuje tylko nazwę i adres e-mail. Numeru telefonu tu nie ma.
Użytkownicy — szczegóły konta
Gdzie to znajdę: /admin/users/[id]Dla kogo: Podgląd: właściciel platformy, administrator platformy, wsparcie, audytor. Zmiana ról, blokada i wygaszanie sesji: właściciel i administrator platformy. Impersonacja: właściciel, administrator platformy i wsparcie.
To karta jednego konta. Sprawdzasz tu, kim jest ta osoba w systemie, nadajesz albo odbierasz role platformowe, blokujesz konto w razie nadużycia, wylogowujesz je ze wszystkich urządzeń i — jeśli musisz pomóc w zgłoszeniu — wchodzisz w jego widok w trybie wsparcia.
Co widzisz na ekranie
- Ścieżka powrotu do listy i nagłówek z nazwą oraz adresem e-mail konta.
- Po prawej plakietka Aktywny albo Zbanowany.
- Karta Tożsamość: E-mail zweryfikowany (Tak albo Nie), Konto utworzone, Aktywne sesje jako liczba, a przy koncie zablokowanym także Powód blokady.
- Karta Role platformowe z opisem, że pusty wybór odbiera wszystkie role i zostawia rolę podstawową. Jeśli nie możesz zmieniać ról, widzisz same plakietki bez formularza.
- Karta Akcje administracyjne z przyciskami Zbanuj użytkownika lub Zdejmij blokadę oraz Wygaś wszystkie sesje. Każdy przycisk pyta o potwierdzenie.
- Karta Impersonacja supportu z polem uzasadnienia i przyciskiem Rozpocznij impersonację. Karta nie pojawia się dla własnego konta ani dla konta zbanowanego.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleRole | Po coDecyduje, co ta osoba może w panelu platformy. Role są z zamkniętego katalogu i można wybrać kilka naraz. | Jak wypełnićZaznacz role z listy. Właściciel platformy i administrator platformy mają wszystko. Redaktor wartości odżywczych prowadzi składniki, alergeny, wartości odżywcze i pisze szkice reguł, ale ich nie recenzuje. Recenzent reguł dietetycznych recenzuje i publikuje reguły, ale ich nie pisze. Wsparcie czyta konta, tenanty, zamówienia i wydarzenia oraz może wejść w impersonację. Finanse zajmują się portfelami, rozliczeniami i eksportami. Audytor czyta wszystko i eksportuje audyt, ale niczego nie zmienia. | Co się staniePo zapisaniu role zmieniają się natychmiast, a w dzienniku audytu powstaje wpis o zmianie ról z listą przed i po. Pusty wybór odbiera wszystkie role platformowe i zostawia rolę podstawową użytkownika. | WymaganeNie | UwagaNie możesz zmieniać własnych ról — to zabezpieczenie przed odcięciem sobie dostępu. Zmiana ról konta, które już ma rolę platformową, wymaga dodatkowego uprawnienia do działania na kontach uprzywilejowanych. |
| PolePowód blokady (opcjonalnie) | Po coKrótka notatka, dlaczego konto zostało zablokowane. Zobaczysz ją później na karcie Tożsamość. | Jak wypełnićWpisz zwięzłe wyjaśnienie, na przykład naruszenie regulaminu. Maksymalnie 500 znaków. Pole można zostawić puste. | Co się staniePo potwierdzeniu konto dostaje status Zbanowany, a użytkownik traci możliwość zalogowania się. W audycie zapisuje się wpis o blokadzie razem z powodem. | WymaganeNie | UwagaNie możesz zbanować własnego konta. Blokada konta z rolą platformową wymaga dodatkowego uprawnienia do działania na kontach uprzywilejowanych. |
| PoleUzasadnienie (wymagane, min. 10 znaków) | Po coPowód wejścia w cudze konto. To jest dowód audytowy, dlatego nie wystarczy jedno słowo. | Jak wypełnićNapisz, czego dotyczy sprawa, najlepiej z numerem zgłoszenia, na przykład: Zgłoszenie #4821 — błąd koszyka. Minimum 10 znaków, maksimum 500. | Co się staniePo potwierdzeniu zaczyna się sesja w koncie użytkownika. Trafiasz na stronę główną, na górze świeci banner, a uzasadnienie zapisuje się w rekordzie impersonacji i w dzienniku audytu. | WymaganeTak | UwagaW trybie impersonacji nie zobaczysz danych zdrowotnych użytkownika — profil zdrowotny, eksporty i silnik dopasowania zachowują się tak, jakby ta osoba nie udzieliła zgody. Operacje uprzywilejowane, jak zasilanie portfela, są w tym trybie zablokowane. |
Krok po kroku
- Nadaj albo odbierz role Zaznacz właściwe role w karcie Role platformowe i kliknij Zapisz role. Jeśli chcesz odebrać wszystko, odznacz wszystkie i zapisz.
- Zablokuj konto W karcie Akcje administracyjne wpisz powód, kliknij Zbanuj użytkownika i potwierdź pytanie. Konto natychmiast przestaje działać. Odblokowanie to przycisk Zdejmij blokadę.
- Wyloguj ze wszystkich urządzeń Kliknij Wygaś wszystkie sesje i potwierdź. To standardowa reakcja po podejrzeniu przejęcia konta. Liczba w polu Aktywne sesje spadnie do zera.
- Wejdź w tryb wsparcia Wpisz uzasadnienie z numerem zgłoszenia, kliknij Rozpocznij impersonację i potwierdź. Pracuj krótko, tylko w sprawie zgłoszenia, i zakończ sesję przyciskiem w bannerze — wrócisz na listę użytkowników.
Gdy coś nie działa
Widzę komunikat, że nie mogę zmieniać własnych ról.
Tak działa zabezpieczenie przed odcięciem sobie dostępu. O zmianę własnych ról poproś inną osobę z rolą właściciela albo administratora platformy.
Przy koncie kolegi z zespołu platformy dostaję komunikat o uprawnieniu impersonate-admins.
Operacje na kontach, które same mają rolę platformową, są dodatkowo chronione. Potrzebne jest uprawnienie do działania na kontach uprzywilejowanych — ma je właściciel platformy.
Nie widzę karty Impersonacja supportu.
Karta znika, gdy patrzysz na własne konto, gdy konto jest zbanowane albo gdy Twoja rola nie ma prawa do impersonacji.
Impersonacja nie startuje i widzę komunikat o zbyt wielu próbach.
Zadziałał limit 10 startów na godzinę. Odczekaj i spróbuj ponownie, a przy okazji sprawdź, czy naprawdę potrzebujesz kolejnej sesji.
Jestem w impersonacji i nie mogę zasilić portfela.
Tak ma być. Operacje uprzywilejowane są w trybie wsparcia zablokowane. Zakończ impersonację i wykonaj operację jako Ty.
Restauracje
Gdzie to znajdę: /admin/tenants/restaurantsDla kogo: Podgląd: właściciel platformy, administrator platformy, wsparcie, finanse i audytor. Dodawanie, edycja, usuwanie i przywracanie: właściciel i administrator platformy.
To spis restauracji, które są w systemie. Restauracja jest osobnym tenantem — ma własne dane, własny zespół i własny panel. Z tego ekranu zakładasz nową restaurację, zmieniasz jej dane i status oraz wchodzisz w szczegóły, gdzie zapraszasz jej zespół.
Co widzisz na ekranie
- Nagłówek Restauracje z podtytułem o onboardingu, statusach i zespołach oraz przycisk Dodaj restaurację.
- Pasek narzędzi: wyszukiwarka z podpowiedzią Szukaj po nazwie, slugu lub NIP, Filtr statusu z opcją Wszystkie oraz przełącznik Pokaż usunięte i Pokaż aktywne.
- Tabela z kolumnami: Nazwa, NIP, Status, Utworzono, Akcje.
- Plakietka statusu w każdym wierszu: Wdrażanie, Aktywny, Zawieszony albo Zarchiwizowany.
- Akcje w wierszu: Szczegóły, Edytuj, Usuń, a w widoku usuniętych Przywróć. Usuwanie i przywracanie pyta o potwierdzenie.
- Paginacja na dole oraz osobne puste stany dla listy aktywnej i dla listy usuniętych.
- Ekran Szczegóły tenanta pokazuje dane podstawowe (Slug, NIP, E-mail kontaktowy, Telefon, Adres, Utworzono) oraz kartę Zespół i zaproszenia.
- Kolumna Waluta w tabeli — waluta cen i rozliczeń restauracji ustawiana przy zakładaniu.
Krok po kroku
- Znajdź restaurację Wpisz nazwę, slug albo NIP w wyszukiwarkę. Możesz też zawęzić listę filtrem statusu, na przykład do samych Zawieszonych.
- Dodaj nową restaurację Kliknij Dodaj restaurację i wypełnij formularz. Reszta onboardingu — lokalizacje, menu, godziny — dzieje się już w panelu restauracji, nie tutaj.
- Zmień status Status ustawia się w formularzu edycji. Dozwolone drogi to: z Wdrażania do Aktywnego albo Zarchiwizowanego, z Aktywnego do Zawieszonego albo Zarchiwizowanego, z Zawieszonego z powrotem do Aktywnego albo do Zarchiwizowanego. Zarchiwizowany to koniec drogi.
- Usuń i przywróć Usuń chowa tenanta z list, ale nic nie kasuje. Włącz Pokaż usunięte, znajdź wpis i kliknij Przywróć, żeby wrócił na listę.
Gdy coś nie działa
Nie widzę przycisku Dodaj restaurację.
Twoja rola ma prawo tylko do odczytu tenantów. Zakładanie i edycja są zarezerwowane dla właściciela i administratora platformy.
Restauracja zniknęła z listy.
Prawdopodobnie została miękko usunięta. Włącz Pokaż usunięte — powinna tam być, razem z akcją Przywróć.
Przy zapisie widzę komunikat o niedozwolonej zmianie statusu.
Wybrałeś przejście, którego silnik statusów nie dopuszcza, na przykład z Zarchiwizowanego z powrotem do Aktywnego. Archiwum jest stanem końcowym.
Nowa restauracja / Edytuj restaurację
Gdzie to znajdę: /admin/tenants/restaurants/addDla kogo: Właściciel platformy i administrator platformy.
Formularz z danymi podstawowymi restauracji: jak się nazywa, w jakim jest stanie, jak się z nią skontaktować i gdzie jest. Te dane widać potem w szczegółach tenanta i używa ich reszta systemu.
Co widzisz na ekranie
- Sekcja Dane podstawowe: Nazwa restauracji, Slug (opcjonalnie), Status, NIP (opcjonalnie).
- Sekcja Kontakt: E-mail kontaktowy i Telefon.
- Sekcja Adres: Ulica i numer, Miasto, Kod pocztowy.
- Na dole przycisk Utwórz restaurację przy dodawaniu albo Zapisz zmiany przy edycji; w trakcie zapisu napis zmienia się na Zapisywanie.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleNazwa restauracji | Po coGłówna nazwa widoczna na listach, w zamówieniach i w rozliczeniach. | Jak wypełnićWpisz pełną nazwę handlową, na przykład Bistro Zielona. Maksymalnie 120 znaków. | Co się stanieNazwa pojawia się we wszystkich miejscach, które pokazują tę restaurację. Jeśli slug jest pusty, to z tej nazwy powstanie slug. | WymaganeTak | Uwaga |
| PoleSlug (opcjonalnie) | Po coKrótka nazwa w adresie strony restauracji. | Jak wypełnićZostaw puste, a system wygeneruje slug z nazwy. Jeśli wpisujesz ręcznie: małe litery, cyfry i myślniki, maksymalnie 80 znaków, na przykład bistro-zielona. | Co się stanieSlug staje się częścią adresu i musi być niepowtarzalny w całej platformie. Zajęty slug kończy się błędem przy tym polu. | WymaganeNie | Uwaga |
| PoleStatus | Po coMówi, na jakim etapie życia jest ta restauracja. | Jak wypełnićWybierz jedną z opcji: Wdrażanie, Aktywny, Zawieszony, Zarchiwizowany. Nowe restauracje zwykle zaczynają od Wdrażania. | Co się stanieStatus pokazuje się jako kolorowa plakietka na listach i decyduje o dostępności restauracji w systemie. Niedozwolone przejście zostanie odrzucone komunikatem. | WymaganeTak | UwagaZarchiwizowany jest stanem końcowym — z archiwum nie ma drogi powrotnej przez formularz. |
| PoleNIP (opcjonalnie) | Po coNumer podatkowy restauracji, potrzebny do rozliczeń. | Jak wypełnićWpisz 10 cyfr. System sprawdza sumę kontrolną, więc literówka zostanie wychwycona. Możesz zostawić puste. | Co się stanieNIP pokazuje się w kolumnie listy i w szczegółach tenanta oraz jest przeszukiwalny wyszukiwarką. | WymaganeNie | Uwaga |
| PoleE-mail kontaktowy | Po coGłówny adres, pod który piszemy w sprawach tej restauracji. | Jak wypełnićWpisz poprawny adres e-mail, na przykład kontakt@bistro.pl. | Co się stanieAdres zapisuje się w danych tenanta i widać go w szczegółach. To nie jest to samo co adres do zaproszeń — zaproszenia wysyłasz osobno na karcie zespołu. | WymaganeTak | Uwaga |
| PoleTelefon | Po coNumer kontaktowy restauracji. | Jak wypełnićWpisz polski numer telefonu. Pole jest opcjonalne, ale jeśli coś wpiszesz, musi to być poprawny numer. | Co się stanieNumer zapisuje się w danych tenanta i widać go w szczegółach. | WymaganeNie | Uwaga |
| PoleUlica i numer | Po coPierwsza linia adresu restauracji. | Jak wypełnićWpisz ulicę razem z numerem, maksymalnie 160 znaków. | Co się stanieAdres składa się w jedną linię widoczną w szczegółach tenanta. | WymaganeTak | Uwaga |
| PoleMiasto | Po coMiejscowość restauracji. | Jak wypełnićWpisz nazwę miasta, maksymalnie 80 znaków. | Co się stanieMiasto zapisuje się razem z resztą adresu. | WymaganeTak | Uwaga |
| PoleKod pocztowy | Po coKod pocztowy adresu restauracji. | Jak wypełnićWpisz kod w formacie 00-000. | Co się stanieSystem sprawdza format. Zły format zatrzymuje zapis i pokazuje komunikat przy polu. | WymaganeTak | Uwaga |
| PoleWaluta | Po coWaluta cen menu, promocji, stref dostaw, rozliczeń i raportów restauracji. | Jak wypełnićWybierz z listy (PLN, EUR, CZK, GBP, USD); domyślna to waluta platformy. | Co się stanieRestauracja przyjmuje zamówienia wyłącznie od firm w tej samej walucie. Zmiana jest możliwa tylko do pierwszego zamówienia albo rozliczenia — potem formularz odpowiada komunikatem, że nie można zmienić waluty. | WymaganeTak | UwagaNie ma przeliczeń kursowych — restauracja w innej walucie jest dla firm w PLN niedostępna. |
Krok po kroku
- Wypełnij dane podstawowe Zacznij od nazwy i statusu. Slug i NIP możesz zostawić puste, jeśli jeszcze ich nie znasz.
- Dodaj kontakt i adres E-mail kontaktowy, ulica, miasto i kod pocztowy są wymagane. Telefon jest opcjonalny.
- Zapisz Kliknij Utwórz restaurację. Po zapisie trafisz na listę, a nowa restauracja pojawi się z wybranym statusem.
Gdy coś nie działa
Widzę komunikat o zajętym slugu.
Inny tenant już go używa. Wpisz inny slug albo zostaw pole puste i pozwól systemowi wygenerować własny.
NIP jest odrzucany, chociaż wygląda dobrze.
Sprawdzana jest suma kontrolna NIP-u, nie tylko liczba cyfr. Przepisz numer jeszcze raz z dokumentu.
Firmy
Gdzie to znajdę: /admin/tenants/companiesDla kogo: Podgląd: właściciel platformy, administrator platformy, wsparcie, finanse i audytor. Dodawanie, edycja, usuwanie i przywracanie: właściciel i administrator platformy.
To spis firm, których pracownicy zamawiają jedzenie. Firma jest tenantem z danymi prawnymi i rozliczeniowymi, bo to jej wystawiamy dokumenty. Z tego ekranu zakładasz firmę, poprawiasz jej dane i wchodzisz w szczegóły, żeby zaprosić jej zespół.
Co widzisz na ekranie
- Nagłówek Firmy z podtytułem o onboardingu, statusach i zespołach oraz przycisk Dodaj firmę.
- Pasek narzędzi: wyszukiwarka Szukaj po nazwie, slugu lub NIP, Filtr statusu oraz przełącznik Pokaż usunięte i Pokaż aktywne.
- Tabela z kolumnami: Nazwa, NIP, Status, Utworzono, Akcje, z plakietkami statusu tenanta.
- Akcje w wierszu: Szczegóły, Edytuj, Usuń, a w widoku usuniętych Przywróć.
- Ekran Szczegóły tenanta pokazuje Slug, NIP, E-mail kontaktowy, Telefon, Adres, Utworzono oraz dodatkowo E-mail do faktur, Cykl rozliczeń i Termin płatności, a pod spodem kartę Zespół i zaproszenia.
- Kolumny Waluta, SSO / SCIM (liczba domen, wymóg SSO, auto-join, SCIM: liczba tokenów albo kreska) i Koniec trialu; w filtrze statusu pozycja Okres próbny.
- W szczegółach firmy z samoobsługowej rejestracji sekcja Okres próbny: Koniec okresu próbnego z liczbą dni (albo Wygasł — panel firmy w trybie tylko do odczytu), Łącznie przedłużono o N dni, przycisk Aktywuj firmę oraz formularz Przedłuż o (dni) z przyciskiem Przedłuż trial.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleAktywuj firmę | Po coZakończenie okresu próbnego i pełne uruchomienie firmy. | Jak wypełnićKliknij i potwierdź: aktywować firmę {nazwa}? Limity okresu próbnego zostaną zdjęte, a status zmieni się na Aktywny. | Co się stanieStatus Aktywny, plan Standard, limit 25 osób i blokada faktur zbiorczych znikają, panel firmy wraca do zapisu. Komunikat: Firma aktywowana — limity okresu próbnego zdjęte. Audyt tenant.trialActivate. | WymaganeNie | Uwaga |
| PolePrzedłuż o (dni) | Po coWięcej czasu na decyzję dla firmy. | Jak wypełnićLiczba od 1 do 90, potem Przedłuż trial. | Co się stanieData końca przesuwa się od aktualnej daty końca (albo od dziś, jeśli już minęła); przypomnienia 7 i 1 dzień są resetowane; panel wygasłej firmy wraca do zapisu. Komunikat: Okres próbny przedłużony do {data}. Audyt tenant.trialExtend. | WymaganeTak | Uwaga |
Krok po kroku
- Załóż firmę Kliknij Dodaj firmę i wypełnij dane prawne oraz rozliczeniowe. Bez nich nie da się później poprawnie fakturować.
- Sprawdź dane rozliczeniowe W szczegółach zobaczysz e-mail do faktur, cykl rozliczeń i termin płatności. To one sterują dokumentami dla tej firmy.
- Zaproś zespół Na karcie Zespół i zaproszenia wyślij zaproszenie do administratora firmy. Dalszą konfigurację budżetów i pracowników robi już firma u siebie.
Gdy coś nie działa
Firma nie ma portfela.
Portfel pojawi się sam przy pierwszym zasileniu. Do tego czasu firma nie będzie widoczna na liście rekonsyliacji portfeli.
Nie mogę zapisać firmy bez NIP-u.
W firmie NIP jest wymagany, bo służy do fakturowania. W restauracji jest opcjonalny.
Nowa firma / Edytuj firmę
Gdzie to znajdę: /admin/tenants/companies/addDla kogo: Właściciel platformy i administrator platformy.
Formularz z danymi firmy: kto to jest, jak się z nią kontaktować, gdzie ma siedzibę i jak ją rozliczamy. Dane rozliczeniowe są potrzebne, zanim wystawimy pierwszy dokument.
Co widzisz na ekranie
- Sekcja Dane podstawowe: Nazwa firmy, Slug (opcjonalnie), Status, NIP.
- Sekcja Kontakt: E-mail kontaktowy, Telefon.
- Sekcja Adres: Ulica i numer, Miasto, Kod pocztowy.
- Sekcja Rozliczenia: E-mail do faktur (opcjonalnie), Cykl rozliczeń, Termin płatności z dopiskiem dni.
- Przycisk Utwórz firmę albo Zapisz zmiany.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleNazwa firmy | Po coNazwa, pod którą firma występuje w systemie i na dokumentach. | Jak wypełnićWpisz pełną nazwę, maksymalnie 120 znaków. | Co się stanieNazwa pojawia się na listach, w portfelach i w eksportach księgowych. | WymaganeTak | Uwaga |
| PoleSlug (opcjonalnie) | Po coKrótka nazwa firmy w adresach. | Jak wypełnićZostaw puste, żeby system wygenerował slug z nazwy, albo wpisz własny: małe litery, cyfry i myślniki, maksymalnie 80 znaków. | Co się stanieSlug musi być niepowtarzalny; zajęty slug kończy zapis błędem przy polu. | WymaganeNie | Uwaga |
| PoleStatus | Po coEtap życia firmy w systemie. | Jak wypełnićWybierz Wdrażanie, Aktywny, Zawieszony albo Zarchiwizowany. | Co się stanieStatus widać jako plakietkę na liście. Silnik statusów pilnuje, żeby nie dało się przejść do stanu, który nie ma sensu. | WymaganeTak | Uwaga |
| PoleNIP | Po coNumer podatkowy firmy — podstawa fakturowania. | Jak wypełnićWpisz 10 cyfr NIP-u. Sprawdzana jest suma kontrolna. | Co się stanieNIP zapisuje się w danych firmy, widać go na liście i w eksportach. | WymaganeTak | Uwaga |
| PoleE-mail kontaktowy | Po coGłówny adres do rozmów z firmą. | Jak wypełnićWpisz poprawny adres e-mail. | Co się stanieAdres zapisuje się w danych tenanta i jest widoczny w szczegółach. | WymaganeTak | Uwaga |
| PoleTelefon | Po coNumer kontaktowy firmy. | Jak wypełnićOpcjonalny polski numer telefonu. | Co się stanieNumer widać w szczegółach tenanta. | WymaganeNie | Uwaga |
| PoleUlica i numer | Po coPierwsza linia adresu firmy. | Jak wypełnićUlica z numerem, maksymalnie 160 znaków. | Co się stanieAdres pojawia się w szczegółach tenanta. | WymaganeTak | Uwaga |
| PoleMiasto | Po coMiejscowość siedziby firmy. | Jak wypełnićNazwa miasta, maksymalnie 80 znaków. | Co się stanieMiasto zapisuje się razem z adresem. | WymaganeTak | Uwaga |
| PoleKod pocztowy | Po coKod pocztowy siedziby. | Jak wypełnićFormat 00-000. | Co się stanieZły format zatrzymuje zapis. | WymaganeTak | Uwaga |
| PoleE-mail do faktur (opcjonalnie) | Po coOsobny adres, na który mają iść dokumenty księgowe. | Jak wypełnićWpisz adres księgowości, na przykład faktury@firma.pl. Jeśli zostawisz puste, dokumenty idą na adres kontaktowy. | Co się stanieAdres widać w szczegółach tenanta w polu E-mail do faktur. | WymaganeNie | Uwaga |
| PoleCykl rozliczeń | Po coJak często wystawiamy firmie dokumenty. | Jak wypełnićWybierz Miesięczny albo Tygodniowy. | Co się stanieCykl zapisuje się w danych rozliczeniowych firmy i jest widoczny w szczegółach tenanta. | WymaganeTak | Uwaga |
| PoleTermin płatności | Po coIle dni firma ma na zapłatę od wystawienia dokumentu. | Jak wypełnićWpisz liczbę całkowitą od 0 do 90. Obok pola widnieje dopisek dni. | Co się stanieLiczba zapisuje się w danych rozliczeniowych. Wartość spoza zakresu zatrzymuje zapis komunikatem, że termin musi wynosić 0–90 dni. | WymaganeTak | Uwaga |
| PoleWaluta | Po coWaluta portfela, budżetów, faktur i eksportów firmy. | Jak wypełnićWybierz z listy (PLN, EUR, CZK, GBP, USD); domyślna to waluta platformy. | Co się staniePracownicy firmy mogą zamawiać wyłącznie w restauracjach o tej samej walucie; restauracje w innej walucie są dla nich niedostępne i nie trafiają do propozycji na wydarzenia. Zmiana możliwa tylko do pierwszego zamówienia albo zasilenia portfela. | WymaganeTak | Uwaga |
Krok po kroku
- Wpisz dane prawne Nazwa i NIP to minimum, bez którego nie da się fakturować.
- Uzupełnij kontakt i adres E-mail kontaktowy, ulica, miasto i kod pocztowy są wymagane.
- Ustaw rozliczenia Wybierz cykl i termin płatności. Jeśli księgowość ma osobny adres, wpisz go w polu E-mail do faktur.
- Zapisz Kliknij Utwórz firmę. Firma pojawi się na liście z wybranym statusem.
Gdy coś nie działa
Widzę komunikat, że termin płatności musi wynosić 0–90 dni.
Wpisz liczbę całkowitą z tego zakresu. Ułamki i liczby ujemne nie przejdą.
Zespół i zaproszenia
Gdzie to znajdę: /admin/tenants/companies/[id]Dla kogo: Podgląd dla ról z prawem odczytu członkostw. Zapraszanie i usuwanie: właściciel i administrator platformy.
Karta na dole szczegółów tenanta. Tutaj widzisz, kto należy do zespołu tej firmy albo restauracji, i tutaj zapraszasz kolejne osoby. Zaproszenie to link wysyłany e-mailem.
Co widzisz na ekranie
- Tabela z kolumnami: E-mail, Rola, Status, Zaproszono, Akcje.
- Plakietka statusu członkostwa: Zaproszenie wysłane, Aktywny albo Zawieszony.
- Akcje w wierszu: Wyślij ponownie oraz Usuń, z pytaniem o potwierdzenie przy usuwaniu.
- Pod tabelą formularz Zaproś członka zespołu z informacją, że link jest ważny przez 7 dni.
- Gdy nikogo jeszcze nie ma, widzisz komunikat, żeby wysłać pierwsze zaproszenie.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleE-mail | Po coAdres osoby, którą chcesz dodać do zespołu tenanta. | Jak wypełnićWpisz poprawny adres e-mail tej osoby. | Co się stanieNa ten adres poleci wiadomość z linkiem ważnym 7 dni. Do czasu przyjęcia zaproszenia wiersz ma status Zaproszenie wysłane. | WymaganeTak | Uwaga |
| PoleRola | Po coCo ta osoba będzie mogła robić w panelu swojej firmy albo restauracji. | Jak wypełnićWybierz rolę z listy właściwej dla rodzaju tenanta. Restauracja ma między innymi właściciela, menedżera, szefa kuchni, obsługę kuchni, operatora zamówień, księgowość i marketing. Firma ma między innymi administratora, HR, finanse, organizatora, koordynatora wydarzeń, menedżera i konto tylko do odczytu. | Co się stanieRola zapisuje się w zaproszeniu i zaczyna działać w chwili jego przyjęcia. Zmiana roli później odbywa się przez usunięcie i ponowne zaproszenie. | WymaganeTak | UwagaNie da się nadać roli o szerszych uprawnieniach niż Twoje własne — system odrzuci taką próbę. |
Krok po kroku
- Wyślij zaproszenie Wpisz adres e-mail, wybierz rolę i wyślij. Osoba dostanie wiadomość z linkiem ważnym 7 dni.
- Ponów wysyłkę Jeśli wiadomość nie doszła albo link wygasł, kliknij Wyślij ponownie w wierszu zaproszenia.
- Usuń członkostwo Kliknij Usuń i potwierdź. Osoba traci dostęp do panelu tego tenanta. Ostatniego właściciela tenanta usunąć się nie da.
Gdy coś nie działa
Zaproszenie wygasło.
Kliknij Wyślij ponownie — powstanie nowy link ważny kolejne 7 dni.
Nie mogę usunąć właściciela tenanta.
Nie da się usunąć ostatniego właściciela — tenant zostałby bez opiekuna. Najpierw zaproś i aktywuj drugiego właściciela.
Składniki
Gdzie to znajdę: /admin/ingredientsDla kogo: Podgląd: właściciel platformy, administrator platformy, redaktor wartości odżywczych, recenzent reguł dietetycznych i audytor. Dodawanie, edycja, zmiana statusu, usuwanie: właściciel, administrator platformy i redaktor wartości odżywczych.
To centralny katalog składników — jedna lista produktów, z której korzystają wszystkie restauracje. Każdy składnik ma nazwę, aliasy, kategorię, wartości odżywcze i deklaracje alergenów. To stąd bierze się wiedza, czy danie pasuje do czyichś ograniczeń.
Co widzisz na ekranie
- Nagłówek Składniki z podtytułem o katalogu z aliasami i statusami oraz przyciski Drzewo kategorii i Dodaj składnik.
- Pasek narzędzi: wyszukiwarka, Filtr statusu, Kategoria oraz przełącznik Pokaż usunięte i Pokaż aktywne.
- Tabela z kolumnami: Nazwa, Kategoria, Źródło, Status, Utworzono, Akcje. Sortować można po nazwie, statusie i dacie utworzenia.
- Plakietka statusu: Wersja robocza, W recenzji, Aktywny, Wycofywany albo Zarchiwizowany.
- Przy usuniętych rekordach dodatkowa plakietka Usunięty.
- Paginacja na dole oraz osobne puste stany dla listy aktywnej i dla kosza.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleWyszukiwarka składników | Po coZnajduje składnik po nazwie oraz po aliasach. | Jak wypełnićWpisz fragment nazwy, na przykład mleko. Wyszukiwarka nie zwraca uwagi na wielkość liter ani na polskie znaki. | Co się stanieLista pokazuje składniki, których nazwa pasuje do frazy, oraz te, u których pasuje któryś alias. Fraza zostaje w adresie strony. | WymaganeNie | Uwaga |
| PoleFiltr statusu | Po coZawęża listę do jednego etapu życia składnika. | Jak wypełnićWybierz Wszystkie albo konkretny status z listy. | Co się stanieLista przeładowuje się z wybranym filtrem zapisanym w adresie. | WymaganeNie | Uwaga |
| PoleKategoria | Po coPokazuje tylko składniki z wybranej gałęzi drzewa kategorii. | Jak wypełnićWybierz kategorię z listy zbudowanej z drzewa kategorii. | Co się stanieFiltr obejmuje całą gałąź, czyli także wszystkie podkategorie wybranej kategorii. | WymaganeNie | Uwaga |
| PolePokaż usunięte / Pokaż aktywne | Po coPrzełącza widok między zwykłą listą a koszem. | Jak wypełnićKliknij przełącznik. | Co się stanieW widoku usuniętych zamiast akcji Usuń pojawia się Przywróć, a puste stany mają inne teksty. | WymaganeNie | Uwaga |
Krok po kroku
- Znajdź składnik Wpisz nazwę albo alias. Jeśli szukasz czegoś w konkretnej gałęzi, użyj filtra kategorii.
- Dodaj nowy Kliknij Dodaj składnik. Nowy składnik powstaje zawsze jako wersja robocza; status zmienisz dopiero w jego szczegółach.
- Zajrzyj do drzewa Przycisk Drzewo kategorii prowadzi do struktury kategorii, gdzie porządkujesz katalog przeciąganiem.
Gdy coś nie działa
Lista jest pusta, chociaż wiem, że składniki są.
Sprawdź, czy nie masz włączonego widoku Pokaż usunięte albo filtra statusu lub kategorii. Wyczyść filtry i spróbuj ponownie.
Katalog jest zupełnie pusty.
Dodaj pierwszy składnik ręcznie albo wgraj import wartości odżywczych na ekranie Import danych.
Nowy składnik / Edytuj składnik
Gdzie to znajdę: /admin/ingredients/addDla kogo: Właściciel platformy, administrator platformy i redaktor wartości odżywczych.
Formularz opisuje sam składnik: jak się nazywa, gdzie leży w drzewie kategorii i pod jakimi innymi nazwami występuje. Wartości odżywcze i alergeny dodaje się osobno, w szczegółach składnika.
Co widzisz na ekranie
- Sekcja Dane składnika z polami: Nazwa kanoniczna (PL), Nazwa angielska, Kategoria, Aliasy, Notatki.
- Przycisk Utwórz składnik albo Zapisz zmiany.
- Podtytuł przypomina, że nowy składnik powstaje jako wersja robocza.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleNazwa kanoniczna (PL) | Po coGłówna, jedna poprawna nazwa składnika po polsku. | Jak wypełnićWpisz nazwę w mianowniku, na przykład mleko krowie 3,2%. Maksymalnie 160 znaków. | Co się stanieNazwa pojawia się na listach, w recepturach i w regułach. Wersja bez polskich znaków i wielkich liter jest zapisywana osobno, żeby wyszukiwanie działało sensownie. | WymaganeTak | Uwaga |
| PoleNazwa angielska | Po coNazwa dla angielskiej wersji aplikacji i dla dopasowań przy imporcie. | Jak wypełnićWpisz odpowiednik po angielsku, maksymalnie 160 znaków. Pole jest opcjonalne. | Co się stanieNazwa jest zapisywana jako alias rodzaju nazwa EN i widać ją w karcie Aliasy w szczegółach. | WymaganeNie | Uwaga |
| PoleKategoria | Po coMiejsce składnika w drzewie kategorii katalogu. | Jak wypełnićWybierz kategorię z listy zbudowanej z drzewa. Lista pokazuje zagnieżdżenie, więc widać, co jest pod czym. | Co się stanieKategoria decyduje o filtrze na liście, o raporcie kompletności per kategoria i o regułach typu wyklucz kategorię. | WymaganeTak | UwagaZarchiwizowanej kategorii nie da się wybrać — zapis skończy się komunikatem, że kategoria nie istnieje albo jest zarchiwizowana. |
| PoleAliasy | Po coInne nazwy tego samego składnika: synonimy i nazwy handlowe. | Jak wypełnićWpisz po jednym aliasie w każdej linii. Całe pole ma limit 2000 znaków. Przykład: mleko 3,2%, mleko pełnotłuste. | Co się stanieAliasy są przeszukiwane razem z nazwą, więc łatwiej znaleźć składnik. Widać je w karcie Aliasy w szczegółach. | WymaganeNie | Uwaga |
| PoleNotatki | Po coMiejsce na uwagi redakcyjne dla zespołu platformy. | Jak wypełnićWpisz krótką notatkę, maksymalnie 1000 znaków. | Co się stanieNotatka jest widoczna wyłącznie w panelu administratora, w szczegółach składnika. Nie trafia do restauracji ani do użytkowników. | WymaganeNie | Uwaga |
Krok po kroku
- Nazwij składnik Wpisz jedną, jednoznaczną nazwę polską. Warianty i nazwy handlowe wrzuć do aliasów, a nie do nazwy.
- Wybierz kategorię Jeśli w drzewie nie ma pasującego miejsca, dodaj najpierw kategorię na ekranie Drzewo kategorii.
- Zapisz i przejdź do szczegółów Po zapisie otwórz szczegóły składnika, żeby dodać wartości odżywcze i wypełnić macierz alergenów.
Gdy coś nie działa
Widzę komunikat, że wybrana kategoria nie istnieje lub jest zarchiwizowana.
Wybierz inną kategorię albo najpierw przywróć zarchiwizowaną gałąź w drzewie kategorii.
Składniki — szczegóły
Gdzie to znajdę: /admin/ingredients/[id]Dla kogo: Podgląd dla ról z prawem odczytu składników. Zmiana statusu, wartości odżywcze i macierz alergenów: właściciel platformy, administrator platformy i redaktor wartości odżywczych.
To najważniejszy ekran katalogu. Tutaj prowadzisz składnik przez jego cykl życia, wpisujesz wartości odżywcze z informacją, skąd pochodzą i jak bardzo im ufamy, oraz wypełniasz macierz alergenów, czyli deklaracje obecności dla każdego alergenu ze słownika.
Co widzisz na ekranie
- Nagłówek z nazwą składnika, plakietką statusu i wersją oraz przyciski zmiany statusu: Cofnij do roboczej, Przekaż do recenzji, Aktywuj, Oznacz jako wycofywany, Archiwizuj — widoczne tylko te, które są dozwolone z bieżącego statusu.
- Karta Tożsamość: Kategoria, Źródło, Utworzono, Notatki.
- Karta Aliasy z rodzajem każdego aliasu: synonim, nazwa EN albo nazwa handlowa.
- Karta Wartości odżywcze z tabelą: Składnik, Wartość, Zaufanie, Źródło, Pochodzenie, Zrecenzowano. Przy wartościach z importu jest link do batchu importu.
- Formularz Dodaj / zaktualizuj wartość z podpowiedzią, że ręczna edycja zapisuje pochodzenie wpis ręczny oraz wpis audytu.
- Karta Alergeny z tabelą: Alergen, Obecność, Kontakt krzyżowy, Źródło, Notatki, oraz formularz Edytuj macierz alergenów.
- Wyraźna informacja, że brak danych, czyli UNKNOWN, nigdy nie oznacza bezpieczeństwa.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleSkładnik odżywczy | Po coWybór pozycji ze słownika wartości odżywczych, dla której wpisujesz liczbę. | Jak wypełnićWybierz definicję z listy, na przykład Energia albo Sód. Lista zawiera tylko definicje aktywne. | Co się staniePo zapisie wartość pojawia się w tabeli wartości odżywczych tego składnika, w wierszu wybranej definicji. | WymaganeTak | UwagaWycofanej definicji nie da się użyć — zapis skończy się komunikatem, że definicja jest nieaktywna albo nie istnieje. |
| PoleWartość | Po coLiczba w jednostce kanonicznej wybranej definicji. | Jak wypełnićWpisz liczbę, na przykład 12,5. Przecinek dziesiętny jest dozwolony. Wartość nie może być ujemna. | Co się stanieLiczba jest zaokrąglana do liczby miejsc dziesiętnych zapisanej w definicji i zapisywana razem z jednostką kanoniczną. | WymaganeTak | Uwaga |
| PolePoziom zaufania | Po coMówi, jak pewna jest ta liczba. | Jak wypełnićWybierz jedną z opcji: Zweryfikowane źródło, Deklaracja dostawcy, Szacunek restauracji, Wyliczone, Ręczne niezweryfikowane, Nieznane. | Co się staniePoziom zaufania widać w kolumnie Zaufanie i liczy się do wskaźnika Zweryfikowane wartości odżywcze na pulpicie. | WymaganeTak | Uwaga |
| PoleNotatki (provenance) | Po coKrótkie wyjaśnienie, skąd wzięła się ta liczba. | Jak wypełnićWpisz źródło albo okoliczności, maksymalnie 500 znaków, na przykład etykieta producenta z 2026 r. | Co się stanieNotatka jest zapisywana razem z pochodzeniem wpisu. Brak pochodzenia jest wytykany w raporcie Jakość danych. | WymaganeNie | Uwaga |
| PoleŹródło deklaracji | Po coW formularzu alergenów mówi, skąd pochodzą dane o alergenach całego składnika. | Jak wypełnićWybierz: Wpis ręczny, Deklaracja dostawcy, Deklaracja restauracji albo Badanie laboratoryjne. | Co się stanieWartość pokazuje się w kolumnie Źródło macierzy alergenów i jest zapisywana razem z całą macierzą. | WymaganeTak | Uwaga |
| PoleObecność | Po coDla każdego alergenu z osobna mówi, czy składnik go zawiera. To najważniejsze pole bezpieczeństwa w całym systemie. | Jak wypełnićWybierz jedną z sześciu wartości: Zawiera, Może zawierać, Ryzyko kontaktu krzyżowego, Wolne od — zweryfikowane, Nieobecne z receptury, Brak danych. | Co się stanieWartość wpływa na to, czy danie z tym składnikiem zostanie dopuszczone, ostrzeżone czy zablokowane dla osoby z alergią. Każda zmiana zapisuje wpis audytu z różnicą wartości. | WymaganeTak | UwagaNowy składnik ma wszystkie alergeny ustawione na Brak danych, dopóki ich nie uzupełnisz. Brak danych to nie jest deklaracja bezpieczeństwa — przy ciężkiej alergii może zablokować wybór dania. |
| PoleŹródła kontaktu krzyżowego | Po coWskazuje, skąd bierze się ryzyko przypadkowego kontaktu z alergenem. | Jak wypełnićZaznacz pola: Wspólny olej, Wspólna frytownica, Wspólne powierzchnie, Procedury kuchenne, Inne. Pola pojawiają się tylko przy obecności Może zawierać oraz Ryzyko kontaktu krzyżowego. | Co się stanieZaznaczone źródła zapisują się przy tym alergenie i pokazują w kolumnie Kontakt krzyżowy. Przy innych wartościach obecności system czyści te zaznaczenia. | WymaganeNie | Uwaga |
| PoleNotatki (przy alergenie) | Po coMiejsce na krótkie wyjaśnienie deklaracji dla jednego alergenu. | Jak wypełnićWpisz notatkę, maksymalnie 500 znaków. | Co się stanieNotatka pokazuje się w kolumnie Notatki tabeli alergenów. | WymaganeNie | Uwaga |
Krok po kroku
- Uzupełnij wartości odżywcze W formularzu Dodaj / zaktualizuj wartość wybierz składnik odżywczy, wpisz liczbę, ustaw poziom zaufania i zapisz. Powtórz dla kolejnych pozycji.
- Wypełnij macierz alergenów Otwórz Edytuj macierz alergenów, ustaw źródło deklaracji, a potem dla każdego alergenu wybierz obecność. Przy Może zawierać i Ryzyko kontaktu krzyżowego zaznacz źródła kontaktu.
- Przeprowadź składnik przez statusy Z wersji roboczej przekaż do recenzji, po sprawdzeniu aktywuj. Gdy składnik przestaje być używany, oznacz go jako wycofywany, a na końcu zarchiwizuj.
Gdy coś nie działa
Karta Alergeny mówi, że słownik alergenów jest pusty.
Nie ma jeszcze wgranych alergenów kanonicznych. Uruchom seed słowników albo dodaj alergeny na ekranie Alergeny.
Nie widzę przycisku Aktywuj.
Pokazywane są tylko przejścia dozwolone z bieżącego statusu. Ze statusu wersja robocza najpierw trzeba przekazać składnik do recenzji.
Zapisałem wartość, a raport dalej pokazuje brak provenance.
Uzupełnij pole Notatki (provenance) — to ono jest źródłem pochodzenia dla wpisów ręcznych.
Drzewo kategorii
Gdzie to znajdę: /admin/ingredients/treeDla kogo: Podgląd dla ról z prawem odczytu składników. Dodawanie i edycja: właściciel platformy, administrator platformy, redaktor wartości odżywczych. Archiwizacja i przywracanie: te same role z prawem archiwizacji.
Drzewo porządkuje katalog składników. Kategorie mogą mieć wiele poziomów — nabiał, sery, sery pleśniowe i głębiej. Dobrze poukładane drzewo pozwala pisać reguły na całą gałąź zamiast wymieniać każdy składnik z osobna.
Co widzisz na ekranie
- Nagłówek Drzewo kategorii z podtytułem o przeciąganiu oraz przyciski Lista składników i Dodaj kategorię.
- Wyszukiwarka Szukaj kategorii.
- Podpowiedź: upuść na środku wiersza, aby przenieść do kategorii; na krawędzi — aby zmienić kolejność na tym poziomie.
- Lista-drzewo z uchwytem do przeciągania, strzałkami Rozwiń i Zwiń oraz plakietką statusu kategorii: Aktywna albo Zarchiwizowana.
- Akcje w wierszu: Dodaj podkategorię, Edytuj, Archiwizuj oraz Przywróć.
- Gdy drzewo ma więcej niż 500 kategorii, gałęzie startują zwinięte i pojawia się o tym komunikat.
- Czytnik ekranu dostaje komunikaty o rozpoczęciu, przeciąganiu, upuszczeniu i anulowaniu przenoszenia.
Krok po kroku
- Dodaj kategorię Kliknij Dodaj kategorię, żeby utworzyć gałąź główną, albo Dodaj podkategorię w wierszu, żeby utworzyć ją od razu we właściwym miejscu.
- Przenieś kategorię Chwyć uchwyt i przeciągnij. Upuszczenie na środku wiersza wkłada kategorię do środka; upuszczenie na krawędzi zmienia kolejność na tym samym poziomie. Bez myszki działają strzałki i Enter.
- Zarchiwizuj gałąź Kliknij Archiwizuj i potwierdź. Kategoria znika razem z podkategoriami, ale zostaje w bazie i można ją przywrócić.
Gdy coś nie działa
Widzę komunikat, że nie można przenieść kategorii do niej samej ani do jej poddrzewa.
Upuściłeś gałąź wewnątrz niej samej. Wybierz miejsce docelowe poza przenoszoną gałęzią.
Nie mogę dodać podkategorii.
Kategoria nadrzędna jest zarchiwizowana. Przywróć ją najpierw, potem dodaj podkategorię.
Drzewo jest bardzo duże i wolno się przegląda.
Powyżej 500 kategorii gałęzie startują zwinięte. Użyj wyszukiwarki albo rozwijaj tylko te poziomy, których potrzebujesz.
Nowa kategoria / Edytuj kategorię
Gdzie to znajdę: /admin/ingredients/tree/addDla kogo: Właściciel platformy, administrator platformy i redaktor wartości odżywczych.
Formularz opisuje jedną kategorię: jak się nazywa, po co jest i gdzie ma stać w drzewie.
Co widzisz na ekranie
- Sekcja Dane kategorii z polami Nazwa kategorii, Opis i Kategoria nadrzędna.
- Przycisk Dodaj kategorię albo Zapisz zmiany.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleNazwa kategorii | Po coNazwa widoczna w drzewie, w filtrze listy składników i w regułach. | Jak wypełnićWpisz krótką nazwę, na przykład Sery pleśniowe. Maksymalnie 120 znaków. | Co się stanieNazwa pojawia się w drzewie i w liście wyboru kategorii przy składniku. | WymaganeTak | Uwaga |
| PoleOpis | Po coWyjaśnienie dla zespołu platformy, co dokładnie wchodzi do tej kategorii. | Jak wypełnićWpisz krótki opis, maksymalnie 500 znaków. Pole jest opcjonalne. | Co się stanieOpis jest widoczny tylko w panelu administracyjnym — nie dociera do restauracji ani do użytkowników. | WymaganeNie | Uwaga |
| PoleKategoria nadrzędna | Po coMiejsce nowej kategorii w drzewie. | Jak wypełnićWybierz kategorię nadrzędną albo pozycję kategoria główna (bez rodzica), żeby utworzyć nową gałąź najwyższego poziomu. | Co się stanieKategoria pojawia się w wybranym miejscu drzewa. Późniejsze przenoszenie robi się przeciąganiem, a nie przez to pole — przy edycji pole jest zablokowane i widnieje o tym podpowiedź. | WymaganeNie | Uwaga |
Krok po kroku
- Nazwij kategorię Użyj liczby mnogiej i konkretnej nazwy, na przykład Oleje roślinne.
- Wskaż miejsce w drzewie Wybierz rodzica albo utwórz gałąź główną. Jeśli wchodzisz przez Dodaj podkategorię, rodzic jest już ustawiony.
- Zapisz Kliknij Dodaj kategorię. Wrócisz do drzewa, a nowa gałąź będzie na miejscu.
Gdy coś nie działa
Widzę komunikat, że kategoria nadrzędna jest zarchiwizowana.
Nie da się wkładać nowych kategorii do archiwum. Przywróć rodzica w drzewie i spróbuj ponownie.
Alergeny
Gdzie to znajdę: /admin/allergensDla kogo: Podgląd: właściciel platformy, administrator platformy, redaktor wartości odżywczych, recenzent reguł dietetycznych i audytor. Dodawanie, edycja, archiwizacja i przywracanie: właściciel, administrator platformy i redaktor wartości odżywczych.
To słownik alergenów, z którego korzysta cała platforma. Zawiera 14 grup kanonicznych Unii Europejskiej oraz alergeny rozszerzone, które sami dopisujemy, gdy potrzebujemy większej dokładności — na przykład konkretny orzech albo białko mleka krowiego.
Co widzisz na ekranie
- Nagłówek Alergeny z podtytułem o 14 grupach kanonicznych UE oraz przycisk Dodaj alergen.
- Wyszukiwarka Szukaj po kodzie lub nazwie oraz filtry: Filtr rodzaju (Wszystkie, Kanoniczne UE, Rozszerzone) i Filtr statusu.
- Tabela z kolumnami: Nazwa, Kod, Rodzaj, Status, Utworzono, Akcje.
- Plakietka rodzaju: Kanoniczny UE albo Rozszerzony, oraz plakietka statusu: Aktywny albo Zarchiwizowany.
- Akcje w wierszu: Podgląd, Edytuj, Archiwizuj, Przywróć. Archiwizacja pyta o potwierdzenie.
- Na stronie podglądu karta Tożsamość z polami Kod, Nazwa PL, Nazwa EN, Kolejność, Utworzono, Zaktualizowano.
- Przy alergenie kanonicznym widnieje wyraźna notka, że kod i lista są stałe i wynikają z załącznika II rozporządzenia (UE) nr 1169/2011, a edytować można wyłącznie nazwy wyświetlane.
Krok po kroku
- Sprawdź, czy słownik jest wypełniony Jeśli lista jest pusta, uruchom seed słowników, żeby dodać 14 alergenów kanonicznych, albo dodaj alergen rozszerzony ręcznie.
- Dodaj alergen rozszerzony Kliknij Dodaj alergen i wypełnij kod oraz nazwy. To ścieżka wyłącznie dla alergenów spoza listy kanonicznej.
- Popraw nazwę Kliknij Edytuj. Przy alergenie kanonicznym zmienisz tylko nazwy PL i EN — kod jest zablokowany.
- Zarchiwizuj nieużywany alergen Kliknij Archiwizuj i potwierdź. Alergen zniknie z nowych deklaracji, ale historia zostaje. Przywrócenie jest jednym kliknięciem.
Gdy coś nie działa
Nie mogę zarchiwizować alergenu.
To alergen kanoniczny UE. Jego lista jest ustawowa i nie podlega archiwizacji ani usuwaniu.
Chcę zmienić kod alergenu.
Kodu nie da się zmienić. Utwórz nowy alergen rozszerzony z właściwym kodem i zarchiwizuj stary, jeśli był rozszerzony.
Nowy alergen rozszerzony / Edytuj alergen
Gdzie to znajdę: /admin/allergens/addDla kogo: Właściciel platformy, administrator platformy i redaktor wartości odżywczych.
Formularz dodaje alergen spoza listy kanonicznej albo poprawia nazwy istniejącego. Kod jest kluczem technicznym, więc ustala się go raz.
Co widzisz na ekranie
- Sekcja Dane alergenu z polami Kod kanoniczny, Nazwa wyświetlana (PL) i Nazwa wyświetlana (EN).
- Przy edycji pole kodu jest zablokowane, a pod nim widnieje podpowiedź, że kod jest niezmienny.
- Przycisk Utwórz alergen albo Zapisz zmiany.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleKod kanoniczny | Po coTechniczny, stały identyfikator alergenu w całym systemie. | Jak wypełnićWpisz małe litery, cyfry i podkreślenia, zaczynając od litery, na przykład cow_milk_protein. Od 2 do 48 znaków. | Co się stanieKod trafia do deklaracji przy składnikach oraz do zamrożonych kopii receptur i zamówień. Po utworzeniu nie da się go zmienić. | WymaganeTak | UwagaJeśli kod jest już zajęty, zapis zostanie odrzucony komunikatem, że ten kod jest zajęty. |
| PoleNazwa wyświetlana (PL) | Po coNazwa pokazywana w polskiej wersji aplikacji. | Jak wypełnićWpisz nazwę zrozumiałą dla zwykłego człowieka, maksymalnie 160 znaków. | Co się stanieNazwa pojawia się w macierzy alergenów, w regułach i w widokach dla użytkowników. | WymaganeTak | Uwaga |
| PoleNazwa wyświetlana (EN) | Po coNazwa pokazywana w angielskiej wersji aplikacji. | Jak wypełnićWpisz angielski odpowiednik, maksymalnie 160 znaków. | Co się stanieNazwa pojawia się wszędzie tam, gdzie interfejs działa po angielsku. | WymaganeTak | Uwaga |
Krok po kroku
- Ustal kod Wymyśl krótki, jednoznaczny kod. To decyzja na zawsze — kodu nie da się później poprawić.
- Podaj obie nazwy Obie nazwy są wymagane, bo aplikacja działa w dwóch językach.
- Zapisz Po zapisie alergen pojawi się na liście jako Rozszerzony i będzie dostępny w macierzy alergenów przy każdym składniku.
Gdy coś nie działa
Widzę komunikat, że kod jest już zajęty.
Taki alergen już istnieje. Poszukaj go na liście zamiast tworzyć duplikat.
Wartości odżywcze
Gdzie to znajdę: /admin/nutrientsDla kogo: Podgląd: właściciel platformy, administrator platformy, redaktor wartości odżywczych, recenzent reguł dietetycznych i audytor. Dodawanie i edycja definicji: właściciel, administrator platformy i redaktor wartości odżywczych.
To słownik definicji składników odżywczych — spis tego, co w ogóle da się zmierzyć: energia, białko, sód, witaminy, kwasy tłuszczowe i tak dalej. Każda definicja ma stały kod, jednostkę i grupę. Bez definicji nie da się zapisać żadnej wartości ani napisać reguły z progiem.
Co widzisz na ekranie
- Nagłówek Słownik wartości odżywczych z podtytułem o grupach, jednostkach kanonicznych i mapowaniach źródeł oraz przycisk Dodaj definicję.
- Wyszukiwarka Szukaj po kodzie lub nazwie oraz Filtr grupy z opcją Wszystkie.
- Tabela z kolumnami: Kod, Nazwa, Grupa, Jednostka, Kolejność, Aktywna, Akcje.
- W kolumnie Aktywna plakietka Aktywna albo Wycofana.
- Akcja w wierszu: Edytuj.
- Grupy w filtrze to: Makroskładniki, Minerały, Witaminy, Kwasy nasycone (SFA), Kwasy jednonienasycone (MUFA), Kwasy wielonienasycone (PUFA), Aminokwasy, Pola dodatkowe, Indeks i ładunek glikemiczny.
Krok po kroku
- Sprawdź, czy definicja już istnieje Zanim dodasz nową, poszukaj po kodzie i po nazwie. Duplikaty rozjeżdżają importy i reguły.
- Dodaj brakującą definicję Kliknij Dodaj definicję i wypełnij formularz. Pamiętaj, że kodu nie da się później zmienić.
- Wycofaj nieużywaną definicję Wejdź w Edytuj i odznacz pole Definicja aktywna. Wycofana definicja nie przyjmuje nowych wartości, ale zostaje w danych historycznych.
Gdy coś nie działa
Lista definicji jest pusta.
Uruchom seed słowników albo dodaj pierwszą definicję ręcznie. Bez definicji nie zapiszesz żadnej wartości odżywczej.
Widzę komunikat, że definicja o tym kodzie już istnieje.
Poszukaj jej na liście — być może jest wycofana i wystarczy ją z powrotem aktywować.
Nowa definicja / Edytuj definicję
Gdzie to znajdę: /admin/nutrients/addDla kogo: Właściciel platformy, administrator platformy i redaktor wartości odżywczych.
Formularz opisuje jedną pozycję słownika wartości odżywczych: jak się nazywa, w czym ją mierzymy, do jakiej grupy należy i jak ma być pokazywana.
Co widzisz na ekranie
- Sekcja Dane definicji: Kod, Grupa, Nazwa PL, Nazwa EN.
- Sekcja Parametry techniczne: Jednostka kanoniczna, Baza, Typ danych, Miejsca dziesiętne, Kolejność w grupie, a przy typie kategorialnym dodatkowo Dozwolone wartości.
- Przełącznik Definicja aktywna z wyjaśnieniem, co robi wycofanie.
- Przycisk Utwórz definicję albo Zapisz zmiany.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleKod | Po coStały klucz definicji, używany przez importer i przez zamrożone kopie danych. | Jak wypełnićWpisz nazwę w formacie snake_case, na przykład vitamin_d. Małe litery, cyfry i podkreślenia, do 60 znaków, zaczynając od litery. | Co się stanieKod trafia do mapowań kolumn w imporcie i do reguł z progami. Po utworzeniu pole jest zablokowane. | WymaganeTak | UwagaKodu nie da się zmienić po utworzeniu definicji. |
| PoleGrupa | Po coPorządkuje słownik i decyduje, gdzie definicja pojawi się na listach. | Jak wypełnićWybierz jedną z grup: Makroskładniki, Minerały, Witaminy, kwasy SFA, MUFA lub PUFA, Aminokwasy, Pola dodatkowe albo Indeks i ładunek glikemiczny. | Co się stanieGrupa jest widoczna w kolumnie tabeli i działa jako filtr listy. | WymaganeTak | Uwaga |
| PoleNazwa PL | Po coNazwa w polskiej wersji aplikacji. | Jak wypełnićWpisz nazwę, maksymalnie 160 znaków. | Co się stanieNazwa pojawia się w tabeli wartości odżywczych składnika i w kreatorze reguł. | WymaganeTak | Uwaga |
| PoleNazwa EN | Po coNazwa w angielskiej wersji aplikacji. | Jak wypełnićWpisz angielski odpowiednik, maksymalnie 160 znaków. | Co się stanieNazwa pojawia się wszędzie, gdzie interfejs działa po angielsku. | WymaganeTak | Uwaga |
| PoleJednostka kanoniczna | Po coJednostka, w której trzymamy wszystkie wartości tej pozycji. | Jak wypełnićWpisz krótki symbol, na przykład g, mg, µg albo kcal. Maksymalnie 20 znaków. | Co się stanieWszystkie wartości tej definicji są przeliczane i zapisywane w tej jednostce, niezależnie od tego, co było w pliku importu. | WymaganeTak | Uwaga |
| PoleBaza | Po coMówi, do czego odnosi się liczba. | Jak wypełnićWybierz Na 100 g albo Na porcję. | Co się stanieBaza jest zapisywana razem z definicją i decyduje o interpretacji progów w regułach. | WymaganeTak | Uwaga |
| PoleTyp danych | Po coMówi, jakiego rodzaju wartość przyjmuje ta definicja. | Jak wypełnićWybierz Liczba dziesiętna, Liczba całkowita, Tak / nie albo Wartość kategorialna. | Co się staniePrzy wyborze wartości kategorialnej pojawia się dodatkowe pole Dozwolone wartości. | WymaganeTak | Uwaga |
| PoleMiejsca dziesiętne | Po coDo ilu miejsc po przecinku zaokrąglamy wartości tej definicji. | Jak wypełnićWpisz liczbę całkowitą od 0 do 6. | Co się stanieKażda zapisana wartość jest zaokrąglana do tej liczby miejsc, także przy imporcie. | WymaganeTak | Uwaga |
| PoleKolejność w grupie | Po coUstala, w jakiej kolejności definicje wyświetlają się w swojej grupie. | Jak wypełnićWpisz liczbę całkowitą nieujemną. Mniejsza liczba to wyższa pozycja. | Co się stanieKolejność widać w kolumnie Kolejność i na listach wyboru. | WymaganeTak | Uwaga |
| PoleDozwolone wartości | Po coZamknięta lista wartości dla definicji o typie kategorialnym, na przykład niski, średni, wysoki. | Jak wypełnićWpisz wartości oddzielone przecinkami, na przykład low, moderate, high. Maksymalnie 500 znaków. | Co się stanieSystem przyjmie tylko wartości z tej listy. Pole pojawia się wyłącznie przy typie danych Wartość kategorialna. | WymaganeNie | Uwaga |
| PoleDefinicja aktywna | Po coWłącza albo wyłącza definicję do dalszego użytku. | Jak wypełnićZaznacz, żeby definicja przyjmowała nowe wartości. Odznacz, żeby ją wycofać. | Co się stanieWycofana definicja nie przyjmuje nowych wartości, ale zostaje w danych historycznych i dalej jest widoczna w tabelach. | WymaganeNie | Uwaga |
Krok po kroku
- Ustal kod i jednostkę To dwie najważniejsze decyzje. Kodu nie zmienisz, a jednostka decyduje o interpretacji wszystkich liczb.
- Uzupełnij parametry techniczne Wybierz bazę, typ danych, liczbę miejsc dziesiętnych i kolejność w grupie.
- Zapisz Po zapisie definicja pojawi się na liście i będzie do wyboru w formularzu wartości przy składniku.
Gdy coś nie działa
Nie widzę pola Dozwolone wartości.
Pole pojawia się dopiero po wybraniu typu danych Wartość kategorialna.
Zmieniłem jednostkę i liczby wyglądają dziwnie.
Jednostka kanoniczna opisuje wszystkie zapisane wartości. Zmiana jednostki nie przelicza historii — zmieniaj ją tylko wtedy, gdy definicja nie ma jeszcze wartości.
Reguły zdrowotne
Gdzie to znajdę: /admin/health-rulesDla kogo: Podgląd: właściciel platformy, administrator platformy, redaktor wartości odżywczych, recenzent reguł dietetycznych i audytor.
To spis wszystkich wersji zestawów reguł żywieniowych razem z ich stanem zarządzania: co jest szkicem, co czeka na recenzję, co jest opublikowane, a co zostało zastąpione albo wycofane. Treść reguł edytujesz w kreatorze reguł, a cykl życia prowadzisz na stronie schorzenia.
Co widzisz na ekranie
- Nagłówek Reguły zdrowotne z podtytułem, że treść edytuje się w kreatorze, a cykl życia na stronie schorzenia.
- Link Dodaj przez katalog schorzeń.
- Filtr statusu z opcją Wszystkie oraz osobnymi pozycjami dla statusów wersji.
- Tabela z kolumnami: Schorzenie, Wersja, Status, Reguły, Recenzent, Aktualizacja.
- Statusy wersji: Szkic, W recenzji, Opublikowana, Zastąpiona, Wycofana.
- Pusty stan tłumaczy, że zestawy reguł powstają automatycznie przy dodaniu schorzenia do katalogu.
Krok po kroku
- Sprawdź, co czeka na recenzję Ustaw filtr statusu na W recenzji. To lista rzeczy, na które ktoś czeka.
- Sprawdź, co jest opublikowane Ustaw filtr na Opublikowana, żeby zobaczyć wersje faktycznie działające w silniku dopasowania.
- Przejdź do edycji Treść zmienia się w kreatorze reguł, a przyciski publikacji i recenzji są na stronie schorzenia.
Gdy coś nie działa
Lista jest pusta.
Nie ma jeszcze żadnego schorzenia w katalogu. Dodaj pierwsze na ekranie Schorzenia, a szkic reguł powstanie sam.
Schorzenia
Gdzie to znajdę: /admin/health-conditionsDla kogo: Podgląd: role z prawem odczytu reguł zdrowotnych. Dodawanie i edycja metadanych oraz tworzenie wersji: właściciel platformy, administrator platformy i redaktor wartości odżywczych. Recenzja i publikacja: właściciel, administrator platformy i recenzent reguł dietetycznych.
Katalog schorzeń to lista pozycji, które użytkownik może u siebie zadeklarować, na przykład cukrzyca typu 2 albo celiakia. To nie jest diagnoza i nie jest porada medyczna — to zestaw reguł żywieniowych opisany po ludzku. Na stronie jednego schorzenia prowadzisz też cały cykl życia jego reguł.
Co widzisz na ekranie
- Nagłówek Katalog schorzeń z podtytułem wyjaśniającym, że schorzenie to katalog reguł, nie diagnoza, oraz przycisk Dodaj schorzenie.
- Wyszukiwarka Szukaj po kodzie lub nazwie, Filtr statusu i przełącznik Pokaż usunięte oraz Pokaż aktywne.
- Tabela z kolumnami: Nazwa, Kod, Status, Opublikowana wersja, Utworzono. Statusy to Szkic, Aktywne, Zarchiwizowane.
- Na stronie jednego schorzenia: przycisk Edytuj metadane oraz przyciski Aktywuj, Archiwizuj i Przywróć, każdy z pytaniem o potwierdzenie.
- Karta Opis z treścią po polsku i po angielsku.
- Karta Recenzja i przegląd z polami Recenzent, Recenzja i Następny przegląd.
- Karta Wersje zestawu reguł z listą wersji, liczbą reguł i statusem, a przy każdej wersji zestaw przycisków: Edytuj treść (kreator reguł), Zgłoś do recenzji, Zatwierdź recenzję, Odrzuć (wróć do szkicu), Publikuj, Wycofaj, Nowa wersja (szkic) oraz Rollback do wskazanej wersji.
- Pole Notatka recenzji (opcjonalna) obok przycisków recenzji.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleNotatka recenzji (opcjonalna) | Po coKrótkie uzasadnienie decyzji recenzenta. | Jak wypełnićWpisz, co sprawdziłeś albo dlaczego odrzucasz wersję. Pole można zostawić puste. | Co się stanieNotatka zapisuje się przy recenzji wersji i trafia do wpisu w dzienniku audytu. | WymaganeNie | Uwaga |
Krok po kroku
- Dodaj schorzenie Kliknij Dodaj schorzenie i wypełnij metadane. System od razu utworzy dla niego szkic pierwszej wersji reguł.
- Napisz reguły Kliknij Edytuj treść (kreator reguł) przy wersji w statusie szkicu. Tylko szkic da się edytować.
- Zgłoś do recenzji Kliknij Zgłoś do recenzji. Wersja przechodzi w stan W recenzji i czeka na osobę z rolą recenzenta.
- Zrecenzuj Recenzent klika Zatwierdź recenzję albo Odrzuć (wróć do szkicu). Autor wersji nie może recenzować własnej pracy.
- Opublikuj Po zatwierdzonej recenzji kliknij Publikuj i potwierdź. Nowa wersja zastępuje poprzednią i od tej chwili obowiązuje w silniku dopasowania.
- Aktywuj schorzenie Kliknij Aktywuj, żeby użytkownicy mogli je u siebie zadeklarować. Aktywacja wymaga opublikowanej wersji reguł.
- Cofnij się do starszej wersji Kliknij Rollback do wybranej wersji. Powstanie nowy szkic z treścią tamtej wersji i przejdzie przez recenzję jeszcze raz.
Gdy coś nie działa
Widzę komunikat, że autor wersji nie może jej recenzować.
Tak działa separacja obowiązków. Recenzję musi wykonać inna osoba z rolą recenzenta reguł dietetycznych.
Publikacja jest odrzucana.
Wersja nie ma zakończonej recenzji. Najpierw Zgłoś do recenzji, potem ktoś inny klika Zatwierdź recenzję.
Aktywacja schorzenia jest zablokowana.
Nie ma jeszcze opublikowanej wersji reguł. Opublikuj wersję i spróbuj ponownie.
Kliknąłem akcję i widzę, że status zmienił się w międzyczasie.
Ktoś inny zdążył zmienić stan tego schorzenia. Odśwież stronę i spójrz, co się faktycznie stało.
Nowe schorzenie / Edycja schorzenia
Gdzie to znajdę: /admin/health-conditions/addDla kogo: Właściciel platformy, administrator platformy i redaktor wartości odżywczych.
Formularz opisuje metadane schorzenia: kod, nazwy, opisy dla użytkownika, źródła merytoryczne i termin kolejnego przeglądu. Same reguły dodaje się później w kreatorze reguł.
Co widzisz na ekranie
- Sekcja Metadane schorzenia z polami Kod, Nazwa (PL), Nazwa (EN), Opis (PL), Opis (EN), Źródła merytoryczne i Następny przegląd.
- Przy edycji pole kodu jest zablokowane z podpowiedzią, że deklaracje użytkowników trzymają kod.
- Przycisk Dodaj schorzenie albo Zapisz zmiany.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleKod | Po coStały identyfikator schorzenia w deklaracjach użytkowników. | Jak wypełnićWpisz kod w formacie snake_case, na przykład diabetes_type2. Od 2 do 64 znaków, małe litery, cyfry i podkreślenia, zaczynając od litery. | Co się stanieKod trafia do profili zdrowotnych użytkowników. Po utworzeniu nie da się go zmienić. | WymaganeTak | UwagaZajęty kod zatrzyma zapis komunikatem, że schorzenie o tym kodzie już istnieje. |
| PoleNazwa (PL) | Po coNazwa schorzenia w polskiej wersji aplikacji. | Jak wypełnićWpisz nazwę zrozumiałą dla użytkownika, maksymalnie 160 znaków. | Co się stanieNazwa pojawia się w katalogu, w symulatorze i w miejscach, gdzie użytkownik wybiera schorzenie. | WymaganeTak | Uwaga |
| PoleNazwa (EN) | Po coNazwa schorzenia w angielskiej wersji aplikacji. | Jak wypełnićWpisz angielski odpowiednik, maksymalnie 160 znaków. | Co się stanieNazwa pojawia się w angielskim interfejsie. | WymaganeTak | Uwaga |
| PoleOpis (PL) | Po coKrótkie wyjaśnienie, czego dotyczą reguły tego schorzenia. | Jak wypełnićNapisz prostym językiem, maksymalnie 2000 znaków. Nie pisz porad medycznych ani zaleceń leczenia. | Co się stanieOpis pokazuje się na karcie Opis na stronie schorzenia. | WymaganeNie | UwagaPlatforma nie diagnozuje i nie leczy. Opis ma tłumaczyć reguły żywieniowe, a nie zastępować lekarza. |
| PoleOpis (EN) | Po coAngielska wersja opisu. | Jak wypełnićWpisz tłumaczenie, maksymalnie 2000 znaków. | Co się stanieOpis pokazuje się w angielskim interfejsie. | WymaganeNie | Uwaga |
| PoleŹródła merytoryczne | Po coLista wytycznych i publikacji, na których opierają się reguły. | Jak wypełnićWpisz jedno źródło w każdej linii — adres internetowy albo nazwę, na przykład wytyczne PTDiA. Całe pole ma limit 4000 znaków. | Co się stanieŹródła są zapisywane przy schorzeniu i stanowią dowód, że reguły nie zostały wymyślone. | WymaganeNie | Uwaga |
| PoleNastępny przegląd | Po coTermin, do którego specjalista ma ponownie przejrzeć reguły. | Jak wypełnićWybierz datę z kalendarza. Pole można zostawić puste. | Co się stanieData pokazuje się na karcie Recenzja i przegląd, a schorzenia po terminie są liczone w kaflu Reguły po terminie recenzji na pulpicie. | WymaganeNie | Uwaga |
Krok po kroku
- Ustal kod i nazwy Kod jest na zawsze, więc wybierz go rozważnie. Obie nazwy są wymagane.
- Napisz opisy i podaj źródła Opis ma tłumaczyć, co robimy z jedzeniem, a nie stawiać diagnozy. Źródła wpisz po jednym w linii.
- Ustaw termin przeglądu Wpisz datę kolejnego przeglądu, żeby schorzenie samo przypomniało o sobie na pulpicie.
- Zapisz i przejdź do reguł Po zapisie system utworzy szkic zestawu reguł. Otwórz kreator reguł i napisz treść.
Gdy coś nie działa
Nie mogę zmienić kodu przy edycji.
Kod jest niezmienny, bo deklaracje użytkowników trzymają właśnie jego. Zmiana rozjechałaby profile.
Kreator reguł
Gdzie to znajdę: /admin/rule-builderDla kogo: Podgląd: role z prawem odczytu reguł zdrowotnych. Zapis treści: właściciel platformy, administrator platformy i redaktor wartości odżywczych.
To edytor treści reguł żywieniowych. Budujesz w nim warunki: wyklucz składnik, wyklucz kategorię, wyklucz alergen, ustaw próg maksymalny albo minimalny dla składnika odżywczego, ustaw zakres, a wszystko możesz łączyć w grupy AND i OR. Zanim zapiszesz, sprawdzasz podgląd, ile opublikowanych dań reguła dotknie.
Co widzisz na ekranie
- Strona startowa Kreator reguł z listą wersji w statusie szkicu, liczbą reguł i przyciskiem Otwórz edytor.
- Gdy nie ma szkiców, pusty stan z linkiem Przejdź do katalogu schorzeń.
- W edytorze: podtytuł z nazwą schorzenia i przypomnieniem, że zapis działa tylko w szkicu.
- Gdy wersja nie jest szkicem, komunikat, że treść jest zablokowana, plus link do katalogu schorzeń.
- Przyciski Dodaj regułę, Dodaj grupę AND/OR, Dodaj warunek do grupy i Usuń.
- Pola każdej reguły: Typ reguły, Skutek (severity) oraz pola zależne od typu: Składnik, Kategoria składników, Alergen, Składnik odżywczy, Próg (na porcję), Minimum, Maksimum.
- Pola opisowe: Podstawa / źródło (np. wytyczne) i Notatka.
- Pola całego zestawu: Źródła merytoryczne (jedno na linię) oraz Data wejścia w życie w formacie RRRR-MM-DD.
- Przycisk Zapisz szkic oraz przycisk Podgląd dotkniętych dań z licznikami: Blokowane, Z ostrzeżeniem, Brak danych, Preferowane i Przeanalizowane dania.
- Przy regułach adnotacyjnych informacja, że taka reguła jest komunikatem edukacyjnym i nie filtruje dań.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleTyp reguły | Po coDecyduje, co reguła w ogóle sprawdza. | Jak wypełnićWybierz jedną z opcji: Wyklucz składnik, Wyklucz kategorię, Wyklucz alergen, Próg maksymalny składnika, Próg minimalny składnika, Zakres składnika, Grupa AND (wszystkie), Grupa OR (dowolna), Ostrzeżenie (adnotacja), Preferencja (adnotacja). | Co się staniePo wyborze typu pokazują się tylko te pola, które ten typ wymaga. Zły komplet pól zatrzyma zapis komunikatem. | WymaganeTak | Uwaga |
| PoleSkutek (severity) | Po coMówi, jak mocno reguła ma zadziałać na danie. | Jak wypełnićWybierz: Blokuje (BLOCK), Silne ostrzeżenie, Ostrzeżenie, Preferencja albo Informacja. | Co się stanieSkutek widać w podglądzie: reguły blokujące zwiększają licznik Blokowane, ostrzegające licznik Z ostrzeżeniem, a preferencje licznik Preferowane. | WymaganeTak | UwagaSkutek Blokuje odbiera ludziom dania z menu. Używaj go tylko tam, gdzie chodzi o realne bezpieczeństwo. |
| PoleSkładnik | Po coWskazuje konkretną pozycję katalogu, której reguła dotyczy. | Jak wypełnićWybierz składnik z listy. Pole jest wymagane przy typie Wyklucz składnik. | Co się stanieReguła zadziała na każde danie, którego receptura zawiera ten składnik. | WymaganeNie | Uwaga |
| PoleKategoria składników | Po coWskazuje całą gałąź drzewa kategorii. | Jak wypełnićWybierz kategorię z listy. Pole jest wymagane przy typie Wyklucz kategorię. | Co się stanieReguła obejmuje wszystkie składniki z tej kategorii i z jej podkategorii — także te dodane w przyszłości. | WymaganeNie | Uwaga |
| PoleAlergen | Po coWskazuje alergen ze słownika. | Jak wypełnićWybierz alergen z listy. Pole jest wymagane przy typie Wyklucz alergen. | Co się stanieReguła patrzy na macierz alergenów składników dania. Brak danych też jest sygnałem — dania z nieznanym stanem trafiają do licznika Brak danych. | WymaganeNie | Uwaga |
| PoleSkładnik odżywczy | Po coWskazuje definicję ze słownika wartości odżywczych dla reguły z progiem. | Jak wypełnićWybierz definicję z listy. Pole jest wymagane przy progu maksymalnym, minimalnym i przy zakresie. | Co się stanieReguła porównuje wartość dania z podanym progiem. | WymaganeNie | Uwaga |
| PolePróg (na porcję) | Po coLiczba, z którą porównywana jest wartość dania. | Jak wypełnićWpisz liczbę w jednostce wybranej definicji. Wymagane przy progu maksymalnym i minimalnym. | Co się stanieDanie przekraczające próg maksymalny albo nieosiągające progu minimalnego zostaje objęte skutkiem reguły. | WymaganeNie | Uwaga |
| PoleMinimum | Po coDolna granica przy regule typu Zakres składnika. | Jak wypełnićWpisz liczbę. Wymagane razem z polem Maksimum. | Co się stanieReguła obejmuje dania poza podanym zakresem. | WymaganeNie | Uwaga |
| PoleMaksimum | Po coGórna granica przy regule typu Zakres składnika. | Jak wypełnićWpisz liczbę. Wymagane razem z polem Minimum. | Co się stanieReguła obejmuje dania poza podanym zakresem. | WymaganeNie | Uwaga |
| PolePodstawa / źródło (np. wytyczne) | Po coWyjaśnia, skąd wzięła się ta konkretna reguła. | Jak wypełnićWpisz krótko wytyczną albo publikację, maksymalnie 500 znaków. | Co się staniePodstawa jest zapisywana przy regule i widoczna dla recenzenta. | WymaganeNie | Uwaga |
| PoleNotatka | Po coDodatkowe wyjaśnienie dla zespołu albo komunikat edukacyjny. | Jak wypełnićWpisz tekst, maksymalnie 1000 znaków. | Co się staniePrzy regułach adnotacyjnych notatka jest tym, co użytkownik zobaczy jako komunikat. | WymaganeNie | Uwaga |
| PoleŹródła merytoryczne | Po coLista źródeł dla całej wersji zestawu reguł. | Jak wypełnićWpisz jedno źródło w linii; łącznie do 4000 znaków. | Co się stanieŹródła zapisują się przy wersji i są elementem recenzji. | WymaganeNie | Uwaga |
| PoleData wejścia w życie (RRRR-MM-DD, opcjonalna) | Po coDzień, od którego wersja ma obowiązywać. | Jak wypełnićWpisz datę w formacie rok-miesiąc-dzień albo zostaw puste. | Co się stanieData jest zapisywana przy wersji zestawu reguł. | WymaganeNie | Uwaga |
Krok po kroku
- Otwórz szkic Na stronie startowej wybierz wersję w statusie szkicu i kliknij Otwórz edytor. Inne statusy są tylko do odczytu.
- Dodaj warunki Kliknij Dodaj regułę, wybierz typ i skutek, uzupełnij pola. Jeśli warunki mają działać razem albo alternatywnie, użyj Dodaj grupę AND/OR i wrzuć do niej warunki przyciskiem Dodaj warunek do grupy.
- Sprawdź podgląd Kliknij Podgląd dotkniętych dań. Zobaczysz, ile opublikowanych dań zostanie zablokowanych, ostrzeżonych, oznaczonych jako brak danych i preferowanych.
- Zapisz szkic Kliknij Zapisz szkic. Zapis działa tylko w statusie szkicu. Potem wróć na stronę schorzenia i zgłoś wersję do recenzji.
Gdy coś nie działa
Widzę komunikat, że treść tej wersji jest zablokowana.
Otworzyłeś wersję, która nie jest szkicem. Na stronie schorzenia utwórz nową wersję albo zrób rollback do wybranej wersji.
Podgląd pokazuje, że żadne danie nie pasuje.
Reguła może wskazywać składnik, którego nikt nie używa, albo w systemie nie ma jeszcze opublikowanych dań. Sprawdź obie możliwości.
Zapis zwraca komunikat o nieistniejących pozycjach katalogów.
Któraś reguła wskazuje składnik, kategorię, alergen albo definicję, której już nie ma. Popraw wskazanie i zapisz ponownie.
Reguła adnotacyjna nic nie zmienia w podglądzie.
Tak ma być. Ostrzeżenie i preferencja jako adnotacja to komunikat edukacyjny, a nie filtr dań.
Symulator reguł
Gdzie to znajdę: /admin/simulatorDla kogo: Role z prawem odczytu reguł zdrowotnych.
Symulator odpowiada na pytanie: co zobaczy osoba z określonymi ograniczeniami, gdy otworzy menu tej restauracji. Profile są sztuczne, wymyślone na potrzeby testów — nie używamy tu niczyich prawdziwych danych zdrowotnych.
Co widzisz na ekranie
- Nagłówek Symulator reguł z podtytułem, że to ten sam silnik co produkcja i zero realnych danych zdrowotnych użytkowników.
- Wybór Profil testowy (syntetyczny) w postaci przycisków: Bez profilu, Ciężka alergia na orzechy, Celiakia (gluten, ciężka), Cukrzyca typu 2, Nadciśnienie (niski sód), Weganizm + laktoza.
- Wybór Restauracja spośród restauracji z opublikowanym menu.
- Sekcja Przebieg symulacji z informacją o restauracji, wersji silnika i godzinie uruchomienia.
- Lista dań z wynikiem dopasowania oraz sekcja Odpalone reguły z liczbą.
- Informacja Brak opublikowanych reguł dla tego profilu, gdy schorzenie nie ma jeszcze wersji opublikowanej.
- Pusty stan, gdy nie wybrano restauracji z opublikowanym menu.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleProfil testowy (syntetyczny) | Po coSztuczny zestaw ograniczeń, na którym testujemy reguły. | Jak wypełnićKliknij jeden z przycisków profilu. | Co się stanieSymulacja przelicza się od razu, a wybór zapisuje się w adresie strony, więc link można wysłać dalej. | WymaganeNie | Uwaga |
| PoleRestauracja | Po coMenu, na którym uruchamiamy symulację. | Jak wypełnićKliknij nazwę restauracji z listy. | Co się stanieSilnik ocenia każde opublikowane danie tej restauracji i pokazuje wynik dopasowania. | WymaganeNie | Uwaga |
Krok po kroku
- Wybierz profil Zacznij od najostrzejszego przypadku, na przykład ciężkiej alergii na orzechy. To on najszybciej pokaże braki w danych.
- Wybierz restaurację Wskaż restaurację z opublikowanym menu.
- Przeczytaj wynik Sprawdź, które dania są zgodne, które mają ostrzeżenie, które są niedostępne i przy których brakuje danych. Rozwiń Odpalone reguły, żeby zobaczyć, co konkretnie zadziałało.
Gdy coś nie działa
Widzę komunikat o braku danych do symulacji.
Żadna restauracja nie ma opublikowanego menu albo nie wybrano profilu. Opublikuj menu i spróbuj ponownie.
Wszystkie dania mają wynik Brak danych.
Składniki tych dań nie mają wypełnionej macierzy alergenów. Zajrzyj na ekran Jakość danych i uzupełnij deklaracje.
Widzę, że brak opublikowanych reguł dla profilu.
Schorzenie z tego profilu nie ma jeszcze opublikowanej wersji reguł. Opublikuj wersję na stronie schorzenia.
Import danych
Gdzie to znajdę: /admin/importsDla kogo: Właściciel platformy, administrator platformy i redaktor wartości odżywczych — czyli role z uprawnieniem do importu wartości odżywczych.
Import pozwala wgrać dużą tabelę wartości odżywczych z pliku XLSX, na przykład z licencjonowanej bazy NIZP PZH, zamiast wpisywać wszystko ręcznie. Droga jest zawsze taka sama: wgraj plik, zmapuj kolumny, zrób próbę bez zapisu, zatwierdź, a w razie pomyłki wycofaj.
Co widzisz na ekranie
- Nagłówek Import wartości odżywczych z podtytułem opisującym drogę: upload, mapowanie, dry run, commit, rollback, oraz przycisk Nowy import.
- Filtr statusu z opcją Wszystkie.
- Tabela z kolumnami: Plik, Źródło, Status, Statystyki, Utworzono, Akcje.
- Statusy batcha: Wgrany, Próba (dry run), Zatwierdzony, Wycofany, Nieudany.
- W kolumnie Statystyki skrót w postaci: nowe, dopasowane, wartości — albo, dla próby, do utworzenia, do dopięcia, wartości.
- Akcja Podgląd otwiera szczegóły batcha.
- Formularz Nowy batch importu z sekcją Plik i źródło.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PolePlik XLSX | Po coArkusz z danymi do zaimportowania. | Jak wypełnićWybierz plik z dysku. Pierwszy wiersz musi zawierać nagłówki kolumn, a importowany jest pierwszy arkusz skoroszytu. Dozwolone rozszerzenia to xlsx, xlsm i xls. | Co się staniePlik jest sprawdzany i parsowany na serwerze. Po wgraniu trafiasz do edytora mapowania kolumn. | WymaganeTak | UwagaTwarde limity: plik do 10 MB, maksymalnie 16 arkuszy w skoroszycie, 20 000 wierszy danych, 512 kolumn, nagłówek do 200 znaków i komórka tekstowa do 1000 znaków. Plik poza limitem dostaje jeden ogólny komunikat, że nie udało się odczytać arkusza. |
| PoleŹródło danych | Po coMówi, skąd pochodzi ten plik. | Jak wypełnićWybierz pozycję z rejestru źródeł, na przykład NIZP PZH — pełna baza (licencjonowana), Licencjonowany import XLSX, Badanie laboratoryjne, Deklaracja dostawcy albo Wpis ręczny. | Co się stanieŹródło zapisuje się przy każdej wartości utworzonej tym importem i jest widoczne w kolumnie Źródło w tabeli wartości odżywczych składnika. | WymaganeTak | UwagaRejestr źródeł zawiera wyłącznie metadane — nazwę i wersję. Sama zawartość bazy licencjonowanej podlega umowie licencyjnej i nie jest częścią repozytorium ani seedu. |
| PoleWersja źródła | Po coEtykieta wydania bazy, z której pochodzą dane. | Jak wypełnićWpisz krótką etykietę, na przykład rocznik wydania: 2017. Maksymalnie 60 znaków. | Co się stanieWersja jest zapisywana przy każdej wartości z tego batcha, więc później wiadomo, z którego wydania pochodzi liczba. | WymaganeTak | Uwaga |
Krok po kroku
- Wgraj plik Kliknij Nowy import, wybierz plik XLSX, wskaż źródło i wpisz wersję, a potem kliknij Wgraj i przejdź do mapowania.
- Przejdź do mapowania System otworzy szczegóły batcha z edytorem mapowania kolumn. Nic nie zostało jeszcze zapisane do katalogu.
Gdy coś nie działa
Widzę komunikat, że nie udało się odczytać arkusza.
Plik jest za duży, ma za dużo arkuszy, wierszy albo kolumn, albo nie jest poprawnym skoroszytem. Zmniejsz plik i spróbuj ponownie. Komunikat jest celowo ogólny.
Widzę komunikat, że wybrane źródło nie istnieje lub jest nieaktywne.
Rejestr źródeł nie ma tej pozycji. Uruchom seed słowników albo wybierz inne źródło z listy.
Import danych — szczegóły batcha
Gdzie to znajdę: /admin/imports/[id]Dla kogo: Właściciel platformy, administrator platformy i redaktor wartości odżywczych.
Tu prowadzisz jeden import od mapowania kolumn, przez próbę bez zapisu, do zatwierdzenia albo wycofania. To jedyne miejsce, w którym duże ilości wartości odżywczych trafiają do katalogu.
Co widzisz na ekranie
- Nagłówek z nazwą pliku, plakietką statusu, kodem źródła, wersją źródła oraz — gdy dotyczy — datami Zatwierdzono i Wycofano.
- Przyciski Zatwierdź import i Wycofaj import, każdy z pytaniem o potwierdzenie. Zatwierdzenie jest możliwe tylko po próbie, wycofanie tylko po zatwierdzeniu.
- Przy batchu wycofanym notka, że wartości utworzone importem usunięto, a nadpisane przywrócono do stanu sprzed importu.
- Sekcja Mapowanie kolumn z polem Kolumna z nazwą składnika i tabelą kolumn: Kolumna w pliku, Składnik odżywczy, Jednostka w pliku, opcja Ignoruj kolumnę oraz plakietki nazwa i kanoniczna.
- Sekcja Raport dry run z licznikami: Wiersze w pliku, Wiersze poprawne, Nowe składniki, Dopasowane, Wartości do zapisu, Błędy / ostrzeżenia.
- Listy Niezmapowane kolumny, Nieznane kody składników odżywczych oraz Duplikaty nazw w pliku z numerami wierszy.
- Tabela planu z kolumnami Wiersz, Nazwa, Akcja, Wartości — akcja to Dopnij do wskazanego składnika albo Utwórz nowy.
- Tabela Błędy wierszowe z kolumnami Wiersz, Błąd, Kontekst; pokazywane jest pierwsze 100 wpisów.
- Sekcja Statystyki commitu po zatwierdzeniu.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleKolumna z nazwą składnika | Po coWskazuje, w której kolumnie pliku znajduje się nazwa produktu. | Jak wypełnićWybierz nagłówek z listy kolumn wykrytych w pliku. | Co się staniePo tej kolumnie system dopasowuje wiersze do istniejących składników albo planuje utworzenie nowych. | WymaganeTak | Uwaga |
| PoleSkładnik odżywczy (dla kolumny) | Po coPrzypisuje jedną kolumnę pliku do jednej definicji ze słownika. | Jak wypełnićWybierz definicję z listy albo zaznacz Ignoruj kolumnę, jeśli kolumna nie zawiera wartości odżywczej. | Co się stanieZmapowane kolumny trafiają do planu zapisu. Niezmapowane są tylko raportowane i nie przerywają importu. | WymaganeNie | Uwaga |
| PoleJednostka w pliku | Po coMówi, w czym są liczby w tej kolumnie, jeśli różnią się od jednostki kanonicznej. | Jak wypełnićWybierz jednostkę z listy albo zostaw wartość kanoniczną, gdy plik używa tej samej jednostki co definicja. | Co się stanieSystem przelicza wartości do jednostki kanonicznej definicji przed zapisem. Nieznana jednostka trafia do błędów wierszowych. | WymaganeNie | Uwaga |
Krok po kroku
- Zmapuj kolumny Wskaż kolumnę z nazwą składnika, a potem przypisz kolejne kolumny do definicji. To, czego nie potrzebujesz, zaznacz jako Ignoruj kolumnę.
- Uruchom próbę Kliknij Zapisz mapowanie i uruchom dry run. Nic nie zostanie zapisane do katalogu — dostaniesz raport z liczbami, planem i błędami.
- Przeczytaj raport Sprawdź liczbę nowych składników, dopasowanych oraz błędy. Przy duplikatach nazw w pliku wygrywa ostatni wiersz — upewnij się, że to ten właściwy.
- Zatwierdź import Kliknij Zatwierdź import i potwierdź. Dopiero teraz wartości trafiają do katalogu składników. Plan jest liczony jeszcze raz w chwili zatwierdzenia.
- Wycofaj w razie pomyłki Kliknij Wycofaj import i potwierdź. Wartości utworzone tym batchem zostaną usunięte, a nadpisane wrócą do stanu sprzed importu.
Gdy coś nie działa
Nie widzę przycisku Zatwierdź import.
Batch nie jest w statusie próby. Najpierw zapisz mapowanie, co uruchomi dry run, a dopiero potem zatwierdzaj.
Widzę komunikat, że operacja jest niedozwolona w bieżącym statusie batcha.
Próbujesz zatwierdzić coś, co już jest zatwierdzone, albo wycofać coś, czego nie zatwierdzono. Odśwież stronę i sprawdź status.
W raporcie są setki błędów Niepoprawna liczba.
Plik ma inne separatory dziesiętne albo teksty w kolumnach liczbowych. Popraw plik i wgraj go jako nowy batch.
Po wycofaniu importu w katalogu zostały jakieś składniki.
Wycofanie cofa wartości odżywcze zapisane tym batchem i przywraca nadpisane. Składniki utworzone importem możesz usunąć ręcznie na liście składników.
Jakość danych
Gdzie to znajdę: /admin/data-qualityDla kogo: Role z prawem odczytu wartości odżywczych: właściciel platformy, administrator platformy, redaktor wartości odżywczych, recenzent reguł dietetycznych i audytor.
To lista rzeczy do naprawienia w katalogu jedzenia. Raport liczy się na żywo i pokazuje, gdzie brakuje wartości odżywczych, gdzie nie wiadomo, skąd pochodzą liczby, gdzie są duplikaty nazw i jak wygląda pokrycie alergenów. To najkrótsza droga do obniżenia wskaźnika UNKNOWN z pulpitu.
Co widzisz na ekranie
- Nagłówek Jakość danych z podtytułem, że raport liczy się na żywo z bazy.
- Sekcja Składniki bez wartości odżywczych z listą pozycji do uzupełnienia.
- Sekcja Wartości bez provenance z wpisami w postaci Wartość danego kodu składnika.
- Sekcja Konflikty duplikatów nazw z informacją, ile rekordów ma tę samą nazwę.
- Sekcja Kompletność per kategoria z tabelą: Kategoria, Składniki, Z wartościami, Kompletność, oraz wierszem (bez kategorii) dla pozycji nieprzypisanych.
- Sekcja Pokrycie alergenów z podtytułem o odsetku pozycji macierzy bez danych oraz licznikami: Składniki, Alergeny w słowniku, Znane deklaracje, Składniki bez żadnej znanej deklaracji.
- Pusty stan, gdy katalog składników jest pusty.
Krok po kroku
- Zacznij od pokrycia alergenów Największe ryzyko to składniki bez żadnej znanej deklaracji. Otwórz je po kolei i wypełnij macierz alergenów w szczegółach składnika.
- Uzupełnij brakujące wartości Sekcja Składniki bez wartości odżywczych mówi, gdzie nie da się policzyć progów w regułach. Dodaj wartości ręcznie albo importem.
- Popraw provenance Wejdź w składnik z listy Wartości bez provenance i uzupełnij pole Notatki (provenance) przy wartości.
- Rozwiąż duplikaty Zdecyduj, który rekord zostaje. Nadmiarowy przenieś do aliasów albo zarchiwizuj, żeby restauracje nie wybierały dwóch wersji tego samego produktu.
Gdy coś nie działa
Raport jest pusty.
Katalog składników jest pusty. Dodaj składniki albo wgraj import wartości odżywczych.
Kompletność per kategoria pokazuje wiersz bez kategorii.
To składniki, które nie mają przypisanej kategorii. Otwórz każdy z nich i wybierz właściwą kategorię w formularzu edycji.
Płatności i portfele
Gdzie to znajdę: /admin/paymentsDla kogo: Podgląd: właściciel platformy, administrator platformy, finanse i audytor. Ręczne zasilenie portfela: właściciel platformy, administrator platformy i finanse — dodatkowo z włączonym kodem 2FA.
To ekran o pieniądzach firm. Zasilasz tu portfel firmy po zaksięgowanym przelewie, oglądasz płatności online przez PayU i sprawdzasz najważniejszą sumę kontrolną platformy: czy saldo portfela zgadza się z sumą wszystkich wpisów w księdze.
Co widzisz na ekranie
- Nagłówek Płatności i portfele z podtytułem o zasileniach ręcznych i online oraz o rekonsyliacji.
- Karta Ręczne zasilenie portfela z formularzem, widoczna tylko wtedy, gdy masz uprawnienie do zasilania.
- Karta Rekonsyliacja portfeli z tabelą: Firma, Dostępne (projekcja), Zarezerwowane (projekcja), Dostępne (suma wpisów), Zarezerwowane (suma wpisów), Status ze słowem Zgodne albo ROZBIEŻNOŚĆ.
- Karta Ostatnie zasilenia z tabelą: Data, Firma, Typ, Kwota, Notatka — do 20 najnowszych.
- Karta Płatności PayU z tabelą: Data, Firma, Kwota, Status, Zamówienie PayU, Opłacono, Flagi — do 50 najnowszych.
- Statusy płatności: Oczekująca, Zakończona, Anulowana, Odrzucona, Nieudana; osobno oznaczenia Zwrot częściowy i Zwrócona.
- Flaga ROZBIEŻNOŚĆ przy płatności, która wisi w toku dłużej niż 30 minut albo została zakończona bez wpisu w księdze.
- Filtr Rodzaj płatności i kolumna Rodzaj w tabeli PayU — rozróżniają zasilenia portfeli od dopłat własnych pracowników do zamówień.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleFirma | Po coWskazuje portfel, który ma zostać zasilony. | Jak wypełnićWybierz firmę z listy. Lista zawiera tylko aktywne, nieusunięte firmy. | Co się staniePo zapisie zasilenie trafia do portfela wybranej firmy i pojawia się w tabeli Ostatnie zasilenia. | WymaganeTak | UwagaSprawdź nazwę dwa razy. Zasilenie nie ma przycisku cofnij — pomyłkę prostuje się osobną korektą w księdze. |
| PoleKwota zasilenia | Po coIle pieniędzy dopisujemy do portfela firmy. | Jak wypełnićWpisz kwotę w złotych, na przykład 1 234,56. Obok pola widnieje przyrostek PLN. Kwota musi być większa od zera. | Co się stanieKwota jest zamieniana na grosze dopiero na serwerze i dopisywana do księgi jako ruch typu Zasilenie. Dostępne saldo firmy natychmiast rośnie. | WymaganeTak | UwagaPojedyncza operacja ma górny limit. Za dużą kwotę system odrzuci komunikatem, że kwota przekracza limit pojedynczej operacji. |
| PoleNotatka (np. tytuł przelewu) | Po coŚlad, na podstawie czego zasililiśmy portfel. | Jak wypełnićWpisz tytuł przelewu albo numer dokumentu, maksymalnie 500 znaków. Pole jest opcjonalne. | Co się stanieNotatka trafia do wpisu w księdze i do eksportów księgowych, a także pokazuje się w kolumnie Notatka. | WymaganeNie | Uwaga |
| PoleKlucz idempotencji (pole ukryte) | Po coChroni przed podwójnym zapisem tego samego zasilenia. | Jak wypełnićNic nie wpisujesz — formularz generuje klucz sam przy otwarciu strony. Pod formularzem widnieje o tym informacja. | Co się stanieJeśli klikniesz dwa razy albo powtórzysz wysyłkę po błędzie sieci, drugi zapis zostanie rozpoznany jako duplikat i zobaczysz komunikat, że operacja była już zapisana. Po udanym zapisie formularz losuje nowy klucz. | WymaganeTak | Uwaga |
Krok po kroku
- Potwierdź przelew Zasilaj portfel dopiero po sprawdzeniu, że pieniądze naprawdę wpłynęły. To operacja ręczna, nie automatyczna.
- Wypełnij formularz Wybierz firmę, wpisz kwotę i tytuł przelewu, a potem kliknij Zasil portfel.
- Sprawdź rekonsyliację Zjedź do tabeli Rekonsyliacja portfeli i upewnij się, że wiersz tej firmy ma status Zgodne.
- Przejrzyj płatności PayU Poszukaj flag ROZBIEŻNOŚĆ. Pełną kolejkę rozbieżności z możliwością rozstrzygania znajdziesz w sekcji Rozliczenia.
Gdy coś nie działa
W tabeli rekonsyliacji widzę ROZBIEŻNOŚĆ.
To znaczy, że zapisane saldo nie zgadza się z sumą wpisów w księdze. Zgłoś to natychmiast zespołowi technicznemu i nie próbuj tego naprawiać ręcznymi zasileniami. Uruchom też rekonsyliację w sekcji Rozliczenia, żeby zobaczyć pełny obraz.
Widzę komunikat, że operacja była już zapisana.
Zadziałał klucz idempotencji i zablokował duplikat. Pieniądze zostały dopisane tylko raz — sprawdź tabelę Ostatnie zasilenia.
Nie widzę formularza ręcznego zasilenia.
Twoja rola nie ma uprawnienia do zasilania portfeli albo nie masz włączonego kodu 2FA.
Płatność PayU wisi jako Oczekująca.
Po 30 minutach dostanie flagę ROZBIEŻNOŚĆ. Zadanie automatyczne domyka takie płatności, gdy PayU raportuje je jako zakończone. Jeśli to się nie dzieje, sprawdź status integracji PayU na ekranie Integracje.
Tabela rekonsyliacji jest pusta.
Żadna firma nie ma jeszcze portfela. Portfel powstaje przy pierwszym ruchu księgi, na przykład przy pierwszym zasileniu.
Rozliczenia
Gdzie to znajdę: /admin/settlementsDla kogo: Podgląd: właściciel platformy, administrator platformy, finanse i audytor. Generowanie rozliczeń: właściciel platformy, administrator platformy i finanse.
To rozliczenia z restauracjami. Za każdy zamknięty miesiąc powstaje dokument z zamówieniami zrealizowanymi, prowizją platformy, opłatami eventowymi, zwrotami i kwotą do wypłaty. Stąd też przechodzisz do prowizji, rozbieżności i modeli rozliczeń firm.
Co widzisz na ekranie
- Nagłówek Rozliczenia z restauracjami z podtytułem o zamówieniach zrealizowanych, prowizjach i zwrotach.
- Trzy skróty nawigacyjne: Prowizje platformy, Rozbieżności rekonsyliacji i Modele rozliczeń firm.
- Karta Generuj rozliczenie z wyjaśnieniem, że liczone są zamówienia zrealizowane, zwroty z księgi i prowizja z wersji obowiązującej w dniu zamówienia.
- Filtr statusu z pozycjami Wszystkie, Szkic, Opublikowane, Wypłacone, Unieważnione oraz filtr Okres.
- Tabela z kolumnami: Okres, Restauracja, Status, Zamówienia, Brutto, Prowizja, Do wypłaty, Opublikowano.
- Paginacja i pusty stan zachęcający do wygenerowania pierwszego rozliczenia za zamknięty miesiąc.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleRestauracja | Po coWskazuje, dla kogo generujemy rozliczenie. | Jak wypełnićWybierz restaurację z listy aktywnych, nieusuniętych restauracji. | Co się stanieSystem zbierze zamówienia zrealizowane tej restauracji z wybranego miesiąca i policzy dokument. | WymaganeTak | Uwaga |
| PoleOkres (miesiąc) | Po coMiesiąc, za który liczymy rozliczenie. | Jak wypełnićWpisz okres w formacie rok-miesiąc, na przykład 2026-09. Pole podpowiada bieżący miesiąc. | Co się staniePowstaje szkic dokumentu za ten miesiąc. Generowanie jest bezpieczne przy powtórzeniu — drugi raz nie utworzy duplikatu. | WymaganeTak | UwagaRozliczaj miesiące zamknięte. Wygenerowanie bieżącego miesiąca da niepełny obraz. |
Krok po kroku
- Wygeneruj szkic Wybierz restaurację i miesiąc, kliknij Generuj rozliczenie. Powstanie dokument w statusie Szkic.
- Sprawdź pozycje Otwórz dokument z tabeli i przejrzyj listę zamówień, prowizję i kwotę do wypłaty.
- Dodaj korekty, jeśli trzeba Korekty ręczne można dodawać wyłącznie do szkicu. Po publikacji dokument jest zamrożony.
- Opublikuj i oznacz jako wypłacone Publikacja wysyła rozliczenie do restauracji, a po przelewie oznaczasz dokument jako wypłacony.
Gdy coś nie działa
Widzę komunikat, że rozliczenie za ten okres już istnieje i jest zamrożone.
Dokument został wcześniej wygenerowany i opublikowany. Otwórz go z listy zamiast generować od nowa.
Rozliczenie ma zero pozycji.
W tym miesiącu ta restauracja nie miała zamówień zrealizowanych. Sprawdź, czy wybrałeś właściwy okres.
Prowizja wynosi zero.
Nie ma prowizji obowiązującej w dniu tych zamówień. Utwórz wersję prowizji na ekranie Prowizje platformy i wygeneruj rozliczenie ponownie.
Rozliczenia — szczegóły dokumentu
Gdzie to znajdę: /admin/settlements/[id]Dla kogo: Podgląd: właściciel platformy, administrator platformy, finanse i audytor. Korekty, unieważnienie i oznaczenie wypłaty: właściciel platformy, administrator platformy i finanse. Publikacja: role z prawem zatwierdzania rozliczeń, dodatkowo z włączonym kodem 2FA.
To jeden dokument rozliczeniowy: sumy, lista zamówień, korekty ręczne i przyciski cyklu życia. Tutaj podejmujesz decyzję, że dokument jest gotowy i idzie do restauracji.
Co widzisz na ekranie
- Nagłówek z nazwą restauracji i okresem oraz plakietką statusu: Szkic, Opublikowane, Wypłacone albo Unieważnione.
- Zdanie z dokładnym zakresem czasu okresu w strefie UTC.
- Pasek sum: Brutto, Prowizja, Opłaty eventowe, Zwroty, Korekty, Do wypłaty.
- Sekcja Akcje, widoczna tylko dla dokumentów, które nie są wypłacone ani unieważnione: dla szkicu formularz korekty oraz przyciski Opublikuj i wyślij do restauracji i Unieważnij szkic, a dla dokumentu opublikowanego formularz oznaczenia wypłaty.
- Sekcja Pozycje z tabelą: Zamówienie, Zrealizowano, Brutto, Prowizja, Opłata event., Zwroty, Wersja prowizji. Zamówienia z wydarzeń mają dopisek wydarzenie.
- Sekcja Korekty ręczne z kwotą, notatką i datą każdej korekty.
- Na dole, po wypłacie, linia z referencją wypłaty.
- W pasku sum dodatkowo w tym dopłaty pracowników i Rabaty lojalnościowe; w tabeli pozycji kolumny Dopłata prac. i Rabat lojaln.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleKwota korekty (PLN, ze znakiem) | Po coRęczna poprawka kwoty do wypłaty, na plus albo na minus. | Jak wypełnićWpisz kwotę ze znakiem, na przykład -120,00, żeby pomniejszyć wypłatę. Zero nie jest dozwolone. | Co się stanieKorekta dopisuje się do listy korekt i natychmiast zmienia sumę Do wypłaty oraz pole Korekty. | WymaganeTak | UwagaKorekty można dodawać wyłącznie do dokumentu w statusie Szkic. Kwota ma górny limit, taki sam jak w portfelu. |
| PoleNotatka (przy korekcie) | Po coUzasadnienie korekty na potrzeby księgowości i audytu. | Jak wypełnićWpisz konkretny powód, na przykład korekta prowizji za sierpień. Minimum 3 znaki, maksimum 500. | Co się stanieNotatka jest widoczna przy korekcie na liście i trafia do audytu. | WymaganeTak | Uwaga |
| PoleReferencja przelewu (opcjonalnie) | Po coNumer albo opis przelewu, którym wypłacono należność. | Jak wypełnićWpisz numer przelewu, maksymalnie 200 znaków. Pole można zostawić puste. | Co się staniePo oznaczeniu wypłaty dokument przechodzi w status Wypłacone, a referencja pojawia się na dole strony. | WymaganeNie | Uwaga |
Krok po kroku
- Sprawdź sumy i pozycje Porównaj Brutto, Prowizję i Do wypłaty. W kolumnie Wersja prowizji zobaczysz, która wersja kontraktu została użyta do każdego zamówienia.
- Dodaj korektę Wpisz kwotę ze znakiem i notatkę, kliknij Dodaj korektę. Robi się to tylko w szkicu.
- Opublikuj Kliknij Opublikuj i wyślij do restauracji, potem potwierdź. Restauracja dostanie e-mail, a dokument zostanie zamrożony.
- Oznacz jako wypłacone Po przelewie wpisz referencję i kliknij Oznacz jako wypłacone.
- Unieważnij pomyłkowy szkic Kliknij Unieważnij szkic i potwierdź. Dokument przechodzi w status Unieważnione i przestaje się liczyć.
Gdy coś nie działa
Nie mogę dodać korekty.
Dokument nie jest szkicem. Po publikacji jest zamrożony — poprawkę uwzględnij w kolejnym okresie.
Widzę komunikat o niedozwolonym przejściu statusu.
Próbujesz na przykład opublikować dokument unieważniony. Odśwież stronę i sprawdź aktualny status.
Publikacja mówi, że operacja wymaga weryfikacji dwuskładnikowej.
Włącz kod z aplikacji na stronie Bezpieczeństwo konta i spróbuj ponownie. W trybie impersonacji publikacja jest zawsze zablokowana.
Prowizje platformy
Gdzie to znajdę: /admin/settlements/commissionsDla kogo: Podgląd: właściciel platformy, administrator platformy, finanse i audytor. Tworzenie wersji: właściciel platformy, administrator platformy i finanse.
Prowizja to umowa o tym, ile platforma bierze od zamówienia. Umowy są wersjonowane: zamiast poprawiać starą stawkę, tworzysz nową wersję z datą wejścia w życie. Dzięki temu rozliczenia sprzed zmiany nigdy się nie przeliczają.
Co widzisz na ekranie
- Nagłówek Prowizje platformy z podtytułem, że rozliczenie stosuje wersję obowiązującą w dniu zamówienia.
- Karta Nowa wersja prowizji z informacją, że dokumenty są niemutowalne.
- Tabela z kolumnami: Kontrakt, Zakres, Cel, Wersja, Stawka, Opłata event., Obowiązuje od.
- W kolumnie Cel przy prowizji domyślnej widnieje opis cała platforma.
- Pusty stan zachęcający do utworzenia domyślnej prowizji platformy.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleZakres prowizji | Po coMówi, kogo dotyczy ta wersja prowizji. | Jak wypełnićWybierz Domyślna platformy, Kontrakt z restauracją albo Kontrakt z firmą. | Co się staniePrzy kontraktach pojawia się dodatkowe pole wyboru celu. Prowizja domyślna nie może mieć celu — próba skończy się komunikatem. | WymaganeTak | Uwaga |
| PoleRodzaj | Po coMówi, jak liczymy prowizję. | Jak wypełnićWybierz Procentowa albo Stała kwota. | Co się staniePo wyborze pojawia się odpowiednie pole: Prowizja przy procentowej albo Kwota stała przy stałej. Nie da się podać obu naraz. | WymaganeTak | Uwaga |
| PoleRestauracja | Po coCel kontraktu przy zakresie Kontrakt z restauracją. | Jak wypełnićWybierz restaurację z listy. | Co się stanieTa wersja prowizji będzie stosowana wyłącznie do zamówień tej restauracji. | WymaganeNie | UwagaPrzy zakresie kontraktu restauracji cel jest wymagany. |
| PoleFirma | Po coCel kontraktu przy zakresie Kontrakt z firmą. | Jak wypełnićWybierz firmę z listy. | Co się stanieTa wersja prowizji dotyczy zamówień tej firmy. | WymaganeNie | UwagaPrzy zakresie kontraktu firmy cel jest wymagany. |
| PoleProwizja | Po coStawka procentowa od kwoty brutto zamówienia. | Jak wypełnićWpisz liczbę od 0 do 100, maksymalnie z dwoma miejscami po przecinku, na przykład 15 albo 12,5. | Co się stanieProcent jest zamieniany na punkty bazowe i zapisywany przy wersji. W tabeli widać go jako wartość procentową. | WymaganeNie | Uwaga |
| PoleKwota stała | Po coStała kwota prowizji zamiast procentu. | Jak wypełnićWpisz kwotę w złotych, na przykład 12,00. Nie może być ujemna. | Co się stanieKwota jest zapisywana przy wersji i stosowana do każdego zamówienia. | WymaganeNie | Uwaga |
| PoleOpłata eventowa | Po coDodatkowa stała opłata za zamówienie powstałe w ramach wydarzenia. | Jak wypełnićWpisz kwotę w złotych albo zostaw puste. Nie może być ujemna. | Co się stanieOpłata pojawia się w kolumnie Opłata event. w rozliczeniu, przy zamówieniach oznaczonych jako wydarzenie. | WymaganeNie | Uwaga |
| PoleObowiązuje od | Po coDzień, od którego ta wersja prowizji ma zastosowanie. | Jak wypełnićWybierz datę z kalendarza. Zapis idzie w formacie rok-miesiąc-dzień. | Co się stanieWersja jest stosowana do zamówień zrealizowanych od tego dnia włącznie. Wcześniejsze rozliczenia zostają nietknięte. | WymaganeTak | Uwaga |
| PoleNotatka | Po coUzasadnienie zmiany stawki na potrzeby audytu księgowego. | Jak wypełnićWpisz krótkie wyjaśnienie, maksymalnie 500 znaków. | Co się stanieNotatka zapisuje się przy wersji prowizji. | WymaganeNie | Uwaga |
Krok po kroku
- Utwórz prowizję domyślną Bez wersji domyślnej rozliczenia policzą prowizję zero. To zwykle pierwsza rzecz do zrobienia.
- Dodaj kontrakt indywidualny Wybierz zakres kontraktu, wskaż restaurację albo firmę i ustaw stawkę oraz datę wejścia w życie.
- Zmień stawkę Nie edytujesz starej wersji — tworzysz nową z późniejszą datą obowiązywania i notatką z uzasadnieniem.
Gdy coś nie działa
Widzę komunikat, że prowizja domyślna nie może mieć celu.
Wybrałeś zakres domyślny, ale wskazałeś restaurację albo firmę. Zmień zakres na kontrakt albo wyczyść cel.
Widzę komunikat, że prowizja może być procentowa ALBO stała.
Wypełniłeś oba pola kwotowe. Zostaw tylko to, które pasuje do wybranego rodzaju.
Zmieniłem prowizję, ale stare rozliczenie się nie przeliczyło.
Tak ma być. Historia nigdy nie jest przeliczana — nowa wersja działa dopiero od swojej daty wejścia w życie.
Modele rozliczeń firm
Gdzie to znajdę: /admin/settlements/billingDla kogo: Podgląd: właściciel platformy, administrator platformy, finanse i audytor. Zmiana modelu: właściciel platformy, administrator platformy i finanse.
Model rozliczeń mówi, kto formalnie jest sprzedawcą wobec firmy. To decyzja prawna i księgowa, nie techniczna — dlatego włączenie modelu innego niż domyślny wymaga zatwierdzonej decyzji prawno-księgowej z referencją.
Co widzisz na ekranie
- Nagłówek Modele rozliczeń firm z podtytułem o modelu sprzedawcy i wymaganej decyzji prawnej.
- Lista firm; przy każdej nazwa, plakietka z bieżącym modelem oraz druga plakietka: albo Decyzja prawna z referencją, albo ostrzeżenie Brak decyzji prawnej — wystawianie zablokowane.
- Formularz zmiany modelu przy każdej firmie, gdy masz uprawnienie; w przeciwnym razie zdanie o braku uprawnień do zmiany modelu.
- Pusty stan, gdy nie ma jeszcze żadnej firmy.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleModel rozliczeń | Po coWybiera sposób, w jaki rozliczamy się z firmą. | Jak wypełnićWybierz Rozliczenie wewnętrzne platformy, PayU Marketplace albo Fakturowanie bezpośrednie restauracji. | Co się stanieModel zapisuje się przy firmie i decyduje o tym, jakie dokumenty i w czyim imieniu są wystawiane. | WymaganeTak | UwagaKażdy model inny niż rozliczenie wewnętrzne platformy wymaga zaznaczonej decyzji prawno-księgowej razem z referencją. |
| PoleReferencja decyzji prawno-księgowej | Po coNumer dokumentu, w którym zapadła decyzja o modelu. | Jak wypełnićWpisz numer decyzji, na przykład DEC/2026/014. Maksymalnie 200 znaków. | Co się stanieReferencja pokazuje się na plakietce przy firmie i jest dowodem, że model został formalnie zatwierdzony. | WymaganeNie | UwagaPrzy modelu innym niż domyślny referencja jest wymagana. |
| PoleDecyzja prawno-księgowa zatwierdzona | Po coPotwierdza, że decyzja została podjęta i podpisana. | Jak wypełnićZaznacz pole, gdy decyzja faktycznie istnieje. | Co się stanieZaznaczenie odblokowuje wystawianie dokumentów zbiorczych w tym modelu. Bez niego model inny niż domyślny nie zostanie zapisany. | WymaganeNie | Uwaga |
Krok po kroku
- Sprawdź obecny model Plakietka przy nazwie firmy pokazuje, w jakim modelu firma jest dziś rozliczana.
- Zdobądź decyzję Przed zmianą modelu poproś dział prawny i księgowość o formalną decyzję i jej numer.
- Zapisz model Wybierz model, wpisz referencję, zaznacz pole zatwierdzenia i kliknij Zapisz model.
Gdy coś nie działa
Widzę komunikat, że model inny niż domyślny wymaga zatwierdzonej decyzji z referencją.
Zaznacz pole zatwierdzenia i wpisz numer decyzji. Bez obu tych rzeczy zapis się nie uda.
Widzę komunikat o braku uprawnień do zmiany modelu.
Twoja rola ma dostęp tylko do odczytu rozliczeń. Poproś osobę z rolą finansów albo administratora platformy.
Rozbieżności rekonsyliacji
Gdzie to znajdę: /admin/settlements/discrepanciesDla kogo: Podgląd: właściciel platformy, administrator platformy, finanse i audytor. Uruchamianie rekonsyliacji i rozstrzyganie: właściciel platformy, administrator platformy i finanse.
To kolejka spraw, w których liczby w różnych miejscach systemu się nie zgadzają. Rekonsyliacja porównuje zamówienia, księgę portfela, płatności PayU, zwroty, rozliczenia restauracji i billing firm. Sama niczego nie naprawia — tylko pokazuje i pilnuje, żeby nikt o tym nie zapomniał.
Co widzisz na ekranie
- Nagłówek Rozbieżności rekonsyliacji z podtytułem wyliczającym porównywane obszary i zdaniem, że rekonsyliacja raportuje, a nie naprawia.
- Przycisk Uruchom rekonsyliację (bieżący miesiąc) z pytaniem o potwierdzenie.
- Zakładki Otwarte i Rozstrzygnięte.
- Lista rozbieżności z rodzajem, na przykład Portfel: projekcja nie równa się sumie wpisów, Zamówienie: brak debetu, Płatność bez wpisu ledgera, Płatność utknięta w toku, Zwrot bez zamówienia, Rozliczenie nie równa się przeliczeniu, Billing nie równa się przeliczeniu.
- Przy każdej pozycji informacja, kiedy widziano ją ostatnio, a przy rozstrzygniętych notatka i data rozstrzygnięcia.
- Formularz rozstrzygnięcia z polem notatki.
- Na dole podpowiedź, że automatyczny przebieg robi zadanie cron dla poprzedniego miesiąca.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleNotatka (rozstrzygnięcie) | Po coWyjaśnienie, co się okazało i jak sprawa została załatwiona. | Jak wypełnićNapisz konkretnie, co sprawdziłeś i jaki był wynik. Minimum 3 znaki, maksimum 500. | Co się stanieRozbieżność przechodzi na zakładkę Rozstrzygnięte razem z Twoją notatką i datą. | WymaganeTak | UwagaRozstrzygnięcie to zapis decyzji, nie naprawa danych. Jeśli w systemie coś naprawdę jest nie tak, najpierw napraw przyczynę. |
Krok po kroku
- Uruchom rekonsyliację Kliknij Uruchom rekonsyliację (bieżący miesiąc) i potwierdź. Po przebiegu zobaczysz komunikat z liczbą znalezionych rozbieżności i liczbą nowych.
- Przejrzyj otwarte pozycje Zacznij od rodzajów dotyczących pieniędzy w portfelu, bo one najszybciej rosną w skutkach.
- Zbadaj przyczynę Zajrzyj do dziennika audytu, do ekranu Płatności i portfele i do rozliczenia, którego dotyczy pozycja.
- Rozstrzygnij Wpisz notatkę z wyjaśnieniem i kliknij Rozstrzygnij. Pozycja przejdzie na zakładkę Rozstrzygnięte.
Gdy coś nie działa
Widzę komunikat, że rozbieżność została już rozstrzygnięta.
Ktoś inny zdążył ją zamknąć. Odśwież stronę i sprawdź zakładkę Rozstrzygnięte.
Rekonsyliacja niczego nie znajduje, a portfel się nie zgadza.
Ręczny przebieg liczy bieżący miesiąc. Zdarzenie mogło wystąpić wcześniej — poczekaj na przebieg miesięczny albo poproś zespół techniczny o uruchomienie rekonsyliacji dla wskazanego okresu.
Nie mogę uruchomić rekonsyliacji.
Potrzebne jest uprawnienie do zmiany rozliczeń. Rola audytora go nie ma, bo z definicji tylko czyta.
Raporty
Gdzie to znajdę: /admin/reportsDla kogo: Role z prawem eksportu analityki: właściciel platformy, administrator platformy, finanse i audytor.
To eksport księgowy obejmujący wszystkie firmy naraz. Wybierasz zakres dat i format, a system przygotowuje plik z zamówieniami zrealizowanymi i rozbiciem VAT. Możesz też ukryć dane osobowe pracowników.
Co widzisz na ekranie
- Nagłówek Raporty platformy z podtytułem o eksporcie księgowym wszystkich firm.
- Karta Eksport księgowy z polami Od i Do, wyborem formatu CSV albo XLSX oraz polem wyboru Anonimizuj pracowników.
- Informacja, że powyżej 500 zamówień eksport generuje się w tle.
- Komunikat po wysłaniu dużego zakresu: eksport trafił do kolejki i plik pobierzesz z listy poniżej.
- Sekcja Eksporty w tle z listą zadań: zakres dat, format, dopisek anonimizowany, data utworzenia, liczba wierszy, ewentualny błąd, plakietka statusu Oczekuje, Przetwarzany, Gotowy albo Błąd oraz przycisk Pobierz przy gotowych.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleOd | Po coPoczątek zakresu dat, z którego bierzemy zamówienia. | Jak wypełnićWybierz datę z kalendarza. Pole ma podpowiedziany domyślny zakres. | Co się stanieZakres trafia do adresu eksportu i decyduje o zawartości pliku. | WymaganeTak | Uwaga |
| PoleDo | Po coKoniec zakresu dat. | Jak wypełnićWybierz datę z kalendarza; nie może być wcześniejsza niż pole Od. | Co się stanieJeśli w zakresie mieści się do 500 zamówień, plik pobierze się od razu. Powyżej tej liczby eksport trafia do kolejki. | WymaganeTak | Uwaga |
| PoleFormat | Po coRodzaj pliku wyjściowego. | Jak wypełnićZaznacz CSV albo XLSX. Domyślnie zaznaczony jest CSV. | Co się staniePlik zostaje wygenerowany w wybranym formacie. | WymaganeTak | Uwaga |
| PoleAnonimizuj pracowników | Po coUkrywa dane osobowe osób zamawiających. | Jak wypełnićZaznacz pole, jeśli plik ma trafić poza wąskie grono księgowości. | Co się stanieEksport powstaje bez imion, nazwisk i adresów e-mail zamawiających. Na liście zadań taki plik ma dopisek anonimizowany. | WymaganeNie | UwagaBez anonimizacji plik zawiera dane osobowe. Traktuj go jak dokument poufny i nie wysyłaj mailem poza organizację. |
Krok po kroku
- Ustaw zakres Wybierz daty Od i Do, najlepiej pełny, zamknięty miesiąc.
- Wybierz format i anonimizację CSV nadaje się do dalszej obróbki, XLSX do przeglądania. Zaznacz anonimizację, jeśli plik opuszcza księgowość.
- Kliknij Eksportuj Mały zakres pobierze się od razu. Duży trafi do kolejki i pojawi się w sekcji Eksporty w tle.
- Pobierz gotowy plik Gdy zadanie ma status Gotowy, kliknij Pobierz. Pliki mają ograniczony czas życia.
Gdy coś nie działa
Widzę komunikat, że zakres przekracza limit synchroniczny.
Zakres ma więcej niż 500 zamówień. Eksport trafił do kolejki — poczekaj i pobierz plik z listy poniżej.
Zadanie ma status Błąd.
Przy zadaniu zobaczysz treść błędu. Najczęściej wystarczy zawęzić zakres i spróbować jeszcze raz.
Zadanie wisi w statusie Oczekuje.
Nie chodzi cron eksportów księgowych. Zgłoś to zespołowi operacyjnemu.
Ankiety satysfakcji
Gdzie to znajdę: /admin/surveysDla kogo: Role platformowe z prawem odczytu analityki: właściciel platformy, administrator platformy, finanse i audytor.
Zestawienie platformowe ankiet po posiłku — ze wszystkich restauracji i firm naraz. Pokazuje, jak oceniane są posiłki na całej platformie i które restauracje odstają. Bez komentarzy i bez danych autorów; okresy liczone w strefie aplikacji.
Co widzisz na ekranie
- Nagłówek Ankiety satysfakcji z podtytułem: zestawienie platformowe ankiet po posiłku — wszystkie restauracje i firmy, bez komentarzy (strefa aplikacji).
- Przełącznik okresu: Bieżący miesiąc, Poprzedni miesiąc, Ostatnie 30 dni, z zakresem dat.
- Kafle: Odpowiedzi, Średnia ocena (N/5), Oceny 4–5 (procent).
- Tabela Per restauracja: Restauracja, Odpowiedzi, Średnia, Oceny 4–5.
- Sekcje Rozkład ocen, Najczęstsze tagi (Smak, Temperatura, Porcja, Punktualność, Opakowanie) i Trend (średnia i liczba odpowiedzi per dzień).
- Pusty stan Brak ankiet z wyjaśnieniem, że ankiety pojawią się po zrealizowanych zamówieniach.
Krok po kroku
- Szukaj odstających restauracji Niska średnia albo mały udział ocen 4–5 przy dużej liczbie odpowiedzi to sygnał do rozmowy z restauracją.
- Porównuj z ocenami zamówień Ankiety mierzą satysfakcję po doręczeniu; oceny zamówień (jedzenie / dostawa / zgodność) to osobny mechanizm w panelach tenantów.
Gdy coś nie działa
Restauracja prosi o dane autora ankiety.
Nie ma takiej możliwości ani dla restauracji, ani dla platformy — ankiety są anonimowe z założenia. Jedyny kanał kontaktu z klientem to odpowiedź restauracji na ocenę zamówienia.
Lojalność — reguły globalne
Gdzie to znajdę: /admin/loyaltyDla kogo: Podgląd: właściciel platformy, administrator platformy, finanse i audytor. Dodawanie, edycja, wstrzymywanie i usuwanie reguł globalnych: właściciel i administrator platformy.
Program lojalnościowy nagradza pracowników kuponem rabatowym za regularne zamawianie w jednej restauracji. Restauracje prowadzą własne reguły u siebie; tutaj ustawiasz reguły globalne, które obowiązują w każdej restauracji na platformie, i oglądasz statystyki liczbowe całego programu. Rabat z kuponu zawsze obciąża restaurację.
Co widzisz na ekranie
- Nagłówek Program lojalnościowy platformy z podtytułem o regułach globalnych i statystykach liczbowych.
- Nota: reguły globalne działają obok reguł własnych restauracji; rabat z kuponu zawsze obciąża restaurację (kolumna w rozliczeniu), a maksymalny rabat kwotowy jest wyrażony w walucie platformy.
- Kafle: Uczestnicy (pracownicy z naliczonym postępem, bez danych osobowych), Aktywne kupony z dopiskiem wydane w tym miesiącu, Kupony użyte w tym miesiącu, Rabaty w tym miesiącu.
- Tabela Reguły globalne: Nazwa, Rodzaj (Po N zamówieniach / Seria dni), Warunek, Nagroda, Status (Aktywna / Wstrzymana), Akcje (Edytuj, Wstrzymaj / Aktywuj, Usuń, w widoku usuniętych Przywróć) oraz przełącznik Pokaż usunięte.
- Przycisk Nowa reguła globalna i formularz z sekcjami Warunek i Nagroda oraz notą, że reguła obowiązuje w każdej restauracji.
- Pusty stan Brak reguł globalnych — platforma nie ma obecnie żadnej reguły globalnej, restauracje mogą prowadzić własne.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleNazwa reguły | Po coRozpoznanie reguły na liście i w audycie. | Jak wypełnićDo 120 znaków, na przykład Stały klient taadaam.com. | Co się staniePracownik widzi warunek i nagrodę ze znacznikiem taadaam.com, nie nazwę wewnętrzną. | WymaganeTak | Uwaga |
| PoleRodzaj reguły | Po coSposób liczenia postępu. | Jak wypełnićPo N zamówieniach (N zrealizowanych zamówień w oknie M dni) albo Seria dni (K dni z rzędu z zrealizowanym zamówieniem). | Co się stanieFormularz pokazuje pola pasujące do rodzaju. | WymaganeTak | Uwaga |
| PoleLiczba zamówień (N) i Okno (dni, M) | Po coWarunek dla rodzaju Po N zamówieniach. | Jak wypełnićN od 1 do 100; M od 1 do 365 dni kalendarzowych w strefie czasowej restauracji, w której liczy się postęp. | Co się stanieZamówienia starsze niż okno wypadają z licznika. | WymaganeNie | Uwaga |
| PoleDni z rzędu (K) i Weekend nie przerywa serii | Po coWarunek dla rodzaju Seria dni. | Jak wypełnićK od 2 do 60; zaznacz opcję weekendu, jeśli piątek → poniedziałek ma być kolejnym dniem serii. | Co się stanieDwa zamówienia tego samego dnia to jeden dzień; przerwa zeruje serię. | WymaganeNie | Uwaga |
| PoleRabat na następne zamówienie | Po coWysokość nagrody w procentach. | Jak wypełnićOd 1 do 100 procent. | Co się stanieKupon obniża wartość następnego zamówienia pracownika w restauracji, w której spełnił warunek. | WymaganeTak | Uwaga |
| PoleMaksymalny rabat | Po coGórna granica kwotowa rabatu. | Jak wypełnićKwota w walucie platformy albo puste = bez limitu. | Co się staniePrzy restauracjach w innej walucie limit jest porównywany nominalnie — bez przeliczeń kursowych. | WymaganeNie | Uwaga |
| PoleWażność kuponu (dni) | Po coJak długo kupon czeka na użycie. | Jak wypełnićOd 1 do 365 dni, do końca ostatniego dnia ważności. | Co się staniePo tym czasie kupon dostaje status Wygasł. | WymaganeTak | Uwaga |
| PoleUtwórz regułę / Zapisz zmiany | Po coZapisanie reguły globalnej. | Jak wypełnićKliknij po wypełnieniu. | Co się stanieReguła działa od razu we wszystkich restauracjach dla kolejnych zrealizowanych zamówień; edycja nie zmienia wydanych kuponów. | WymaganeNie | Uwaga |
| PoleWstrzymaj / Aktywuj / Usuń / Przywróć | Po coCykl życia reguły. | Jak wypełnićWstrzymaj zatrzymuje naliczanie bez kasowania; Usuń chowa regułę (usunięcie miękkie); Przywróć wraca z kosza. | Co się stanieWydane kupony pozostają ważne niezależnie od losu reguły. | WymaganeNie | Uwaga |
Krok po kroku
- Zdecyduj, czy platforma potrzebuje reguły globalnej Reguły globalne obciążają rabatem wszystkie restauracje — uzgodnij to z nimi, bo to ich koszt.
- Dodaj regułę Nowa reguła globalna → rodzaj, warunek, rabat, ważność → Utwórz regułę.
- Obserwuj koszt programu Rabaty w tym miesiącu to suma rabatów użytych kuponów na całej platformie; w rozliczeniu każdej restauracji widać jej udział.
Gdy coś nie działa
Restauracja skarży się na koszt rabatów z reguły globalnej.
Wstrzymaj regułę (naliczanie stanie od razu, wydane kupony zostaną) albo obniż procent i ustaw Maksymalny rabat. Restauracja może też prowadzić własne reguły zamiast globalnych.
Nie widzę przycisków edycji.
Reguły globalne edytują wyłącznie właściciel i administrator platformy. Finanse i audytor mają podgląd.
ESG i emisje — raport platformowy i faktory emisji
Gdzie to znajdę: /admin/esgDla kogo: Pełny dostęp (faktory, backfill): właściciel platformy, administrator platformy i redaktor żywieniowy. Podgląd raportu: audytor.
Dwie rzeczy: raport śladu węglowego posiłków na całej platformie oraz słownik faktorów emisji — liczb kg CO2e na kilogram surowca, z których restauracje liczą ślad swoich dań. Bez faktorów dania mają status brak danych, dlatego słownik trzeba zasilić (domyślnym zestawem albo ręcznie) i utrzymywać.
Co widzisz na ekranie
- Nagłówek ESG — ślad węglowy posiłków z podtytułem o raporcie platformowym (wszystkie restauracje i firmy, strefa aplikacji) oraz słowniku faktorów emisji składników; zakres Okres: {od} – {do} z presetami.
- Raport: kafle Ślad węglowy posiłków, Posiłki z policzonym śladem, Średnio na posiłek, Pokrycie danymi; wykres trendu; tabele Restauracje (top 10) i Firmy (top 10); nota metodologiczna (ślad porcji = Σ masa × faktor / liczba porcji; wartości orientacyjne, nie zastępują LCA dostawcy); pusty stan Brak zrealizowanych posiłków w tym okresie.
- Sekcja Faktory emisji z podtytułem N aktywnych · M zarchiwizowanych oraz zasadą: składnik ma pierwszeństwo przed kategorią, kategoria szukana od najbardziej szczegółowej po korzeń.
- Przyciski Załaduj domyślne faktory, Uzupełnij ślad dań i Dodaj faktor.
- Wyszukiwarka Szukaj po nazwie kategorii lub składnika…, Filtr zakresu (Kategoria składnika / Składnik) i Filtr statusu.
- Tabela faktorów: Cel, Zakres, kg CO2e / kg, Źródło, Wersja, Status, Zaktualizowano, Akcje (Edytuj, Archiwizuj, Przywróć).
- Nota: zmiana faktora nie zmienia opublikowanych dań — snapshot śladu powstaje przy publikacji wersji; użyj Uzupełnij ślad dań, aby przeliczyć wersje bez danych lub z niepełnym pokryciem. Pusty stan Brak faktorów emisji.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleZakres | Po coCzy faktor dotyczy kategorii składnika, czy konkretnego składnika. | Jak wypełnićKategoria składnika obejmuje wszystkie składniki poddrzewa bez własnego faktora; Składnik nadpisuje kategorię dla jednej pozycji katalogu. | Co się stanieFormularz pokazuje wybór kategorii z drzewa (wcięcie = poziom) albo wyszukiwarkę składnika (min. 2 znaki). | WymaganeTak | Uwaga |
| PoleKategoria składnika / Składnik (Cel) | Po coDo czego przypisać faktor. | Jak wypełnićWybierz z drzewa kategorii platformy albo wyszukaj składnik w katalogu globalnym. | Co się stanieCel jest niezmienny po zapisie — zmiana celu to nowy faktor. | WymaganeTak | Uwaga |
| PoleFaktor emisji (kg CO2e / kg) | Po coIle kilogramów CO2e przypada na kilogram surowca. | Jak wypełnićLiczba z przecinkiem albo kropką, do 3 miejsc, na przykład 9,9 dla drobiu; nie może być ujemna. | Co się stanieRestauracje liczą nim ślad porcji przy publikacji wersji dania. | WymaganeTak | Uwaga |
| PoleWersja zestawu | Po coEtykieta wersji danych zapisywana w snapshotach dań. | Jak wypełnićDo 40 znaków, na przykład PN2018-owid-v1. | Co się stanieRestauracja widzi ją w sekcji Ślad węglowy dania jako Wersja faktorów. | WymaganeTak | Uwaga |
| PoleŹródło i Adres źródła (http/https) | Po coSkąd pochodzi liczba — do audytu i raportów ESG. | Jak wypełnićNazwa publikacji (wymagana, do 300 znaków) i opcjonalny adres http(s) (do 500 znaków). | Co się stanieWidoczne w tabeli faktorów; adres jest sprawdzany (tylko http/https). | WymaganeTak | Uwaga |
| PoleNotatki | Po coUwagi dla zespołu, na przykład przyjęte założenia. | Jak wypełnićDo 1000 znaków, opcjonalnie. | Co się stanieWidoczne tylko w panelu platformy. | WymaganeNie | Uwaga |
| PoleUtwórz faktor / Zapisz zmiany | Po coZapisanie faktora. | Jak wypełnićKliknij po wypełnieniu. | Co się stanieFaktor działa przy kolejnych publikacjach dań; istniejące snapshoty się nie zmieniają. Zapis trafia do dziennika audytu (emissionFactor.*). | WymaganeNie | Uwaga |
| PoleZaładuj domyślne faktory | Po coSzybkie zasilenie słownika publicznym zestawem. | Jak wypełnićKliknij i potwierdź: załadować domyślne faktory (Poore & Nemecek 2018 wg Our World in Data)? Dopasowanie po nazwach kategorii i składników; istniejące faktory nie zostaną nadpisane. | Co się staniePowstają faktory dla dopasowanych kategorii i składników; operacja jest powtarzalna. To samo robi seed platformy (POST /api/seed). | WymaganeNie | Uwaga |
| PoleUzupełnij ślad dań | Po coPrzeliczenie dań, które nie miały danych albo miały niepełne pokrycie. | Jak wypełnićKliknij i potwierdź; wersje z pełnym pokryciem pozostają bez zmian. | Co się stanieOpublikowane wersje dań bez śladu albo z niepełnym pokryciem dostają nowy snapshot z aktualnymi faktorami. Audyt dishCarbon.backfill. | WymaganeNie | Uwaga |
| PoleArchiwizuj / Przywróć | Po coWycofanie faktora bez kasowania historii. | Jak wypełnićArchiwizuj z potwierdzeniem; Przywróć w widoku zarchiwizowanych. | Co się stanieZarchiwizowany faktor nie jest używany przy kolejnych publikacjach; istniejące snapshoty pozostają. | WymaganeNie | Uwaga |
Krok po kroku
- Zasil słownik Kliknij Załaduj domyślne faktory (albo uruchom seed). Sprawdź licznik aktywnych faktorów.
- Dopisz brakujące faktory Restauracje zgłaszają składniki bez faktora — dodaj faktor dla kategorii (obejmie poddrzewo) albo dla konkretnego składnika, z wersją i źródłem.
- Przelicz dania Po uzupełnieniu faktorów kliknij Uzupełnij ślad dań, żeby wersje bez danych dostały snapshot; dania z pełnym pokryciem przeliczy dopiero nowa publikacja w restauracji.
Gdy coś nie działa
Pokrycie danymi na platformie jest niskie.
Sprawdź, czy słownik jest zasilony (Załaduj domyślne faktory). Potem przejrzyj składniki bez kategorii w katalogu składników — faktor kategorii nie obejmie składnika bez kategorii. Na końcu Uzupełnij ślad dań.
Zmieniłem faktor, a raport się nie zmienił.
Snapshoty dań są zamrożone. Uzupełnij ślad dań przelicza tylko wersje bez danych albo z niepełnym pokryciem; dania z pełnym pokryciem dostaną nowy ślad dopiero po nowej publikacji wersji w restauracji.
Audyt
Gdzie to znajdę: /admin/auditDla kogo: Odczyt: wszystkie role platformowe. Eksport CSV: właściciel platformy, administrator platformy i audytor.
Dziennik audytu to niemutowalna pamięć systemu. Zapisuje, kto co zrobił, kiedy, na czym i z jakim skutkiem — także nieudane próby. To pierwsze miejsce, do którego zaglądasz, gdy trzeba odtworzyć, co się wydarzyło.
Co widzisz na ekranie
- Nagłówek Dziennik audytu z podtytułem, że to niemutowalny rejestr zdarzeń, tylko do odczytu.
- Filtry: Wykonawca (adres e-mail), Encja (typ lub identyfikator), Akcja z listy, Kategoria z listy, Od dnia i Do dnia, oraz przyciski Filtruj i Wyczyść.
- Tabela z kolumnami: Czas, Wykonawca, Akcja, Encja, Tenant, Wynik, ID korelacji, Szczegóły.
- W kolumnie Wynik plakietka Sukces albo Błąd.
- Rozwinięcie Pokaż diff i metadane z polami ID korelacji, IP, Przeglądarka oraz porównaniem Przed i Po.
- Przyciski Eksport CSV oraz Eksport CSV z diffem.
- Komunikat, gdy eksport został ograniczony do najnowszych wpisów — wtedy trzeba zawęzić daty.
- Kategorie do wyboru: Wartości odżywcze, Alergeny, Reguły zdrowotne, Portfel i budżety, Rozliczenia, Uprawnienia i konta, Impersonacja supportu, Zamówienia, Wydarzenia.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleWykonawca | Po coZawęża wpisy do jednej osoby. | Jak wypełnićWpisz adres e-mail osoby, na przykład fragment adresu. | Co się stanieLista pokazuje tylko wpisy tej osoby, a filtr zapisuje się w adresie strony. | WymaganeNie | Uwaga |
| PoleEncja | Po coZawęża wpisy do jednego rodzaju obiektu albo do jednego konkretnego rekordu. | Jak wypełnićWpisz typ, na przykład user, albo identyfikator rekordu, jeśli go znasz. | Co się stanieLista pokazuje tylko wpisy dotyczące tego obiektu. | WymaganeNie | Uwaga |
| PoleAkcja | Po coZawęża wpisy do jednej konkretnej operacji. | Jak wypełnićWybierz akcję z listy. Lista jest zamknięta i pochodzi z katalogu akcji audytowych. | Co się stanieWidzisz tylko wpisy tej operacji. | WymaganeNie | Uwaga |
| PoleKategoria | Po coZawęża wpisy do całego obszaru tematycznego naraz. | Jak wypełnićWybierz kategorię, na przykład Portfel i budżety albo Impersonacja supportu. | Co się stanieSystem dobiera wszystkie akcje należące do tej kategorii. Wartość spoza listy jest po prostu ignorowana. | WymaganeNie | Uwaga |
| PoleOd dnia | Po coPoczątek okresu. | Jak wypełnićWybierz datę z kalendarza. | Co się stanieLista i eksport obejmują wpisy od tego dnia. | WymaganeNie | Uwaga |
| PoleDo dnia | Po coKoniec okresu. | Jak wypełnićWybierz datę z kalendarza. | Co się stanieLista i eksport obejmują wpisy do tego dnia. | WymaganeNie | Uwaga |
Krok po kroku
- Zawęź zakres Ustaw daty i kategorię. Bez zawężenia lista jest ogromna, a eksport zostanie ucięty.
- Rozwiń szczegóły Kliknij Pokaż diff i metadane, żeby zobaczyć stan przed i po oraz adres IP i przeglądarkę.
- Sklej zdarzenia po ID korelacji Jedna operacja może zostawić kilka wpisów. Ten sam identyfikator korelacji oznacza to samo żądanie.
- Wyeksportuj dowód Kliknij Eksport CSV albo, gdy potrzebna jest pełna historia zmian pól, Eksport CSV z diffem.
Gdy coś nie działa
Eksport jest ucięty.
Zadziałał limit 5000 wierszy. Zawęź zakres dat albo kategorię i zrób kilka mniejszych eksportów.
Nie znajduję wpisu, choć operacja na pewno się wydarzyła.
Sprawdź, czy filtr dat obejmuje właściwy dzień i czy nie zawęziłeś kategorii. Pamiętaj, że wpisy starsze niż 24 miesiące są usuwane przez cykl retencyjny.
Chcę poprawić błędny wpis.
Nie da się i nie o to chodzi. Rejestr jest niemutowalny — to jego jedyna wartość. Wyjaśnienie zapisz tam, gdzie jest na to miejsce, na przykład w notatce rozstrzygnięcia rozbieżności.
Wydarzenia
Gdzie to znajdę: /admin/eventsDla kogo: Role z prawem odczytu wydarzeń: właściciel platformy, administrator platformy, wsparcie i audytor.
To kolejka platformowa dla wydarzeń firmowych — cateringów i spotkań. Pokazuje, co gdzieś utknęło i wymaga ludzkiej reakcji, we wszystkich firmach naraz. Nie ma tu żadnych danych zdrowotnych uczestników, tylko statusy i liczniki.
Co widzisz na ekranie
- Nagłówek Wydarzenia — kolejka platformowa z podtytułem o zaległych wydarzeniach i otwartych wyjątkach.
- Cztery sekcje z licznikami: Oczekuje na potwierdzenie restauracji, Oczekuje na zatwierdzenie, Do finalizacji, Do rozliczenia.
- W każdej sekcji lista wydarzeń: nazwa, nazwa firmy, plakietka statusu wydarzenia i data.
- Sekcja Otwarte wyjątki z rodzajem problemu: Brak zgodnej restauracji, Brak zgodnych dań, Alergeny bez danych (UNKNOWN), Przekroczenie budżetu, Restauracja nie potwierdziła, Spóźniony uczestnik.
- Komunikat Nic do zrobienia w pustych sekcjach.
- Sekcja Oczekuje na zatwierdzenie budżetu — wydarzenia, których budżet czeka na decyzję osób wskazanych w regułach zatwierdzania firmy.
Krok po kroku
- Zacznij od wyjątków Otwarte wyjątki to sprawy, które same się nie rozwiążą. Wyjątek Alergeny bez danych oznacza dziurę w katalogu składników.
- Sprawdź, co czeka na restaurację Sekcja Oczekuje na potwierdzenie restauracji pokazuje wydarzenia bez odpowiedzi. Skontaktuj się z restauracją.
- Popchnij zaległości Sekcje Do finalizacji i Do rozliczenia mówią, gdzie proces stanął po stronie firmy albo platformy.
Gdy coś nie działa
Wyjątek Alergeny bez danych powtarza się przy wielu wydarzeniach.
To znak, że składniki w menu nie mają wypełnionej macierzy alergenów. Wejdź na ekran Jakość danych i uzupełnij deklaracje.
Widzę wydarzenie, które utknęło od dawna.
Sprawdź w dzienniku audytu, na czym stanęło, i skontaktuj się z organizatorem po stronie firmy albo z restauracją.
Powiadomienia
Gdzie to znajdę: /admin/notificationsDla kogo: Role z prawem odczytu powiadomień: właściciel platformy, administrator platformy i audytor.
Ten ekran odpowiada na dwa pytania: jakie wiadomości w ogóle wysyła platforma i czy konkretna wiadomość doszła. Pierwsza część to katalog szablonów, druga to log wysyłek z odpowiedziami od dostawców.
Co widzisz na ekranie
- Nagłówek Powiadomienia z podtytułem o katalogu szablonów i logu wysyłek.
- Sekcja Katalog szablonów z tabelą: Szablon, Kanały, Szablon e-mail, Zdarzenia, Przykładowy tytuł.
- Informacja, że treści szablonów są wersjonowane w kodzie, a podgląd pokazuje przykładowe teksty w bieżącym języku.
- Sekcja Log wysyłek z filtrami Wszystkie kanały i Wszystkie statusy.
- Tabela logu: Data, Kanał, Szablon, Tenant, Odbiorca, Status, Próby, ID providera, Ostatni błąd.
- Kanały: W aplikacji, E-mail, SMS, Push. Statusy: Oczekujące, Wysyłanie, Wysłane, Pominięte, Nieudane.
- Pusty stan logu, gdy nic jeszcze nie poszło w świat.
- Nowe szablony z programu funkcji: recurringMealCreated / recurringMealRejected, deliveryOut / deliveryDelivered, stockLow / stockOut, forecastDigest, mealSurvey, trialReminder, eventBudgetApproval / eventBudgetDecision, teamCartInvited / teamCartClosed, loyaltyReward.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PoleFiltr kanału | Po coZawęża log do jednego kanału dostarczania. | Jak wypełnićWybierz Wszystkie kanały, W aplikacji, E-mail albo SMS. | Co się stanieLog pokazuje tylko wysyłki wybranym kanałem. | WymaganeNie | Uwaga |
| PoleFiltr statusu | Po coZawęża log do jednego stanu dostarczenia. | Jak wypełnićWybierz Wszystkie statusy albo konkretny: Oczekujące, Wysyłanie, Wysłane, Pominięte, Nieudane. | Co się stanieLog pokazuje tylko wysyłki w wybranym stanie. | WymaganeNie | Uwaga |
Krok po kroku
- Sprawdź, czy wiadomość istnieje W katalogu szablonów znajdziesz wszystkie rodzaje wiadomości, między innymi o statusie zamówienia, niskim saldzie portfela, zaproszeniu na wydarzenie, przypomnieniu o ankiecie, rozliczeniu i zaproszeniu do zespołu.
- Znajdź konkretną wysyłkę W logu ustaw kanał i status Nieudane, żeby zobaczyć same problemy. Kolumna Ostatni błąd mówi, co odpowiedział dostawca.
- Sprawdź integrację Jeśli nieudanych wysyłek jest dużo, zajrzyj na ekran Integracje i sprawdź status SMTP albo dostawcy SMS.
Gdy coś nie działa
Wiadomość ma status Pominięte.
Adresat wyłączył ten rodzaj powiadomień albo reguła wysyłki uznała je za zbędne, na przykład jako duplikat.
Log jest pusty.
Nic jeszcze nie zostało wysłane albo nie chodzi zadanie automatyczne wysyłki. Sprawdź ekran Integracje.
Integracje
Gdzie to znajdę: /admin/integrationsDla kogo: Role z prawem zarządzania ustawieniami: właściciel platformy i administrator platformy.
Ten ekran mówi jedno: czy usługi zewnętrzne są skonfigurowane. Nie ma tu żadnych haseł ani kluczy — tylko status i nazwy brakujących zmiennych środowiskowych.
Co widzisz na ekranie
- Nagłówek Integracje z podtytułem, że sekrety są przechowywane wyłącznie po stronie serwera.
- Karta PayU: płatności online, czyli zasilenia portfeli firm. Nota, że domyślny adres to środowisko testowe PayU, a produkcję ustawia zmienna środowiskowa.
- Karta JustSend: SMS transakcyjne; wymaga zarejestrowanego nadawcy.
- Karta SMTP (e-mail): e-maile transakcyjne — weryfikacja kont, resety haseł, powiadomienia.
- Karta Storage S3: obiektowy magazyn na zdjęcia dań i eksporty księgowe, z notą o trybie działania.
- Przy każdej karcie plakietka Skonfigurowana albo Nieskonfigurowana oraz lista Brakujące zmienne środowiskowe.
- Karta Web Push (VAPID): powiadomienia push do przeglądarek użytkowników; wymaga kompletu kluczy VAPID — bez nich kanał jest wyłączony, a przełącznik w panelach ukryty.
Krok po kroku
- Sprawdź plakietki Każda karta ma jasną odpowiedź: skonfigurowana albo nie. Nic tu nie klikasz.
- Przekaż braki zespołowi operacyjnemu Lista brakujących zmiennych to dokładnie to, czego potrzebuje osoba wdrażająca. Wartości ustawia się we wdrożeniu, nie w aplikacji.
- Przeczytaj noty Nota przy magazynie mówi, czy działa magazyn S3, czy zapas lokalny na dysku instancji. Zapas lokalny wystarcza dla jednej instancji, ale nie dla wdrożenia wieloinstancyjnego.
Gdy coś nie działa
PayU jest nieskonfigurowane.
Brakuje którejś ze zmiennych wypisanych na karcie. Do czasu ich ustawienia płatności online nie działają, a zadanie domykające płatności nic nie robi.
SMTP jest nieskonfigurowane, a e-maile nie wychodzą.
To ta sama przyczyna. Bez konfiguracji poczty nie działają ani zaproszenia, ani resety hasła, ani powiadomienia e-mail.
Ustawienia
Gdzie to znajdę: /admin/settingsDla kogo: Role z prawem zarządzania ustawieniami: właściciel platformy i administrator platformy.
To podgląd konfiguracji operacyjnej platformy. Strona niczego nie zapisuje — pokazuje realne wartości z kodu i ze zmiennych środowiskowych oraz odsyła do ekranów, na których faktycznie coś się zmienia.
Co widzisz na ekranie
- Nagłówek Ustawienia platformy z wyraźną notą, że strona niczego nie zapisuje, a zmiana wartości wymaga zmiany konfiguracji wdrożenia.
- Sekcja Powiązane widoki konfiguracji z trzema kaflami: Status integracji, Prowizje platformy, Rozliczenia i faktury.
- Sekcja Polityka retencji danych z tabelą Kategoria danych i Okres przechowywania, wyrażony w dniach.
- Nota, że retencję egzekwuje cykl retencyjny, a dane księgowe nie podlegają kasowaniu — usunięcie konta anonimizuje zapisane kopie.
- Sekcja Limity zapytań z tabelą Powierzchnia i Limit w postaci liczba na liczbę minut, z notą, że licznik działa w pamięci procesu.
- Sekcja Polityka weryfikacji dwuskładnikowej z listą zasad i notą, że wymóg liczony jest z uprawnień roli, a nie z jej nazwy.
- W tabeli limitów nowe powierzchnie z programu funkcji: pozycja kuriera (6/min) i kod odbioru (10/10 min), POS API per IP i per klucz, próbny webhook, SCIM per IP i per token, start SSO, sprawdzanie TXT domeny, import menu (20/10 min), rejestracja firmy (3/10 min), dołączanie do koszyka zespołu, wpisy dziennika odżywczego (60/h).
- W tabeli retencji nowe kategorie: scimEvents (90 dni), nutritionDiary (730) i nutritionDiaryDeleted (30), mealSurveyComments (365 — anonimizacja komentarza, ocena zostaje).
Krok po kroku
- Sprawdź okresy retencji Tabela mówi, jak długo trzymamy każdy rodzaj danych, na przykład surowe zdarzenia webhooków płatności, log powiadomień, rejestr audytu czy dane gościa po wydarzeniu.
- Sprawdź limity Tabela limitów pokazuje, ile prób w oknie czasu dopuszczamy na wrażliwych ekranach, na przykład przy weryfikacji kodu 2FA albo przy starcie impersonacji.
- Przeczytaj politykę 2FA Lista mówi wprost, kto musi mieć włączony kod z aplikacji i co się dzieje, gdy go nie ma.
Gdy coś nie działa
Chcę zmienić okres retencji.
Nie zrobisz tego na tej stronie. Okresy siedzą w konfiguracji wdrożenia — zgłoś zmianę zespołowi technicznemu.
Limit wygląda inaczej, niż się spodziewam.
Część liczników działa w pamięci procesu, więc przy wielu instancjach limit obowiązuje na każdą instancję osobno. Jest to napisane pod tabelą.
Bezpieczeństwo konta i wymóg 2FA
Gdzie to znajdę: /securityDla kogo: Każda osoba z rolą platformową. Ta strona jest wspólna dla wszystkich użytkowników aplikacji.
Panel administratora wymaga weryfikacji dwuskładnikowej. Jeśli jej nie masz, aplikacja odsyła Cię właśnie tutaj z prośbą o konfigurację. Na tej stronie włączasz kod z aplikacji, zapisujesz kody zapasowe, zmieniasz hasło, wylogowujesz urządzenia i pobierasz swoje dane.
Co widzisz na ekranie
- Nagłówek Bezpieczeństwo konta i baner z informacją, że Twoja rola wymaga włączonej weryfikacji dwuskładnikowej.
- Sekcja Zmiana hasła z polami Obecne hasło, Nowe hasło i Powtórz nowe hasło oraz notą, że po zmianie pozostałe sesje zostaną wylogowane.
- Sekcja Weryfikacja dwuskładnikowa (TOTP): Potwierdź hasłem, przycisk Rozpocznij konfigurację 2FA, klucz do przepisania do aplikacji, rozwinięcie z pełnym adresem konfiguracyjnym, pole Kod z aplikacji (6 cyfr) i przycisk Potwierdź i włącz 2FA.
- Kody zapasowe — zapisz je teraz, z ostrzeżeniem, że każdy działa raz i nie zostaną pokazane ponownie, oraz przycisk Wygeneruj nowe kody.
- Sekcja Wyłączenie 2FA z informacją, że wymaga hasła i unieważnia zaufane urządzenia.
- Sekcja Aktywne sesje z listą urządzeń, adresem IP, datą utworzenia i wygaśnięcia oraz przyciskiem Wyloguj.
- Sekcja Twoje dane (RODO) z przyciskami eksportu wszystkich danych i tylko danych zdrowotnych.
- Sekcja Usunięcie konta, opisana jako operacja nieodwracalna.
Pola i przyciski — co znaczą
| Pole | Po co | Jak wypełnić | Co się stanie | Wymagane | Uwaga |
|---|---|---|---|---|---|
| PolePotwierdź hasłem | Po coPotwierdzenie tożsamości przed zmianą ustawień drugiego składnika. | Jak wypełnićWpisz swoje aktualne hasło. | Co się staniePo poprawnym haśle system wygeneruje klucz do wpisania w aplikacji uwierzytelniającej. | WymaganeTak | Uwaga |
| PoleKod z aplikacji (6 cyfr) | Po coDowód, że aplikacja uwierzytelniająca została poprawnie skonfigurowana. | Jak wypełnićPrzepisz sześciocyfrowy kod z aplikacji, na przykład Google Authenticator albo 1Password. | Co się staniePo potwierdzeniu 2FA jest włączone, a system pokaże kody zapasowe. Od tej chwili masz dostęp do panelu administratora. | WymaganeTak | UwagaKody zapasowe zobaczysz tylko raz. Zapisz je w bezpiecznym miejscu — bez telefonu to jedyna droga do konta. |
Krok po kroku
- Włącz 2FA Potwierdź hasłem, przepisz klucz do aplikacji uwierzytelniającej, wpisz kod z aplikacji i potwierdź.
- Zapisz kody zapasowe Skopiuj je do menedżera haseł. Każdy kod działa jeden raz i nie zostaną pokazane ponownie.
- Wróć do panelu Po włączeniu 2FA wejdź jeszcze raz na /admin. Przekierowanie zniknie.
Gdy coś nie działa
Wchodzę na /admin i wracam na stronę Bezpieczeństwo konta.
Nie masz jeszcze włączonej weryfikacji dwuskładnikowej. Skonfiguruj ją na tej stronie, a przekierowanie zniknie.
Zgubiłem telefon.
Użyj kodu zapasowego. Jeśli ich nie masz, poproś inną osobę z rolą właściciela platformy o pomoc — samodzielne odzyskanie nie jest możliwe.
Operacja mówi, że wymaga 2FA, choć mam je włączone.
Sprawdź, czy nie działasz w trybie impersonacji supportu. W nim operacje uprzywilejowane są zablokowane niezależnie od 2FA.
Zadania automatyczne (crony)
Dla kogo: Wiedza wspólna dla całego zespołu platformy; konfiguracją harmonogramu zajmuje się zespół operacyjny.
Część rzeczy dzieje się sama, o ustalonych porach. Warto wiedzieć, co i kiedy chodzi, bo jeśli któreś zadanie stanie, objawi się to na ekranach panelu — na przykład powiadomienia przestaną wychodzić, a stare dane przestaną znikać.
Co widzisz na ekranie
- Wysyłka powiadomień — co 1 do 5 minut. Odblokowuje wiadomości wiszące w stanie wysyłania dłużej niż 15 minut i rozsyła kolejkę do kanałów: w aplikacji, e-mail, SMS i push, a po niej dostawy webhooków POS restauracji (podpis HMAC, 8 prób).
- Odświeżenie budżetów — codziennie, na przykład o 2:10 w nocy. Nalicza nowe budżety pracownikom, wygasza niewykorzystane, zwalnia przeterminowane rezerwacje portfela i tworzy powtarzalne zamówienia.
- Przypomnienia o wydarzeniach — co 15 do 60 minut. Wysyła przypomnienia o ankietach, o wyborze dania i o dniu wydarzenia, przypisuje dania automatycznie i zakłada wyjątek, gdy restauracja nie potwierdziła.
- Domykanie płatności PayU — co 15 do 30 minut. Zamyka płatności wiszące w toku, o których PayU mówi, że są zakończone. Bez skonfigurowanej bramki to zadanie po prostu nic nie robi.
- Rekonsyliacja — raz w miesiącu, na przykład trzeciego dnia. Porównuje zamówienia, księgę, płatności, zwroty, rozliczenia i billing za poprzedni pełny miesiąc i wypełnia kolejkę rozbieżności.
- Eksporty księgowe w tle — co 5 do 15 minut. Przetwarza duże eksporty zlecone na ekranie Raporty.
- Retencja — codziennie, na przykład o 3:30 w nocy. Usuwa dane, którym minął okres przechowywania, anonimizuje dane gości po zakończonym wydarzeniu i czyści profile zdrowotne po okresie dowodowym.
- Wygaszanie dopłat — co 5 minut (copay-expire). Anuluje szkice zamówień z nieopłaconą dopłatą pracownika po 20 minutach i zwalnia rezerwację portfela firmy.
- Prognoza dla kuchni — co 15 do 60 minut (forecast-digest). Około 16:00 czasu każdej restauracji liczy prognozę na jutro i wysyła powiadomienie Prognoza na jutro (raz dziennie; pusta prognoza bez powiadomienia).
- Przypomnienia o okresie próbnym — codziennie, na przykład o 8:00 (trial-reminders). Firmom w trialu wysyła powiadomienie i e-mail 7 dni oraz 1 dzień przed końcem; samo wygaśnięcie nie zależy od crona.
- Zamykanie koszyków zespołów — co 1 do 5 minut (team-cart-close). Po terminie wyborów składa osobne zamówienia uczestników i odzyskuje utknięte zamknięcia.
Krok po kroku
- Poznaj objawy Puste powiadomienia oznaczają stojącą wysyłkę. Eksport wiszący w statusie Oczekuje oznacza stojące zadanie eksportów. Rosnąca baza starych wpisów oznacza wyłączoną retencję.
- Zgłoś zespołowi operacyjnemu Harmonogram jest częścią wdrożenia, a nie ustawieniem w aplikacji. W panelu nie ma przycisku uruchamiającego te zadania — jedynym wyjątkiem jest ręczne uruchomienie rekonsyliacji za bieżący miesiąc.
Gdy coś nie działa
Powiadomienia przestały wychodzić.
Najpierw sprawdź log wysyłek i ekran Integracje. Jeśli wpisy stoją w stanie Oczekujące, to znaczy, że nie chodzi zadanie wysyłki.
Kolejka rozbieżności jest pusta od miesięcy.
Możliwe, że nie chodzi miesięczne zadanie rekonsyliacji. Uruchom ręcznie rekonsyliację za bieżący miesiąc i zgłoś sprawę zespołowi operacyjnemu.
Czego administratorowi nie wolno
Dla kogo: Wszystkie role platformowe, bez wyjątku.
Kilka rzeczy jest zabronionych nie dlatego, że system ich nie umie, tylko dlatego, że dotyczą zdrowia, prywatności i pieniędzy innych ludzi. Ta lista jest krótka celowo — każdy punkt trzeba znać na pamięć.
Co widzisz na ekranie
- Nie stawiaj diagnoz i nie dawaj porad medycznych. Schorzenie w katalogu to zestaw reguł żywieniowych, a nie rozpoznanie. Platforma nie leczy.
- Nie wpisuj diagnoz, chorób ani szczegółów zdrowotnych do notatek, uzasadnień impersonacji, notatek korekt i rozstrzygnięć ani do żadnego innego pola tekstowego — te pola trafiają do dziennika audytu i do eksportów.
- Nie próbuj oglądać profili zdrowotnych użytkowników. W trybie impersonacji dostęp jest zablokowany w pięciu niezależnych miejscach i tak ma zostać.
- Nie używaj impersonacji bez konkretnego zgłoszenia. Uzasadnienie ma wskazywać sprawę, a nie być formalnością, i jest trwałym zapisem audytowym.
- Nie traktuj braku danych o alergenie jako informacji, że składnik jest bezpieczny. Brak danych oznacza wyłącznie brak wiedzy.
- Nie zasilaj portfela bez potwierdzonego wpływu pieniędzy i nie próbuj ręcznym zasileniem łatać rozbieżności rekonsyliacji.
- Nie próbuj zmieniać ani kasować wpisów audytu i nie szukaj obejść niemutowalności rejestru.
- Nie publikuj wersji reguł, której sam jesteś autorem. Separacja obowiązków jest wpisana w system, ale nie kombinuj, żeby ją ominąć.
- Nie wynoś nieanonimizowanych eksportów księgowych poza organizację i nie wysyłaj ich zwykłą pocztą.
- Nie udostępniaj nikomu kodów zapasowych 2FA ani swojej sesji. Konto administratora jest osobiste.
- Nie obchodź wymogu 2FA i nie próbuj wykonywać operacji uprzywilejowanych w trybie impersonacji.
- Nie zmieniaj modelu rozliczeń firmy bez zatwierdzonej decyzji prawno-księgowej i jej numeru.
- Nie próbuj odczytywać kluczy API restauracji, sekretów webhooków ani tokenów SCIM — system przechowuje je wyłącznie jako skróty lub zaszyfrowane i nikt (także platforma) ich nie odczyta; zgubiony sekret = unieważnienie i nowy.
Krok po kroku
- Zanim coś napiszesz w polu tekstowym Zapytaj siebie, czy chciałbyś, żeby ten tekst pojawił się w eksporcie audytu za dwa lata. Jeśli nie — nie pisz tego.
- Zanim wejdziesz w cudze konto Miej numer zgłoszenia i konkretny cel. Zrób tylko to, po co wszedłeś, i zakończ sesję.
- Zanim ruszysz pieniądze Sprawdź wpływ, sprawdź firmę i sprawdź kwotę. Zasilenia nie da się cofnąć jednym kliknięciem.
Gdy coś nie działa
Użytkownik prosi o poradę dietetyczną.
Odeślij go do specjalisty. Możesz wyjaśnić, jak działają reguły w aplikacji, ale nie wolno Ci doradzać w sprawach zdrowia.
Ktoś prosi o wgląd w czyjś profil zdrowotny.
Odmów. Dostęp jest zablokowany technicznie, a próba obejścia zostawia ślad w dzienniku audytu.
Słowniczek — trudne słowa po ludzku
- Panel administratora (/admin)
- Część aplikacji dla zespołu platformy. Widzi dane wszystkich firm i restauracji naraz. Wejście wymaga roli platformowej i włączonego kodu z aplikacji (2FA).
- Tenant
- Jedna firma albo jedna restauracja w systemie. Każdy tenant ma swoje dane, swój zespół i swoje ustawienia. Firmy i restauracje to dwa osobne rodzaje tenantów.
- Rola platformowa
- Etykieta konta w zespole platformy: właściciel platformy, administrator platformy, redaktor wartości odżywczych, recenzent reguł dietetycznych, wsparcie, finanse, audytor. Rola decyduje, które pozycje menu widzisz i co możesz kliknąć.
- Uprawnienie
- Konkretne pozwolenie na jedną czynność, na przykład „czytaj tenanty” albo „zasilaj portfel”. System nigdy nie sprawdza samej nazwy roli — zawsze sprawdza uprawnienie.
- 2FA / TOTP
- Weryfikacja dwuskładnikowa. Po haśle podajesz jeszcze sześciocyfrowy kod z aplikacji w telefonie. Bez tego panel administratora przekierowuje Cię na stronę Bezpieczeństwo konta.
- Impersonacja supportu
- Czasowe wejście w konto użytkownika, żeby zobaczyć to, co on widzi. Trwa 60 minut, jest w całości zapisywana w dzienniku audytu, na górze ekranu świeci banner, a dane zdrowotne są zablokowane.
- Dziennik audytu
- Lista wszystkich ważnych zdarzeń w systemie: kto, co, kiedy, na czym i z jakim skutkiem. Wpisów nie da się zmienić ani skasować z poziomu aplikacji.
- ID korelacji
- Krótki identyfikator sklejający wpisy audytu pochodzące z jednego żądania. Pozwala prześledzić jedną operację, nawet gdy zostawiła kilka śladów.
- Portfel firmy
- Konto z pieniędzmi firmy w systemie. Ma dwie liczby: dostępne i zarezerwowane. Zasilenie zwiększa dostępne, zamówienie najpierw rezerwuje, a potem obciąża.
- Ledger
- Księga wszystkich ruchów portfela: zasilenie, rezerwacja, zwolnienie rezerwacji, obciążenie, zwrot, korekta, wygaśnięcie. Wpisów się nie zmienia, tylko dopisuje nowe.
- Projekcja portfela
- Aktualne saldo policzone i zapisane obok ledgera, żeby nie sumować wszystkiego przy każdym odczycie. Projekcja musi zawsze równać się sumie wpisów ledgera.
- Rekonsyliacja
- Sprawdzanie, czy różne miejsca w systemie mówią to samo: zamówienia, ledger, płatności PayU, zwroty, rozliczenia i billing. Rekonsyliacja tylko raportuje, nigdy sama nie naprawia danych.
- Idempotencja
- Zabezpieczenie przed podwójnym zapisem. Formularz wysyła ukryty klucz; jeśli klikniesz dwa razy, drugi zapis zostaje odrzucony jako duplikat, a Ty widzisz komunikat, że operacja już była.
- Miękkie usunięcie (soft delete)
- Rekord znika z list, ale zostaje w bazie ze znacznikiem daty usunięcia. Można go przywrócić. Nic nie jest kasowane na stałe.
- Slug
- Krótka nazwa z małych liter, cyfr i myślników, używana w adresach. Puste pole oznacza, że system wygeneruje slug z nazwy.
- Alergen kanoniczny UE
- Jeden z 14 alergenów z załącznika II rozporządzenia (UE) nr 1169/2011. Ich lista i kody są stałe — można zmienić tylko nazwy wyświetlane.
- UNKNOWN (brak danych)
- Stan „nie wiemy”. To nie jest to samo co „nie zawiera”. Przy ciężkiej alergii brak danych może zablokować wybór dania — i tak ma być.
- Kontakt krzyżowy
- Ryzyko, że alergen trafi do potrawy z zewnątrz: wspólny olej, wspólna frytownica, wspólne powierzchnie, procedury kuchenne albo inne źródło.
- Poziom zaufania (confidence)
- Jak pewna jest wartość odżywcza: zweryfikowane źródło, deklaracja dostawcy, szacunek restauracji, wyliczone, ręczne niezweryfikowane albo nieznane.
- Pochodzenie (provenance)
- Skąd wzięła się wartość: z importu, z wpisu ręcznego albo z laboratorium. Zapisujemy je razem z wersją źródła.
- Dry run
- Próba importu bez zapisu. System czyta plik, pokazuje, co by zrobił, i wypisuje błędy. Dopiero zatwierdzenie zapisuje cokolwiek do katalogu.
- Batch importu
- Jedno wgranie pliku XLSX razem z mapowaniem kolumn, raportem próby, statusem i historią. Batch można zatwierdzić, a potem wycofać.
- Zestaw reguł (rule set)
- Wszystkie reguły żywieniowe dla jednego schorzenia w jednej wersji. Zmiana reguł to zawsze nowa wersja, a nie poprawka starej.
- Skutek reguły (severity)
- Co reguła robi z daniem: blokuje, mocno ostrzega, ostrzega, preferuje albo tylko informuje.
- Schorzenie w katalogu
- Wpis słownikowy z regułami żywieniowymi. To nie jest diagnoza i nie jest porada medyczna — to zestaw reguł, który użytkownik może sam u siebie zadeklarować.
- North Star
- Sześć głównych wskaźników zdrowia platformy, po których poznajemy, czy produkt robi to, po co powstał.
- GMV
- Suma wartości brutto zrealizowanych zamówień w danym okresie. Na pulpicie liczona za ostatnie 30 dni.
- Prowizja i jej wersja
- Umowa o prowizji z datą wejścia w życie. Rozliczenie stosuje wersję obowiązującą w dniu zamówienia, więc historia nigdy nie przelicza się od nowa.
- Rozliczenie (settlement)
- Dokument za restaurację i miesiąc: zamówienia zrealizowane, prowizja, opłaty eventowe, zwroty, korekty i kwota do wypłaty.
- Cron
- Zadanie, które uruchamia się samo o ustalonej porze, na przykład wysyłka powiadomień albo nocne czyszczenie starych danych.
- Retencja
- Zasada mówiąca, jak długo trzymamy dany rodzaj danych. Po tym czasie cykl retencyjny je usuwa albo anonimizuje. Dane księgowe nie są kasowane.
- Limit zapytań (rate limit)
- Ograniczenie liczby prób w oknie czasu na wrażliwych ekranach, na przykład przy starcie impersonacji. Chroni przed nadużyciem i zgadywaniem.
- Snapshot
- Zamrożona kopia danych zapisana przy zamówieniu albo recepturze. Późniejsza zmiana w katalogu nie zmienia tego, co już zostało zamówione.
- Waluta platformy / waluta tenanta
- Waluta platformy (APP_CURRENCY, domyślnie PLN) to waluta KPI i GMV na pulpicie oraz limitów kwotowych reguł globalnych. Każda firma i restauracja ma własną walutę ustawianą przy zakładaniu (PLN/EUR/CZK/GBP/USD), zmienną tylko do pierwszego zamówienia, zasilenia albo rozliczenia. Nie ma przeliczeń kursowych.
- Strefa aplikacji (APP_TIMEZONE)
- Strefa czasowa, w której chodzą crony i liczą się klucze okresów rozliczeń, billingu i rekonsyliacji — niezależnie od stref czasowych tenantów. Domyślnie Europe/Warsaw.
- Web Push (VAPID)
- Kanał powiadomień push do przeglądarek użytkowników. Wymaga kompletu kluczy VAPID w zmiennych środowiskowych — bez nich kanał jest wyłączony, a przełącznik w panelach ukryty. Status widać na ekranie Integracje.
- SSO / SCIM (po stronie platformy)
- Dostawców logowania firmowego (Google Workspace, Microsoft Entra ID) włącza platforma zmiennymi środowiskowymi — komplet albo nic. SCIM to interfejs, którym system tożsamości firmy zarządza jej pracownikami; tokeny tworzy firma u siebie.
- Okres próbny (trial) firmy
- Firma z samoobsługowej rejestracji na /start: 30 dni, limit 25 osób, bez faktur zbiorczych; po dacie końca panel tylko do odczytu. Aktywację i przedłużenie (1–90 dni) wykonuje administrator platformy w szczegółach firmy.
- Dopłata pracownika (order_copay)
- Płatność PayU pracownika za część zamówienia ponad udział firmy. Nie ma wpisu w księdze portfela — to nie jest rozbieżność. Szkice nieopłacone w 20 minut anuluje cron copay-expire.
- Faktor emisji
- Liczba kg CO2e na kilogram surowca dla kategorii składnika albo konkretnego składnika. Restauracje liczą nim ślad węglowy porcji przy publikacji wersji dania; słownik utrzymuje platforma na ekranie ESG i emisje.
- Reguła globalna lojalności
- Reguła programu lojalnościowego obowiązująca w każdej restauracji na platformie; rabat z kuponu zawsze obciąża restaurację, w której użyto kuponu.
- Partia dostawy / rola Kurier
- Dostawa zbiorcza zamówień jednego biura firmy w jednym oknie; kurier potwierdza doręczenia 6-znakowym kodem odbioru albo kodem recepcji. Kurier to rola tenantowa restauracji z dostępem wyłącznie do dostaw i powiadomień.
- Klucz API / webhook POS
- Integracja restauracji z systemem kasowym: klucz API (Bearer) do pobierania zamówień i menu oraz webhook (POST JSON z podpisem HMAC) o zmianach zamówień. Sekrety są przechowywane wyłącznie jako skróty; rotacja sekretu platformy unieważnia sekrety webhooków.
- Ankieta po posiłku
- Anonimowa ocena 1–5 z tagami i komentarzem, wypełniana przez pracownika do 24 godzin po doręczeniu. Komentarze są anonimizowane po 365 dniach; platforma widzi tylko agregaty.
Najczęstsze pytania
Czy naprawdę muszę włączyć weryfikację dwuskładnikową?
Tak. Strona Ustawienia platformy mówi to wprost: każda rola platformowa wymaga włączonego kodu z aplikacji. Bez niego aplikacja przekierowuje Cię na stronę Bezpieczeństwo konta z prośbą o konfigurację, a operacje uprzywilejowane — zasilenie portfela, publikacja rozliczenia, tworzenie reguł — są dodatkowo blokowane w momencie wywołania.
Dlaczego nie widzę jakiejś pozycji w menu?
Menu ukrywa pozycje, do których Twoja rola nie ma uprawnień. System nigdy nie sprawdza samej nazwy roli, tylko konkretne uprawnienie. Jeśli uważasz, że powinieneś coś widzieć, poproś administratora platformy o zmianę ról na karcie użytkownika.
Czy mogę zmienić własne role albo zbanować własne konto?
Nie. To zabezpieczenie przed odcięciem sobie dostępu. Poproś inną osobę z rolą właściciela albo administratora platformy.
Co widzę, a czego nie widzę podczas impersonacji supportu?
Widzisz aplikację tak, jak widzi ją użytkownik — jego zamówienia, koszyk, wydarzenia. Nie widzisz jego profilu zdrowotnego ani wyników dopasowania policzonych na jego deklaracjach; silnik zachowuje się tak, jakby ta osoba nie udzieliła zgody. Eksporty danych i usunięcie konta są zablokowane, podobnie jak wszystkie operacje uprzywilejowane. Sesja trwa 60 minut, świeci banner, a wszystko trafia do audytu.
Czy administrator platformy widzi diagnozy użytkowników?
Nie. Platforma nie stawia diagnoz i nie pokazuje ich zespołowi. Panel operuje na licznikach i statusach. Nawet w dzienniku audytu zdarzenia dotyczące zgód zdrowotnych zawierają tylko liczby, a nie kody schorzeń.
Czy brak danych o alergenie oznacza, że danie jest bezpieczne?
Nie. Brak danych to informacja, że nie wiemy. Przy ciężkiej alergii taki stan może zablokować wybór dania i tak ma być. Jedynym rozwiązaniem jest uzupełnienie macierzy alergenów przy składniku.
Czy mogę poprawić albo usunąć wpis w dzienniku audytu?
Nie. Rejestr jest niemutowalny na poziomie aplikacji — nie ma żadnej ścieżki edycji ani kasowania. Jedynym wyjątkiem jest cykl retencyjny, który po 24 miesiącach usuwa najstarsze wpisy.
Co zrobić, gdy rekonsyliacja portfeli pokazuje ROZBIEŻNOŚĆ?
Zgłoś to natychmiast zespołowi technicznemu i nie próbuj tego naprawiać ręcznym zasileniem. Uruchom też rekonsyliację w sekcji Rozliczenia, żeby zobaczyć, czy problem dotyczy tylko portfela, czy także zamówień, płatności albo rozliczeń.
Czy zatwierdzony import wartości odżywczych można cofnąć?
Tak. W szczegółach batcha kliknij Wycofaj import. Wartości utworzone tym batchem zostaną usunięte, a nadpisane wrócą do stanu sprzed importu. Składniki utworzone przy okazji importu usuwa się osobno, na liście składników.
Kto może opublikować regułę zdrowotną?
Tylko osoba z uprawnieniem do publikacji, czyli właściciel platformy, administrator platformy albo recenzent reguł dietetycznych. Autor wersji nie może recenzować ani publikować własnej pracy — to twarda separacja obowiązków. Publikacja bez zakończonej recenzji jest odrzucana.
Czy publikacja rozliczenia coś wysyła?
Tak. Restauracja dostaje e-mail z rozliczeniem, a dokument zostaje zamrożony. Od tej chwili nie da się dodać korekty — poprawkę trzeba uwzględnić w kolejnym okresie.
Co się stanie, gdy dwa razy kliknę Zasil portfel?
Nic złego. Formularz wysyła ukryty klucz idempotencji, więc drugi zapis zostanie rozpoznany jako duplikat. Zobaczysz komunikat, że operacja była już zapisana, a pieniądze zostaną dopisane tylko raz.
Czy usunięcie tenanta kasuje jego dane?
Nie. To miękkie usunięcie: tenant znika z list, ale wszystkie dane zostają i można go przywrócić przełącznikiem Pokaż usunięte. Dane księgowe nie podlegają kasowaniu w ogóle.
Skąd biorą się wartości na ekranie Ustawienia?
Z kodu i ze zmiennych środowiskowych wdrożenia, nie z formularzy. Ta strona niczego nie zapisuje. Zmiana okresu retencji albo limitu wymaga zmiany konfiguracji wdrożenia.
Dlaczego eksport audytu jest ucięty?
Eksport ma limit 5000 najnowszych wpisów, żeby nie zabijać bazy jednym kliknięciem. Zawęź daty albo kategorię i zrób kilka mniejszych eksportów.
Czy symulator używa prawdziwych danych ludzi?
Nie. Profile w symulatorze są sztuczne i zaszyte w kodzie. Symulator korzysta z tego samego silnika co produkcja, ale nigdy nie czyta prawdziwego profilu zdrowotnego.
Jak włączyć powiadomienia push na platformie?
Ustaw komplet zmiennych WEB_PUSH_VAPID_* (klucz publiczny, prywatny i kontakt) w konfiguracji wdrożenia — generacja i rotacja kluczy jest opisana w docs/PWA.md. Ekran Integracje pokazuje kartę Web Push (VAPID) ze statusem; bez kompletu kanał jest wyłączony, a przełącznik w panelach ukryty. Wysyłki i błędy (push_retryable, push_permanent, push_subscriptions_gone, no_push_subscription) widać w logu Powiadomień z filtrem kanału Push.
Jak włączyć logowanie firmowe (SSO) i SCIM?
Dostawców włącza platforma zmiennymi GOOGLE_CLIENT_ID/SECRET i MICROSOFT_CLIENT_ID/SECRET (opcjonalnie MICROSOFT_TENANT_ID) — komplet albo nic; Redirect URI firmy widzą u siebie. Bez zmiennych na stronach logowania nie ma przycisków. SCIM nie wymaga nic po stronie platformy — tokeny tworzy firma; przy podejrzeniu wycieku tokenu firma unieważnia go w swoim panelu (IdP dostaje 401). Szczegóły: docs/SSO_SCIM.md.
Firma z okresu próbnego prosi o aktywację.
Wejdź w szczegóły firmy (lista Firmy → filtr statusu Okres próbny) → sekcja Okres próbny → Aktywuj firmę. Status zmienia się na Aktywny, plan na Standard, limit 25 osób i blokada faktur zbiorczych znikają, panel firmy wraca do zapisu. Możesz też Przedłuż o N dni (1–90), co resetuje przypomnienia.
W płatnościach PayU widzę dopłaty pracowników bez wpisu w księdze. To rozbieżność?
Nie. Dopłata własna pracownika (rodzaj płatności: dopłata) nie przechodzi przez portfel firmy, więc nie ma wpisu w księdze. Filtr Rodzaj płatności rozdziela dopłaty od zasileń. Rekonsyliacja rozliczeń ma osobną oś Dopłata PayU ≠ zamówienie; zwrot dopłaty robi refundPayment bez księgi. Bez kluczy PayU dopłata jest w ogóle niedostępna.
Jakie nowe zadania automatyczne trzeba skonfigurować po programie funkcji?
copay-expire (co 5 min — wygaszanie nieopłaconych dopłat), forecast-digest (co 15–60 min — prognoza dla restauracji o 16:xx czasu lokalu), trial-reminders (codziennie — przypomnienia 7 i 1 dzień przed końcem okresu próbnego), team-cart-close (co 1–5 min — zamykanie koszyków zespołów). Harmonogram i przykłady wywołań: docs/OPERATIONS.md §4.
Zmieniłem strefę czasową tenanta — czy trzeba coś migrować?
Nie. Strefa tenanta zmienia liczenie jego okien, cutoffów, okresów budżetów i raportów od chwili zapisu; klucze okresów rozliczeń, billingu i rekonsyliacji zawsze liczą się w strefie aplikacji (APP_TIMEZONE) i nie są migrowane. Godziny cronów też są w strefie aplikacji.