Change order vs amendment — and the chain between them

A contract knows whether it's the original project agreement, a change-order agreement, or an amendment of an earlier contract — and an amendment records which contract it replaces and why.

What it is

Contracts.kind is one of project, change_order or amendment. change_order_id binds a contract to a change order; amends_contract_id plus amendment_reason record an amendment chain. Indexes exist on both relationships.

Also called: amend the contract · revise the original contract · contract amendment · what did they actually sign

See it
New Change Order — Line Items
Line Items+ Add Line
KindDescriptionSupplierQtyUnitUnit PriceTotal
Material12×12 insulated overhead doors (2)Kaufman Door Supply2ea2480.00$4,960.00×
LaborFrame openings, headers, jamb & track installUnassigned18hr68.00$1,224.00×
Credit (subtracts)Delete one 3068 walk door from base scopeUnassigned1ea640.00-$640.00×
Markup %
12
Tax %
6
Subtotal$5,544.00
Markup (12%) + Tax (6%)$1,037.84
Total$6,581.84
Schedule+3 days
A chain diagram: original project agreement → amendment (with reason) → change-order agreements branching beside it, each labelled with its kind. The real screen, drawn from the product’s own design system. Sample data — no customer information appears here.
How it works
  1. 1kind defaults to 'project' so existing contracts are unaffected.
  2. 2A change-order contract points at its change order and cascades on delete.
  3. 3An amendment points at the contract it revises, with a stated reason, and the reference nulls out rather than cascading if the earlier contract is removed.
  4. 4The column comment defines the vocabulary: 'project = the original agreement; change_order = an agreement for added work; amendment = a revision of an earlier contract'.
Why we built it

Migration 156 draws the line between the two instruments: 'An amendment REPLACES terms in an earlier contract rather than adding scope beside it. Only defensible before money has moved — after that, the customer has paid against terms that would be rewritten underneath them, and the honest instrument is a change order.' And on the chain: 'Recording the chain means "what did they actually sign, and in what order" stays answerable.'

The problem
  • Amendments and change orders conflated into one act
  • No record of which contract supersedes which
  • Rewriting terms after payments have been made against them
Sound familiar?
What you get
The full document chain for a job stays answerable
Amendment reasons recorded, not implied
Two distinct instruments for two distinct situations

See it on your own jobs

Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.

or keep browsing features →