Najczęściej zadawane pytania
Ogólne
Czym jest QuoteNode?
QuoteNode to platforma CRM i ofertowania self-hosted dla zespołów sprzedaży B2B i B2C. Zapewnia zarządzanie klientami, profesjonalne tworzenie ofert, generowanie markowych PDF, śledzone linki publiczne i analitykę sprzedaży — wszystko na Twojej własnej infrastrukturze.
Dla kogo jest QuoteNode?
QuoteNode jest zaprojektowany dla freelancerów, konsultantów, małych agencji i średnich firm, które tworzą i wysyłają oferty klientom. Jest szczególnie odpowiedni dla organizacji wymagających własności danych, markowych dokumentów i ustrukturyzowanego procesu sprzedaży.
Czym QuoteNode różni się od platform CRM w modelu SaaS?
QuoteNode jest self-hosted i single-tenant. Twoje dane zostają na Twoim serwerze. Brak współdzielonej bazy danych, blokady dostawcy, miesięcznych opłat subskrypcyjnych i zależności od usług zewnętrznych. Kontrolujesz infrastrukturę, kopie zapasowe i granicę dostępu.
Wdrożenie i infrastruktura
Co potrzebuję, żeby uruchomić QuoteNode?
Serwer z Docker Engine 24.0+, 2 GB RAM (zalecane 4 GB) i SSD z minimum 10 GB wolnego miejsca. QuoteNode dostarczany jest jako kontenery Docker i wdrażany za pomocą Docker Compose.
Czy mogę uruchomić QuoteNode na laptopie do testów?
Tak. Konfiguracja Docker Compose działa na każdej maszynie z zainstalowanym Dockerem — Linux, macOS lub Windows (WSL2). W ten sposób większość użytkowników ewaluuje QuoteNode przed wdrożeniem produkcyjnym.
Czy QuoteNode wymaga dostępu do internetu?
Nie. QuoteNode działa w pełni offline. Bez telemetrii, bez callbacków analitycznych, bez zewnętrznego serwera licencji. Jedyne połączenia wychodzące to te, które sam skonfigurujesz (SMTP do wysyłki e-mail i opcjonalnie źródła kursów walut).
Czy mogę wdrożyć QuoteNode za firmowym firewallem?
Tak. QuoteNode jest zaprojektowany dla środowisk air-gapped i sieci z ograniczeniami. Nie ma zewnętrznych zależności runtime.
Jakiej bazy danych używa QuoteNode?
PostgreSQL 16 lub nowszy. To jedyny obsługiwany silnik bazy danych. Instancja PostgreSQL działa jako kontener obok aplikacji.
Licencjonowanie i cennik
Czy QuoteNode jest naprawdę darmowy?
Edycja Freelancer jest darmowa na zawsze, bez karty kredytowej. Zawiera wszystkie kluczowe funkcje — tworzenie ofert, generowanie PDF, linki publiczne, zarządzanie klientami i analitykę — dla maksymalnie 3 użytkowników. Jedynym ograniczeniem jest plakietka “Powered by QuoteNode” na publicznych stronach ofert i w PDF.
Co zawiera płatna licencja?
Płatne edycje (Pro, Business, Enterprise) dodają wyższe limity użytkowników, white-label (usunięcie plakietki “Powered by”), zaawansowane szablony, priorytetowe wsparcie i gwarancje SLA. Szczegóły na stronie Cennik.
Jak działa licencjonowanie od strony technicznej?
QuoteNode używa plików licencyjnych z podpisem Ed25519, weryfikowanych całkowicie offline. Żaden zewnętrzny serwer nie jest kontaktowany. Płatne licencje są roczne — po wygaśnięciu licencji wszystkie funkcje działają normalnie. Jedyną zmianą jest plakietka “Powered by QuoteNode” na powierzchniach widocznych dla klientów i dyskretne przypomnienie w interfejsie. Bez blokad, bez trybu tylko do odczytu, bez wyłączonych funkcji.
Co się stanie, jeśli nie odnowię licencji?
Nic się nie psuje. Twoja instancja działa dalej z pełną funkcjonalnością. Opłata roczna wspiera dalszy rozwój — nie jest wyłącznikiem. Gdy będziesz gotowy, odnów licencję, aby usunąć plakietkę. Jeśli w danym roku musisz zaoszczędzić, to jest w porządku.
Czy mogę przejść z Freelancer na Pro później?
Tak. Upgrade jest możliwy w dowolnym momencie przez zastosowanie nowego pliku licencyjnego. Nie wymaga migracji danych ani reinstalacji.
Oferty i workflow
Ile czasu zajmuje stworzenie oferty?
Większość ofert można stworzyć w 2-5 minut. Wybierz klienta, dodaj produkty z katalogu (z automatycznymi regułami cenowymi), skonfiguruj szablon i wyślij. System automatycznie obsługuje obliczenia VAT, konwersję walut i generowanie PDF.
Czy moi klienci mogą przeglądać oferty bez zakładania konta?
Tak. Każda oferta może być udostępniona przez link publiczny. Klient widzi w pełni oznakowaną, responsywną stronę i może zaakceptować, odpowiedzieć lub odrzucić — bez rejestracji.
Czy oferty są śledzone?
Tak. System śledzi, kiedy klient otwiera link publiczny, pobiera PDF, odpowiada, akceptuje lub odrzuca. Na stronie szczegółów oferty widzisz liczbę otwarć, znaczniki czasu i kraj klienta (GeoIP).
Czy mogę tworzyć oferty w wielu walutach?
Tak. QuoteNode obsługuje wiele walut z automatycznym przeliczeniem kursowym. Możesz ustawić inną walutę per oferta. Raporty lejka przeliczają wszystkie wartości na walutę bazową.
Co się dzieje, gdy oferta wygaśnie?
Status oferty zmienia się na “Wygasła”, a link publiczny wyświetla informację o wygaśnięciu. Jednym kliknięciem możesz sklonować ofertę i stworzyć nową wersję z nowym okresem ważności.
Bezpieczeństwo
Jak chronione są dane klienta na linkach publicznych?
Linki publiczne używają 256-bitowych kryptograficznie losowych tokenów. W bazie przechowywany jest tylko skrót SHA-256. Linki mogą być chronione hasłem, limitowane pod względem zapytań i unieważniane w dowolnym momencie. Wykrywanie botów zapobiega automatycznym nadużyciom.
Czy QuoteNode ma dziennik audytu?
Tak. Każda mutacja w systemie jest rejestrowana w niemodyfikowalnym dzienniku audytu: kto zmienił co, kiedy i z jakiego adresu IP. Dziennik jest niemodyfikowalny — wpisów nie można edytować ani usuwać, nawet przez administratorów.
Czy QuoteNode obsługuje uwierzytelnianie dwuskładnikowe?
Tak. Uwierzytelnianie dwuskładnikowe oparte na TOTP jest obsługiwane dla wszystkich użytkowników i może być wymuszone dla administratorów.
Dane i kopie zapasowe
Jak obsługiwane są kopie zapasowe?
QuoteNode ma wbudowany system kopii zapasowych. Dedykowany worker uruchamia zaplanowane zadanie (domyślnie: codziennie o 2:00) tworzące pełny dump bazy danych i archiwizujące wszystkie przesłane pliki oraz wygenerowane PDF-y. Kopie zapisywane są lokalnie i opcjonalnie wysyłane do zdalnego storage przez rclone.
Czy mogę pobrać kopię zapasową na swój komputer?
Tak. Administratorzy mogą pobierać archiwa kopii zapasowych bezpośrednio z panelu administracyjnego (Ustawienia > Kopia zapasowa). Kliknij przycisk pobierania przy dowolnym udanym wpisie kopii zapasowej.
Czy mogę szyfrować kopie zapasowe?
Tak. Ustaw zmienną środowiskową BACKUP_GPG_RECIPIENT na ID klucza GPG. Zarówno dump bazy, jak i archiwum plików zostaną zaszyfrowane przed zapisem. Jest to zalecane przy przechowywaniu kopii na chmurze firm trzecich.
Jak przywrócić dane z kopii zapasowej?
Użyj skryptu restore.sh dołączonego do repozytorium. Dla istniejącej instalacji uruchom ./restore.sh plik-backup.tar.gz. Dla nowego serwera (odzyskiwanie po awarii) uruchom ./restore.sh --fresh-install plik-backup.tar.gz. Skrypt obsługuje przywracanie bazy danych, odzyskiwanie plików i uruchomienie aplikacji automatycznie. Pełny przewodnik w wiki Backup & Recovery.
Co się stanie, jeśli zapomnę o kopiach zapasowych?
Jeśli automatyczne kopie zapasowe są włączone (zalecane), system tworzy kopię codziennie bez żadnej akcji. Panel administracyjny wyświetla ostrzeżenie, jeśli żadna udana kopia nie została wykonana w ciągu ostatnich 48 godzin. W każdej chwili możesz też wyzwolić ręczną kopię zapasową z panelu.
Jak długo przechowywane są kopie zapasowe?
Domyślnie 7 najnowszych udanych kopii jest przechowywanych lokalnie. Starsze pliki są usuwane automatycznie po każdej udanej kopii. Kopie zdalne (wysłane przez rclone) podlegają polityce cyklu życia Twojego dostawcy storage.
Kwestie techniczne
Jaki stack technologiczny wykorzystuje QuoteNode?
Backend: Java 25 ze Spring Boot 4. Frontend: Vue 3 z Vite, PrimeVue 4 i Tailwind CSS 4. Baza danych: PostgreSQL 16. Generowanie PDF: Gotenberg (oparty na Chromium). Reverse proxy: Caddy 2 z automatycznym HTTPS.
Jak obsługiwane są migracje bazy danych?
QuoteNode używa Flyway do zarządzania schematem. Migracje uruchamiają się automatycznie przy starcie backendu. Istniejące migracje nie są nigdy modyfikowane — zmiany schematu są zawsze addytywne.
Czy mogę dostosować szablon PDF oferty?
Tak. System szablonów obsługuje konfigurowalne kolumny (SKU, zdjęcia, opisy, rabaty), wiele trybów wyświetlania cen (netto/brutto/pełny rozkład), zdjęcia produktów, niestandardowe warunki handlowe i branding Twojej firmy.
Jak działa generowanie PDF?
Backend renderuje dokument HTML ze snapshotu oferty przy użyciu szablonów Thymeleaf, a następnie wysyła go do Gotenberga (kontener oparty na Chromium) w celu konwersji do PDF gotowego do druku. Małe oferty generują się synchronicznie (poniżej 3 sekund); duże oferty używają asynchronicznego przetwarzania w tle z powiadomieniem o gotowości.