Engine · Tracking · LIVE

Warranty entries, one per product.

Aggregates approved submittal_revisions and procurement_items for the project, then composes one warranty entry per manufactured product with term_months (spec-stated, manufacturer-published, or industry-standard), start date aligned to substantial completion, conditions, and exclusions. Persists each entry to the warranties table for the closeout package. Flags unmatched submittals for PM follow-up.

20–40s
per project compile
1 per product
warranty granularity
3 sources
spec / mfr / industry
Pro
plan tier
01 · What it does

248 installed products. One warranty register.

A typical mid-size CRE project installs 200–400 distinct manufactured products. Each has its own warranty — spec-stated, manufacturer-published, or industry-standard. Closeout day, the owner expects all of them listed in one matrix with terms, expirations, and claim contacts. Most GCs build this by hand the week before delivery and miss 15–25% of products.

Warranty Compiler reads every approved submittal_revision and every procurement_item in the project's tables, joins them on product+manufacturer, and writes a warranty entry for each match. Three-tier term resolution: spec-stated term wins, manufacturer-published term is fallback, industry-standard term is last resort. Start dates align to substantial completion (or install date, configurable). Each entry persists to the warranties table that Closeout Builder reads.

02 · When to run it

From submittal approval. Through warranty period.

Warranty Compiler is built to run repeatedly — not once at closeout. The first run, mid-project, is the most valuable because it catches the gaps while you still have leverage with the subs.

03 · What you upload

Nothing. The project already has it.

Server-side aggregation engine. The trigger button replaces an upload form — everything's already in the project's tables.

From Submittals

Approved revisions

submittal_revisions table. Each row carries the approved cut-sheet, the spec section it satisfies, and any warranty PDF the sub attached at approval. The cut-sheet's manufacturer + model is the join key.

From Procurement

Purchase orders + deliveries

procurement_items table. Each PO carries quantity, manufacturer, model, supplier, delivery date. Joins to submittal_revisions on (manufacturer, model) to confirm match.

Configurable

Substantial completion date

Default warranty start. Per-product override allowed (some warranties start from install date, not SC). The engine resolves this per the spec's payment terms section.

04 · What you get back

One row per product. Source-tagged term.

Sample compile output for a 14-story office build, showing the three-tier term resolution and the unmatched flag for PM follow-up:

23 64CHILLERCarrier 30XA-302 air-cooled chiller · 5-yr compressor / 1-yr full unit (spec-stated, 23 64 23 §1.6). Start 6/15/2026 (SC). Expires 6/15/2031 · Carrier 1-800-CARRIER
23 09VAVTitus DESV 24-12 VAV box × 42 units · 2-yr standard (manufacturer-published, no spec override). Start 6/15/2026. Expires 6/15/2028 · Titus warranty@titus-hvac.com
26 27PANELSquare D NQOD208M2C panelboard × 6 · 18-mo labor / 5-yr equipment (spec 26 27 26 §2.4). Start 6/15/2026. Equip exp 6/15/2031 · Schneider Electric
22 13PUMPBell & Gossett e-90 inline pump × 3 · 3-yr factory (manufacturer-published). Start 6/15/2026. Expires 6/15/2029 · Xylem 1-855-XYLEM
08 71HARDWARESchlage L9000 mortise lockset × 318 · Lifetime mechanical / 5-yr finish (industry-standard — spec silent). Start 6/15/2026. Mechanical: lifetime · Allegion
!UNMATCHED3 submittals without matching PO · SUB-0247 (booster pump — Bell & Gossett 1531) approved 3/12 but no procurement_item recorded. PM action: confirm supplier or void submittal. Action
ΣCOMPILED248 warranty entries persisted · 167 spec-stated terms · 64 manufacturer-published · 17 industry-standard (flagged for verification). First expiration: 6/15/2028 (Titus VAV). Ready for closeout
Output

Persisted warranty entries grouped by manufacturer, term + conditions per product with source attribution, unmatched-submittals list with the suggested PM action per item, and the matrix Closeout Builder consumes directly. Industry-standard terms are explicitly flagged so the PM verifies the high-stakes ones (chillers, switchgear) by phoning the manufacturer.

05 · How it chains

Submittals + POs in. Closeout matrix out.

Warranty Compiler is the inflection point between the project-phase trackers and the closeout deliverable. It reads from two trackers, persists to one table, feeds one downstream engine.

06 · FAQ

Things everyone asks first.

What if the manufacturer warranty PDF wasn't attached at submittal approval?

The engine still composes the entry using the manufacturer-published or industry-standard term, but flags the row as "warranty PDF missing." The unmatched list surfaces the gap for PM follow-up. Best practice: chase the sub to upload before closeout day. Worst case: the matrix carries the term but the owner can't see the original document.

How does it handle multi-tier warranties (parts + labor + extended)?

Each tier becomes a separate entry attribute. Example: Square D panelboards typically carry 18-month labor + 5-year equipment + optional 10-year extended (purchased separately). The composed entry lists all three with effective dates and exclusions. Owner sees the full picture, not just the headline term.

What about installed-by warranties (workmanship)?

Workmanship warranties come from the installing sub's contract, not from the manufacturer. v1 of Warranty Compiler handles manufacturer warranties; workmanship warranties are pulled from contract_review at closeout time as a separate matrix section in Closeout Builder. v1.1 will merge both into one unified register.

Does it integrate with manufacturer warranty registration portals?

v1 doesn't auto-register on the manufacturer's portal — that varies too much by brand (Carrier, Trane, Schlage all have different flows). The engine surfaces the registration URL + serial number requirement per product so the PM can complete registration. Bulk auto-registration is on the v4.2 roadmap.

How are unmatched submittals different from unmatched POs?

Unmatched submittal = approved cut-sheet but no PO with the same manufacturer/model. Often a substitution that was approved but never procured. Unmatched PO = procurement record but no approved submittal. Often a small-quantity buy without formal submittal flow. Both flag separately so the PM resolves the right gap.

Run it on a live project. See what's missing.

If your project is 50% installed, Warranty Compiler will surface every approved submittal without a manufacturer warranty PDF in 30 seconds. That's the list to give your subs before final pay app withholding becomes the conversation.

Start free — 14 days, no card →