Service agreements are the most profitable revenue a U.S. service contractor has, and the least controlled. Service Contract Revenue manages the whole commercial lifecycle — installed assets, coverage, entitlement, planned delivery, billing, margin, renewal and expansion — on top of the field-service and accounting tools you already run.
Reactive call-out inside contracted hours
This is not a mock-up. The panel above calls the same public coverage endpoint the product ships, against a seeded demonstration portfolio. Change the scenario and the answer changes with the contract.
Nobody decides to give service away. It leaks — a call-out nobody charged for, an uplift nobody applied, a visit nobody booked, a term that ended without anybody noticing. Six deterministic detectors find each kind and show the arithmetic.
Work delivered, evidenced and signed off, with no invoice raised against it.
The entitlement said chargeable. Nobody charged. It happens on the truck, not in the office.
A CPI-U or fixed escalation fell due on the anniversary and was never applied. It compounds every year it is missed.
Inside the notice window with nobody driving it.
A visit the customer paid for that never happened — a renewal risk and a credit exposure at once.
The term ended months ago and the trucks keep rolling.
Each finding names the contract, the record and the calculation. A number a contract manager cannot open up is a number they will not act on.
Most systems can tell you a contract exists. The question that costs money is narrower: is this job, on this asset, at this hour, covered — and by which clause? That answer has to be deterministic, cited and reproducible years later.
The engine is a pure function: no clock, no randomness, no model output. Overlapping agreements resolve through a total order — contract precedence, then scope specificity, then commencement date — so the answer cannot depend on the order records happened to load in.
Unreviewed extraction, an unmatched asset or an ambiguous provision returns Unknown and stays there. The platform will not quietly resolve an uncertainty in the customer's favour, and it will not resolve one in yours.
Whatever else a version says, an applicable exclusion is decisive — and the decision quotes it, with the page it came from.
Labor, parts and travel each carry their own percentage, allowances draw down, deductibles apply, and out-of-hours attendance moves labor to chargeable. What comes back is the amount the agreement absorbs and the amount to invoice.
Every decision binds to an exact contract version. An amendment or renewal creates a new version and never edits the old one, so a decision made two years ago can be re-run today and return the same answer.
The same endpoint serves call booking, dispatch, the estimator, the technician's phone and the customer portal. One answer, one audit trail.
POST /api/v1/entitlement
{
"assetTag": "CH-1088",
"serviceType": "reactive",
"at": "2026-08-25T12:00:00Z",
"estimate": {
"laborCents": 74000,
"partsCents": 32000,
"travelCents": 9500
}
}Read the API contract →Auto-renewal notice statutes, service-contract classification and sales-tax treatment differ by state and sometimes by county. That belongs in reviewed content, not in application code.
Rules resolve down the chain, key by key, and the platform records which level supplied each value. A local overlay changes only what it names.
If a state has no validated rule pack, the engine returns review required and no notice date at all. It never falls back to a federal default and calls it an answer.
Source, citation, retrieval date, version, effective dates and the named reviewer who approved it — attached to the rule, not to a wiki page.
A customer administrator cannot override a rule that encodes law. The attempt is refused and recorded. Changing it takes a new, reviewed version.
Validating a pack supersedes the old version rather than editing it, so a determination made last year can still be reproduced against the rule that applied then.
Adding a state is a configuration and review exercise. No deployment, and no engineer interpreting a statute.
Jurisdiction packs ship as sample content with genuine statutory citations, and are marked as pending review until your counsel signs them off. The platform does not produce legal conclusions, and it will not serve a notice on a rule nobody has approved.
From the contracts sitting in a shared drive today, to a renewal proposal the customer accepts. Each step writes to the same record, so the renewal conversation is evidenced by the delivery it followed.
Connect ServiceTitan, BuildOps, simPRO, Salesforce Field Service, QuickBooks or Sage Intacct, or import the spreadsheets and PDFs. Parties, sites, equipment, coverage, exclusions, visits, SLAs, billing and renewal terms come across. A human resolves what is ambiguous; a reconciliation view shows what did not match.
At booking, estimate or work-order creation, identify the customer, site and asset. Get back Covered, Partially covered, Not covered or Unknown — with the contract version, the clause and the remaining allowance. Partial coverage splits into what the agreement absorbs and what the customer pays.
Required visits are generated from approved terms and pushed to your scheduling system. Missed and late visits, incomplete evidence, SLA risk and cost against budget surface in one exception queue, ordered by days to contractual breach.
Delivered value, actual margin, asset condition, open issues and relationship health drive a transparent risk score. From it come renewal options, scope changes and price recommendations — with a delivered-value statement the customer can read.
ServiceTitan and ServiceMax are strong suites, and if you run one end to end you already have much of this. What none of them do is sit neutrally across the systems a service business actually has, and answer the coverage question with a citation.
| Capability | ServiceTitan | PTC ServiceMax | Dyrect | Service Contract Revenue |
|---|---|---|---|---|
| Contract creation and templates | Yes | Yes | Warranty rules | ParityRapid import and a coverage graph |
| Entitlement at service | Yes | Strong | Claims validation | StrongerExplainable API before dispatch or quote |
| Visits and delivery | Yes | Work orders | Repair workflow | ParityNative workflow, or through your FSM |
| Recurring billing | Yes | Enterprise | Limited | ParityThrough accounting and payment connectors |
| Profitability | Strong | Strong | Analytics | StrongerLeakage, renewal price and cohort economics |
| Renewal automation | Yes | Yes | Warranty-focused | StrongerRisk, value proof, multi-option proposals |
| Pull-through and upsell | Yes | Enterprise | No | DifferentiatedAsset-health and uncovered-work engine |
| Customer value report | Some | Portal | Portal | DifferentiatedRenewal-ready delivered-value statement |
| Works across FSM systems | No | Ecosystem-centric | Standalone | DifferentiatedConnector-first, vendor neutral |
| State jurisdiction rules | No | No | No | DifferentiatedRule packs with source, version and reviewer |
Competitor positions are summarised from each vendor's public material and are subject to change.
Not seats, not logins, not contracts under management. The measure of this platform is whether the margin on your agreement book goes up and stays up.
Contracts and installed assets come across in weeks, with human review where the terms are ambiguous.
A cited answer at booking, quote and on site — so uncovered work is quoted, not absorbed.
Contracted visits scheduled, delivered, evidenced and billed, with exceptions ordered by days to breach.
Risk predicted from delivery, margin and asset condition, with an approved proposal generated from it.
Agreement-level profitability, free-service leakage and expansion revenue, each tracing to source records.
A transparent record of the value delivered — which is the argument that renews an agreement.
The portfolio audit stands on its own: you get the renewal calendar, the margin worksheet and a leakage figure whether or not you go further. Most buyers decide from that number.
Your agreements and equipment list, imported and reviewed. You get the renewal calendar, the margin worksheet and a leakage figure with the arithmetic behind it.
The platform for a defined number of assets and agreements. Coverage, required visits and renewals, run day to day.
Adds the integrations, the renewal intelligence and the margin view. This is where the leakage figure starts paying for itself.
Multi-entity portfolios, state jurisdiction packs, enterprise controls and the coverage API at dispatch scale.
Coverage decisions become commercial arguments, and occasionally legal ones. The platform is built so the record behind a decision survives that scrutiny.
In early releases it sits alongside your FSM rather than replacing it. Keep the scheduling and mobile tooling your technicians already know.
Extraction is proposed and reviewed by a person. An unreviewed term cannot produce a Covered outcome, ever.
Price recommendations are recommendations. Nothing reaches a customer without commercial approval.
Where a provision is genuinely ambiguous, the platform says Unknown and routes it to someone qualified to decide.
The portal is served a value model that structurally cannot contain cost, margin or risk scoring.
An EIN is optional and a Social Security Number is never accepted as an organization identifier — the schema gives it nowhere to go.
The portfolio audit imports your contracts and asset list, reviews the terms with a human in the loop, and returns the renewal calendar, the agreement margin and the leakage figure — with the arithmetic behind every number. If it does not find recoverable value, it has cost you a fortnight and nothing else.