Underwritetenant/underwrite-demo
Role
Request a demo

Operator surfaces: queues, clocks, correspondence, billing.

Compliance engine

Controls, not warnings

A warning tells an operator afterwards. A control refuses the action, names the rule that refused it, and writes the refusal into the trail. There are ten, and there is no override flag on any of them.

Statutory values on this page are frozen. No tenant configuration, preset or brand seed reaches them.

Control set, version 4.12.0
IDControlEffectRule
CTL-001No fee before performanceAn invoice cannot be issued against a service line until that line reaches a performed state with evidence attached. The billing call returns 409 and names the unperformed line. There is no override flag, because an override flag is the thing an examiner asks about first.blocksThe action is refused outright.CROA 1679b(b)
CTL-002Disclosure before contractThe contract object will not create until a delivered receipt exists for the separate written statement of Consumer Credit File Rights Under State and Federal Law. The receipt carries the document hash the consumer actually received.requiresA prerequisite must exist before the object will create.CROA 1679c
CTL-003Three business day cancellation holdEvery outbound action on a new case is queued, not sent, until the third business day after signature closes. The hold is visible on the case, counts business days against the operator calendar, and is written into the audit trail as a hold rather than as a delay.holdsThe action is queued and released when the condition clears.CROA 1679e
CTL-004Contract completenessThe generated contract fails validation if any required term is absent: payment terms, service description, estimated performance date, operator name and business address, and the conspicuous notice of the right to cancel with the cancellation form in duplicate.requiresA prerequisite must exist before the object will create.CROA 1679d
CTL-005Statutory clock, not a reminderThe clock is a first class field on the case with a rule reference, a start evidence pointer, and a due date. It cannot be edited by a seat. It can only be extended by recording the event that extends it, and the extension names its own rule.recordsThe action proceeds and the fact is written into the trail.FCRA 611(a)(1)
CTL-006Method of verification windowRequesting a description of the reinvestigation procedure opens its own fifteen day clock, tracked separately from the parent dispute, so a late response is visible as a late response and not as a quiet gap in the file.recordsThe action proceeds and the fact is written into the trail.FCRA 611(a)(7)
CTL-007Consumer statement of disputeThe platform offers the consumer statement as a first class outcome rather than an afterthought, with the one hundred word limit enforced in the editor and the filed statement stored beside the results letter.requiresA prerequisite must exist before the object will create.FCRA 611(b)
CTL-008Validation timingWhere an operator sends or receives a debt validation request on a consumer behalf, the platform records the initial communication date and the thirty day dispute period that follows it, and marks collection activity observed inside the period.recordsThe action proceeds and the fact is written into the trail.FDCPA 1692g
CTL-009Telemarketing recordsIf an operator calls consumers, the platform records call outcomes, consent, and the required disclosures against the case, and retains the call record for the period the rule requires. It does not place calls for you.recordsThe action proceeds and the fact is written into the trail.TSR 16 CFR 310
CTL-010Registration and bonding fieldsRegistration numbers, surety bond amounts and expiry dates are tenant fields, per state, entered by the operator and surfaced on generated documents. Requirements differ by state and change, so the platform stores what you registered rather than asserting a number on your behalf.requiresA prerequisite must exist before the object will create.State registration

Document completeness, checked before it renders

The contract generator refuses to produce a document that is missing a required term, and the response names each missing term rather than saying the request was invalid. The list below is what CROA 1679d requires a written contract to carry.

  1. The terms and conditions of payment, including the total amount of all payments to be made.
  2. A full and detailed description of the services to be performed, including all guarantees of performance.
  3. An estimated date by which the services will be performed, or the estimated length of the period necessary to perform them.
  4. The name and principal business address of the credit repair organisation.
  5. A conspicuous statement in bold face type, in immediate proximity to the space reserved for signature, telling the consumer they may cancel the contract without penalty or obligation at any time before midnight of the third business day after signing, and referring to the attached notice of cancellation form.
  6. The notice of cancellation form itself, supplied in duplicate, easily detachable, and in the language of the contract.

The separate written statement of Consumer Credit File Rights Under State and Federal Law is not part of the contract. It is served before the contract exists, and its delivery receipt is the prerequisite the contract object checks for.

The dispute state machine

