Declines and withdrawals, with reasons

A customer can decline with a reason, and the builder can withdraw a change order before the customer decides — both recorded.

What it is

Two terminal states short of approval. Decline is the customer's act and carries decline_reason; cancel is the builder withdrawing a draft or sent change order and carries cancel_reason. Both stamp decided_at and leave the document on the record.

Also called: customer said no to the extra · cancel a change order · withdraw a change order

See it
Declines and withdrawals, with reasons
Day rate
$500
Days figured
6
Crew size
4
Fuel & equipment
$300
Finished 2 days early — $1,400 back to the crew
The decline flow in the signing modal: reason textarea and a red Confirm Decline button. src/components/changeOrders/ChangeOrderSignatureModal.tsx. Sample data — no customer information appears here.
How it works
  1. 1The signing modal's Decline button opens a reason field and then a Confirm Decline action.
  2. 2cancelChangeOrder is the PM-side withdrawal for a draft or sent CO.
  3. 3Declined and cancelled change orders keep their number and stay listed with a distinct status pill.
Why we built it

A change order that goes nowhere ends one of two ways: the customer said no, or the builder pulled it before the customer answered. Recording both as simply not approved loses the difference, and six months later the job's history cannot say whether a customer refused extra work or the builder chose not to chase it. Decline and cancel stay separate, each recording who ended it, when, and why.

The problem
  • No record of proposed work the customer rejected.
  • Withdrawn proposals indistinguishable from refused ones.
Sound familiar?
What you get
A complete history of what was proposed and what happened to it.
The reason survives with the document.

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 →