Statuses & Ball-in-Court

The RFI state machine — every status, what it means, whose turn it is, and how RFIs move between states.

Every RFI runs on one state machine that tracks both its status and its ball-in-court — the single party whose turn it is to act. The register's status chips and Ball-in-court column are the fastest read on what needs doing.

RFI detail showing the status chip, ball-in-court routing line, and the question card
An open RFI — the routing line spells out whose turn it is and what's expected

The Statuses

StatusMeaningBall-in-Court
DraftStarted but not yet submittedInitiator
Submitted, waiting to be screened (two-step)Coordinator
OpenRouted to a responder, awaiting the answerResponder
AnsweredOfficial response on file, awaiting acceptanceCoordinator
ReturnedSent back for more detail; revise and resubmitInitiator
ClosedAccepted and on the record
VoidCancelled — no longer valid

How RFIs Move

text

The Two-Step Review

Under the default two-step review, a coordinator sits on both sides of the responder:

  1. Screen — when an RFI is submitted, the coordinator either routes it to a responder (→ open) or returns it to the initiator for more detail (→ returned).
  2. Review the answer — when an RFI is answered, the coordinator either accepts & closes it (→ closed) or returns the answer to the responder for rework (→ open).

Single-step skips the coordinator

Under single-step review, a submitted RFI goes straight to Open for the responder you named, and the answer can close it directly — no coordinator screening. Set this in policies.

Overdue

Submitted, open, and answered RFIs that pass their due date are flagged overdue in red on the register and the detail. Due dates come from the RFI itself, or default to the policy SLA from submission.

Reopen & Void

  • Reopen — a closed RFI can be reopened by the coordinator or initiator if follow-up is needed; it returns to Open and the reopen is recorded.
  • Void — an RFI that's no longer valid can be voided at any point before it closes. Voiding cancels it without an answer.