Each transition names the rule that governs it and the clock that rule imposes. Where the machine branches, it branches because the statute gives the consumer a choice, not because the product offers one.

Intake

state.intake

Consumer record opened. No fee is billable and none can be recorded.

Disclosure delivered

Before contractCROA 15 U.S.C. 1679c

The statement of Consumer Credit File Rights Under State and Federal Law is served as a separate document and its signed receipt is retained.

Disclosure delivered

state.disclosure

The separate written statement of Consumer Credit File Rights Under State and Federal Law has been served and its delivery is stamped.

Contract signed

Before any serviceCROA 15 U.S.C. 1679d

The written contract carries the terms of payment, the services, the estimated date of performance, the operator name and business address, and the conspicuous cancellation notice.

Contract signed

state.contract

A written contract exists, with the cancellation notice attached in duplicate.

Cancellation window

3 business daysCROA 15 U.S.C. 1679e

The consumer may cancel without penalty or obligation. The engine holds every outbound action for the duration and records the hold.

Cancellation window

state.cooling

Three business days in which the consumer may cancel without penalty. Work is held.

Work authorised

On expiryCROA 15 U.S.C. 1679b(b)

Work unlocks. Billing does not: no fee may be charged or received before the service to which it relates is fully performed.

Work authorised

state.authorised

The window closed without cancellation. Dispute preparation unlocks.

Dispute sent

Operator SLAFCRA 15 U.S.C. 1681i(a)(1)

Dispute despatched with the basis stated. Proof of despatch is attached to the record before the state is allowed to change.

Dispute sent

state.sent

Dispute despatched to the consumer reporting agency, with proof of despatch attached.

Investigation open

5 business daysFCRA 611(a)(2)

The agency must give notice of the dispute to the furnisher within five business days of receipt. The record tracks the date the notice is evidenced.

Investigation open

state.investigation

The statutory reinvestigation window is running and is displayed on every queue.

Results delivered

30 daysFCRA 611(a)(1)(A)

The reinvestigation window. It extends to 45 days if the consumer supplies additional relevant information during the period, or where the dispute follows a free annual file disclosure under FCRA 612(a).

Results delivered

state.results

Written results received. The record now holds an outcome for each disputed item.

Method of verification

15 daysFCRA 611(a)(7)

On request, the agency must describe the procedure used to determine accuracy, including the business contacted, within fifteen days.

Consumer statement filed

No deadlineFCRA 611(b)

If the dispute is not resolved to the consumer satisfaction, the consumer may file a statement of the dispute. The agency may limit it to one hundred words.

Closed

On outcomeFCRA 611(a)(5)(A)

Information found inaccurate, incomplete or unverifiable is deleted or modified. Reinsertion requires written notice to the consumer within five business days.

Method of verification

state.mov

A description of the procedure used to determine accuracy has been requested.

Consumer statement filed

state.statement

The consumer exercised the right to add a statement of dispute to the file.

Closed

state.terminal

Deleted, modified, verified or withdrawn. The case is sealed and stays exportable.

What a refusal looks like at the API

A refusal is a normal, documented response. It carries the rule, the object it refused and the reason, and it is written into the audit trail with the same fields.

Refusal codes
CodeRuleMeaning
409 fee_before_performanceCROA 1679b(b)A billing call referenced a service line that has not reached a performed state.
409 disclosure_missingCROA 1679cNo delivery receipt exists for the statutory disclosure on this consumer.
409 cancellation_window_openCROA 1679eAn outbound action was requested during the three business day window. It has been queued, not rejected.
422 contract_incompleteCROA 1679dA required contract term is absent. The response body names each missing term.
409 despatch_evidence_missingFCRA 611(a)(1)A dispute was sent without proof of despatch attached.
403 clock_not_writableFCRA 611(a)(1)A due date was written directly. Record the extending event instead.
POST /v3/invoices
409 Conflict

{
  "error": "fee_before_performance",
  "rule": "CROA 15 U.S.C. 1679b(b)",
  "control": "CTL-001",
  "unperformed_lines": [
    { "line": "SL-4417-DISPUTE",
      "state": "investigation.open",
      "performed_at": null }
  ],
  "audit_entry": "AUD-2026-0918442"
}

There is no force parameter and no role that can supply one. An override flag is the first thing an examiner asks to see the log of, and the honest answer is easier when it does not exist.