What the Customer Contracts page is for
The dated agreements: a rate sheet proposed to one customer, accepted, with a term, covered buildings and a frozen price snapshot. This is what generates the jobs and the invoices.

A customer contract (an agreement, internally) is where a rate sheet meets a customer and a calendar. It has a state (Proposed, Accepted, Declined, Cancelled), a start and end date, the buildings it covers, and a snapshot of the pricing as it stood at acceptance. Everything recurring in the company flows from it: the inspections the job generator creates inside their lead time, the subscription invoices, and the renewal that either happens or does not.

Customer Contracts

Open Customer Contracts
Who it is for
Account managers, the scheduler, and whoever owns renewals and recurring billing.
Without it
The agreement is a signed PDF. What it covers, when it ends and what was actually agreed are read off the paper each time, and the inspections it promises are scheduled from memory or missed.
What it shows
The agreements grid: search by customer, contract name or code, a State filter with chips, and columns for assigned to, contract, state, start, end, proposed date and actions. Opening an agreement gives a header with three actions (Generate Jobs, Generate Invoices, Download PDF), cards for the customer and term, Contract Terms and Notes, then the pricing snapshot rendered one card per layer (line items, labor rates, fees, clauses as they were at acceptance), and Covered Buildings with office and a search-to-add box. Only accepted buildings drive scheduled job generation.
What it is worth
  • The agreement generates its own work. Generate Jobs turns the service schedule and the covered buildings into scheduled inspections; the background generator does the same automatically inside each schedule's lead time.
  • Billing follows the contract, not a reminder. Generate Invoices bills the subscription periods that are due, on the payment terms the agreement carries.
  • What was agreed stays agreed. The snapshot shows the prices at acceptance, so a later rate sheet change cannot quietly reprice a live customer.
  • Coverage is explicit. A building is either on the agreement or it is not, and only accepted buildings get jobs.
Pays for itself the first quarter's inspections that appear in Jobs from Generate Jobs, on the right buildings, without anyone reading the PDF.

Where to go next

  • The Dashboard counts agreements by Proposed, Active, Expiring Soon and Expired and drills back into this grid at the same bucket.
  • The Obligations Calendar projects every occurrence these agreements owe over the next twelve months, flags occurrences inside lead time with no job, and lists agreements ending with their trailing value and renewal type. Its rows drill back to this grid.
  • The Revenue Outlook prices those occurrences and the subscription periods into the Committed layer, and draws manual renewals as At Risk.
  • A customer's own agreements are also under More on the customer record in All Customers.

Good to know

  • Jobs are generated inside lead time. The background generator only creates a job once an occurrence is within its schedule's lead-time days. Beyond that horizon the occurrence exists only as a projection on the Obligations Calendar.
  • Auto versus Manual renewal. An Auto agreement is forecast as committed past its end date; a Manual one is forecast as at risk until a successor agreement exists, and the successor records which agreement it renewed.
  • Expiring means the next 90 days. The dashboard card and the grid's Expiring bucket use the same window.
  • The term is start plus years, less a day. A one-year agreement starting 1 January ends 31 December.
  • The grid accepts a date window. When you arrive from a Forecast card the grid is filtered to agreements ending in that month; the Contracts grid has no office filter, so those drills stay tenant-wide.