Documentation

Technical documentation for the PestControlOS CRM and Android app.

Architecture, security, Firestore model, and feature details for developers and technical reviewers.

CRM: Sales and quoting engine

Technical specification for the sales and quoting engine in the PestControlOS CRM (PWA).

Data model and config

  • Pricing: Loaded from cloud configuration (Firestore document or Cloud Function). Structure: point-based (4pt, 6pt, 8pt, 12pt), line items, VAT rules. Used to generate quote breakdowns.
  • Quotation document: Generated client-side or server-side (e.g. PDF or HTML). Fields: line items, quantities, unit prices, VAT, totals. Optional 30% deposit logic for Bird quotation (show 30% due before job + remainder, or total only).

Capabilities

  • Generate quote: Build quote from selected products/services and pricing config. Professional formatting; VAT and line totals. Export as PDF or summary (e.g. quote summary for email).
  • Prefill email: Open email composer with quote summary or attachment; recipient/customer from lead or form. Uses Gmail API via Cloud Functions (see Email integration).
  • API submission: Integration-ready API (callable Cloud Function) to submit quote to external system or to create lead/job from quote. Payload validated server-side.

Integration

  • Tied to Leads: quote may create or update lead. Company email/mobile for quotation loaded from Firestore users or staff for logged-in user. No hardcoded contact details in app.