Skip to content
Q
QuoteNode

Frequently Asked Questions

General

What is QuoteNode?

QuoteNode is a self-hosted CRM and quoting platform for B2B and B2C sales teams. It provides customer management, product and price-list workflows, professional offer creation, branded PDF generation, trackable public links, workflow boards, customer assets, and sales analytics — all running on your own infrastructure.

Who is QuoteNode for?

QuoteNode is designed for freelancers, consultants, small agencies, and mid-size companies that create and send offers to clients. It is particularly suited for organizations that need data ownership, branded client-facing documents, structured sales work, and self-hosted operations.

How is QuoteNode different from SaaS CRM platforms?

QuoteNode is self-hosted and single-tenant. Your data stays on your server. There is no shared database, no SaaS tenant mixing, no usage metering, and no dependency on external runtime services. You control the infrastructure, backups, DNS, TLS, and access perimeter.

Deployment & Infrastructure

What do I need to run QuoteNode?

A machine with Docker and Docker Compose v2, 2 GB RAM minimum (4 GB recommended), and SSD storage. QuoteNode ships as Docker containers and can be deployed locally, in a LAN, on a public Ubuntu server, through Coolify, or through advanced Docker UIs such as Portainer.

See Installation Options.

Can I run QuoteNode on my laptop for testing?

Yes. The Docker Compose setup works on any machine with Docker installed, including Linux, macOS, and Windows with Docker Desktop/WSL2. This is useful for evaluation, demo data, and training.

Laptop installs usually use localhost. Public offer links generated from localhost work only on the same machine, so they are not suitable for external client sharing.

Can I run QuoteNode for an office team without exposing it to the internet?

Yes. A LAN deployment can use a server IP address, local DNS name, or VPN-only hostname. Public offer links will work only for users who can reach that internal address. This is a good model for internal trials and closed-network sales teams.

See Windows LAN install and Linux LAN install.

What is the easiest public deployment path?

For public beta use, use a real domain, HTTPS, SMTP, and a reverse proxy or managed deployment platform. The most operator-friendly path is usually Coolify with the Docker Compose deployment file.

See Coolify deployment and Ubuntu WAN server.

Does QuoteNode require internet access?

No. QuoteNode can operate in restricted networks. No telemetry, no analytics callbacks, and no external license server are required. Outbound access is needed only for services you configure, such as SMTP, remote backup storage, FX sources, GeoIP downloads, or public release-manifest checks.

What database does QuoteNode use?

PostgreSQL is the supported database engine. In the standard Docker Compose setup, PostgreSQL runs as a container alongside the application.

Licensing & Pricing

Is QuoteNode really free?

The Free Edition is free forever with no credit card required. It includes the core CRM, offer workflow, PDF generation, public links, reporting, SMTP integration, and security controls for up to 3 licensed user accounts. The limitation is the “Powered by QuoteNode” badge on public offer pages and PDFs.

What does the Pro license include?

Pro raises the licensed user-account limit and removes the “Powered by QuoteNode” badge while the paid license is active or in grace. The public paid product is Pro only: 20 EUR/month for up to 3 licensed user accounts, 15 EUR/month for each extra licensed account, or 200 EUR/year base plus 150 EUR/year per extra account.

Can I buy a paid license?

Paid checkout is not live yet. Start with the Free edition for real evaluation and contact [email protected] if you need an early Pro license. When self-service checkout is enabled, Paddle will handle billing, invoices, renewals, cancellation, and seat top-ups.

How does licensing work technically?

QuoteNode uses Ed25519-signed license files verified entirely offline. No external license server is contacted at runtime. Paid licenses do not use payment-provider license keys inside the installed app.

What happens if I do not renew my license?

Normal app functionality keeps working. After the grace period, the “Powered by QuoteNode” badge returns on client-facing surfaces and a small renewal reminder remains in the UI. No lockouts, no read-only mode, and no data deletion.

Can I upgrade from Free to Pro later?

Yes. Apply a new signed license file in the admin license screen. No data migration or reinstallation is required.

Offers & Workflow

How long does it take to create an offer?

Most offers can be created in a few minutes once customers, products, and templates are configured. Select a customer or open-audience flow, add products from the catalog, choose commercial settings, review totals, and prepare the public link or PDF.

Can my clients view offers without creating an account?

Yes. Every sent offer can be shared via a public link. The client sees a branded, responsive page and can accept, reply, or decline without registration.

The link must point to an address the client can reach. Links generated with localhost work only on the same machine. LAN links work only inside that LAN or VPN. For external clients, deploy QuoteNode behind a public domain with HTTPS and make sure CORS_ALLOWED_ORIGINS, frontend URL settings, DNS, and firewall rules match the real public entrypoint.

