Before you start
- A workspace with an active Test or Live environment
- A quote in the awaiting approval state (the work list shows it in the Needs review bucket)
- Access to approve quotes for this workspace
When the approval panel appears
The approval panel appears on the quote receipt when the quote state is awaiting approval. This happens when:- The book’s autonomy rung is approval-first and the Book produced a priced offer.
- A review rule fired and held the result regardless of the autonomy rung.
- The outcome was needs review or inspection required — non-priced outcomes are always held.
In Shadow mode, no approval panel appears. Shadow observes requests for comparison but never sends an offer. The owner still produces the real answer outside Kordless.
The three actions
Approve and send
Click Approve & send to send the computed range or exact price to the customer as-is. The quote state moves fromawaiting_approval to quoted. The customer sees the offer on the hosted path or embed.
The review record stores who approved and when. No adjustment is recorded.
Adjust
Click Adjust to correct the range before sending. An inline form appears with:- Low ($) — The corrected low bound.
- High ($) — The corrected high bound.
- Classification — Why the adjustment is being made.
- Reason — An explanation of the correction.
When the classification is existing rule wrong or missing rule or factor, Kordless drafts a learning proposal against the pinned book version. This proposal appears as a pending change on the Book — it does not write to Live directly. The reason you provide becomes the owner evidence for that proposal.
After saving, the quote state moves to
quoted with the adjusted range. The review record stores the original range, the adjusted range, the classification, and the reason.
Decline
Click Decline to close the quote without sending an offer. An optional reason can be provided. The quote state moves todeclined. The customer sees a neutral state — no price is ever shown for a declined quote.
What happens after a decision
After any decision, the quote receipt refreshes to show:- The updated outcome chip (priced, declined, or still in review if the action failed).
- The complete review and override record — who decided, what was adjusted, and why.
- The customer decision state.
Idempotency
The decision route uses optimistic concurrency with the quote’s row version. If another action was taken on the same quote between when you opened the receipt and when you submitted your decision, the server rejects the stale request. Refresh the page to see the current state and try again.Role requirements
Approving, adjusting, and declining quotes requires authorization to record quote decisions. Members can view the quote receipt but may not see the approval panel. If you do not have the required role, ask a workspace administrator to complete this step or grant you the necessary role.If it does not work
Next
Quote receipt and derivation
Why a quote result can be replayed and how it is derived.
Commitments overview
What happens when a customer accepts an offer.