Skip to content

Settings

VoodooLikesCoding edited this page Nov 9, 2025 · 3 revisions

Settings are persisted in the database and surfaced as a flat key/value map via the API. The admin UI writes to these keys.

Company

  • companyName, companyAddress, companyEmail, companyPhone, companyTaxId, companyCountryCode
  • currency — default currency code (per invoice can override)
  • logo — URL or data:image/... URI (system attempts to inline remote logos)

Branding

  • templateIdprofessional-modern | minimalist-clean |
  • highlight — hex color (e.g. #6B4EFF)

Appearance / Internationalization

  • locale — language code for UI and invoice rendering (e.g. en, nl)
    • Affects both admin interface text and invoice PDF/HTML labels
    • Falls back to en if unsupported locale is specified
  • numberFormatcomma (1.234,56) or period (1,234.56) for currency display
  • dateFormat — pattern string (e.g. YYYY-MM-DD, DD/MM/YYYY, MM/DD/YYYY)
    • Uses common date tokens: YYYY (year), MM (month), DD (day)

Payments

  • paymentMethods, bankAccount, paymentTerms, defaultNotes

Tax defaults

  • defaultTaxRate — number; stored as canonical numeric string
  • defaultPricesIncludeTax — "true" | "false"
  • defaultRoundingMode — "line" | "total"

Numbering

  • invoiceNumberPattern — advanced pattern with tokens {YYYY}{YY}{MM}{DD}{DATE}{RAND4}{SEQ}
  • invoiceNumberingEnabled — "true" | "false" (when false, legacy prefix-year-padding numbering is used)
  • Legacy knobs still read if present: invoicePrefix, invoiceIncludeYear, invoiceNumberPadding

XML Export

  • xmlProfileId — default profile id (ubl21 | facturx22)
  • embedXmlInPdf — embed selected XML profile into PDFs as an attachment
  • embedXmlInHtml — reserved for future HTML embedding
  • Optional PEPPOL endpoint IDs: peppolSellerEndpointId, peppolSellerEndpointSchemeId, peppolBuyerEndpointId, peppolBuyerEndpointSchemeId

Other

  • BASE_URL (env) influences publish response URL composition
  • DEMO_MODE (env) turns on periodic reset behavior

Notes

  • Aliases: the API may expose email, phone, taxId, countryCode as convenience aliases for the corresponding company* keys.
  • When you change templateId, the system also syncs the templates table’s default flag.

Clone this wiki locally