See Installation Troubleshooting.

No. SMTP is required only for email delivery from the application. You can still generate a public link or PDF and share it manually through another channel. Email links sent by the application require correct SMTP configuration.

Are offers tracked?

Yes. The system tracks public-link opens, downloads, replies, acceptances, and rejections. Depending on configuration, it can also show country-level activity through GeoIP and notify the owner about return visits.

Can I use QuoteNode for lead generation?

Yes. QuoteNode supports open-audience offers: public links not tied to a specific customer at draft time. Visitors can submit a lightweight inquiry form with contact details, creating a lead notification for the salesperson.

Can I create offers in multiple currencies?

Yes. QuoteNode supports multiple currencies and exchange-rate conversion. Pipeline reports can convert values to the workspace base currency for unified reporting.

What happens when an offer expires?

The offer status changes to Expired and the public link shows an expiration notice. You can clone or renew an offer to prepare a new version with a fresh validity period.

Does QuoteNode include a deal pipeline?

Yes. The deal pipeline is a Kanban-style workflow for opportunities, with configurable stages and links to customers and documents. It is controlled by tenant operational settings.

Does QuoteNode include a task board?

Yes. The task board helps users manage follow-ups and deal-linked work in Kanban columns. It is controlled by tenant operational settings.

What are customer assets?

Customer assets are records for equipment, devices, subscriptions, installed products, or other customer-owned items that matter to sales and service work. They can store dates, status, service events, attachments, and reminders.

Proforma Invoices

Does QuoteNode issue proforma invoices?

QuoteNode includes an experimental proforma invoice module during beta. It can generate a proforma document from an accepted offer snapshot, with payment terms, payment reference, bank details, PDF download, and status tracking.

Is a QuoteNode proforma invoice a tax invoice?

No. The proforma module is an operational payment-request workflow. It is not accounting software and does not replace tax, VAT, fiscal, or e-invoicing systems. Operators are responsible for verifying local legal and accounting requirements before using generated proforma documents with customers.

Should I enable proforma invoices in production?

Use the module cautiously during beta. Treat it as experimental and verify the generated layout, wording, numbering, tax implications, and accounting handoff before sending it to customers.

Security

Public links use cryptographically random tokens. Only the SHA-256 hash is stored in the database. Links can be password/PIN protected, rate-limited, email-verified for named recipients, and revoked at any time. Bot detection helps prevent automated abuse.

Does QuoteNode have an audit trail?

Yes. Every mutation in the system is recorded in an append-only audit log: who changed what, when, and from which IP address. The log is immutable and cannot be edited by administrators.

Does QuoteNode support two-factor authentication?

Yes. TOTP-based two-factor authentication is supported for users and can be enforced for administrators.

Data & Backups

How are backups handled?

QuoteNode includes a backup worker that can run scheduled database and file backups. Backups are stored locally and can optionally be uploaded to remote storage via rclone.

What must I protect in .env?

Protect all secrets, especially DB_PASSWORD, DB_ENCRYPTION_KEY, TIMING_TOKEN_SECRET, and PUBLIC_LINK_PASSWORD_SESSION_SECRET. If application-level encryption is enabled, losing DB_ENCRYPTION_KEY can make encrypted data unrecoverable.

Can I download a backup to my computer?

Yes. Administrators can download backup archives from the admin backup area when backup downloads are enabled.

Can I encrypt my backups?

Yes. Backups can be encrypted before storage when GPG settings are configured. This is recommended when storing archives outside the server.

How do I restore from a backup?

Use the restore procedure documented in Backup & Recovery. Always test restores before trusting a backup policy.

Technical

What technology stack does QuoteNode use?

Backend: Java 26 with Spring Boot 4. Frontend: Vue 3 with Vite, PrimeVue 4, and Tailwind CSS 4. Database: PostgreSQL. PDF generation: Gotenberg/Chromium. Reverse proxy: Caddy or an operator-provided proxy.

How are database migrations handled?

QuoteNode uses Flyway for schema management. Migrations run automatically on backend startup. Existing migrations are never modified; schema changes are additive.

Can I customize the offer PDF template?

Yes. The template system supports configurable document layouts, template families, product tables, content sections, variables, images, branding, and separate document types.

How does PDF generation work?

The backend renders an HTML document from the offer or operational-document snapshot, then sends it to Gotenberg for conversion to PDF. Generated PDFs are stored by the application and can be downloaded from the relevant workflow.

Ready to own your data?

Free for freelancers. Reasonably priced for teams. Deploy in minutes with Docker Compose.