Financial Calculations

Financial logic for Quotes, Invoices, funding, and commissions across the renovation project lifecycle.

Architecture

LayerLocation
Quote finance servicebackend/src/services/quote-finance-service.ts
General finance servicebackend/src/services/finance-service.ts
Commission calculatorbackend/src/services/commission-calculator.ts
Funding calculatorbackend/src/lib/funding-calculator.ts
Amount calculation hookfrontend/src/hooks/useAmountCalculation.ts
Financial document servicefrontend/src/lib/services/financialDocumentService.ts
Admin finance routesbackend/src/routes/admin/finance/
Admin finance pagesfrontend/src/pages/admin/ (finance-related)

Database Tables

TablePurpose
costBreakdownsLine-item cost breakdowns per quote/invoice
costRatesConfigurable cost rates (labor, materials)
commissionAgreementsPartner commission terms
commissionBookingsRealized commission entries
targetsRevenue and capacity targets
periodSettlementsPeriodic financial settlements

Calculation Areas

Quote Calculations

quote-finance-service.ts handles:

  • Line item totals from Products pricing
  • Tax calculations (VAT rates)
  • Discount application
  • Net/gross amounts

Funding Calculations

backend/src/lib/funding-calculator.ts computes:

  • Eligible funding amounts per program
  • Stacking rules (which programs can combine)
  • Maximum funding caps
  • Customer co-payment after funding

Commission Calculations

commission-calculator.ts determines:

  • Partner commissions based on agreement terms
  • Tiered commission rates
  • Period-based settlement amounts

Frontend Amount Hook

frontend/src/hooks/useAmountCalculation.ts provides reactive calculation of totals, taxes, and discounts as users edit financial documents.

Admin Configuration

Finance administration is available through the Admin Dashboard:

  • Cost rates — configure standard rates for labor and materials
  • Commissions — manage commission agreements and view bookings
  • Capacity targets — set revenue and capacity goals per period